FFmpeg
sei.h
Go to the documentation of this file.
1 /*
2  * This file is part of FFmpeg.
3  *
4  * FFmpeg is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU Lesser General Public
6  * License as published by the Free Software Foundation; either
7  * version 2.1 of the License, or (at your option) any later version.
8  *
9  * FFmpeg is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12  * Lesser General Public License for more details.
13  *
14  * You should have received a copy of the GNU Lesser General Public
15  * License along with FFmpeg; if not, write to the Free Software
16  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
17  */
18 
19 #ifndef AVCODEC_SEI_H
20 #define AVCODEC_SEI_H
21 
22 // SEI payload types form a common namespace between the H.264, H.265
23 // and H.266 standards. A given payload type always has the same
24 // meaning, but some names have different payload types in different
25 // standards (e.g. scalable-nesting is 30 in H.264 but 133 in H.265).
26 // The content of the payload data depends on the standard, though
27 // many generic parts have the same interpretation everywhere (such as
28 // mastering-display-colour-volume and user-data-unregistered).
29 enum SEIType {
138 };
139 
140 /**
141  * frame_packing_arrangement types. H.265 and H.274 use only 3..5
142  * with all the other values being reserved. H.264 uses a few more values
143  * that are prefixed with SEI_FPA_H264 in the enum below.
144  *
145  * The semantics of the common values are the same for all standards.
146  */
147 typedef enum {
155 } SEIFpaType;
156 
157 #endif /* AVCODEC_SEI_H */
SEI_TYPE_ALPHA_CHANNEL_INFO
@ SEI_TYPE_ALPHA_CHANNEL_INFO
Definition: sei.h:123
SEI_TYPE_VIEW_DEPENDENCY_CHANGE
@ SEI_TYPE_VIEW_DEPENDENCY_CHANGE
Definition: sei.h:72
SEI_TYPE_INTER_LAYER_CONSTRAINED_TILE_SETS
@ SEI_TYPE_INTER_LAYER_CONSTRAINED_TILE_SETS
Definition: sei.h:119
SEI_TYPE_DEPTH_TIMING
@ SEI_TYPE_DEPTH_TIMING
Definition: sei.h:82
SEI_TYPE_MCTS_EXTRACTION_INFO_SETS
@ SEI_TYPE_MCTS_EXTRACTION_INFO_SETS
Definition: sei.h:116
SEI_FPA_H264_TYPE_CHECKERBOARD
@ SEI_FPA_H264_TYPE_CHECKERBOARD
Definition: sei.h:148
SEI_FPA_TYPE_INTERLEAVE_TEMPORAL
@ SEI_FPA_TYPE_INTERLEAVE_TEMPORAL
Definition: sei.h:153
SEI_TYPE_THREE_DIMENSIONAL_REFERENCE_DISPLAYS_INFO_4
@ SEI_TYPE_THREE_DIMENSIONAL_REFERENCE_DISPLAYS_INFO_4
Definition: sei.h:81
SEI_TYPE_SCENE_INFO
@ SEI_TYPE_SCENE_INFO
Definition: sei.h:39
SEI_TYPE_CUBEMAP_PROJECTION
@ SEI_TYPE_CUBEMAP_PROJECTION
Definition: sei.h:110
SEI_TYPE_NON_REQUIRED_LAYER_REP
@ SEI_TYPE_NON_REQUIRED_LAYER_REP
Definition: sei.h:56
SEI_TYPE_OMNI_VIEWPORT
@ SEI_TYPE_OMNI_VIEWPORT
Definition: sei.h:114
SEI_TYPE_DEPTH_REPRESENTATION_INFO_4
@ SEI_TYPE_DEPTH_REPRESENTATION_INFO_4
Definition: sei.h:80
SEI_TYPE_MCTS_EXTRACTION_INFO_NESTING
@ SEI_TYPE_MCTS_EXTRACTION_INFO_NESTING
Definition: sei.h:117
SEI_TYPE_PAN_SCAN_RECT
@ SEI_TYPE_PAN_SCAN_RECT
Definition: sei.h:32
SEI_TYPE_DEPENDENT_RAP_INDICATION
@ SEI_TYPE_DEPENDENT_RAP_INDICATION
Definition: sei.h:104
SEI_TYPE_KNEE_FUNCTION_INFO
@ SEI_TYPE_KNEE_FUNCTION_INFO
Definition: sei.h:100
SEI_TYPE_PROGRESSIVE_REFINEMENT_SEGMENT_START
@ SEI_TYPE_PROGRESSIVE_REFINEMENT_SEGMENT_START
Definition: sei.h:46
SEI_FPA_TYPE_TOP_BOTTOM
@ SEI_FPA_TYPE_TOP_BOTTOM
Definition: sei.h:152
SEI_TYPE_FULL_FRAME_FREEZE_RELEASE
@ SEI_TYPE_FULL_FRAME_FREEZE_RELEASE
Definition: sei.h:44
SEI_TYPE_SUB_SEQ_INFO
@ SEI_TYPE_SUB_SEQ_INFO
Definition: sei.h:40
SEI_TYPE_BASE_VIEW_TEMPORAL_HRD
@ SEI_TYPE_BASE_VIEW_TEMPORAL_HRD
Definition: sei.h:74
SEI_TYPE_LAYERS_NOT_PRESENT_4
@ SEI_TYPE_LAYERS_NOT_PRESENT_4
Definition: sei.h:58
SEI_TYPE_THREE_DIMENSIONAL_REFERENCE_DISPLAYS_INFO
@ SEI_TYPE_THREE_DIMENSIONAL_REFERENCE_DISPLAYS_INFO
Definition: sei.h:127
SEI_TYPE_PARAMETER_SETS_INCLUSION_INDICATION
@ SEI_TYPE_PARAMETER_SETS_INCLUSION_INDICATION
Definition: sei.h:88
SEI_TYPE_LAYERS_NOT_PRESENT_5
@ SEI_TYPE_LAYERS_NOT_PRESENT_5
Definition: sei.h:118
SEI_TYPE_REGION_REFRESH_INFO
@ SEI_TYPE_REGION_REFRESH_INFO
Definition: sei.h:93
SEI_TYPE_MULTIVIEW_SCENE_INFO_4
@ SEI_TYPE_MULTIVIEW_SCENE_INFO_4
Definition: sei.h:69
SEI_FPA_H264_TYPE_INTERLEAVE_COLUMN
@ SEI_FPA_H264_TYPE_INTERLEAVE_COLUMN
Definition: sei.h:149
SEI_TYPE_SCALABLE_NESTING_5
@ SEI_TYPE_SCALABLE_NESTING_5
Definition: sei.h:92
SEI_TYPE_FULL_FRAME_SNAPSHOT
@ SEI_TYPE_FULL_FRAME_SNAPSHOT
Definition: sei.h:45
SEI_TYPE_SUB_PIC_SCALABLE_LAYER
@ SEI_TYPE_SUB_PIC_SCALABLE_LAYER
Definition: sei.h:55
SEI_TYPE_MULTIVIEW_ACQUISITION_INFO_4
@ SEI_TYPE_MULTIVIEW_ACQUISITION_INFO_4
Definition: sei.h:70
SEI_TYPE_AMBIENT_VIEWING_ENVIRONMENT
@ SEI_TYPE_AMBIENT_VIEWING_ENVIRONMENT
Definition: sei.h:107
SEI_TYPE_PARALLEL_DECODING_INFO
@ SEI_TYPE_PARALLEL_DECODING_INFO
Definition: sei.h:66
SEI_TYPE_FILLER_PAYLOAD
@ SEI_TYPE_FILLER_PAYLOAD
Definition: sei.h:33
SEI_TYPE_DECODING_UNIT_INFO
@ SEI_TYPE_DECODING_UNIT_INFO
Definition: sei.h:89
SEI_TYPE_SPARE_PIC
@ SEI_TYPE_SPARE_PIC
Definition: sei.h:38
SEI_TYPE_VIEW_SCALABILITY_INFO
@ SEI_TYPE_VIEW_SCALABILITY_INFO
Definition: sei.h:68
SEI_TYPE_FRAME_PACKING_ARRANGEMENT
@ SEI_TYPE_FRAME_PACKING_ARRANGEMENT
Definition: sei.h:75
SEI_TYPE_TL0_DEP_REP_INDEX
@ SEI_TYPE_TL0_DEP_REP_INDEX
Definition: sei.h:64
SEI_FPA_H264_TYPE_INTERLEAVE_ROW
@ SEI_FPA_H264_TYPE_INTERLEAVE_ROW
Definition: sei.h:150
SEI_TYPE_TEMPORAL_MOTION_CONSTRAINED_TILE_SETS
@ SEI_TYPE_TEMPORAL_MOTION_CONSTRAINED_TILE_SETS
Definition: sei.h:98
SEIType
SEIType
Definition: sei.h:29
SEI_TYPE_USER_DATA_REGISTERED_ITU_T_T35
@ SEI_TYPE_USER_DATA_REGISTERED_ITU_T_T35
Definition: sei.h:34
SEI_TYPE_EQUIRECTANGULAR_PROJECTION
@ SEI_TYPE_EQUIRECTANGULAR_PROJECTION
Definition: sei.h:109
SEI_TYPE_POST_FILTER_HINT
@ SEI_TYPE_POST_FILTER_HINT
Definition: sei.h:52
SEI_TYPE_TIME_CODE
@ SEI_TYPE_TIME_CODE
Definition: sei.h:95
SEI_TYPE_TONE_MAPPING_INFO
@ SEI_TYPE_TONE_MAPPING_INFO
Definition: sei.h:53
SEI_TYPE_DEBLOCKING_FILTER_DISPLAY_PREFERENCE
@ SEI_TYPE_DEBLOCKING_FILTER_DISPLAY_PREFERENCE
Definition: sei.h:50
SEI_TYPE_SAMPLE_ASPECT_RATIO_INFO
@ SEI_TYPE_SAMPLE_ASPECT_RATIO_INFO
Definition: sei.h:137
SEI_TYPE_ANNOTATED_REGIONS
@ SEI_TYPE_ANNOTATED_REGIONS
Definition: sei.h:135
SEI_TYPE_TL_SWITCHING_POINT
@ SEI_TYPE_TL_SWITCHING_POINT
Definition: sei.h:65
SEI_TYPE_GREEN_METADATA
@ SEI_TYPE_GREEN_METADATA
Definition: sei.h:85
SEI_TYPE_REDUNDANT_PIC_PROPERTY
@ SEI_TYPE_REDUNDANT_PIC_PROPERTY
Definition: sei.h:63
SEI_TYPE_LAYER_DEPENDENCY_CHANGE
@ SEI_TYPE_LAYER_DEPENDENCY_CHANGE
Definition: sei.h:59
SEI_TYPE_DEC_REF_PIC_MARKING_REPETITION
@ SEI_TYPE_DEC_REF_PIC_MARKING_REPETITION
Definition: sei.h:37
SEI_TYPE_NO_DISPLAY
@ SEI_TYPE_NO_DISPLAY
Definition: sei.h:94
SEI_TYPE_NON_REQUIRED_VIEW_COMPONENT
@ SEI_TYPE_NON_REQUIRED_VIEW_COMPONENT
Definition: sei.h:71
SEI_TYPE_DEPTH_SAMPLING_INFO
@ SEI_TYPE_DEPTH_SAMPLING_INFO
Definition: sei.h:83
SEI_TYPE_MULTIVIEW_VIEW_POSITION_4
@ SEI_TYPE_MULTIVIEW_VIEW_POSITION_4
Definition: sei.h:76
SEI_TYPE_MULTIVIEW_VIEW_POSITION_5
@ SEI_TYPE_MULTIVIEW_VIEW_POSITION_5
Definition: sei.h:131
SEI_TYPE_PROGRESSIVE_REFINEMENT_SEGMENT_END
@ SEI_TYPE_PROGRESSIVE_REFINEMENT_SEGMENT_END
Definition: sei.h:47
SEI_TYPE_SCALABLE_NESTING_4
@ SEI_TYPE_SCALABLE_NESTING_4
Definition: sei.h:60
SEI_TYPE_QUALITY_LAYER_INTEGRITY_CHECK
@ SEI_TYPE_QUALITY_LAYER_INTEGRITY_CHECK
Definition: sei.h:62
SEI_TYPE_SCALABILITY_INFO
@ SEI_TYPE_SCALABILITY_INFO
Definition: sei.h:54
SEI_TYPE_STRUCTURE_OF_PICTURES_INFO
@ SEI_TYPE_STRUCTURE_OF_PICTURES_INFO
Definition: sei.h:86
SEI_TYPE_MASTERING_DISPLAY_COLOUR_VOLUME
@ SEI_TYPE_MASTERING_DISPLAY_COLOUR_VOLUME
Definition: sei.h:96
SEI_FPA_TYPE_SIDE_BY_SIDE
@ SEI_FPA_TYPE_SIDE_BY_SIDE
Definition: sei.h:151
SEI_TYPE_ALTERNATIVE_TRANSFER_CHARACTERISTICS
@ SEI_TYPE_ALTERNATIVE_TRANSFER_CHARACTERISTICS
Definition: sei.h:106
SEI_TYPE_CHROMA_RESAMPLING_FILTER_HINT
@ SEI_TYPE_CHROMA_RESAMPLING_FILTER_HINT
Definition: sei.h:99
SEI_TYPE_DEPTH_REPRESENTATION_INFO_5
@ SEI_TYPE_DEPTH_REPRESENTATION_INFO_5
Definition: sei.h:128
SEI_TYPE_REGIONWISE_PACKING
@ SEI_TYPE_REGIONWISE_PACKING
Definition: sei.h:113
SEI_FPA_H264_TYPE_2D
@ SEI_FPA_H264_TYPE_2D
Definition: sei.h:154
SEI_TYPE_ALTERNATIVE_DEPTH_INFO
@ SEI_TYPE_ALTERNATIVE_DEPTH_INFO
Definition: sei.h:132
SEI_TYPE_MOTION_CONSTRAINED_SLICE_GROUP_SET
@ SEI_TYPE_MOTION_CONSTRAINED_SLICE_GROUP_SET
Definition: sei.h:48
SEI_TYPE_MVCD_SCALABLE_NESTING
@ SEI_TYPE_MVCD_SCALABLE_NESTING
Definition: sei.h:78
SEI_TYPE_REGIONAL_NESTING
@ SEI_TYPE_REGIONAL_NESTING
Definition: sei.h:115
SEI_TYPE_BSP_NESTING
@ SEI_TYPE_BSP_NESTING
Definition: sei.h:120
SEI_TYPE_PIC_TIMING
@ SEI_TYPE_PIC_TIMING
Definition: sei.h:31
SEI_TYPE_DISPLAY_ORIENTATION
@ SEI_TYPE_DISPLAY_ORIENTATION
Definition: sei.h:77
SEI_TYPE_OVERLAY_INFO
@ SEI_TYPE_OVERLAY_INFO
Definition: sei.h:124
SEI_TYPE_CONTENT_COLOUR_VOLUME
@ SEI_TYPE_CONTENT_COLOUR_VOLUME
Definition: sei.h:108
SEI_TYPE_SUB_SEQ_CHARACTERISTICS
@ SEI_TYPE_SUB_SEQ_CHARACTERISTICS
Definition: sei.h:42
SEI_TYPE_SPHERE_ROTATION
@ SEI_TYPE_SPHERE_ROTATION
Definition: sei.h:112
SEI_TYPE_PRIORITY_LAYER_INFO
@ SEI_TYPE_PRIORITY_LAYER_INFO
Definition: sei.h:57
SEIFpaType
SEIFpaType
frame_packing_arrangement types.
Definition: sei.h:147
SEI_TYPE_MULTIVIEW_SCENE_INFO_5
@ SEI_TYPE_MULTIVIEW_SCENE_INFO_5
Definition: sei.h:129
SEI_TYPE_BUFFERING_PERIOD
@ SEI_TYPE_BUFFERING_PERIOD
Definition: sei.h:30
SEI_TYPE_MVCD_VIEW_SCALABILITY_INFO
@ SEI_TYPE_MVCD_VIEW_SCALABILITY_INFO
Definition: sei.h:79
SEI_TYPE_USER_DATA_UNREGISTERED
@ SEI_TYPE_USER_DATA_UNREGISTERED
Definition: sei.h:35
SEI_TYPE_BSP_INITIAL_ARRIVAL_TIME
@ SEI_TYPE_BSP_INITIAL_ARRIVAL_TIME
Definition: sei.h:121
SEI_TYPE_TEMPORAL_MV_PREDICTION_CONSTRAINTS
@ SEI_TYPE_TEMPORAL_MV_PREDICTION_CONSTRAINTS
Definition: sei.h:125
SEI_TYPE_SUB_SEQ_LAYER_CHARACTERISTICS
@ SEI_TYPE_SUB_SEQ_LAYER_CHARACTERISTICS
Definition: sei.h:41
SEI_TYPE_OPERATION_POINTS_NOT_PRESENT
@ SEI_TYPE_OPERATION_POINTS_NOT_PRESENT
Definition: sei.h:73
SEI_TYPE_SUBPIC_LEVEL_INFO
@ SEI_TYPE_SUBPIC_LEVEL_INFO
Definition: sei.h:136
SEI_TYPE_RECOVERY_POINT
@ SEI_TYPE_RECOVERY_POINT
Definition: sei.h:36
SEI_TYPE_DECODED_PICTURE_HASH
@ SEI_TYPE_DECODED_PICTURE_HASH
Definition: sei.h:91
SEI_TYPE_SEI_PREFIX_INDICATION
@ SEI_TYPE_SEI_PREFIX_INDICATION
Definition: sei.h:134
SEI_TYPE_SUB_BITSTREAM_PROPERTY
@ SEI_TYPE_SUB_BITSTREAM_PROPERTY
Definition: sei.h:122
SEI_TYPE_STEREO_VIDEO_INFO
@ SEI_TYPE_STEREO_VIDEO_INFO
Definition: sei.h:51
SEI_TYPE_DEINTERLACED_FIELD_IDENTIFICATION
@ SEI_TYPE_DEINTERLACED_FIELD_IDENTIFICATION
Definition: sei.h:102
SEI_TYPE_MULTIVIEW_ACQUISITION_INFO_5
@ SEI_TYPE_MULTIVIEW_ACQUISITION_INFO_5
Definition: sei.h:130
SEI_TYPE_SEI_MANIFEST
@ SEI_TYPE_SEI_MANIFEST
Definition: sei.h:133
SEI_TYPE_TEMPORAL_SUB_LAYER_ZERO_IDX
@ SEI_TYPE_TEMPORAL_SUB_LAYER_ZERO_IDX
Definition: sei.h:90
SEI_TYPE_COLOUR_REMAPPING_INFO
@ SEI_TYPE_COLOUR_REMAPPING_INFO
Definition: sei.h:101
SEI_TYPE_FISHEYE_VIDEO_INFO
@ SEI_TYPE_FISHEYE_VIDEO_INFO
Definition: sei.h:111
SEI_TYPE_SEGMENTED_RECT_FRAME_PACKING_ARRANGEMENT
@ SEI_TYPE_SEGMENTED_RECT_FRAME_PACKING_ARRANGEMENT
Definition: sei.h:97
SEI_TYPE_FRAME_FIELD_INFO
@ SEI_TYPE_FRAME_FIELD_INFO
Definition: sei.h:126
SEI_TYPE_CONTENT_LIGHT_LEVEL_INFO
@ SEI_TYPE_CONTENT_LIGHT_LEVEL_INFO
Definition: sei.h:103
SEI_TYPE_CONSTRAINED_DEPTH_PARAMETER_SET_IDENTIFIER
@ SEI_TYPE_CONSTRAINED_DEPTH_PARAMETER_SET_IDENTIFIER
Definition: sei.h:84
SEI_TYPE_BASE_LAYER_TEMPORAL_HRD
@ SEI_TYPE_BASE_LAYER_TEMPORAL_HRD
Definition: sei.h:61
SEI_TYPE_FULL_FRAME_FREEZE
@ SEI_TYPE_FULL_FRAME_FREEZE
Definition: sei.h:43
SEI_TYPE_CODED_REGION_COMPLETION
@ SEI_TYPE_CODED_REGION_COMPLETION
Definition: sei.h:105
SEI_TYPE_FILM_GRAIN_CHARACTERISTICS
@ SEI_TYPE_FILM_GRAIN_CHARACTERISTICS
Definition: sei.h:49
SEI_TYPE_ACTIVE_PARAMETER_SETS
@ SEI_TYPE_ACTIVE_PARAMETER_SETS
Definition: sei.h:87
SEI_TYPE_MVC_SCALABLE_NESTING
@ SEI_TYPE_MVC_SCALABLE_NESTING
Definition: sei.h:67