Top | ![]() |
![]() |
![]() |
![]() |
struct | GstMpegtsDescriptor |
enum | GstMpegtsDescriptorType |
enum | GstMpegtsMiscDescriptorType |
struct | GstMpegtsISO639LanguageDescriptor |
enum | GstMpegtsIso639AudioType |
struct | GstMpegtsLogicalChannel |
struct | GstMpegtsLogicalChannelDescriptor |
GBoxed ╰── GstMpegtsDescriptor GEnum ├── GstMpegtsDescriptorType ╰── GstMpegtsIso639AudioType
These are the base descriptor types and methods.
For more details, refer to the ITU H.222.0 or ISO/IEC 13818-1 specifications and other specifications mentionned in the documentation.
const GstMpegtsDescriptor * gst_mpegts_find_descriptor (GPtrArray *descriptors
,guint8 tag
);
Finds the first descriptor of type tag
in the array.
Note: To look for descriptors that can be present more than once in an array of descriptors, iterate the GArray manually.
descriptors |
an array of GstMpegtsDescriptor. |
[element-type GstMpegtsDescriptor][transfer none] |
tag |
the tag to look for |
GPtrArray * gst_mpegts_parse_descriptors (guint8 *buffer
,gsize buf_len
);
Parses the descriptors present in buffer
and returns them as an
array.
Note: The data provided in buffer
will not be copied.
an
array of the parsed descriptors or NULL
if there was an error.
Release with g_array_unref when done with it.
[transfer full][element-type GstMpegtsDescriptor]
GstMpegtsDescriptor * gst_mpegts_descriptor_from_custom (guint8 tag
,const guint8 *data
,gsize length
);
Creates a GstMpegtsDescriptor with custom tag
and data
GstMpegtsDescriptor * gst_mpegts_descriptor_from_registration (const gchar *format_identifier
,guint8 *additional_info
,gsize additional_info_length
);
Creates a GST_MTS_DESC_REGISTRATION
GstMpegtsDescriptor
Return: GstMpegtsDescriptor, NULL
on failure
gboolean gst_mpegts_descriptor_parse_iso_639_language (const GstMpegtsDescriptor *descriptor
,GstMpegtsISO639LanguageDescriptor **res
);
Extracts the iso 639-2 language information from descriptor
.
Note: Use gst_tag_get_language_code if you want to get the the ISO 639-1 language code from the returned ISO 639-2 one.
gboolean gst_mpegts_descriptor_parse_iso_639_language_idx (const GstMpegtsDescriptor *descriptor
,guint idx
,gchar **lang
,GstMpegtsIso639AudioType *audio_type
);
Extracts the iso 639-2 language information from specific table id in descriptor
.
Note: Use gst_tag_get_language_code if you want to get the the ISO 639-1 language code from the returned ISO 639-2 one.
descriptor |
||
idx |
Table id of the language to parse |
|
lang |
4-byte gchar array to hold the language code. |
[out][transfer full] |
audio_type |
the GstMpegtsIso639AudioType to set. |
[out][transfer none][allow-none] |
guint
gst_mpegts_descriptor_parse_iso_639_language_nb
(const GstMpegtsDescriptor *descriptor
);
void
gst_mpegts_iso_639_language_descriptor_free
(GstMpegtsISO639LanguageDescriptor *desc
);
gboolean gst_mpegts_descriptor_parse_logical_channel (const GstMpegtsDescriptor *descriptor
,GstMpegtsLogicalChannelDescriptor *res
);
Extracts the logical channels from descriptor
.
struct GstMpegtsDescriptor { guint8 tag; guint8 tag_extension; guint8 length; guint8 *data; };
Mpeg-TS descriptor (ISO/IEC 13818-1).
guint8 |
the type of descriptor |
|
guint8 |
the extended type (if |
|
guint8 |
the length of the descriptor content (excluding tag/length field) |
|
guint8 * |
the full descriptor data (including tag, extension, length). The first
two bytes are the |
The type of GstMpegtsDescriptor
These values correspond to the registered descriptor type from the base MPEG-TS specifications (ITU H.222.0 | ISO/IEC 13818-1).
Consult the relevant specifications for more details.
The type of GstMpegtsDescriptor
These values correspond to miscellaneous descriptor types that are not yet identified from known specifications.
struct GstMpegtsISO639LanguageDescriptor { guint nb_language; gchar *language[64]; GstMpegtsIso639AudioType audio_type[64]; };
struct GstMpegtsLogicalChannel { guint16 service_id; gboolean visible_service; guint16 logical_channel_number; };