Data Structures | Defines | Typedefs | Functions | Variables

vlc_codecs.h File Reference

This file defines codec related structures needed by the demuxers and decoders. More...

Include dependency graph for vlc_codecs.h:

Go to the source code of this file.

Data Structures

struct  _GUID
struct  _WAVEFORMATEX
struct  _WAVEFORMATEXTENSIBLE
struct  _WAVEHEADER
struct  ATTR_PACKED
struct  ATTR_PACKED
struct  ATTR_PACKED
struct  ATTR_PACKED
struct  ATTR_PACKED
struct  ATTR_PACKED
struct  ATTR_PACKED

Defines

#define _WAVEFORMATEX_
#define _WAVEFORMATEXTENSIBLE_
#define _WAVEHEADER_
#define _VLC_BITMAPINFOHEADER_
#define _RECT32_
#define _REFERENCE_TIME_
#define _VIDEOINFOHEADER_
#define _RGBQUAD_
#define _TRUECOLORINFO_
#define _VIDEOINFO_
#define WAVE_FORMAT_UNKNOWN   0x0000
#define WAVE_FORMAT_PCM   0x0001
#define WAVE_FORMAT_ADPCM   0x0002
#define WAVE_FORMAT_IEEE_FLOAT   0x0003
#define WAVE_FORMAT_ALAW   0x0006
#define WAVE_FORMAT_MULAW   0x0007
#define WAVE_FORMAT_DTS_MS   0x0008
#define WAVE_FORMAT_WMAS   0x000a
#define WAVE_FORMAT_IMA_ADPCM   0x0011
#define WAVE_FORMAT_TRUESPEECH   0x0022
#define WAVE_FORMAT_GSM610   0x0031
#define WAVE_FORMAT_MSNAUDIO   0x0032
#define WAVE_FORMAT_G726   0x0045
#define WAVE_FORMAT_MPEG   0x0050
#define WAVE_FORMAT_MPEGLAYER3   0x0055
#define WAVE_FORMAT_AMR_NB   0x0057
#define WAVE_FORMAT_AMR_WB   0x0058
#define WAVE_FORMAT_DOLBY_AC3_SPDIF   0x0092
#define WAVE_FORMAT_AAC   0x00FF
#define WAVE_FORMAT_SIPRO   0x0130
#define WAVE_FORMAT_WMA1   0x0160
#define WAVE_FORMAT_WMA2   0x0161
#define WAVE_FORMAT_WMAP   0x0162
#define WAVE_FORMAT_WMAL   0x0163
#define WAVE_FORMAT_AAC_2   0x1601
#define WAVE_FORMAT_AAC_LATM   0x1602
#define WAVE_FORMAT_A52   0x2000
#define WAVE_FORMAT_DTS   0x2001
#define WAVE_FORMAT_FFMPEG_AAC   0x706D
#define WAVE_FORMAT_DIVIO_AAC   0x4143
#define WAVE_FORMAT_DK3   0x0061
#define WAVE_FORMAT_DK4   0x0062
#define WAVE_FORMAT_VORBIS   0x566f
#define WAVE_FORMAT_VORB_1   0x674f
#define WAVE_FORMAT_VORB_2   0x6750
#define WAVE_FORMAT_VORB_3   0x6751
#define WAVE_FORMAT_VORB_1PLUS   0x676f
#define WAVE_FORMAT_VORB_2PLUS   0x6770
#define WAVE_FORMAT_VORB_3PLUS   0x6771
#define WAVE_FORMAT_SPEEX   0xa109
#define WAVE_FORMAT_EXTENSIBLE   0xFFFE
#define _KSDATAFORMAT_SUBTYPE_PCM_   {0x00000001, 0x0000, 0x0010, {0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71}}
#define KSDATAFORMAT_SUBTYPE_PCM   VLC_KSDATAFORMAT_SUBTYPE_PCM
#define _KSDATAFORMAT_SUBTYPE_UNKNOWN_   {0x00000000, 0x0000, 0x0000, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}}
#define KSDATAFORMAT_SUBTYPE_UNKNOWN   VLC_KSDATAFORMAT_SUBTYPE_UNKNOWN
#define WAVE_SPEAKER_FRONT_LEFT   0x1
#define WAVE_SPEAKER_FRONT_RIGHT   0x2
#define WAVE_SPEAKER_FRONT_CENTER   0x4
#define WAVE_SPEAKER_LOW_FREQUENCY   0x8
#define WAVE_SPEAKER_BACK_LEFT   0x10
#define WAVE_SPEAKER_BACK_RIGHT   0x20
#define WAVE_SPEAKER_FRONT_LEFT_OF_CENTER   0x40
#define WAVE_SPEAKER_FRONT_RIGHT_OF_CENTER   0x80
#define WAVE_SPEAKER_BACK_CENTER   0x100
#define WAVE_SPEAKER_SIDE_LEFT   0x200
#define WAVE_SPEAKER_SIDE_RIGHT   0x400
#define WAVE_SPEAKER_TOP_CENTER   0x800
#define WAVE_SPEAKER_TOP_FRONT_LEFT   0x1000
#define WAVE_SPEAKER_TOP_FRONT_CENTER   0x2000
#define WAVE_SPEAKER_TOP_FRONT_RIGHT   0x4000
#define WAVE_SPEAKER_TOP_BACK_LEFT   0x8000
#define WAVE_SPEAKER_TOP_BACK_CENTER   0x10000
#define WAVE_SPEAKER_TOP_BACK_RIGHT   0x20000
#define WAVE_SPEAKER_RESERVED   0x80000000

