QVisu
Qt-based visualization for smart homes
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
vlc_es.h File Reference
#include <vlc_fourcc.h>

Go to the source code of this file.

Classes

struct  video_palette_t
 
struct  audio_replay_gain_t
 
struct  audio_format_t
 
struct  video_format_t
 
struct  subs_format_t
 
struct  extra_languages_t
 
struct  es_format_t
 

Macros

#define AUDIO_REPLAY_GAIN_MAX   (2)
 
#define AUDIO_REPLAY_GAIN_TRACK   (0)
 
#define AUDIO_REPLAY_GAIN_ALBUM   (1)
 
#define AOUT_CHAN_CENTER   0x1
 
#define AOUT_CHAN_LEFT   0x2
 
#define AOUT_CHAN_RIGHT   0x4
 
#define AOUT_CHAN_REARCENTER   0x10
 
#define AOUT_CHAN_REARLEFT   0x20
 
#define AOUT_CHAN_REARRIGHT   0x40
 
#define AOUT_CHAN_MIDDLELEFT   0x100
 
#define AOUT_CHAN_MIDDLERIGHT   0x200
 
#define AOUT_CHAN_LFE   0x1000
 
#define AOUT_CHANS_FRONT   (AOUT_CHAN_LEFT | AOUT_CHAN_RIGHT)
 
#define AOUT_CHANS_MIDDLE   (AOUT_CHAN_MIDDLELEFT | AOUT_CHAN_MIDDLERIGHT)
 
#define AOUT_CHANS_REAR   (AOUT_CHAN_REARLEFT | AOUT_CHAN_REARRIGHT)
 
#define AOUT_CHANS_CENTER   (AOUT_CHAN_CENTER | AOUT_CHAN_REARCENTER)
 
#define AOUT_CHANS_STEREO   AOUT_CHANS_2_0
 
#define AOUT_CHANS_2_0   (AOUT_CHANS_FRONT)
 
#define AOUT_CHANS_2_1   (AOUT_CHANS_FRONT | AOUT_CHAN_LFE)
 
#define AOUT_CHANS_3_0   (AOUT_CHANS_FRONT | AOUT_CHAN_CENTER)
 
#define AOUT_CHANS_3_1   (AOUT_CHANS_3_0 | AOUT_CHAN_LFE)
 
#define AOUT_CHANS_4_0   (AOUT_CHANS_FRONT | AOUT_CHANS_REAR)
 
#define AOUT_CHANS_4_1   (AOUT_CHANS_4_0 | AOUT_CHAN_LFE)
 
#define AOUT_CHANS_5_0   (AOUT_CHANS_4_0 | AOUT_CHAN_CENTER)
 
#define AOUT_CHANS_5_1   (AOUT_CHANS_5_0 | AOUT_CHAN_LFE)
 
#define AOUT_CHANS_6_0   (AOUT_CHANS_4_0 | AOUT_CHANS_MIDDLE)
 
#define AOUT_CHANS_7_0   (AOUT_CHANS_6_0 | AOUT_CHAN_CENTER)
 
#define AOUT_CHANS_7_1   (AOUT_CHANS_5_1 | AOUT_CHANS_MIDDLE)
 
#define AOUT_CHANS_8_1   (AOUT_CHANS_7_1 | AOUT_CHAN_REARCENTER)
 
#define AOUT_CHANS_4_0_MIDDLE   (AOUT_CHANS_FRONT | AOUT_CHANS_MIDDLE)
 
#define AOUT_CHANS_4_CENTER_REAR   (AOUT_CHANS_FRONT | AOUT_CHANS_CENTER)
 
#define AOUT_CHANS_5_0_MIDDLE   (AOUT_CHANS_4_0_MIDDLE | AOUT_CHAN_CENTER)
 
#define AOUT_CHANS_6_1_MIDDLE   (AOUT_CHANS_5_0_MIDDLE | AOUT_CHAN_REARCENTER | AOUT_CHAN_LFE)
 
#define AOUT_CHAN_DOLBYSTEREO   0x10000
 
#define AOUT_CHAN_DUALMONO   0x20000
 
#define AOUT_CHAN_REVERSESTEREO   0x40000
 
#define AOUT_CHAN_PHYSMASK   0xFFFF
 
#define AOUT_CHAN_MAX   9
 
#define ORIENT_FROM_EXIF(exif)   ((0x01324675U >> (4 * ((exif) - 1))) & 7)
 
#define ORIENT_TO_EXIF(orient)   ((0x12435867U >> (4 * (orient))) & 15)
 
#define ORIENT_IS_MIRROR(orient)   parity(orient)
 
#define ORIENT_IS_SWAP(orient)   (((orient) & 4) != 0)
 
#define ORIENT_HFLIP(orient)   ((orient) ^ 1)
 
#define ORIENT_VFLIP(orient)   ((orient) ^ 2)
 
#define ORIENT_ROTATE_180(orient)   ((orient) ^ 3)
 

Typedefs

typedef enum video_orientation_t video_orientation_t
 
typedef struct extra_languages_t extra_languages_t
 

Enumerations

