NaCl Player API
NaCl Player API Documentation
media_codecs.h File Reference

Go to the source code of this file.

Enumerations

enum  Samsung::NaClPlayer::AudioCodec_Type {
  AUDIOCODEC_TYPE_UNKNOWN = 0, AUDIOCODEC_TYPE_AAC = 1, AUDIOCODEC_TYPE_MP3 = 2, AUDIOCODEC_TYPE_PCM = 3,
  AUDIOCODEC_TYPE_VORBIS = 4, AUDIOCODEC_TYPE_FLAC = 5, AUDIOCODEC_TYPE_AMR_NB = 6, AUDIOCODEC_TYPE_AMR_WB = 7,
  AUDIOCODEC_TYPE_PCM_MULAW = 8, AUDIOCODEC_TYPE_GSM_MS = 9, AUDIOCODEC_TYPE_PCM_S16BE = 10, AUDIOCODEC_TYPE_PCM_S24BE = 11,
  AUDIOCODEC_TYPE_OPUS = 12, AUDIOCODEC_TYPE_EAC3 = 13, AUDIOCODEC_TYPE_MP2 = 14, AUDIOCODEC_TYPE_DTS = 15,
  AUDIOCODEC_TYPE_AC3 = 16, AUDIOCODEC_TYPE_WMAV1 = 17, AUDIOCODEC_TYPE_WMAV2 = 18, Samsung::NaClPlayer::AUDIOCODEC_TYPE_MAX
}
 Enum describing audio codec types. More...
 
enum  Samsung::NaClPlayer::AudioCodec_Profile {
  AUDIOCODEC_PROFILE_UNKNOWN = -1, AUDIOCODEC_PROFILE_AAC_MAIN = 0, AUDIOCODEC_PROFILE_AAC_LOW = 1, AUDIOCODEC_PROFILE_AAC_SSR = 2,
  AUDIOCODEC_PROFILE_AAC_LTP = 3, AUDIOCODEC_PROFILE_AAC_HE = 4, AUDIOCODEC_PROFILE_AAC_HE_V2 = 5, AUDIOCODEC_PROFILE_AAC_LD = 6,
  AUDIOCODEC_PROFILE_AAC_ELD = 7, AUDIOCODEC_PROFILE_MPEG2_AAC_LOW = 8, AUDIOCODEC_PROFILE_MPEG2_AAC_HE = 9, AUDIOCODEC_PROFILE_DTS = 10,
  AUDIOCODEC_PROFILE_DTS_ES = 11, AUDIOCODEC_PROFILE_DTS_96_24 = 12, AUDIOCODEC_PROFILE_DTS_HD_HRA = 13, AUDIOCODEC_PROFILE_DTS_HD_MA = 14,
  Samsung::NaClPlayer::AUDIOCODEC_PROFILE_MAX
}
 Enum describing Audio Codec Profiles. More...
 
enum  Samsung::NaClPlayer::SampleFormat {
  SAMPLEFORMAT_UNKNOWN = 0, Samsung::NaClPlayer::SAMPLEFORMAT_U8 = 1, Samsung::NaClPlayer::SAMPLEFORMAT_S16 = 2, Samsung::NaClPlayer::SAMPLEFORMAT_S32 = 3,
  Samsung::NaClPlayer::SAMPLEFORMAT_F32 = 4, Samsung::NaClPlayer::SAMPLEFORMAT_PLANARS16 = 5, Samsung::NaClPlayer::SAMPLEFORMAT_PLANARF32 = 6, Samsung::NaClPlayer::SAMPLEFORMAT_MAX
}
 Enum describing Samples format. More...
 