Typedefs

typedef struct _GUID GUID
typedef struct _GUIDREFGUID
typedef struct _GUIDLPGUID
typedef GUID guid_t
typedef struct ATTR_PACKED
_WAVEFORMATEX 
WAVEFORMATEX
typedef struct ATTR_PACKED
_WAVEFORMATEX
PWAVEFORMATEX
typedef struct ATTR_PACKED
_WAVEFORMATEX
NPWAVEFORMATEX
typedef struct ATTR_PACKED
_WAVEFORMATEX
LPWAVEFORMATEX
typedef struct ATTR_PACKED
_WAVEFORMATEXTENSIBLE 
WAVEFORMATEXTENSIBLE
typedef struct ATTR_PACKED
_WAVEFORMATEXTENSIBLE
PWAVEFORMATEXTENSIBLE
typedef struct ATTR_PACKED
_WAVEHEADER 
WAVEHEADER
typedef struct ATTR_PACKED VLC_BITMAPINFOHEADER
typedef struct ATTR_PACKEDVLC_PBITMAPINFOHEADER
typedef struct ATTR_PACKEDVLC_LPBITMAPINFOHEADER
typedef struct ATTR_PACKED VLC_BITMAPINFO
typedef struct ATTR_PACKEDVLC_LPBITMAPINFO
typedef struct ATTR_PACKED RECT32
typedef int64_t REFERENCE_TIME
typedef struct ATTR_PACKED VIDEOINFOHEADER
typedef struct ATTR_PACKED RGBQUAD1
typedef struct ATTR_PACKED TRUECOLORINFO
typedef struct ATTR_PACKED VIDEOINFO

Functions

static void wf_tag_to_fourcc (uint16_t i_tag, vlc_fourcc_t *fcc, const char **ppsz_name)
static void fourcc_to_wf_tag (vlc_fourcc_t fcc, uint16_t *pi_tag)
static int guidcmp (const GUID *s1, const GUID *s2)
static void sf_tag_to_fourcc (GUID *guid_tag, vlc_fourcc_t *fcc, const char **ppsz_name)

Variables

