mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-05-18 00:12:46 +00:00
Merge branch 'mpegts_apidoc_2022-03-31' into 'main'
mpegts: update documentation / defines See merge request gstreamer/gstreamer!2088
This commit is contained in:
commit
0a0111b9c3
|
@ -901,7 +901,7 @@ gst_mpegts_descriptor_from_registration (const gchar * format_identifier,
|
|||
/**
|
||||
* gst_mpegts_descriptor_parse_registration:
|
||||
* @descriptor: a %GST_MTS_DESC_REGISTRATION #GstMpegtsDescriptor
|
||||
* @registration_id: (out): The registration ID (in host endiannes)
|
||||
* @registration_id: (out): The registration ID (in host endianness)
|
||||
* @additional_info: (out) (allow-none) (array length=additional_info_length): The additional information
|
||||
* @additional_info_length: (out) (allow-none): The size of @additional_info in bytes.
|
||||
*
|
||||
|
|
|
@ -39,6 +39,8 @@
|
|||
G_BEGIN_DECLS
|
||||
|
||||
/*
|
||||
* As of ISO/IEC 13818-1:2018:
|
||||
*
|
||||
* descriptor_tag TS PS Identification
|
||||
* 0 n/a n/a Reserved
|
||||
* 1 n/a n/a Reserved
|
||||
|
@ -59,7 +61,39 @@ G_BEGIN_DECLS
|
|||
* 16 X X smoothing buffer descriptor
|
||||
* 17 X STD_descriptor
|
||||
* 18 X X IBP descriptor
|
||||
* 19-63 n/a n/a ITU-T Rec. H.222.0 | ISO/IEC 13818-1 Reserved
|
||||
* 19-26 X Defined in ISO/IEC 13818-6
|
||||
* 27 X X MPEG-4_video_descriptor
|
||||
* 28 X X MPEG-4_audio_descriptor
|
||||
* 29 X X IOD_descriptor
|
||||
* 30 X SL_descriptor
|
||||
* 31 X X FMC_descriptor
|
||||
* 32 X X external_ES_ID_descriptor
|
||||
* 33 X X MuxCode_descriptor
|
||||
* 34 X X FmxBufferSize_descriptor
|
||||
* 35 X multiplexBuffer_descriptor
|
||||
* 36 X X content_labeling_descriptor
|
||||
* 37 X X metadata_pointer_descriptor
|
||||
* 38 X X metadata_descriptor
|
||||
* 39 X X metadata_STD_descriptor
|
||||
* 40 X X AVC video descriptor
|
||||
* 41 X X IPMP_descriptor (defined in ISO/IEC 13818-11, MPEG-2 IPMP)
|
||||
* 42 X X AVC timing and HRD descriptor
|
||||
* 43 X X MPEG-2_AAC_audio_descriptor
|
||||
* 44 X X FlexMuxTiming_descriptor
|
||||
* 45 X X MPEG-4_text_descriptor
|
||||
* 46 X X MPEG-4_audio_extension_descriptor
|
||||
* 47 X X Auxiliary_video_stream_descriptor
|
||||
* 48 X X SVC extension descriptor
|
||||
* 49 X X MVC extension descriptor
|
||||
* 50 X n/a J2K video descriptor
|
||||
* 51 X X MVC operation point descriptor
|
||||
* 52 X X MPEG2_stereoscopic_video_format_descriptor
|
||||
* 53 X X Stereoscopic_program_info_descriptor
|
||||
* 54 X X Stereoscopic_video_info_descriptor
|
||||
* 55 X n/a Transport_profile_descriptor
|
||||
* 56 X n/a HEVC video descriptor
|
||||
* 57-62 n/a n/a Rec. ITU-T H.222.0 | ISO/IEC 13818-1 Reserved
|
||||
* 63 X X Extension_descriptor
|
||||
* 64-255 n/a n/a User Private
|
||||
*/
|
||||
|
||||
|
@ -73,6 +107,40 @@ G_BEGIN_DECLS
|
|||
*
|
||||
* Consult the relevant specifications for more details.
|
||||
*/
|
||||
/**
|
||||
* GST_MTS_DESC_TRANSPORT_PROTOCOL:
|
||||
*
|
||||
* The Transport_profile_descriptor may be associated in the PMT
|
||||
* to signal a profile value of transport stream in the associated
|
||||
* program.
|
||||
*
|
||||
* Since: 1.22.
|
||||
*/
|
||||
/**
|
||||
* GST_MTS_DESC_HEVC_VIDEO:
|
||||
*
|
||||
* For an HEVC video stream, the HEVC video descriptor provides
|
||||
* basic information for identifying coding parameters, such as
|
||||
* profile and level parameters of that HEVC video stream. For
|
||||
* an HEVC temporal video sub-bitstream or an HEVC temporal video
|
||||
* subset, the HEVC video descriptor provides information such as
|
||||
* the associated HEVC highest temporal sub-layer representation
|
||||
* contained in the elementary stream to which it applies. This
|
||||
* descriptor can also be used to indicate presence of WCG and
|
||||
* HDR video components in the associated PID as well as additional
|
||||
* parameters to assist decoders with HDR capability to render
|
||||
* intended video data on HDR capable display devices.
|
||||
*
|
||||
* Since: 1.22.
|
||||
*/
|
||||
/**
|
||||
* GST_MTS_DESC_EXTENSION:
|
||||
*
|
||||
* The extension descriptor provides a mechanism to extend the
|
||||
* Rec. ITU-T H.222.0 | ISO/IEC 13818-1 descriptor range.
|
||||
*
|
||||
* Since: 1.22.
|
||||
*/
|
||||
typedef enum {
|
||||
/* 0-18 ISO/IEC 13818-1 (H222.0 06/2012) */
|
||||
GST_MTS_DESC_RESERVED_00 = 0x00,
|
||||
|
@ -135,8 +203,10 @@ typedef enum {
|
|||
GST_MTS_DESC_MPEG2_STEREOSCOPIC_VIDEO_FORMAT = 0x34,
|
||||
GST_MTS_DESC_STEREOSCOPIC_PROGRAM_INFO = 0x35,
|
||||
GST_MTS_DESC_STEREOSCOPIC_VIDEO_INFO = 0x36,
|
||||
|
||||
/* 55-63 ITU-T Rec. H.222.0 | ISO/IEC 13818-1 Reserved */
|
||||
GST_MTS_DESC_TRANSPORT_PROTOCOL = 0x37,
|
||||
GST_MTS_DESC_HEVC_VIDEO = 0x38,
|
||||
/* 57-62 Rec. ITU-T H.222.0 | ISO/IEC 13818-1 Reserved */
|
||||
GST_MTS_DESC_EXTENSION = 0x3F,
|
||||
} GstMpegtsDescriptorType;
|
||||
|
||||
/**
|
||||
|
|
|
@ -182,7 +182,7 @@ typedef gboolean (*GstMpegtsPacketizeFunc) (GstMpegtsSection *section);
|
|||
* @section_type: The type of section.
|
||||
* @pid: The PID on which this section was found or belongs to.
|
||||
* @table_id: The table id of this section. See %GstMpegtsSectionTableID and
|
||||
* derivates for more information.
|
||||
* derivatives for more information.
|
||||
* @subtable_extension: This meaning differs per section. See the documentation
|
||||
* of the parsed section type for the meaning of this field
|
||||
* @version_number: Version of the section.
|
||||
|
@ -358,8 +358,96 @@ typedef struct _GstMpegtsPMT GstMpegtsPMT;
|
|||
* on the variant of mpeg-ts being used (Bluray, ATSC, DVB, ...), other
|
||||
* types might also be used, but will not conflict with these.
|
||||
*
|
||||
* Corresponds to table 2-34 of ITU H.222.0 | ISO/IEC 13818-1
|
||||
* Corresponds to table 2-34 of ITU H.222.0 | ISO/IEC 13818-1:2018
|
||||
*/
|
||||
/**
|
||||
* GST_MPEGTS_STREAM_TYPE_VIDEO_HEVC_TEMPORAL_SUBSET:
|
||||
*
|
||||
* HEVC temporal video subset of an HEVC video stream conforming to one or more
|
||||
* profiles defined in Annex A of Rec. ITU-T H.265 | ISO/IEC 23008-2
|
||||
*
|
||||
* Since: 1.22
|
||||
*/
|
||||
/**
|
||||
* GST_MPEGTS_STREAM_TYPE_VIDEO_MVCD:
|
||||
*
|
||||
* MVCD video sub-bitstream of an AVC video stream conforming to one or more profiles
|
||||
* defined in Annex I of Rec. ITU-T H.264 | ISO/IEC 14496-10
|
||||
*
|
||||
* Since: 1.22
|
||||
*/
|
||||
/**
|
||||
* GST_MPEGTS_STREAM_TYPE_TIMELINE:
|
||||
*
|
||||
* Timeline and External Media Information Stream (see ITU H.222.0 | ISO/IEC
|
||||
* 13818-1:2018 Annex T)
|
||||
*
|
||||
* Since: 1.22
|
||||
*/
|
||||
/**
|
||||
* GST_MPEGTS_STREAM_TYPE_VIDEO_HEVC_ENHANCEMENT:
|
||||
*
|
||||
* HEVC enhancement sub-partition which includes TemporalId 0 of an HEVC video
|
||||
* stream where all NALs units contained in the stream conform to one or more
|
||||
* profiles defined in Annex G of Rec. ITU-T H.265 | ISO/IEC 23008-2.
|
||||
*
|
||||
* Since: 1.22
|
||||
*/
|
||||
/**
|
||||
* GST_MPEGTS_STREAM_TYPE_VIDEO_HEVC_TEMPORAL_ENHANCEMENT:
|
||||
*
|
||||
* HEVC temporal enhancement sub-partition of an HEVC video stream where all
|
||||
* NAL units contained in the stream conform to one or more profiles defined in
|
||||
* Annex G of Rec. ITU-T H.265 | ISO/IEC 23008-2.
|
||||
*
|
||||
* Since: 1.22
|
||||
*/
|
||||
/**
|
||||
* GST_MPEGTS_STREAM_TYPE_VIDEO_HEVC_ENHANCEMENT_ANN_H:
|
||||
*
|
||||
* HEVC enhancement sub-partition which includes TemporalId 0 of an HEVC video
|
||||
* stream where all NAL units contained in the stream conform to one or more
|
||||
* profiles defined in Annex H of Rec. ITU-T H.265 | ISO/IEC 23008-2.
|
||||
*
|
||||
* Since: 1.22
|
||||
*/
|
||||
/**
|
||||
* GST_MPEGTS_STREAM_TYPE_VIDEO_HEVC_TEMPORAL_ENHANCEMENT_ANN_H:
|
||||
*
|
||||
* HEVC temporal enhancement sub-partition of an HEVC video stream where all
|
||||
* NAL units contained in the stream conform to one or more profiles defined
|
||||
* in Annex H of Rec. ITU-T H.265 | ISO/IEC 23008-2.
|
||||
*
|
||||
* Since: 1.22
|
||||
*/
|
||||
/**
|
||||
* GST_MPEGTS_STREAM_TYPE_GREEN_ACCESS_UNITS:
|
||||
*
|
||||
* Green access units carried in MPEG-2 sections.
|
||||
*
|
||||
* Since: 1.22
|
||||
*/
|
||||
/**
|
||||
* GST_MPEGTS_STREAM_TYPE_AUDIO_MHAS_MAIN:
|
||||
*
|
||||
* ISO/IEC 23008-3 Audio with MHAS transport syntax – main stream.
|
||||
*
|
||||
* Since: 1.22
|
||||
*/
|
||||
/**
|
||||
* GST_MPEGTS_STREAM_TYPE_AUDIO_MHAS_AUXILIARY:
|
||||
*
|
||||
* ISO/IEC 23008-3 Audio with MHAS transport syntax – auxiliary stream.
|
||||
*
|
||||
* Since: 1.22
|
||||
*/
|
||||
/**
|
||||
* GST_MPEGTS_STREAM_TYPE_QUALITY_ACCESS_UNITS:
|
||||
*
|
||||
* Quality access units carried in sections.
|
||||
*
|
||||
* Since: 1.22
|
||||
*/
|
||||
typedef enum {
|
||||
GST_MPEGTS_STREAM_TYPE_RESERVED_00 = 0x00,
|
||||
GST_MPEGTS_STREAM_TYPE_VIDEO_MPEG1 = 0x01,
|
||||
|
@ -398,7 +486,18 @@ typedef enum {
|
|||
GST_MPEGTS_STREAM_TYPE_VIDEO_MPEG2_STEREO_ADDITIONAL_VIEW = 0x22,
|
||||
GST_MPEGTS_STREAM_TYPE_VIDEO_H264_STEREO_ADDITIONAL_VIEW = 0x23,
|
||||
GST_MPEGTS_STREAM_TYPE_VIDEO_HEVC = 0x24,
|
||||
/* 0x24 - 0x7e : Rec. ITU-T H.222.0 | ISO/IEC 13818-1 Reserved */
|
||||
GST_MPEGTS_STREAM_TYPE_VIDEO_HEVC_TEMPORAL_SUBSET = 0x25,
|
||||
GST_MPEGTS_STREAM_TYPE_VIDEO_MVCD = 0x26,
|
||||
GST_MPEGTS_STREAM_TYPE_TIMELINE = 0x27,
|
||||
GST_MPEGTS_STREAM_TYPE_VIDEO_HEVC_ENHANCEMENT = 0x28,
|
||||
GST_MPEGTS_STREAM_TYPE_VIDEO_HEVC_TEMPORAL_ENHANCEMENT = 0x29,
|
||||
GST_MPEGTS_STREAM_TYPE_VIDEO_HEVC_ENHANCEMENT_ANN_H = 0x2A,
|
||||
GST_MPEGTS_STREAM_TYPE_VIDEO_HEVC_TEMPORAL_ENHANCEMENT_ANN_H = 0x2B,
|
||||
GST_MPEGTS_STREAM_TYPE_GREEN_ACCESS_UNITS = 0x2C,
|
||||
GST_MPEGTS_STREAM_TYPE_AUDIO_MHAS_MAIN = 0x2D,
|
||||
GST_MPEGTS_STREAM_TYPE_AUDIO_MHAS_AUXILIARY = 0x2E,
|
||||
GST_MPEGTS_STREAM_TYPE_QUALITY_ACCESS_UNITS = 0x2F,
|
||||
/* 0x30 - 0x7e : Rec. ITU-T H.222.0 | ISO/IEC 13818-1 Reserved */
|
||||
GST_MPEGTS_STREAM_TYPE_IPMP_STREAM = 0x7f,
|
||||
/* 0x80 - 0xff : User Private (or defined in other specs) */
|
||||
|
||||
|
|
|
@ -214,7 +214,7 @@ struct _MpegTSBaseClass {
|
|||
GstFlowReturn (*drain) (MpegTSBase * base);
|
||||
|
||||
/* flush all streams
|
||||
* The hard inicator is used to flush completely on FLUSH_STOP events
|
||||
* The hard indicator is used to flush completely on FLUSH_STOP events
|
||||
* or partially in pull mode seeks of tsdemux */
|
||||
void (*flush) (MpegTSBase * base, gboolean hard);
|
||||
|
||||
|
|
Loading…
Reference in a new issue