enum  Samsung::NaClPlayer::ChannelLayout {
  CHANNEL_LAYOUT_NONE = 0, CHANNEL_LAYOUT_UNSUPPORTED = 1, Samsung::NaClPlayer::CHANNEL_LAYOUT_MONO = 2, Samsung::NaClPlayer::CHANNEL_LAYOUT_STEREO = 3,
  Samsung::NaClPlayer::CHANNEL_LAYOUT_2_1 = 4, Samsung::NaClPlayer::CHANNEL_LAYOUT_SURROUND = 5, Samsung::NaClPlayer::CHANNEL_LAYOUT_4_0 = 6, Samsung::NaClPlayer::CHANNEL_LAYOUT_2_2 = 7,
  Samsung::NaClPlayer::CHANNEL_LAYOUT_QUAD = 8, Samsung::NaClPlayer::CHANNEL_LAYOUT_5_0 = 9, Samsung::NaClPlayer::CHANNEL_LAYOUT_5_1 = 10, Samsung::NaClPlayer::CHANNEL_LAYOUT_5_0_BACK = 11,
  Samsung::NaClPlayer::CHANNEL_LAYOUT_5_1_BACK = 12, Samsung::NaClPlayer::CHANNEL_LAYOUT_7_0 = 13, Samsung::NaClPlayer::CHANNEL_LAYOUT_7_1 = 14, Samsung::NaClPlayer::CHANNEL_LAYOUT_7_1_WIDE = 15,
  Samsung::NaClPlayer::CHANNEL_LAYOUT_STEREO_DOWNMIX = 16, Samsung::NaClPlayer::CHANNEL_LAYOUT_2POINT1 = 17, Samsung::NaClPlayer::CHANNEL_LAYOUT_3_1 = 18, Samsung::NaClPlayer::CHANNEL_LAYOUT_4_1 = 19,
  Samsung::NaClPlayer::CHANNEL_LAYOUT_6_0 = 20, Samsung::NaClPlayer::CHANNEL_LAYOUT_6_0_FRONT = 21, Samsung::NaClPlayer::CHANNEL_LAYOUT_HEXAGONAL = 22, Samsung::NaClPlayer::CHANNEL_LAYOUT_6_1 = 23,
  Samsung::NaClPlayer::CHANNEL_LAYOUT_6_1_BACK = 24, Samsung::NaClPlayer::CHANNEL_LAYOUT_6_1_FRONT = 25, Samsung::NaClPlayer::CHANNEL_LAYOUT_7_0_FRONT = 26, Samsung::NaClPlayer::CHANNEL_LAYOUT_7_1_WIDE_BACK = 27,
  Samsung::NaClPlayer::CHANNEL_LAYOUT_OCTAGONAL = 28, Samsung::NaClPlayer::CHANNEL_LAYOUT_DISCRETE = 29, CHANNEL_LAYOUT_MAX
}
 Lists the various representations of the ordering of audio channels. More...
 
enum  Samsung::NaClPlayer::VideoCodec_Type {
  VIDEOCODEC_TYPE_UNKNOWN = 0, VIDEOCODEC_TYPE_H264 =1, VIDEOCODEC_TYPE_VC1 = 2, VIDEOCODEC_TYPE_MPEG2 = 3,
  VIDEOCODEC_TYPE_MPEG4 = 4, VIDEOCODEC_TYPE_THEORA = 5, VIDEOCODEC_TYPE_VP8 = 6, VIDEOCODEC_TYPE_VP9 = 7,
  VIDEOCODEC_TYPE_H263 = 8, VIDEOCODEC_TYPE_WMV1 = 9, VIDEOCODEC_TYPE_WMV2 = 10, VIDEOCODEC_TYPE_WMV3 = 11,
  VIDEOCODEC_TYPE_INDEO3 = 12, VIDEOCODEC_TYPE_H265 = 13, VIDEOCODEC_TYPE_MAX
}
 Enum describing video codecs type.
 