static const GUID VLC_KSDATAFORMAT_SUBTYPE_PCM = {0xE923AABF, 0xCB58, 0x4471, {0xA1, 0x19, 0xFF, 0xFA, 0x01, 0xE4, 0xCE, 0x62}}
static const GUID VLC_KSDATAFORMAT_SUBTYPE_UNKNOWN = {0x00000000, 0x0000, 0x0000, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}}
struct {
   uint16_t   i_tag
   vlc_fourcc_t   i_fourcc
   const char *   psz_name
wave_format_tag_to_fourcc []
struct {
   GUID   guid_tag
   vlc_fourcc_t   i_fourcc
   const char *   psz_name
sub_format_tag_to_fourcc []

Detailed Description

This file defines codec related structures needed by the demuxers and decoders.


Define Documentation

#define _KSDATAFORMAT_SUBTYPE_PCM_   {0x00000001, 0x0000, 0x0010, {0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71}}
#define _KSDATAFORMAT_SUBTYPE_UNKNOWN_   {0x00000000, 0x0000, 0x0000, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}}
#define _RECT32_
#define _REFERENCE_TIME_
#define _RGBQUAD_
#define _TRUECOLORINFO_
#define _VIDEOINFO_
#define _VIDEOINFOHEADER_
#define _VLC_BITMAPINFOHEADER_
#define _WAVEFORMATEX_
#define _WAVEFORMATEXTENSIBLE_
#define _WAVEHEADER_
#define KSDATAFORMAT_SUBTYPE_PCM   VLC_KSDATAFORMAT_SUBTYPE_PCM
#define KSDATAFORMAT_SUBTYPE_UNKNOWN   VLC_KSDATAFORMAT_SUBTYPE_UNKNOWN

Referenced by sf_tag_to_fourcc().

#define WAVE_FORMAT_A52   0x2000
#define WAVE_FORMAT_AAC   0x00FF
#define WAVE_FORMAT_AAC_2   0x1601
#define WAVE_FORMAT_AAC_LATM   0x1602
#define WAVE_FORMAT_ADPCM   0x0002
#define WAVE_FORMAT_ALAW   0x0006
#define WAVE_FORMAT_AMR_NB   0x0057
#define WAVE_FORMAT_AMR_WB   0x0058
#define WAVE_FORMAT_DIVIO_AAC   0x4143
#define WAVE_FORMAT_DK3   0x0061
#define WAVE_FORMAT_DK4   0x0062
#define WAVE_FORMAT_DOLBY_AC3_SPDIF   0x0092
#define WAVE_FORMAT_DTS   0x2001
#define WAVE_FORMAT_DTS_MS   0x0008
#define WAVE_FORMAT_EXTENSIBLE   0xFFFE
#define WAVE_FORMAT_FFMPEG_AAC   0x706D
#define WAVE_FORMAT_G726   0x0045
#define WAVE_FORMAT_GSM610   0x0031
#define WAVE_FORMAT_IEEE_FLOAT   0x0003
#define WAVE_FORMAT_IMA_ADPCM   0x0011
#define WAVE_FORMAT_MPEG   0x0050
#define WAVE_FORMAT_MPEGLAYER3   0x0055
#define WAVE_FORMAT_MSNAUDIO   0x0032
#define WAVE_FORMAT_MULAW   0x0007
#define WAVE_FORMAT_PCM   0x0001
#define WAVE_FORMAT_SIPRO   0x0130
#define WAVE_FORMAT_SPEEX   0xa109
#define WAVE_FORMAT_TRUESPEECH   0x0022
#define WAVE_FORMAT_UNKNOWN   0x0000
#define WAVE_FORMAT_VORB_1   0x674f
#define WAVE_FORMAT_VORB_1PLUS   0x676f
#define WAVE_FORMAT_VORB_2   0x6750
#define WAVE_FORMAT_VORB_2PLUS   0x6770
#define WAVE_FORMAT_VORB_3   0x6751
#define WAVE_FORMAT_VORB_3PLUS   0x6771
#define WAVE_FORMAT_VORBIS   0x566f
#define WAVE_FORMAT_WMA1   0x0160
#define WAVE_FORMAT_WMA2   0x0161
#define WAVE_FORMAT_WMAL   0x0163
#define WAVE_FORMAT_WMAP   0x0162
#define WAVE_FORMAT_WMAS   0x000a
#define WAVE_SPEAKER_BACK_CENTER   0x100
#define WAVE_SPEAKER_BACK_LEFT   0x10
#define WAVE_SPEAKER_BACK_RIGHT   0x20
#define WAVE_SPEAKER_FRONT_CENTER   0x4
#define WAVE_SPEAKER_FRONT_LEFT   0x1
#define WAVE_SPEAKER_FRONT_LEFT_OF_CENTER   0x40
#define WAVE_SPEAKER_FRONT_RIGHT   0x2
#define WAVE_SPEAKER_FRONT_RIGHT_OF_CENTER   0x80
#define WAVE_SPEAKER_LOW_FREQUENCY   0x8
#define WAVE_SPEAKER_RESERVED   0x80000000
#define WAVE_SPEAKER_SIDE_LEFT   0x200
#define WAVE_SPEAKER_SIDE_RIGHT   0x400
#define WAVE_SPEAKER_TOP_BACK_CENTER   0x10000
#define WAVE_SPEAKER_TOP_BACK_LEFT   0x8000
#define WAVE_SPEAKER_TOP_BACK_RIGHT   0x20000
#define WAVE_SPEAKER_TOP_CENTER   0x800
#define WAVE_SPEAKER_TOP_FRONT_CENTER   0x2000
#define WAVE_SPEAKER_TOP_FRONT_LEFT   0x1000
#define WAVE_SPEAKER_TOP_FRONT_RIGHT   0x4000

Typedef Documentation

typedef struct _GUID GUID
typedef GUID guid_t
typedef struct _GUID * LPGUID
typedef struct ATTR_PACKED RECT32
typedef int64_t REFERENCE_TIME
typedef struct _GUID * REFGUID
typedef struct ATTR_PACKED RGBQUAD1
typedef struct ATTR_PACKED TRUECOLORINFO
typedef struct ATTR_PACKED VIDEOINFO
typedef struct ATTR_PACKED VIDEOINFOHEADER
typedef struct ATTR_PACKED VLC_BITMAPINFO
typedef struct ATTR_PACKED * VLC_LPBITMAPINFO

Function Documentation

static void fourcc_to_wf_tag ( vlc_fourcc_t  fcc,
uint16_t *  pi_tag 
) [inline, static]
static int guidcmp ( const GUID s1,
const GUID s2 
) [inline, static]
static void sf_tag_to_fourcc ( GUID guid_tag,
vlc_fourcc_t fcc,
const char **  ppsz_name 
) [inline, static]
static void wf_tag_to_fourcc ( uint16_t  i_tag,
vlc_fourcc_t fcc,
const char **  ppsz_name 
) [inline, static]

Variable Documentation

Referenced by fourcc_to_wf_tag().

uint16_t i_tag
const char* psz_name
struct { ... } sub_format_tag_to_fourcc[] [static]

Referenced by sf_tag_to_fourcc().

const GUID VLC_KSDATAFORMAT_SUBTYPE_PCM = {0xE923AABF, 0xCB58, 0x4471, {0xA1, 0x19, 0xFF, 0xFA, 0x01, 0xE4, 0xCE, 0x62}} [static]
const GUID VLC_KSDATAFORMAT_SUBTYPE_UNKNOWN = {0x00000000, 0x0000, 0x0000, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}} [static]
struct { ... } wave_format_tag_to_fourcc[] [static]
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines