VLC
3.0.15
|
Go to the source code of this file.
Data Structures | |
struct | video_palette_t |
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 |
Typedefs | |
typedef enum audio_channel_type_t | audio_channel_type_t |
Audio channel type. More... | |
typedef enum video_orientation_t | video_orientation_t |
Picture orientation. More... | |
typedef enum video_transform_t | video_transform_t |
typedef enum video_multiview_mode_t | video_multiview_mode_t |
typedef enum video_projection_mode_t | video_projection_mode_t |
Video projection mode. More... | |
typedef enum video_color_primaries_t | video_color_primaries_t |
Video color primaries (a.k.a. More... | |
typedef enum video_transfer_func_t | video_transfer_func_t |
Video transfer functions. More... | |
typedef enum video_color_space_t | video_color_space_t |
Video color space (i.e. More... | |
typedef enum video_chroma_location_t | video_chroma_location_t |
Video chroma location. More... | |
typedef struct extra_languages_t | extra_languages_t |
ES language definition. 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'. More... | |
static int | video_format_Copy (video_format_t *p_dst, const video_format_t *p_src) |
Copy video_format_t including the palette. More... | |
static void | video_format_AdjustColorSpace (video_format_t *p_fmt) |
static void | video_format_Clean (video_format_t *p_src) |
Cleanup and free palette of this video_format_t. More... | |
void | video_format_Setup (video_format_t *, vlc_fourcc_t i_chroma, int i_width, int i_height, int i_visible_width, int i_visible_height, int i_sar_num, int i_sar_den) |
It will fill up a video_format_t using the given arguments. More... | |
void | video_format_CopyCrop (video_format_t *, const video_format_t *) |
It will copy the crop properties from a video_format_t to another. More... | |
void | video_format_ScaleCropAr (video_format_t *, const video_format_t *) |
It will compute the crop/ar properties when scaling. More... | |
void | video_format_ApplyRotation (video_format_t *out, const video_format_t *in) |
This function "normalizes" the formats orientation, by switching the a/r according to the orientation, producing a format whose orientation is ORIENT_NORMAL. More... | |
void | video_format_TransformBy (video_format_t *fmt, video_transform_t transform) |
This function applies the transform operation to fmt. More... | |
void | video_format_TransformTo (video_format_t *fmt, video_orientation_t dst_orientation) |
This function applies the transforms necessary to fmt so that the resulting fmt has the dst_orientation. More... | |
video_transform_t | video_format_GetTransform (video_orientation_t src, video_orientation_t dst) |
Returns the operation required to transform src into dst. More... | |
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. More... | |
void | video_format_Print (vlc_object_t *, const char *, const video_format_t *) |
It prints details about the given video_format_t. More... | |
static video_transform_t | transform_Inverse (video_transform_t transform) |
void | video_format_FixRgb (video_format_t *) |
This function will fill all RGB shift from RGB masks. More... | |
void | es_format_Init (es_format_t *, int i_cat, vlc_fourcc_t i_codec) |
This function will initialize a es_format_t structure. More... | |
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. More... | |
int | es_format_Copy (es_format_t *p_dst, const es_format_t *p_src) |
This functions will copy a es_format_t. More... | |
void | es_format_Clean (es_format_t *fmt) |
This function will clean up a es_format_t and release all associated resources. More... | |
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. More... | |
static void | es_format_Change (es_format_t *fmt, int i_cat, vlc_fourcc_t i_codec) |
Changes ES format to another category Format must have been properly initialized. More... | |
This file defines the elementary streams format types
#define AOUT_CHAN_CENTER 0x1 |
#define AOUT_CHAN_LEFT 0x2 |
#define AOUT_CHAN_LFE 0x1000 |
#define AOUT_CHAN_MAX 9 |
#define AOUT_CHAN_MIDDLELEFT 0x100 |
#define AOUT_CHAN_MIDDLERIGHT 0x200 |
#define AOUT_CHAN_REARCENTER 0x10 |
#define AOUT_CHAN_REARLEFT 0x20 |
#define AOUT_CHAN_REARRIGHT 0x40 |
#define AOUT_CHAN_RIGHT 0x4 |
#define AOUT_CHANMODE_DOLBYSTEREO 0x2 |
#define AOUT_CHANMODE_DUALMONO 0x1 |
#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_6_1_MIDDLE (AOUT_CHANS_5_0_MIDDLE | AOUT_CHAN_REARCENTER | AOUT_CHAN_LFE) |
#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 |
#define AUDIO_REPLAY_GAIN_ALBUM (1) |
#define AUDIO_REPLAY_GAIN_MAX (2) |
audio replay gain description
#define AUDIO_REPLAY_GAIN_TRACK (0) |
#define CHROMA_LOCATION_MAX CHROMA_LOCATION_BOTTOM_CENTER |
#define COLOR_PRIMARIES_BT470_BG COLOR_PRIMARIES_BT601_625 |
#define COLOR_PRIMARIES_BT470_M COLOR_PRIMARIES_FCC1953 |
#define COLOR_PRIMARIES_EBU_3213 COLOR_PRIMARIES_BT601_625 |
#define COLOR_PRIMARIES_MAX COLOR_PRIMARIES_FCC1953 |
#define COLOR_PRIMARIES_SMTPE_170 COLOR_PRIMARIES_BT601_525 |
#define COLOR_PRIMARIES_SMTPE_240 COLOR_PRIMARIES_BT601_525 /* Only differs from 1e10-4 in white Y */ |
#define COLOR_PRIMARIES_SMTPE_RP145 COLOR_PRIMARIES_BT601_525 |
#define COLOR_PRIMARIES_SRGB COLOR_PRIMARIES_BT709 |
#define COLOR_SPACE_MAX COLOR_SPACE_BT2020 |
#define COLOR_SPACE_SMPTE_170 COLOR_SPACE_BT601 |
#define COLOR_SPACE_SMPTE_240 COLOR_SPACE_SMPTE_170 |
#define COLOR_SPACE_SRGB COLOR_SPACE_BT709 |
#define ES_CATEGORY_COUNT (DATA_ES + 1) |
#define ES_PRIORITY_MIN ES_PRIORITY_NOT_SELECTABLE |
#define ES_PRIORITY_NOT_DEFAULTABLE -1 |
#define ES_PRIORITY_NOT_SELECTABLE -2 |
ES format definition.
#define ES_PRIORITY_SELECTABLE_MIN 0 |
#define INPUT_CHAN_MAX 64 |
#define ORIENT_FROM_EXIF | ( | exif | ) | ((0x57642310U >> (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 | ) | ((0x76853421U >> (4 * (orient))) & 15) |
Convert enum video_orientation_t to EXIF.
#define ORIENT_VFLIP | ( | orient | ) | ((orient) ^ 2) |
Applies vertical flip to an orientation.
#define SPU_PALETTE_DEFINED 0xbeefbeef |
#define TRANSFER_FUNC_ARIB_B67 TRANSFER_FUNC_HLG |
#define TRANSFER_FUNC_BT2020 TRANSFER_FUNC_BT709 |
#define TRANSFER_FUNC_MAX TRANSFER_FUNC_HLG |
#define TRANSFER_FUNC_SMPTE_170 TRANSFER_FUNC_BT709 |
#define TRANSFER_FUNC_SMPTE_274 TRANSFER_FUNC_BT709 |
#define TRANSFER_FUNC_SMPTE_293 TRANSFER_FUNC_BT709 |
#define TRANSFER_FUNC_SMPTE_296 TRANSFER_FUNC_BT709 |
#define VIDEO_PALETTE_COLORS_MAX 256 |
video palette data
typedef enum audio_channel_type_t audio_channel_type_t |
Audio channel type.
typedef struct extra_languages_t extra_languages_t |
ES language definition.
typedef enum video_chroma_location_t video_chroma_location_t |
Video chroma location.
typedef enum video_color_primaries_t video_color_primaries_t |
Video color primaries (a.k.a.
chromacities)
typedef enum video_color_space_t video_color_space_t |
Video color space (i.e.
YCbCr matrices)
typedef enum video_multiview_mode_t video_multiview_mode_t |
typedef enum video_orientation_t video_orientation_t |
Picture orientation.
typedef enum video_projection_mode_t video_projection_mode_t |
Video projection mode.
typedef enum video_transfer_func_t video_transfer_func_t |
Video transfer functions.
typedef enum video_transform_t video_transform_t |
enum audio_channel_type_t |
enum es_format_category_e |
enum video_color_space_t |
enum video_orientation_t |
Picture orientation.
enum video_transform_t |
|
inlinestatic |
Changes ES format to another category Format must have been properly initialized.
References es_format_Clean(), es_format_Init(), and i_codec.
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.
Referenced by CmdInitSend(), DecoderUpdateFormatLocked(), DeleteDecoder(), DeleteEncoder(), DeleteFilter(), es_format_Change(), EsOutControlLocked(), EsOutSend(), filter_chain_AppendInner(), filter_chain_Delete(), filter_chain_DeleteFilter(), filter_chain_Reset(), input_item_Release(), input_item_UpdateTracksInfo(), LoadDecoder(), ReloadDecoder(), and UnloadDecoder().
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_Init | ( | es_format_t * | , |
int | i_cat, | ||
vlc_fourcc_t | i_codec | ||
) |
This function will initialize a es_format_t structure.
Referenced by CreateDecoder(), es_format_Change(), filter_chain_NewInner(), filter_NewBlend(), ImageConvert(), ImageWrite(), and LoadDecoder().
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.
Referenced by CreateDecoder(), and CreateEncoder().
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.
Referenced by DecoderProcess().
|
inlinestatic |
References transform(), TRANSFORM_R270, and TRANSFORM_R90.
|
inlinestatic |
References COLOR_PRIMARIES_BT601_525, COLOR_PRIMARIES_BT601_625, COLOR_PRIMARIES_BT709, COLOR_PRIMARIES_UNDEF, COLOR_SPACE_BT601, COLOR_SPACE_BT709, COLOR_SPACE_UNDEF, video_format_t::i_visible_height, video_format_t::primaries, video_format_t::space, video_format_t::transfer, TRANSFER_FUNC_BT709, TRANSFER_FUNC_SRGB, and TRANSFER_FUNC_UNDEF.
Referenced by aout_request_vout(), SpuRenderRegion(), and vout_update_format().
void video_format_ApplyRotation | ( | video_format_t * | out, |
const video_format_t * | in | ||
) |
This function "normalizes" the formats orientation, by switching the a/r according to the orientation, producing a format whose orientation is ORIENT_NORMAL.
It makes a shallow copy (pallette is not alloc'ed).
|
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 ImageRead(), subpicture_Delete(), subpicture_region_Delete(), subpicture_region_New(), subpicture_region_private_Delete(), subpicture_Update(), video_splitter_Delete(), and vout_display_Delete().
|
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 CreateFilter(), ImageRead(), subpicture_region_New(), subpicture_region_private_New(), subpicture_Update(), 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.
Referenced by picture_NewFromResource().
void video_format_FixRgb | ( | video_format_t * | ) |
This function will fill all RGB shift from RGB masks.
Referenced by BitMapFormatIsSimilar().
video_transform_t video_format_GetTransform | ( | video_orientation_t | src, |
video_orientation_t | dst | ||
) |
Returns the operation required to transform src into dst.
|
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::pose, and vlc_viewpoint_init().
Referenced by OSDRegion(), spuregion_CreateFromPicture(), vout_OSDBackground(), vout_OSDEpgSlider(), vout_OSDImage(), and vout_OSDTextRegion().
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.
Referenced by subpicture_Update().
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_ScaleCropAr | ( | video_format_t * | , |
const video_format_t * | |||
) |
It will compute the crop/ar properties when scaling.
void video_format_Setup | ( | video_format_t * | , |
vlc_fourcc_t | i_chroma, | ||
int | i_width, | ||
int | i_height, | ||
int | i_visible_width, | ||
int | i_visible_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.
Referenced by picture_NewFromResource().
void video_format_TransformBy | ( | video_format_t * | fmt, |
video_transform_t | transform | ||
) |
This function applies the transform operation to fmt.
void video_format_TransformTo | ( | video_format_t * | fmt, |
video_orientation_t | dst_orientation | ||
) |
This function applies the transforms necessary to fmt so that the resulting fmt has the dst_orientation.