enum  Samsung::NaClPlayer::VideoCodec_Profile {
  VIDEOCODEC_PROFILE_UNKNOWN = -1, VIDEOCODEC_PROFILE_H264_MIN = 0, VIDEOCODEC_PROFILE_H264_BASELINE = VIDEOCODEC_PROFILE_H264_MIN, VIDEOCODEC_PROFILE_H264_MAIN = 1,
  VIDEOCODEC_PROFILE_H264_EXTENDED = 2, VIDEOCODEC_PROFILE_H264_HIGH = 3, VIDEOCODEC_PROFILE_H264_HIGH10 = 4, VIDEOCODEC_PROFILE_H264_HIGH422 = 5,
  VIDEOCODEC_PROFILE_H264_HIGH444PREDICTIVE = 6, VIDEOCODEC_PROFILE_H264_SCALABLEBASELINE = 7, VIDEOCODEC_PROFILE_H264_SCALABLEHIGH = 8, VIDEOCODEC_PROFILE_H264_STEREOHIGH = 9,
  VIDEOCODEC_PROFILE_H264_MULTIVIEWHIGH = 10, VIDEOCODEC_PROFILE_H264_MAX = VIDEOCODEC_PROFILE_H264_MULTIVIEWHIGH, VIDEOCODEC_PROFILE_VP8_MIN = 11, VIDEOCODEC_PROFILE_VP8_MAIN = VIDEOCODEC_PROFILE_VP8_MIN,
  VIDEOCODEC_PROFILE_VP8_MAX = VIDEOCODEC_PROFILE_VP8_MAIN, VIDEOCODEC_PROFILE_VP9_MIN = 12, VIDEOCODEC_PROFILE_VP9_MAIN = VIDEOCODEC_PROFILE_VP9_MIN, VIDEOCODEC_PROFILE_VP9_MAX = VIDEOCODEC_PROFILE_VP9_MAIN,
  VIDEOCODEC_PROFILE_MPEG2_MIN = 13, VIDEOCODEC_PROFILE_MPEG2_422 = VIDEOCODEC_PROFILE_MPEG2_MIN, VIDEOCODEC_PROFILE_MPEG2_HIGH = 14, VIDEOCODEC_PROFILE_MPEG2_SS = 15,
  VIDEOCODEC_PROFILE_MPEG2_SNR_SCALABLE = 16, VIDEOCODEC_PROFILE_MPEG2_MAIN = 17, VIDEOCODEC_PROFILE_MPEG2_SIMPLE = 18, VIDEOCODEC_PROFILE_VC1_SIMPLE = 19,
  VIDEOCODEC_PROFILE_VC1_MAIN = 20, VIDEOCODEC_PROFILE_VC1_COMPLEX = 21, VIDEOCODEC_PROFILE_VC1_ADVANCED = 22, VIDEOCODEC_PROFILE_MPEG4_SIMPLE = 23,
  VIDEOCODEC_PROFILE_MPEG4_SIMPLE_SCALABLE = 24, VIDEOCODEC_PROFILE_MPEG4_CORE = 25, VIDEOCODEC_PROFILE_MPEG4_MAIN = 26, VIDEOCODEC_PROFILE_MPEG4_N_BIT = 27,
  VIDEOCODEC_PROFILE_MPEG4_SCALABLE_TEXTURE = 28, VIDEOCODEC_PROFILE_MPEG4_SIMPLE_FACE_ANIMATION = 29, VIDEOCODEC_PROFILE_MPEG4_BASIC_ANIMATED_TEXTURE = 30, VIDEOCODEC_PROFILE_MPEG4_HYBRID = 31,
  VIDEOCODEC_PROFILE_MPEG4_ADVANCED_REAL_TIME = 32, VIDEOCODEC_PROFILE_MPEG4_CORE_SCALABLE = 33, VIDEOCODEC_PROFILE_MPEG4_ADVANCED_CODING = 34, VIDEOCODEC_PROFILE_MPEG4_ADVANCED_CORE = 35,
  VIDEOCODEC_PROFILE_MPEG4_ADVANCED_SCALABLE_TEXTURE = 36, VIDEOCODEC_PROFILE_MPEG4_SIMPLE_STUDIO = 37, VIDEOCODEC_PROFILE_MPEG4_ADVANCED_SIMPLE = 38, VIDEOCODEC_PROFILE_LAST = VIDEOCODEC_PROFILE_MPEG4_ADVANCED_SIMPLE
}
 Video stream profile.
 
enum  Samsung::NaClPlayer::VideoFrame_Format {
  Samsung::NaClPlayer::VIDEOFRAME_FORMAT_INVALID = 0, Samsung::NaClPlayer::VIDEOFRAME_FORMAT_RGB32 = 4, Samsung::NaClPlayer::VIDEOFRAME_FORMAT_YV12 = 6, Samsung::NaClPlayer::VIDEOFRAME_FORMAT_YV16 = 7,
  Samsung::NaClPlayer::VIDEOFRAME_FORMAT_EMPTY = 9, Samsung::NaClPlayer::VIDEOFRAME_FORMAT_I420 = 11, Samsung::NaClPlayer::VIDEOFRAME_FORMAT_NATIVE_TEXTURE = 12, Samsung::NaClPlayer::VIDEOFRAME_FORMAT_HOLE = 13,
  Samsung::NaClPlayer::VIDEOFRAME_FORMAT_YV12A = 14
}
 Enum describing video frames formats. More...
 

Detailed Description

Defines common data structures and enumerations used by NaCl Player

Definition in file media_codecs.h.

Enumeration Type Documentation

◆ AudioCodec_Profile

Enum describing Audio Codec Profiles.

Enumerator
AUDIOCODEC_PROFILE_MAX 

Must always be last!

Definition at line 40 of file media_codecs.h.

◆ AudioCodec_Type

Enum describing audio codec types.

Enumerator
AUDIOCODEC_TYPE_MAX 

Must always be last!

Definition at line 14 of file media_codecs.h.

◆ ChannelLayout

Lists the various representations of the ordering of audio channels.

Enumerator
CHANNEL_LAYOUT_MONO 

Front C.

CHANNEL_LAYOUT_STEREO 

Front L, Front R.

CHANNEL_LAYOUT_2_1 

Front L, Front R, Back C.

CHANNEL_LAYOUT_SURROUND 

Front L, Front R, Front C.

CHANNEL_LAYOUT_4_0 

Front L, Front R, Front C, Back C.

CHANNEL_LAYOUT_2_2 

Front L, Front R, Side L, Side R.

CHANNEL_LAYOUT_QUAD 

Front L, Front R, Back L, Back R.

CHANNEL_LAYOUT_5_0 

Front L, Front R, Front C, Side L, Side R.

CHANNEL_LAYOUT_5_1 

Front L, Front R, Front C, Side L, Side R, LFE.

CHANNEL_LAYOUT_5_0_BACK 

Front L, Front R, Front C, Back L, Back R.

CHANNEL_LAYOUT_5_1_BACK 

Front L, Front R, Front C, Back L, Back R, LFE.

CHANNEL_LAYOUT_7_0 

Front L, Front R, Front C, Side L, Side R, Back L, Back R.

CHANNEL_LAYOUT_7_1 

Front L, Front R, Front C, Side L, Side R, LFE, Back L, Back R.

CHANNEL_LAYOUT_7_1_WIDE 

Front L, Front R, Front C, Side L, Side R, LFE, Front LofC, Front RofC.

CHANNEL_LAYOUT_STEREO_DOWNMIX 

Stereo L, Stereo R.

CHANNEL_LAYOUT_2POINT1 

Stereo L, Stereo R, LFE.

CHANNEL_LAYOUT_3_1 

Stereo L, Stereo R, Front C, LFE.

CHANNEL_LAYOUT_4_1 

Stereo L, Stereo R, Front C, Rear C, LFE.

CHANNEL_LAYOUT_6_0 

Stereo L, Stereo R, Front C, Side L, Side R, Back C.

CHANNEL_LAYOUT_6_0_FRONT 

Stereo L, Stereo R, Side L, Side R, Front LofC, Front RofC.

CHANNEL_LAYOUT_HEXAGONAL 

Stereo L, Stereo R, Side L, Side R, Front C, Rear C.

CHANNEL_LAYOUT_6_1 

Stereo L, Stereo R, Side L, Side R, Front C, Rear Center, LFE.

CHANNEL_LAYOUT_6_1_BACK 

Stereo L, Stereo R, Back L, Back R, Front C, Rear Center, LFE.

CHANNEL_LAYOUT_6_1_FRONT 

Stereo L, Stereo R, Side L, Side R, Front LofC, Front RofC, LFE.

CHANNEL_LAYOUT_7_0_FRONT 

Front L, Front R, Front C, Side L, Side R, Front LofC, Front RofC.

CHANNEL_LAYOUT_7_1_WIDE_BACK 

Front L, Front R, Front C, Back L, Back R, LFE, Front LofC, Front RofC.

CHANNEL_LAYOUT_OCTAGONAL 

Front L, Front R, Front C, Side L, Side R, Rear C, Back L, Back R.

CHANNEL_LAYOUT_DISCRETE 

Channels are not explicitly mapped to speakers.

Definition at line 89 of file media_codecs.h.

◆ SampleFormat

Enum describing Samples format.

Enumerator
SAMPLEFORMAT_U8 

Unsigned 8-bit w/ bias of 128.

SAMPLEFORMAT_S16 

Signed 16-bit.

SAMPLEFORMAT_S32 

Signed 32-bit.

SAMPLEFORMAT_F32 

Float 32-bit.

SAMPLEFORMAT_PLANARS16 

Signed 16-bit planar.

SAMPLEFORMAT_PLANARF32 

Float 32-bit planar.

SAMPLEFORMAT_MAX 

Must always be last!

Definition at line 63 of file media_codecs.h.

◆ VideoFrame_Format

Enum describing video frames formats.

Enumerator
VIDEOFRAME_FORMAT_INVALID 

Invalid format value. Used for error reporting.

VIDEOFRAME_FORMAT_RGB32 

32bpp RGB packed with extra byte 8:8:8

VIDEOFRAME_FORMAT_YV12 

12bpp YVU planar 1x1 Y, 2x2 VU samples

VIDEOFRAME_FORMAT_YV16 

16bpp YVU planar 1x1 Y, 2x1 VU samples

VIDEOFRAME_FORMAT_EMPTY 

An empty frame.

VIDEOFRAME_FORMAT_I420 

12bpp YVU planar 1x1 Y, 2x2 UV samples.

VIDEOFRAME_FORMAT_NATIVE_TEXTURE 

Native texture. Pixel-format agnostic.

VIDEOFRAME_FORMAT_HOLE 

Hole frame.

VIDEOFRAME_FORMAT_YV12A 

20bpp YUVA planar 1x1 Y, 2x2 VU, 1x1 A samples.

Definition at line 258 of file media_codecs.h.