enum  video_orientation_t {
  ORIENT_TOP_LEFT = 0, ORIENT_TOP_RIGHT, ORIENT_BOTTOM_LEFT, ORIENT_BOTTOM_RIGHT,
  ORIENT_LEFT_TOP, ORIENT_LEFT_BOTTOM, ORIENT_RIGHT_TOP, ORIENT_RIGHT_BOTTOM,
  ORIENT_NORMAL = ORIENT_TOP_LEFT, ORIENT_HFLIPPED = ORIENT_TOP_RIGHT, ORIENT_VFLIPPED = ORIENT_BOTTOM_LEFT, ORIENT_ROTATED_180 = ORIENT_BOTTOM_RIGHT,
  ORIENT_ROTATED_270 = ORIENT_LEFT_BOTTOM, ORIENT_ROTATED_90 = ORIENT_RIGHT_TOP
}
 
enum  es_format_category_e {
  UNKNOWN_ES = 0x00, VIDEO_ES = 0x01, AUDIO_ES = 0x02, SPU_ES = 0x03,
  NAV_ES = 0x04
}
 

Functions

VLC_API void video_format_Setup (video_format_t *, vlc_fourcc_t i_chroma, int i_width, int i_height, int i_sar_num, int i_sar_den)
 
VLC_API void video_format_CopyCrop (video_format_t *, const video_format_t *)
 
VLC_API void video_format_ScaleCropAr (video_format_t *, const video_format_t *)
 
VLC_API bool video_format_IsSimilar (const video_format_t *, const video_format_t *)
 
VLC_API void video_format_Print (vlc_object_t *, const char *, const video_format_t *)
 
VLC_API void video_format_FixRgb (video_format_t *)
 
VLC_API void es_format_Init (es_format_t *, int i_cat, vlc_fourcc_t i_codec)
 
VLC_API void es_format_InitFromVideo (es_format_t *, const video_format_t *)
 
VLC_API int es_format_Copy (es_format_t *p_dst, const es_format_t *p_src)
 
VLC_API void es_format_Clean (es_format_t *fmt)
 
VLC_API bool es_format_IsSimilar (const es_format_t *, const es_format_t *)
 

Detailed Description

This file defines the elementary streams format types

Macro Definition Documentation

#define AUDIO_REPLAY_GAIN_MAX   (2)

audio replay gain description

#define ORIENT_FROM_EXIF (   exif)    ((0x01324675U >> (4 * ((exif) - 1))) & 7)

Convert EXIF orientation to enum video_orientation_t

#define ORIENT_HFLIP (   orient)    ((orient) ^ 1)

Applies horizontal flip to an orientation

#define ORIENT_IS_MIRROR (   orient)    parity(orient)

If the orientation is natural or mirrored

#define ORIENT_IS_SWAP (   orient)    (((orient) & 4) != 0)

If the orientation swaps dimensions

#define ORIENT_ROTATE_180 (   orient)    ((orient) ^ 3)

Applies horizontal flip to an orientation

#define ORIENT_TO_EXIF (   orient)    ((0x12435867U >> (4 * (orient))) & 15)

Convert enum video_orientation_t to EXIF

#define ORIENT_VFLIP (   orient)    ((orient) ^ 2)

Applies vertical flip to an orientation

Typedef Documentation

ES language definition

Picture orientation.

Enumeration Type Documentation

ES Categories

Picture orientation.

Enumerator
ORIENT_TOP_LEFT 

Top line represents top, left column left.

ORIENT_TOP_RIGHT 

Flipped horizontally

ORIENT_BOTTOM_LEFT 

Flipped vertically

ORIENT_BOTTOM_RIGHT 

Rotated 180 degrees

ORIENT_LEFT_TOP 

Transposed

ORIENT_LEFT_BOTTOM 

Rotated 90 degrees clockwise

ORIENT_RIGHT_TOP 

Rotated 90 degrees anti-clockwise

ORIENT_RIGHT_BOTTOM 

Anti-transposed

Function Documentation

VLC_API void es_format_Clean ( es_format_t fmt)

This function will clean up a es_format_t and release all associated resources. You can call it multiple times on the same structure.

VLC_API int es_format_Copy ( es_format_t p_dst,
const es_format_t p_src 
)

This functions will copy a es_format_t.

VLC_API void es_format_Init ( es_format_t ,
int  i_cat,
vlc_fourcc_t  i_codec 
)

This function will initialize a es_format_t structure.

VLC_API void es_format_InitFromVideo ( es_format_t ,
const video_format_t  
)

This function will initialize a es_format_t structure from a video_format_t.

VLC_API bool es_format_IsSimilar ( const es_format_t ,
const es_format_t  
)

This function will check if the first ES format is similar to the second one.

All descriptive fields are ignored.

VLC_API void video_format_CopyCrop ( video_format_t ,
const video_format_t  
)

It will copy the crop properties from a video_format_t to another.

VLC_API void video_format_FixRgb ( video_format_t )

This function will fill all RGB shift from RGB masks.

VLC_API bool video_format_IsSimilar ( const video_format_t ,
const video_format_t  
)

This function will check if the first video format is similar to the second one.

VLC_API void video_format_Print ( vlc_object_t ,
const char *  ,
const video_format_t  
)

It prints details about the given video_format_t

VLC_API void video_format_ScaleCropAr ( video_format_t ,
const video_format_t  
)

It will compute the crop/ar properties when scaling.

VLC_API void video_format_Setup ( video_format_t ,
vlc_fourcc_t  i_chroma,
int  i_width,
int  i_height,
int  i_sar_num,
int  i_sar_den 
)

It will fill up a video_format_t using the given arguments. Note that the video_format_t must already be initialized.