|
VLC
2.1.0-git
|
This file defines the elementary streams format types. More...

Go to the source code of this file.
Data Structures | |
| struct | video_palette_t |
| video palette data More... | |
| struct | audio_replay_gain_t |
| struct | audio_format_t |
| audio format description More... | |
| struct | video_format_t |
| video format description More... | |
| struct | subs_format_t |
| subtitles format description More... | |
| struct | extra_languages_t |
| ES language definition. More... | |
| struct | es_format_t |
| ES format definition. More... | |
Typedefs | |
| typedef enum video_orientation_t | video_orientation_t |
| Picture orientation. | |
| typedef struct extra_languages_t | extra_languages_t |
| ES language definition. | |
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 } |
| Picture orientation. More... | |
| enum | es_format_category_e { UNKNOWN_ES = 0x00, VIDEO_ES = 0x01, AUDIO_ES = 0x02, SPU_ES = 0x03, NAV_ES = 0x04 } |
| ES Categories. More... | |
Functions | |
| static void | video_format_Init (video_format_t *p_src, vlc_fourcc_t i_chroma) |
| Initialize a video_format_t structure with chroma 'i_chroma'. | |
| static int | video_format_Copy (video_format_t *p_dst, const video_format_t *p_src) |
| Copy video_format_t including the palette. | |
| static void | video_format_Clean (video_format_t *p_src) |
| Cleanup and free palette of this video_format_t. | |
| 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. | |
| void | video_format_CopyCrop (video_format_t *, const video_format_t *) |
| It will copy the crop properties from a video_format_t to another. | |
| void | video_format_ScaleCropAr (video_format_t *, const video_format_t *) |
| It will compute the crop/ar properties when scaling. | |
| 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. | |
| void | video_format_Print (vlc_object_t *, const char *, const video_format_t *) |
| It prints details about the given video_format_t. | |
| void | video_format_FixRgb (video_format_t *) |
| This function will fill all RGB shift from RGB masks. | |
| void | es_format_Init (es_format_t *, int i_cat, vlc_fourcc_t i_codec) |
| This function will initialize a es_format_t structure. | |
| 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. | |
| int | es_format_Copy (es_format_t *p_dst, const es_format_t *p_src) |
| This functions will copy a es_format_t. | |
| void | es_format_Clean (es_format_t *fmt) |
| This function will clean up a es_format_t and release all associated resources. | |
| 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. | |
This file defines the elementary streams format types.
| #define AOUT_CHAN_CENTER 0x1 |
Referenced by aout_CheckChannelExtraction(), and aout_FormatPrintChannels().
| #define AOUT_CHAN_DOLBYSTEREO 0x10000 |
Referenced by aout_FormatPrintChannels(), aout_new_buffer(), and aout_OutputNew().
| #define AOUT_CHAN_DUALMONO 0x20000 |
Referenced by aout_CheckChannelExtraction(), aout_FormatPrintChannels(), and aout_OutputNew().
| #define AOUT_CHAN_LEFT 0x2 |
Referenced by aout_CheckChannelExtraction(), aout_FormatPrintChannels(), aout_new_buffer(), and aout_OutputNew().
| #define AOUT_CHAN_LFE 0x1000 |
Referenced by aout_FormatPrintChannels().
| #define AOUT_CHAN_MAX 9 |
Referenced by aout_ChannelReorder(), and aout_CheckChannelExtraction().
| #define AOUT_CHAN_MIDDLELEFT 0x100 |
Referenced by aout_FormatPrintChannels().
| #define AOUT_CHAN_MIDDLERIGHT 0x200 |
Referenced by aout_FormatPrintChannels().
| #define AOUT_CHAN_PHYSMASK 0xFFFF |
Referenced by aout_new_buffer(), and aout_OutputNew().
| #define AOUT_CHAN_REARCENTER 0x10 |
Referenced by aout_FormatPrintChannels().
| #define AOUT_CHAN_REARLEFT 0x20 |
Referenced by aout_FormatPrintChannels().
| #define AOUT_CHAN_REARRIGHT 0x40 |
Referenced by aout_FormatPrintChannels().
| #define AOUT_CHAN_REVERSESTEREO 0x40000 |
Referenced by aout_FormatPrintChannels(), and aout_OutputNew().
| #define AOUT_CHAN_RIGHT 0x4 |
Referenced by aout_CheckChannelExtraction(), aout_FormatPrintChannels(), aout_new_buffer(), and aout_OutputNew().
| #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_0_MIDDLE (AOUT_CHANS_FRONT | AOUT_CHANS_MIDDLE) |
| #define AOUT_CHANS_4_1 (AOUT_CHANS_4_0 | AOUT_CHAN_LFE) |
| #define AOUT_CHANS_4_CENTER_REAR (AOUT_CHANS_FRONT | AOUT_CHANS_CENTER) |
| #define AOUT_CHANS_5_0 (AOUT_CHANS_4_0 | AOUT_CHAN_CENTER) |
| #define AOUT_CHANS_5_0_MIDDLE (AOUT_CHANS_4_0_MIDDLE | 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_CENTER (AOUT_CHAN_CENTER | AOUT_CHAN_REARCENTER) |
| #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_STEREO AOUT_CHANS_2_0 |
Referenced by aout_OutputNew().
| #define AUDIO_REPLAY_GAIN_ALBUM (1) |
Referenced by aout_ReplayGainSelect(), and vlc_audio_replay_gain_MergeFromMeta().
| #define AUDIO_REPLAY_GAIN_MAX (2) |
audio replay gain description
Referenced by aout_ReplayGainSelect(), CreateDecoder(), EsOutAdd(), and EsOutUpdateInfo().
| #define AUDIO_REPLAY_GAIN_TRACK (0) |
Referenced by aout_ReplayGainSelect(), EsOutUpdateInfo(), and vlc_audio_replay_gain_MergeFromMeta().
| #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 struct extra_languages_t extra_languages_t |
ES language definition.
| typedef enum video_orientation_t video_orientation_t |
Picture orientation.
| enum es_format_category_e |
| enum video_orientation_t |
Picture orientation.
| 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.
References es_format_t::i_extra, es_format_t::i_extra_languages, es_format_t::p_extra, es_format_t::p_extra_languages, video_format_t::p_palette, extra_languages_t::psz_description, es_format_t::psz_description, subs_format_t::psz_encoding, extra_languages_t::psz_language, es_format_t::psz_language, es_format_t::subs, and es_format_t::video.
Referenced by CmdCleanAdd(), CmdCleanControl(), CreateDecoder(), DecoderProcessAudio(), DecoderProcessVideo(), DecoderUpdateFormatLocked(), DeleteDecoder(), DeleteEncoder(), DeleteFilter(), demux_PacketizerDestroy(), demux_PacketizerNew(), EsOutDel(), EsOutSend(), EsOutTerminate(), filter_chain_AppendFilterInternal(), filter_chain_Delete(), filter_chain_Reset(), input_item_Release(), and input_item_UpdateTracksInfo().
| int es_format_Copy | ( | es_format_t * | p_dst, |
| const es_format_t * | p_src | ||
| ) |
This functions will copy a es_format_t.
< No error
References es_format_t::i_extra, es_format_t::i_extra_languages, es_format_t::p_extra, es_format_t::p_extra_languages, video_format_t::p_palette, extra_languages_t::psz_description, es_format_t::psz_description, subs_format_t::psz_encoding, extra_languages_t::psz_language, es_format_t::psz_language, strdup(), es_format_t::subs, es_format_t::video, and VLC_SUCCESS.
Referenced by CmdInitAdd(), CmdInitControl(), CreateDecoder(), DecoderProcessAudio(), DecoderProcessVideo(), DecoderUpdateFormatLocked(), EsOutAdd(), filter_chain_AppendFilterInternal(), filter_chain_Reset(), input_DecoderHasFormatChanged(), and input_item_UpdateTracksInfo().
| void es_format_Init | ( | es_format_t * | , |
| int | i_cat, | ||
| vlc_fourcc_t | i_codec | ||
| ) |
This function will initialize a es_format_t structure.
References es_format_t::audio, es_format_t::audio_replay_gain, es_format_t::b_packetized, es_format_t::i_bitrate, es_format_t::i_cat, es_format_t::i_codec, i_codec, es_format_t::i_extra, es_format_t::i_extra_languages, es_format_t::i_group, es_format_t::i_id, es_format_t::i_level, es_format_t::i_original_fourcc, es_format_t::i_priority, es_format_t::i_profile, es_format_t::p_extra, es_format_t::p_extra_languages, es_format_t::psz_description, es_format_t::psz_language, es_format_t::subs, and es_format_t::video.
Referenced by CreateDecoder(), CreateEncoder(), demux_PacketizerNew(), es_format_InitFromVideo(), EsOutSend(), filter_chain_New(), filter_NewBlend(), ImageConvert(), ImageFilter(), ImageWrite(), input_DecoderSetCcState(), SpuRenderCreateAndLoadScale(), SpuRenderCreateAndLoadText(), and vlm_OnMediaUpdate().
| 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.
References es_format_Init(), video_format_t::i_chroma, es_format_t::video, VIDEO_ES, and video_format_Copy().
Referenced by ThreadChangeFilters(), and VoutDisplayCreateRender().
| 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.
References es_format_t::audio, AUDIO_ES, es_format_t::i_cat, video_format_t::i_chroma, es_format_t::i_codec, audio_format_t::i_format, audio_format_t::i_original_channels, audio_format_t::i_physical_channels, audio_format_t::i_rate, SPU_ES, es_format_t::video, VIDEO_ES, video_format_IsSimilar(), and vlc_fourcc_GetCodec().
Referenced by ThreadChangeFilters().
|
inlinestatic |
Cleanup and free palette of this video_format_t.
| p_src | video_format_t structure to clean |
References video_format_t::p_palette.
Referenced by subpicture_Update(), ThreadChangeFilters(), ThreadStop(), video_splitter_Delete(), VoutCreate(), and VoutDestructor().
|
inlinestatic |
Copy video_format_t including the palette.
| p_dst | video_format_t to copy to |
| p_src | video_format_t to copy from |
< Not enough memory
< No error
References video_format_t::p_palette, VLC_ENOMEM, and VLC_SUCCESS.
Referenced by es_format_InitFromVideo(), subpicture_Update(), ThreadChangeFilters(), ThreadStart(), video_splitter_New(), vout_display_New(), and VoutValidateFormat().
| void video_format_CopyCrop | ( | video_format_t * | , |
| const video_format_t * | |||
| ) |
It will copy the crop properties from a video_format_t to another.
References video_format_t::i_visible_height, video_format_t::i_visible_width, video_format_t::i_x_offset, and video_format_t::i_y_offset.
Referenced by picture_NewFromResource(), VideoFormatCopyCropAr(), and vout_UpdateDisplaySourceProperties().
| void video_format_FixRgb | ( | video_format_t * | ) |
This function will fill all RGB shift from RGB masks.
References video_format_t::i_bmask, video_format_t::i_chroma, video_format_t::i_gmask, video_format_t::i_lbshift, video_format_t::i_lgshift, video_format_t::i_lrshift, video_format_t::i_rbshift, video_format_t::i_rgshift, video_format_t::i_rmask, video_format_t::i_rrshift, MaskToShift(), VLC_CODEC_RGB15, VLC_CODEC_RGB16, VLC_CODEC_RGB24, and VLC_CODEC_RGB32.
Referenced by video_format_IsSimilar(), and VoutValidateFormat().
|
inlinestatic |
Initialize a video_format_t structure with chroma 'i_chroma'.
| p_src | pointer to video_format_t structure |
| i_chroma | chroma value to use |
References video_format_t::i_chroma, video_format_t::i_sar_den, video_format_t::i_sar_num, and video_format_t::p_palette.
Referenced by OSDRegion(), OSDTextUpdate(), subpicture_New(), vout_OSDEpgSlider(), and vout_OSDEpgText().
| 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.
References video_format_t::i_bmask, video_format_t::i_chroma, video_format_t::i_gmask, video_format_t::i_height, video_format_t::i_rmask, video_format_t::i_sar_den, video_format_t::i_sar_num, video_format_t::i_visible_height, video_format_t::i_visible_width, video_format_t::i_width, video_format_t::i_x_offset, video_format_t::i_y_offset, video_format_FixRgb(), VLC_CODEC_RGB15, VLC_CODEC_RGB16, VLC_CODEC_RGB24, and VLC_CODEC_RGB32.
Referenced by es_format_IsSimilar(), subpicture_Update(), and ThreadReinit().
| void video_format_Print | ( | vlc_object_t * | , |
| const char * | , | ||
| const video_format_t * | |||
| ) |
It prints details about the given video_format_t.
References video_format_t::i_bmask, video_format_t::i_chroma, video_format_t::i_gmask, video_format_t::i_height, video_format_t::i_rmask, video_format_t::i_sar_den, video_format_t::i_sar_num, video_format_t::i_visible_height, video_format_t::i_visible_width, video_format_t::i_width, video_format_t::i_x_offset, video_format_t::i_y_offset, and msg_Dbg.
Referenced by ThreadStart(), and vout_ManageDisplay().
| void video_format_ScaleCropAr | ( | video_format_t * | , |
| const video_format_t * | |||
| ) |
It will compute the crop/ar properties when scaling.
References video_format_t::i_height, video_format_t::i_sar_den, video_format_t::i_sar_num, video_format_t::i_visible_height, video_format_t::i_visible_width, video_format_t::i_width, video_format_t::i_x_offset, video_format_t::i_y_offset, and vlc_ureduce().
| 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.
References video_format_t::i_bits_per_pixel, video_format_t::i_chroma, video_format_t::i_height, video_format_t::i_sar_den, video_format_t::i_sar_num, video_format_t::i_visible_height, video_format_t::i_visible_width, video_format_t::i_width, video_format_t::i_x_offset, video_format_t::i_y_offset, VIDEO_ES, VLC_CODEC_GREY, VLC_CODEC_I410, VLC_CODEC_I411, VLC_CODEC_I420, VLC_CODEC_I422, VLC_CODEC_I440, VLC_CODEC_I444, VLC_CODEC_J420, VLC_CODEC_J422, VLC_CODEC_J440, VLC_CODEC_J444, VLC_CODEC_RGB15, VLC_CODEC_RGB16, VLC_CODEC_RGB24, VLC_CODEC_RGB32, VLC_CODEC_RGB8, VLC_CODEC_RGBA, VLC_CODEC_RGBP, VLC_CODEC_UYVY, VLC_CODEC_VYUY, VLC_CODEC_XYZ12, VLC_CODEC_Y211, VLC_CODEC_YUV420A, VLC_CODEC_YUV422A, VLC_CODEC_YUVA, VLC_CODEC_YUVP, VLC_CODEC_YUYV, VLC_CODEC_YV12, VLC_CODEC_YV9, VLC_CODEC_YVYU, vlc_fourcc_GetCodec(), and vlc_ureduce().
Referenced by picture_New(), picture_NewFromResource(), and picture_Setup().
1.8.1.2