DVB variants of MPEG-TS descriptors

DVB variants of MPEG-TS descriptors — Descriptors for the various DVB specifications

Synopsis

#include <gst/mpegts/mpegts.h>

enum                GstMpegtsDVBDescriptorType;
enum                GstMpegtsDVBExtendedDescriptorType;

struct              GstMpegtsContent;
gboolean            gst_mpegts_descriptor_parse_dvb_content
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         GPtrArray **content);

struct              GstMpegtsComponentDescriptor;
void                gst_mpegts_dvb_component_descriptor_free
                                                        (GstMpegtsComponentDescriptor *source);
gboolean            gst_mpegts_descriptor_parse_dvb_component
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         GstMpegtsComponentDescriptor **res);

struct              GstMpegtsExtendedEventItem;
struct              GstMpegtsExtendedEventDescriptor;
void                gst_mpegts_extended_event_descriptor_free
                                                        (GstMpegtsExtendedEventDescriptor *source);
gboolean            gst_mpegts_descriptor_parse_dvb_extended_event
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         GstMpegtsExtendedEventDescriptor **res);

struct              GstMpegtsSatelliteDeliverySystemDescriptor;
enum                GstMpegtsDVBCodeRate;
enum                GstMpegtsModulationType;
enum                GstMpegtsSatellitePolarizationType;
enum                GstMpegtsSatelliteRolloff;
gboolean            gst_mpegts_descriptor_parse_satellite_delivery_system
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         GstMpegtsSatelliteDeliverySystemDescriptor *res);

struct              GstMpegtsCableDeliverySystemDescriptor;
enum                GstMpegtsCableOuterFECScheme;
gboolean            gst_mpegts_descriptor_parse_cable_delivery_system
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         GstMpegtsCableDeliverySystemDescriptor *res);

struct              GstMpegtsTerrestrialDeliverySystemDescriptor;
enum                GstMpegtsTerrestrialTransmissionMode;
enum                GstMpegtsTerrestrialGuardInterval;
enum                GstMpegtsTerrestrialHierarchy;
gboolean            gst_mpegts_descriptor_parse_terrestrial_delivery_system
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         GstMpegtsTerrestrialDeliverySystemDescriptor *res);

struct              GstMpegtsT2DeliverySystemCellExtension;
struct              GstMpegtsT2DeliverySystemCell;
struct              GstMpegtsT2DeliverySystemDescriptor;
void                gst_mpegts_t2_delivery_system_descriptor_free
                                                        (GstMpegtsT2DeliverySystemDescriptor *source);
gboolean            gst_mpegts_descriptor_parse_dvb_t2_delivery_system
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         GstMpegtsT2DeliverySystemDescriptor **res);

gboolean            gst_mpegts_descriptor_parse_dvb_short_event
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         gchar **language_code,
                                                         gchar **event_name,
                                                         gchar **text);

gboolean            gst_mpegts_descriptor_parse_dvb_network_name
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         gchar **name);
GstMpegtsDescriptor * gst_mpegts_descriptor_from_dvb_network_name
                                                        (const gchar *name);

enum                GstMpegtsDVBServiceType;
gboolean            gst_mpegts_descriptor_parse_dvb_service
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         GstMpegtsDVBServiceType *service_type,
                                                         gchar **service_name,
                                                         gchar **provider_name);
GstMpegtsDescriptor * gst_mpegts_descriptor_from_dvb_service
                                                        (GstMpegtsDVBServiceType service_type,
                                                         const gchar *service_name,
                                                         const gchar *service_provider);

enum                GstMpegtsDVBTeletextType;
gboolean            gst_mpegts_descriptor_parse_dvb_teletext_idx
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         guint idx,
                                                         gchar **language_code,
                                                         GstMpegtsDVBTeletextType *teletext_type,
                                                         guint8 *magazine_number,
                                                         guint8 *page_number);
guint               gst_mpegts_descriptor_parse_dvb_teletext_nb
                                                        (const GstMpegtsDescriptor *descriptor);

gboolean            gst_mpegts_descriptor_parse_dvb_subtitling_idx
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         guint idx,
                                                         gchar **lang,
                                                         guint8 *type,
                                                         guint16 *composition_page_id,
                                                         guint16 *ancillary_page_id);
guint               gst_mpegts_descriptor_parse_dvb_subtitling_nb
                                                        (const GstMpegtsDescriptor *descriptor);
GstMpegtsDescriptor * gst_mpegts_descriptor_from_dvb_subtitling
                                                        (const gchar *lang,
                                                         guint8 type,
                                                         guint16 composition,
                                                         guint16 ancillary);

enum                GstMpegtsDVBLinkageType;
enum                GstMpegtsDVBLinkageHandOverType;
struct              GstMpegtsDVBLinkageMobileHandOver;
struct              GstMpegtsDVBLinkageEvent;
struct              GstMpegtsDVBLinkageExtendedEvent;
struct              GstMpegtsDVBLinkageDescriptor;
void                gst_mpegts_dvb_linkage_descriptor_free
                                                        (GstMpegtsDVBLinkageDescriptor *source);
const GstMpegtsDVBLinkageMobileHandOver * gst_mpegts_dvb_linkage_descriptor_get_mobile_hand_over
                                                        (const GstMpegtsDVBLinkageDescriptor *desc);
const GstMpegtsDVBLinkageEvent * gst_mpegts_dvb_linkage_descriptor_get_event
                                                        (const GstMpegtsDVBLinkageDescriptor *desc);
const GPtrArray *   gst_mpegts_dvb_linkage_descriptor_get_extended_event
                                                        (const GstMpegtsDVBLinkageDescriptor *desc);
gboolean            gst_mpegts_descriptor_parse_dvb_linkage
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         GstMpegtsDVBLinkageDescriptor **res);

gboolean            gst_mpegts_descriptor_parse_dvb_private_data_specifier
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         guint32 *private_data_specifier,
                                                         guint8 **private_data,
                                                         guint8 *length);

gboolean            gst_mpegts_descriptor_parse_dvb_frequency_list
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         gboolean *offset,
                                                         GArray **list);

struct              GstMpegtsDataBroadcastDescriptor;
void                gst_mpegts_dvb_data_broadcast_descriptor_free
                                                        (GstMpegtsDataBroadcastDescriptor *source);
gboolean            gst_mpegts_descriptor_parse_dvb_data_broadcast
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         GstMpegtsDataBroadcastDescriptor **res);

enum                GstMpegtsDVBScramblingModeType;
gboolean            gst_mpegts_descriptor_parse_dvb_scrambling
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         GstMpegtsDVBScramblingModeType *scrambling_mode);

gboolean            gst_mpegts_descriptor_parse_dvb_data_broadcast_id
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         guint16 *data_broadcast_id,
                                                         guint8 **id_selector_bytes,
                                                         guint8 *len);

struct              GstMpegtsDVBParentalRatingItem;
gboolean            gst_mpegts_descriptor_parse_dvb_parental_rating
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         GPtrArray **rating);

gboolean            gst_mpegts_descriptor_parse_dvb_stream_identifier
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         guint8 *component_tag);

gboolean            gst_mpegts_descriptor_parse_dvb_ca_identifier
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         GArray **list);

struct              GstMpegtsDVBServiceListItem;
gboolean            gst_mpegts_descriptor_parse_dvb_service_list
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         GPtrArray **list);

gboolean            gst_mpegts_descriptor_parse_dvb_stuffing
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         guint8 **stuffing_bytes);

gboolean            gst_mpegts_descriptor_parse_dvb_bouquet_name
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         gchar **bouquet_name);

struct              GstMpegtsDvbMultilingualNetworkNameItem;
gboolean            gst_mpegts_descriptor_parse_dvb_multilingual_network_name
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         GPtrArray **network_name_items);

struct              GstMpegtsDvbMultilingualBouquetNameItem;
gboolean            gst_mpegts_descriptor_parse_dvb_multilingual_bouquet_name
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         GPtrArray **bouquet_name_items);

struct              GstMpegtsDvbMultilingualServiceNameItem;
gboolean            gst_mpegts_descriptor_parse_dvb_multilingual_service_name
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         GPtrArray **service_name_items);

struct              GstMpegtsDvbMultilingualComponentItem;
gboolean            gst_mpegts_descriptor_parse_dvb_multilingual_component
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         guint8 *component_tag,
                                                         GPtrArray **component_description_items);

Object Hierarchy

  GEnum
   +----GstMpegtsDVBCodeRate
  GEnum
   +----GstMpegtsModulationType
  GEnum
   +----GstMpegtsSatellitePolarizationType
  GEnum
   +----GstMpegtsSatelliteRolloff
  GEnum
   +----GstMpegtsCableOuterFECScheme
  GEnum
   +----GstMpegtsDVBServiceType

Description

Details

enum GstMpegtsDVBDescriptorType

typedef enum {
  /* 64-127 DVB tags ETSI EN 300 468
   * (Specification for Service Information (SI) in DVB systems)
   */
  GST_MTS_DESC_DVB_NETWORK_NAME                 = 0x40,
  GST_MTS_DESC_DVB_SERVICE_LIST                 = 0x41,
  GST_MTS_DESC_DVB_STUFFING                     = 0x42,
  GST_MTS_DESC_DVB_SATELLITE_DELIVERY_SYSTEM    = 0x43,
  GST_MTS_DESC_DVB_CABLE_DELIVERY_SYSTEM        = 0x44,
  GST_MTS_DESC_DVB_VBI_DATA                     = 0x45,
  GST_MTS_DESC_DVB_VBI_TELETEXT                 = 0x46,
  GST_MTS_DESC_DVB_BOUQUET_NAME                 = 0x47,
  GST_MTS_DESC_DVB_SERVICE                      = 0x48,
  GST_MTS_DESC_DVB_COUNTRY_AVAILABILITY         = 0x49,
  GST_MTS_DESC_DVB_LINKAGE                      = 0x4A,
  GST_MTS_DESC_DVB_NVOD_REFERENCE               = 0x4B,
  GST_MTS_DESC_DVB_TIME_SHIFTED_SERVICE         = 0x4C,
  GST_MTS_DESC_DVB_SHORT_EVENT                  = 0x4D,
  GST_MTS_DESC_DVB_EXTENDED_EVENT               = 0x4E,
  GST_MTS_DESC_DVB_TIME_SHIFTED_EVENT           = 0x4F,
  GST_MTS_DESC_DVB_COMPONENT                    = 0x50,
  GST_MTS_DESC_DVB_MOSAIC                       = 0x51,
  GST_MTS_DESC_DVB_STREAM_IDENTIFIER            = 0x52,
  GST_MTS_DESC_DVB_CA_IDENTIFIER                = 0x53,
  GST_MTS_DESC_DVB_CONTENT                      = 0x54,
  GST_MTS_DESC_DVB_PARENTAL_RATING              = 0x55,
  GST_MTS_DESC_DVB_TELETEXT                     = 0x56,
  GST_MTS_DESC_DVB_TELEPHONE                    = 0x57,
  GST_MTS_DESC_DVB_LOCAL_TIME_OFFSET            = 0x58,
  GST_MTS_DESC_DVB_SUBTITLING                   = 0x59,
  GST_MTS_DESC_DVB_TERRESTRIAL_DELIVERY_SYSTEM  = 0x5A,
  GST_MTS_DESC_DVB_MULTILINGUAL_NETWORK_NAME    = 0x5B,
  GST_MTS_DESC_DVB_MULTILINGUAL_BOUQUET_NAME    = 0x5C,
  GST_MTS_DESC_DVB_MULTILINGUAL_SERVICE_NAME    = 0x5D,
  GST_MTS_DESC_DVB_MULTILINGUAL_COMPONENT       = 0x5E,
  GST_MTS_DESC_DVB_PRIVATE_DATA_SPECIFIER       = 0x5F,
  GST_MTS_DESC_DVB_SERVICE_MOVE                 = 0x60,
  GST_MTS_DESC_DVB_SHORT_SMOOTHING_BUFFER       = 0x61,
  GST_MTS_DESC_DVB_FREQUENCY_LIST               = 0x62,
  GST_MTS_DESC_DVB_PARTIAL_TRANSPORT_STREAM     = 0x63,
  GST_MTS_DESC_DVB_DATA_BROADCAST               = 0x64,
  GST_MTS_DESC_DVB_SCRAMBLING                   = 0x65,
  GST_MTS_DESC_DVB_DATA_BROADCAST_ID            = 0x66,
  GST_MTS_DESC_DVB_TRANSPORT_STREAM             = 0x67,
  GST_MTS_DESC_DVB_DSNG                         = 0x68,
  GST_MTS_DESC_DVB_PDC                          = 0x69,
  GST_MTS_DESC_DVB_AC3                          = 0x6A,
  GST_MTS_DESC_DVB_ANCILLARY_DATA               = 0x6B,
  GST_MTS_DESC_DVB_CELL_LIST                    = 0x6C,
  GST_MTS_DESC_DVB_CELL_FREQUENCY_LINK          = 0x6D,
  GST_MTS_DESC_DVB_ANNOUNCEMENT_SUPPORT         = 0x6E,
  GST_MTS_DESC_DVB_APPLICATION_SIGNALLING       = 0x6F,
  GST_MTS_DESC_DVB_ADAPTATION_FIELD_DATA        = 0x70,
  GST_MTS_DESC_DVB_SERVICE_IDENTIFIER           = 0x71,
  GST_MTS_DESC_DVB_SERVICE_AVAILABILITY         = 0x72,
  GST_MTS_DESC_DVB_DEFAULT_AUTHORITY            = 0x73,
  GST_MTS_DESC_DVB_RELATED_CONTENT              = 0x74,
  GST_MTS_DESC_DVB_TVA_ID                       = 0x75,
  GST_MTS_DESC_DVB_CONTENT_IDENTIFIER           = 0x76,
  GST_MTS_DESC_DVB_TIMESLICE_FEC_IDENTIFIER     = 0x77,
  GST_MTS_DESC_DVB_ECM_REPETITION_RATE          = 0x78,
  GST_MTS_DESC_DVB_S2_SATELLITE_DELIVERY_SYSTEM = 0x79,
  GST_MTS_DESC_DVB_ENHANCED_AC3                 = 0x7A,
  GST_MTS_DESC_DVB_DTS                          = 0x7B,
  GST_MTS_DESC_DVB_AAC                          = 0x7C,
  GST_MTS_DESC_DVB_XAIT_LOCATION                = 0x7D,
  GST_MTS_DESC_DVB_FTA_CONTENT_MANAGEMENT       = 0x7E,
  GST_MTS_DESC_DVB_EXTENSION                    = 0x7F,
} GstMpegtsDVBDescriptorType;

The type of GstMpegtsDescriptor

These values correspond to the registered descriptor type from the various DVB specifications.

Consult the relevant specifications for more details.

GST_MTS_DESC_DVB_NETWORK_NAME

GST_MTS_DESC_DVB_SERVICE_LIST

GST_MTS_DESC_DVB_STUFFING

GST_MTS_DESC_DVB_SATELLITE_DELIVERY_SYSTEM

GST_MTS_DESC_DVB_CABLE_DELIVERY_SYSTEM

GST_MTS_DESC_DVB_VBI_DATA

GST_MTS_DESC_DVB_VBI_TELETEXT

GST_MTS_DESC_DVB_BOUQUET_NAME

GST_MTS_DESC_DVB_SERVICE

GST_MTS_DESC_DVB_COUNTRY_AVAILABILITY

GST_MTS_DESC_DVB_LINKAGE

GST_MTS_DESC_DVB_NVOD_REFERENCE

GST_MTS_DESC_DVB_TIME_SHIFTED_SERVICE

GST_MTS_DESC_DVB_SHORT_EVENT

GST_MTS_DESC_DVB_EXTENDED_EVENT

GST_MTS_DESC_DVB_TIME_SHIFTED_EVENT

GST_MTS_DESC_DVB_COMPONENT

GST_MTS_DESC_DVB_MOSAIC

GST_MTS_DESC_DVB_STREAM_IDENTIFIER

GST_MTS_DESC_DVB_CA_IDENTIFIER

GST_MTS_DESC_DVB_CONTENT

GST_MTS_DESC_DVB_PARENTAL_RATING

GST_MTS_DESC_DVB_TELETEXT

GST_MTS_DESC_DVB_TELEPHONE

GST_MTS_DESC_DVB_LOCAL_TIME_OFFSET

GST_MTS_DESC_DVB_SUBTITLING

GST_MTS_DESC_DVB_TERRESTRIAL_DELIVERY_SYSTEM

GST_MTS_DESC_DVB_MULTILINGUAL_NETWORK_NAME

GST_MTS_DESC_DVB_MULTILINGUAL_BOUQUET_NAME

GST_MTS_DESC_DVB_MULTILINGUAL_SERVICE_NAME

GST_MTS_DESC_DVB_MULTILINGUAL_COMPONENT

GST_MTS_DESC_DVB_PRIVATE_DATA_SPECIFIER

GST_MTS_DESC_DVB_SERVICE_MOVE

GST_MTS_DESC_DVB_SHORT_SMOOTHING_BUFFER

GST_MTS_DESC_DVB_FREQUENCY_LIST

GST_MTS_DESC_DVB_PARTIAL_TRANSPORT_STREAM

GST_MTS_DESC_DVB_DATA_BROADCAST

GST_MTS_DESC_DVB_SCRAMBLING

GST_MTS_DESC_DVB_DATA_BROADCAST_ID

GST_MTS_DESC_DVB_TRANSPORT_STREAM

GST_MTS_DESC_DVB_DSNG

GST_MTS_DESC_DVB_PDC

GST_MTS_DESC_DVB_AC3

GST_MTS_DESC_DVB_ANCILLARY_DATA

GST_MTS_DESC_DVB_CELL_LIST

GST_MTS_DESC_DVB_CELL_FREQUENCY_LINK

GST_MTS_DESC_DVB_ANNOUNCEMENT_SUPPORT

GST_MTS_DESC_DVB_APPLICATION_SIGNALLING

GST_MTS_DESC_DVB_ADAPTATION_FIELD_DATA

GST_MTS_DESC_DVB_SERVICE_IDENTIFIER

GST_MTS_DESC_DVB_SERVICE_AVAILABILITY

GST_MTS_DESC_DVB_DEFAULT_AUTHORITY

GST_MTS_DESC_DVB_RELATED_CONTENT

GST_MTS_DESC_DVB_TVA_ID

GST_MTS_DESC_DVB_CONTENT_IDENTIFIER

GST_MTS_DESC_DVB_TIMESLICE_FEC_IDENTIFIER

GST_MTS_DESC_DVB_ECM_REPETITION_RATE

GST_MTS_DESC_DVB_S2_SATELLITE_DELIVERY_SYSTEM

GST_MTS_DESC_DVB_ENHANCED_AC3

GST_MTS_DESC_DVB_DTS

GST_MTS_DESC_DVB_AAC

GST_MTS_DESC_DVB_XAIT_LOCATION

GST_MTS_DESC_DVB_FTA_CONTENT_MANAGEMENT

GST_MTS_DESC_DVB_EXTENSION


enum GstMpegtsDVBExtendedDescriptorType

typedef enum {
  /* 00 - 0x7F DVB extended tags ETSI EN 300 468
   * (Specification for Service Information (SI) in DVB systems)
   */
  GST_MTS_DESC_EXT_DVB_IMAGE_ICON               = 0x00,
  /* TS/TR 102 825 */
  GST_MTS_DESC_EXT_DVB_CPCM_DELIVERY_SIGNALLING = 0x01,
  GST_MTS_DESC_EXT_DVB_CP                       = 0x02,
  GST_MTS_DESC_EXT_DVB_CP_IDENTIFIER            = 0x03,
  GST_MTS_DESC_EXT_DVB_T2_DELIVERY_SYSTEM       = 0x04,
  GST_MTS_DESC_EXT_DVB_SH_DELIVERY_SYSTEM       = 0x05,
  GST_MTS_DESC_EXT_DVB_SUPPLEMENTARY_AUDIO      = 0x06,
  GST_MTS_DESC_EXT_DVB_NETWORK_CHANGE_NOTIFY    = 0x07,
  GST_MTS_DESC_EXT_DVB_MESSAGE                  = 0x08,
  GST_MTS_DESC_EXT_DVB_TARGET_REGION            = 0x09,
  GST_MTS_DESC_EXT_DVB_TARGET_REGION_NAME       = 0x0A,
  GST_MTS_DESC_EXT_DVB_SERVICE_RELOCATED        = 0x0B,
  GST_MTS_DESC_EXT_DVB_XAIT_PID                 = 0x0C,
  GST_MTS_DESC_EXT_DVB_C2_DELIVERY_SYSTEM       = 0x0D,
  GST_MTS_DESC_EXT_DVB_DTS_HD_AUDIO_STREAM      = 0x0E,
  GST_MTS_DESC_EXT_DVB_DTS_NEUTRAL              = 0x0F,
  GST_MTS_DESC_EXT_DVB_VIDEO_DEPTH_RANGE        = 0x10,
  GST_MTS_DESC_EXT_DVB_T2MI                     = 0x11,
  GST_MTS_DESC_EXT_DVB_URI_LINKAGE              = 0x13,
} GstMpegtsDVBExtendedDescriptorType;

The type of GstMpegtsDescriptor

These values correspond to the registered extended descriptor type from the various DVB specifications.

Consult the relevant specifications for more details.

GST_MTS_DESC_EXT_DVB_IMAGE_ICON

GST_MTS_DESC_EXT_DVB_CPCM_DELIVERY_SIGNALLING

GST_MTS_DESC_EXT_DVB_CP

GST_MTS_DESC_EXT_DVB_CP_IDENTIFIER

GST_MTS_DESC_EXT_DVB_T2_DELIVERY_SYSTEM

GST_MTS_DESC_EXT_DVB_SH_DELIVERY_SYSTEM

GST_MTS_DESC_EXT_DVB_SUPPLEMENTARY_AUDIO

GST_MTS_DESC_EXT_DVB_NETWORK_CHANGE_NOTIFY

GST_MTS_DESC_EXT_DVB_MESSAGE

GST_MTS_DESC_EXT_DVB_TARGET_REGION

GST_MTS_DESC_EXT_DVB_TARGET_REGION_NAME

GST_MTS_DESC_EXT_DVB_SERVICE_RELOCATED

GST_MTS_DESC_EXT_DVB_XAIT_PID

GST_MTS_DESC_EXT_DVB_C2_DELIVERY_SYSTEM

GST_MTS_DESC_EXT_DVB_DTS_HD_AUDIO_STREAM

GST_MTS_DESC_EXT_DVB_DTS_NEUTRAL

GST_MTS_DESC_EXT_DVB_VIDEO_DEPTH_RANGE

GST_MTS_DESC_EXT_DVB_T2MI

GST_MTS_DESC_EXT_DVB_URI_LINKAGE


struct GstMpegtsContent

struct GstMpegtsContent {
  GstMpegtsContentNibbleHi content_nibble_1;
  guint8 content_nibble_2;
  guint8 user_byte;
};

gst_mpegts_descriptor_parse_dvb_content ()

gboolean            gst_mpegts_descriptor_parse_dvb_content
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         GPtrArray **content);

Extracts the DVB content information from descriptor.

descriptor :

a GST_MTS_DESC_DVB_CONTENT GstMpegtsDescriptor

content :

GstMpegtsContent. [out][transfer full][element-type GstMpegtsContent]

Returns :

TRUE if the parsing happened correctly, else FALSE.

struct GstMpegtsComponentDescriptor

struct GstMpegtsComponentDescriptor {
  guint8 stream_content;
  guint8 component_type;
  guint8 component_tag;
  gchar  *language_code;
  gchar  *text;
};

gst_mpegts_dvb_component_descriptor_free ()

void                gst_mpegts_dvb_component_descriptor_free
                                                        (GstMpegtsComponentDescriptor *source);

gst_mpegts_descriptor_parse_dvb_component ()

gboolean            gst_mpegts_descriptor_parse_dvb_component
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         GstMpegtsComponentDescriptor **res);

Extracts the DVB component information from descriptor.

descriptor :

a GST_MTS_DESC_DVB_COMPONENT GstMpegtsDescriptor

res :

the GstMpegtsComponentDescriptor to fill. [out][transfer full]

Returns :

TRUE if parsing succeeded, else FALSE.

struct GstMpegtsExtendedEventItem

struct GstMpegtsExtendedEventItem {
  gchar *item_description;
  gchar *item;
};

struct GstMpegtsExtendedEventDescriptor

struct GstMpegtsExtendedEventDescriptor {
  guint8 descriptor_number;
  guint8 last_descriptor_number;
  gchar  *language_code;
  GPtrArray *items;
  gchar *text;
};

Extended Event Descriptor (EN 300 468 v.1.13.1)

guint8 descriptor_number;

guint8 last_descriptor_number;

gchar *language_code;

NULL terminated language code.

GPtrArray *items;

the GstMpegtsExtendedEventItem. [element-type GstMpegtsExtendedEventItem]

gchar *text;


gst_mpegts_extended_event_descriptor_free ()

void                gst_mpegts_extended_event_descriptor_free
                                                        (GstMpegtsExtendedEventDescriptor *source);

gst_mpegts_descriptor_parse_dvb_extended_event ()

gboolean            gst_mpegts_descriptor_parse_dvb_extended_event
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         GstMpegtsExtendedEventDescriptor **res);

Extracts the DVB extended event information from descriptor.

descriptor :

a GST_MTS_DESC_DVB_EXTENDED_EVENT GstMpegtsDescriptor

res :

the GstMpegtsExtendedEventDescriptor to fill. [out][transfer full]

Returns :

TRUE if parsing succeeded, else FALSE.

struct GstMpegtsSatelliteDeliverySystemDescriptor

struct GstMpegtsSatelliteDeliverySystemDescriptor {
  guint32                            frequency;
  gfloat                             orbital_position;
  gboolean                           west_east; 
  GstMpegtsSatellitePolarizationType polarization;

  GstMpegtsSatelliteRolloff          roll_off;
  gboolean                           modulation_system;
  GstMpegtsModulationType            modulation_type;

  guint32                            symbol_rate;
  GstMpegtsDVBCodeRate               fec_inner;
};

Satellite Delivery System Descriptor (EN 300 468 v.1.13.1)

guint32 frequency;

the frequency in kHz (kiloHertz)

gfloat orbital_position;

the orbital position in degrees

gboolean west_east;

If TRUE, the satellite is in the eastern part of the orbit, else in the western part.

GstMpegtsSatellitePolarizationType polarization;

The polarization of the transmitted signal

GstMpegtsSatelliteRolloff roll_off;

Roll-off factor used in DVB-S2

gboolean modulation_system;

modulation system, TRUE if DVB-S2, else DVB-S

GstMpegtsModulationType modulation_type;

Modulation scheme used

guint32 symbol_rate;

Symbol rate (in symbols per second)

GstMpegtsDVBCodeRate fec_inner;

inner FEC scheme used

enum GstMpegtsDVBCodeRate

typedef enum {
  GST_MPEGTS_FEC_NONE = 0,
  GST_MPEGTS_FEC_1_2,
  GST_MPEGTS_FEC_2_3,
  GST_MPEGTS_FEC_3_4,
  GST_MPEGTS_FEC_4_5,
  GST_MPEGTS_FEC_5_6,
  GST_MPEGTS_FEC_6_7,
  GST_MPEGTS_FEC_7_8,
  GST_MPEGTS_FEC_8_9,
  GST_MPEGTS_FEC_AUTO,
  GST_MPEGTS_FEC_3_5,
  GST_MPEGTS_FEC_9_10,
  GST_MPEGTS_FEC_2_5
} GstMpegtsDVBCodeRate;

GST_MPEGTS_FEC_NONE

GST_MPEGTS_FEC_1_2

GST_MPEGTS_FEC_2_3

GST_MPEGTS_FEC_3_4

GST_MPEGTS_FEC_4_5

GST_MPEGTS_FEC_5_6

GST_MPEGTS_FEC_6_7

GST_MPEGTS_FEC_7_8

GST_MPEGTS_FEC_8_9

GST_MPEGTS_FEC_AUTO

GST_MPEGTS_FEC_3_5

GST_MPEGTS_FEC_9_10

GST_MPEGTS_FEC_2_5


enum GstMpegtsModulationType

typedef enum {
  GST_MPEGTS_MODULATION_QPSK    = 0,
  GST_MPEGTS_MODULATION_QAM_16,
  GST_MPEGTS_MODULATION_QAM_32,
  GST_MPEGTS_MODULATION_QAM_64,
  GST_MPEGTS_MODULATION_QAM_128,
  GST_MPEGTS_MODULATION_QAM_256,
  GST_MPEGTS_MODULATION_QAM_AUTO,
  GST_MPEGTS_MODULATION_VSB_8,
  GST_MPEGTS_MODULATION_VSB_16,
  GST_MPEGTS_MODULATION_PSK_8,
  GST_MPEGTS_MODULATION_APSK_16,
  GST_MPEGTS_MODULATION_APSK_32,
  GST_MPEGTS_MODULATION_DQPSK,
  GST_MPEGTS_MODULATION_QAM_4_NR_,
  GST_MPEGTS_MODULATION_NONE
} GstMpegtsModulationType;

GST_MPEGTS_MODULATION_QPSK

GST_MPEGTS_MODULATION_QAM_16

GST_MPEGTS_MODULATION_QAM_32

GST_MPEGTS_MODULATION_QAM_64

GST_MPEGTS_MODULATION_QAM_128

GST_MPEGTS_MODULATION_QAM_256

GST_MPEGTS_MODULATION_QAM_AUTO

GST_MPEGTS_MODULATION_VSB_8

GST_MPEGTS_MODULATION_VSB_16

GST_MPEGTS_MODULATION_PSK_8

GST_MPEGTS_MODULATION_APSK_16

GST_MPEGTS_MODULATION_APSK_32

GST_MPEGTS_MODULATION_DQPSK

GST_MPEGTS_MODULATION_QAM_4_NR_

GST_MPEGTS_MODULATION_NONE


enum GstMpegtsSatellitePolarizationType

typedef enum {
  GST_MPEGTS_POLARIZATION_LINEAR_HORIZONTAL = 0,
  GST_MPEGTS_POLARIZATION_LINEAR_VERTICAL,
  GST_MPEGTS_POLARIZATION_CIRCULAR_LEFT,
  GST_MPEGTS_POLARIZATION_CIRCULAR_RIGHT
} GstMpegtsSatellitePolarizationType;

GST_MPEGTS_POLARIZATION_LINEAR_HORIZONTAL

GST_MPEGTS_POLARIZATION_LINEAR_VERTICAL

GST_MPEGTS_POLARIZATION_CIRCULAR_LEFT

GST_MPEGTS_POLARIZATION_CIRCULAR_RIGHT


enum GstMpegtsSatelliteRolloff

typedef enum {
  GST_MPEGTS_ROLLOFF_35 = 0,
  GST_MPEGTS_ROLLOFF_20,
  GST_MPEGTS_ROLLOFF_25,
  GST_MPEGTS_ROLLOFF_RESERVED,
  GST_MPEGTS_ROLLOFF_AUTO
} GstMpegtsSatelliteRolloff;

GST_MPEGTS_ROLLOFF_35

GST_MPEGTS_ROLLOFF_20

GST_MPEGTS_ROLLOFF_25

GST_MPEGTS_ROLLOFF_RESERVED

GST_MPEGTS_ROLLOFF_AUTO


gst_mpegts_descriptor_parse_satellite_delivery_system ()

gboolean            gst_mpegts_descriptor_parse_satellite_delivery_system
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         GstMpegtsSatelliteDeliverySystemDescriptor *res);

Extracts the satellite delivery system information from descriptor.

descriptor :

a GST_MTS_DESC_DVB_SATELLITE_DELIVERY_SYSTEM GstMpegtsDescriptor

res :

the GstMpegtsSatelliteDeliverySystemDescriptor to fill. [out][transfer none]

Returns :

TRUE if parsing succeeded, else FALSE.

struct GstMpegtsCableDeliverySystemDescriptor

struct GstMpegtsCableDeliverySystemDescriptor {
  guint32                            frequency;
  GstMpegtsCableOuterFECScheme       outer_fec;
  GstMpegtsModulationType            modulation;

  guint32                            symbol_rate;
  GstMpegtsDVBCodeRate               fec_inner;
};

Cable Delivery System Descriptor (EN 300 468 v.1.13.1)

guint32 frequency;

the frequency in Hz (Hertz)

GstMpegtsCableOuterFECScheme outer_fec;

the outer FEC scheme used

GstMpegtsModulationType modulation;

Modulation scheme used

guint32 symbol_rate;

Symbol rate (in symbols per second)

GstMpegtsDVBCodeRate fec_inner;

inner FEC scheme used

enum GstMpegtsCableOuterFECScheme

typedef enum {
  GST_MPEGTS_CABLE_OUTER_FEC_UNDEFINED = 0,
  GST_MPEGTS_CABLE_OUTER_FEC_NONE,
  GST_MPEGTS_CABLE_OUTER_FEC_RS_204_188,
} GstMpegtsCableOuterFECScheme;

GST_MPEGTS_CABLE_OUTER_FEC_UNDEFINED

GST_MPEGTS_CABLE_OUTER_FEC_NONE

GST_MPEGTS_CABLE_OUTER_FEC_RS_204_188


gst_mpegts_descriptor_parse_cable_delivery_system ()

gboolean            gst_mpegts_descriptor_parse_cable_delivery_system
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         GstMpegtsCableDeliverySystemDescriptor *res);

Extracts the cable delivery system information from descriptor.

descriptor :

a GST_MTS_DESC_DVB_CABLE_DELIVERY_SYSTEM GstMpegtsDescriptor

res :

the GstMpegtsCableDeliverySystemDescriptor to fill. [out][transfer none]

Returns :

TRUE if parsing succeeded, else FALSE.

struct GstMpegtsTerrestrialDeliverySystemDescriptor

struct GstMpegtsTerrestrialDeliverySystemDescriptor {
  guint32				frequency;
  guint32				bandwidth;
  gboolean				priority;
  gboolean				time_slicing;
  gboolean				mpe_fec;
  GstMpegtsModulationType		constellation;
  GstMpegtsTerrestrialHierarchy		hierarchy;
  GstMpegtsDVBCodeRate			code_rate_hp;
  GstMpegtsDVBCodeRate			code_rate_lp;
  GstMpegtsTerrestrialGuardInterval guard_interval;
  GstMpegtsTerrestrialTransmissionMode transmission_mode;
  gboolean				other_frequency;
};

Terrestrial Delivery System Descriptor (EN 300 468 v.1.13.1)

guint32 frequency;

the frequency in Hz (Hertz)

guint32 bandwidth;

the bandwidth in Hz (Hertz)

gboolean priority;

TRUE High Priority FALSE Low Priority

gboolean time_slicing;

TRUE no time slicing FALSE time slicing

gboolean mpe_fec;

TRUE no mpe-fec is used FALSE mpe-fec is use

GstMpegtsModulationType constellation;

the constallation

GstMpegtsTerrestrialHierarchy hierarchy;

the hierarchy

GstMpegtsDVBCodeRate code_rate_hp;

GstMpegtsDVBCodeRate code_rate_lp;

GstMpegtsTerrestrialGuardInterval guard_interval;

GstMpegtsTerrestrialTransmissionMode transmission_mode;

gboolean other_frequency;

TRUE more frequency are use, else not

enum GstMpegtsTerrestrialTransmissionMode

typedef enum {
  GST_MPEGTS_TRANSMISSION_MODE_2K = 0,
  GST_MPEGTS_TRANSMISSION_MODE_8K,
  GST_MPEGTS_TRANSMISSION_MODE_AUTO,
  GST_MPEGTS_TRANSMISSION_MODE_4K,
  GST_MPEGTS_TRANSMISSION_MODE_1K,
  GST_MPEGTS_TRANSMISSION_MODE_16K,
  GST_MPEGTS_TRANSMISSION_MODE_32K,
  GST_MPEGTS_TRANSMISSION_MODE_C1,
  GST_MPEGTS_TRANSMISSION_MODE_C3780
} GstMpegtsTerrestrialTransmissionMode;

GST_MPEGTS_TRANSMISSION_MODE_2K

GST_MPEGTS_TRANSMISSION_MODE_8K

GST_MPEGTS_TRANSMISSION_MODE_AUTO

GST_MPEGTS_TRANSMISSION_MODE_4K

GST_MPEGTS_TRANSMISSION_MODE_1K

GST_MPEGTS_TRANSMISSION_MODE_16K

GST_MPEGTS_TRANSMISSION_MODE_32K

GST_MPEGTS_TRANSMISSION_MODE_C1

GST_MPEGTS_TRANSMISSION_MODE_C3780


enum GstMpegtsTerrestrialGuardInterval

typedef enum {
  GST_MPEGTS_GUARD_INTERVAL_1_32 = 0,
  GST_MPEGTS_GUARD_INTERVAL_1_16,
  GST_MPEGTS_GUARD_INTERVAL_1_8,
  GST_MPEGTS_GUARD_INTERVAL_1_4,
  GST_MPEGTS_GUARD_INTERVAL_AUTO,
  GST_MPEGTS_GUARD_INTERVAL_1_128,
  GST_MPEGTS_GUARD_INTERVAL_19_128,
  GST_MPEGTS_GUARD_INTERVAL_19_256,
  GST_MPEGTS_GUARD_INTERVAL_PN420,
  GST_MPEGTS_GUARD_INTERVAL_PN595,
  GST_MPEGTS_GUARD_INTERVAL_PN945
} GstMpegtsTerrestrialGuardInterval;

GST_MPEGTS_GUARD_INTERVAL_1_32

GST_MPEGTS_GUARD_INTERVAL_1_16

GST_MPEGTS_GUARD_INTERVAL_1_8

GST_MPEGTS_GUARD_INTERVAL_1_4

GST_MPEGTS_GUARD_INTERVAL_AUTO

GST_MPEGTS_GUARD_INTERVAL_1_128

GST_MPEGTS_GUARD_INTERVAL_19_128

GST_MPEGTS_GUARD_INTERVAL_19_256

GST_MPEGTS_GUARD_INTERVAL_PN420

GST_MPEGTS_GUARD_INTERVAL_PN595

GST_MPEGTS_GUARD_INTERVAL_PN945


enum GstMpegtsTerrestrialHierarchy

typedef enum {
  GST_MPEGTS_HIERARCHY_NONE = 0,
  GST_MPEGTS_HIERARCHY_1,
  GST_MPEGTS_HIERARCHY_2,
  GST_MPEGTS_HIERARCHY_4,
  GST_MPEGTS_HIERARCHY_AUTO
} GstMpegtsTerrestrialHierarchy;

GST_MPEGTS_HIERARCHY_NONE

GST_MPEGTS_HIERARCHY_1

GST_MPEGTS_HIERARCHY_2

GST_MPEGTS_HIERARCHY_4

GST_MPEGTS_HIERARCHY_AUTO


gst_mpegts_descriptor_parse_terrestrial_delivery_system ()

gboolean            gst_mpegts_descriptor_parse_terrestrial_delivery_system
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         GstMpegtsTerrestrialDeliverySystemDescriptor *res);

Parses out the terrestrial delivery system from the descriptor.

descriptor :

a GST_MTS_DESC_DVB_TERRESTRIAL_DELIVERY_SYSTEM GstMpegtsDescriptor

res :

GstMpegtsTerrestrialDeliverySystemDescriptor. [out][transfer none]

Returns :

TRUE if the parsing happened correctly, else FALSE.

struct GstMpegtsT2DeliverySystemCellExtension

struct GstMpegtsT2DeliverySystemCellExtension {
  guint8  cell_id_extension;
  guint32 transposer_frequency;
};

guint8 cell_id_extension;

id of the sub cell

guint32 transposer_frequency;

centre frequency of the sub cell in Hz

struct GstMpegtsT2DeliverySystemCell

struct GstMpegtsT2DeliverySystemCell {
  guint16      cell_id;
  GArray       *centre_frequencies;
  GPtrArray    *sub_cells;
};

guint16 cell_id;

id of the cell

GArray *centre_frequencies;

centre frequencies in Hz. [element-type guint32]

GPtrArray *sub_cells;

. [element-type GstMpegtsT2DeliverySystemCellExtension]

struct GstMpegtsT2DeliverySystemDescriptor

struct GstMpegtsT2DeliverySystemDescriptor {
  guint8                                plp_id;
  guint16                               t2_system_id;
  /* FIXME: */
  guint8                                siso_miso;
  guint32                               bandwidth;
  GstMpegtsTerrestrialGuardInterval     guard_interval;
  GstMpegtsTerrestrialTransmissionMode  transmission_mode;
  gboolean                              other_frequency;
  gboolean                              tfs;
  GPtrArray                             *cells;
};

describe DVB-T2 transmissions according to EN 302 755

guint8 plp_id;

guint16 t2_system_id;

guint8 siso_miso;

guint32 bandwidth;

GstMpegtsTerrestrialGuardInterval guard_interval;

GstMpegtsTerrestrialTransmissionMode transmission_mode;

gboolean other_frequency;

gboolean tfs;

GPtrArray *cells;

. [element-type GstMpegtsT2DeliverySystemCell]

gst_mpegts_t2_delivery_system_descriptor_free ()

void                gst_mpegts_t2_delivery_system_descriptor_free
                                                        (GstMpegtsT2DeliverySystemDescriptor *source);

gst_mpegts_descriptor_parse_dvb_t2_delivery_system ()

gboolean            gst_mpegts_descriptor_parse_dvb_t2_delivery_system
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         GstMpegtsT2DeliverySystemDescriptor **res);

Parses out the DVB-T2 delivery system from the descriptor.

descriptor :

a GST_MTS_DESC_EXT_DVB_T2_DELIVERY_SYSTEM GstMpegtsDescriptor

res :

GstMpegtsT2DeliverySystemDescriptor. [out][transfer full]

Returns :

TRUE if the parsing happened correctly, else FALSE.

gst_mpegts_descriptor_parse_dvb_short_event ()

gboolean            gst_mpegts_descriptor_parse_dvb_short_event
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         gchar **language_code,
                                                         gchar **event_name,
                                                         gchar **text);

Extracts the DVB short event information from descriptor.

descriptor :

a GST_MTS_DESC_DVB_SHORT_EVENT GstMpegtsDescriptor

language_code :

the language code. [out][transfer full][allow-none]

event_name :

the event name. [out][transfer full][allow-none]

text :

the event text. [out][transfer full][allow-none]

Returns :

TRUE if parsing succeeded, else FALSE.

gst_mpegts_descriptor_parse_dvb_network_name ()

gboolean            gst_mpegts_descriptor_parse_dvb_network_name
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         gchar **name);

Parses out the dvb network name from the descriptor:

descriptor :

a GST_MTS_DESC_DVB_NETWORK_NAME GstMpegtsDescriptor

name :

the extracted name. [out][transfer full]

Returns :

TRUE if the parsing happened correctly, else FALSE.

gst_mpegts_descriptor_from_dvb_network_name ()

GstMpegtsDescriptor * gst_mpegts_descriptor_from_dvb_network_name
                                                        (const gchar *name);

Creates a GstMpegtsDescriptor to be a GST_MTS_DESC_DVB_NETWORK_NAME, with the network name name. The data field of the GstMpegtsDescriptor will be allocated, and transferred to the caller.

name :

the network name to set

Returns :

the GstMpegtsDescriptor or NULL on fail. [transfer full]

enum GstMpegtsDVBServiceType

typedef enum {
  GST_DVB_SERVICE_RESERVED_00               = 0x00,
  GST_DVB_SERVICE_DIGITAL_TELEVISION,
  GST_DVB_SERVICE_DIGITAL_RADIO_SOUND,
  GST_DVB_SERVICE_TELETEXT,
  GST_DVB_SERVICE_NVOD_REFERENCE,
  GST_DVB_SERVICE_NVOD_TIME_SHIFTED,
  GST_DVB_SERVICE_MOSAIC,
  GST_DVB_SERVICE_FM_RADIO,
  GST_DVB_SERVICE_DVB_SRM,
  GST_DVB_SERVICE_RESERVED_09,
  GST_DVB_SERVICE_ADVANCED_CODEC_DIGITAL_RADIO_SOUND,
  GST_DVB_SERVICE_ADVANCED_CODEC_MOSAIC,
  GST_DVB_SERVICE_DATA_BROADCAST,
  GST_DVB_SERVICE_RESERVED_0D_COMMON_INTERFACE,
  GST_DVB_SERVICE_RCS_MAP,
  GST_DVB_SERVICE_RCS_FLS,
  GST_DVB_SERVICE_DVB_MHP,
  GST_DVB_SERVICE_MPEG2_HD_DIGITAL_TELEVISION,
  /* 0x12 - 015 Reserved for future use */
  GST_DVB_SERVICE_ADVANCED_CODEC_SD_DIGITAL_TELEVISION = 0x16,
  GST_DVB_SERVICE_ADVANCED_CODEC_SD_NVOD_TIME_SHIFTED,
  GST_DVB_SERVICE_ADVANCED_CODEC_SD_NVOD_REFERENCE,
  GST_DVB_SERVICE_ADVANCED_CODEC_HD_DIGITAL_TELEVISION,
  GST_DVB_SERVICE_ADVANCED_CODEC_HD_NVOD_TIME_SHIFTED,
  GST_DVB_SERVICE_ADVANCED_CODEC_HD_NVOD_REFERENCE,
  GST_DVB_SERVICE_ADVANCED_CODEC_STEREO_HD_DIGITAL_TELEVISION,
  GST_DVB_SERVICE_ADVANCED_CODEC_STEREO_HD_NVOD_TIME_SHIFTED,
  GST_DVB_SERVICE_ADVANCED_CODEC_STEREO_HD_NVOD_REFERENCE,
  /* 0x1F - 0x7f Reserved for future use */
  /* 0x80 - 0xfe user defined */
  /* 0xff Reserved for future use */
  GST_DVB_SERVICE_RESERVED_FF
} GstMpegtsDVBServiceType;

The type of service of a channel.

As specified in Table 87 of ETSI EN 300 468 v1.13.1

GST_DVB_SERVICE_RESERVED_00

GST_DVB_SERVICE_DIGITAL_TELEVISION

GST_DVB_SERVICE_DIGITAL_RADIO_SOUND

GST_DVB_SERVICE_TELETEXT

GST_DVB_SERVICE_NVOD_REFERENCE

GST_DVB_SERVICE_NVOD_TIME_SHIFTED

GST_DVB_SERVICE_MOSAIC

GST_DVB_SERVICE_FM_RADIO

GST_DVB_SERVICE_DVB_SRM

GST_DVB_SERVICE_RESERVED_09

GST_DVB_SERVICE_ADVANCED_CODEC_DIGITAL_RADIO_SOUND

GST_DVB_SERVICE_ADVANCED_CODEC_MOSAIC

GST_DVB_SERVICE_DATA_BROADCAST

GST_DVB_SERVICE_RESERVED_0D_COMMON_INTERFACE

GST_DVB_SERVICE_RCS_MAP

GST_DVB_SERVICE_RCS_FLS

GST_DVB_SERVICE_DVB_MHP

GST_DVB_SERVICE_MPEG2_HD_DIGITAL_TELEVISION

GST_DVB_SERVICE_ADVANCED_CODEC_SD_DIGITAL_TELEVISION

GST_DVB_SERVICE_ADVANCED_CODEC_SD_NVOD_TIME_SHIFTED

GST_DVB_SERVICE_ADVANCED_CODEC_SD_NVOD_REFERENCE

GST_DVB_SERVICE_ADVANCED_CODEC_HD_DIGITAL_TELEVISION

GST_DVB_SERVICE_ADVANCED_CODEC_HD_NVOD_TIME_SHIFTED

GST_DVB_SERVICE_ADVANCED_CODEC_HD_NVOD_REFERENCE

GST_DVB_SERVICE_ADVANCED_CODEC_STEREO_HD_DIGITAL_TELEVISION

GST_DVB_SERVICE_ADVANCED_CODEC_STEREO_HD_NVOD_TIME_SHIFTED

GST_DVB_SERVICE_ADVANCED_CODEC_STEREO_HD_NVOD_REFERENCE

GST_DVB_SERVICE_RESERVED_FF


gst_mpegts_descriptor_parse_dvb_service ()

gboolean            gst_mpegts_descriptor_parse_dvb_service
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         GstMpegtsDVBServiceType *service_type,
                                                         gchar **service_name,
                                                         gchar **provider_name);

Extracts the dvb service information from descriptor.

descriptor :

a GST_MTS_DESC_DVB_SERVICE GstMpegtsDescriptor

service_type :

the service type. [out][allow-none]

service_name :

the service name. [out][transfer full][allow-none]

provider_name :

the provider name. [out][transfer full][allow-none]

Returns :

TRUE if parsing succeeded, else FALSE.

gst_mpegts_descriptor_from_dvb_service ()

GstMpegtsDescriptor * gst_mpegts_descriptor_from_dvb_service
                                                        (GstMpegtsDVBServiceType service_type,
                                                         const gchar *service_name,
                                                         const gchar *service_provider);

Fills a GstMpegtsDescriptor to be a GST_MTS_DESC_DVB_SERVICE. The data field of the GstMpegtsDescriptor will be allocated, and transferred to the caller.

service_type :

Service type defined as a GstMpegtsDVBServiceType

service_name :

Name of the service. [allow-none]

service_provider :

Name of the service provider. [allow-none]

Returns :

the GstMpegtsDescriptor or NULL on fail. [transfer full]

enum GstMpegtsDVBTeletextType

typedef enum {
  INITIAL_PAGE = 0x01,
  SUBTITLE_PAGE,
  ADDITIONAL_INFO_PAGE,
  PROGRAMME_SCHEDULE_PAGE,
  HEARING_IMPAIRED_PAGE
} GstMpegtsDVBTeletextType;

The type of teletext page.

As specified in Table 100 of ETSI EN 300 468 v1.13.1

INITIAL_PAGE

SUBTITLE_PAGE

ADDITIONAL_INFO_PAGE

PROGRAMME_SCHEDULE_PAGE

HEARING_IMPAIRED_PAGE


gst_mpegts_descriptor_parse_dvb_teletext_idx ()

gboolean            gst_mpegts_descriptor_parse_dvb_teletext_idx
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         guint idx,
                                                         gchar **language_code,
                                                         GstMpegtsDVBTeletextType *teletext_type,
                                                         guint8 *magazine_number,
                                                         guint8 *page_number);

Parses teletext number idx in the descriptor. The language is in ISO639 format.

descriptor :

a GST_MTS_DESC_DVB_TELETEXT GstMpegtsDescriptor

idx :

The id of the teletext to get

language_code :

a null-terminated string. [out][transfer full][allow-none]

teletext_type :

GstMpegtsDVBTeletextType. [out][allow-none]

magazine_number :

. [out][allow-none]

page_number :

. [out][allow-none]

Returns :

FALSE on out-of-bounds and errors

gst_mpegts_descriptor_parse_dvb_teletext_nb ()

guint               gst_mpegts_descriptor_parse_dvb_teletext_nb
                                                        (const GstMpegtsDescriptor *descriptor);

Find the number of teletext entries in descriptor

descriptor :

a GST_MTS_DESC_DVB_TELETEXT GstMpegtsDescriptor

Returns :

Number of teletext entries

gst_mpegts_descriptor_parse_dvb_subtitling_idx ()

gboolean            gst_mpegts_descriptor_parse_dvb_subtitling_idx
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         guint idx,
                                                         gchar **lang,
                                                         guint8 *type,
                                                         guint16 *composition_page_id,
                                                         guint16 *ancillary_page_id);

Extracts the DVB subtitling informatio 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 :

a GST_MTS_DESC_DVB_SUBTITLING GstMpegtsDescriptor

idx :

Table id of the entry to parse

lang :

the language code. [out][transfer full]

type :

the type of subtitling. [out][transfer none][allow-none]

composition_page_id :

the composition page id. [out][transfer none][allow-none]

ancillary_page_id :

the ancillary page id. [out][transfer none][allow-none]

Returns :

TRUE if parsing succeeded, else FALSE.

gst_mpegts_descriptor_parse_dvb_subtitling_nb ()

guint               gst_mpegts_descriptor_parse_dvb_subtitling_nb
                                                        (const GstMpegtsDescriptor *descriptor);

descriptor :

a GST_MTS_DESC_DVB_SUBTITLING GstMpegtsDescriptor

Returns :

The number of entries in descriptor

gst_mpegts_descriptor_from_dvb_subtitling ()

GstMpegtsDescriptor * gst_mpegts_descriptor_from_dvb_subtitling
                                                        (const gchar *lang,
                                                         guint8 type,
                                                         guint16 composition,
                                                         guint16 ancillary);

lang :

a string containing the ISO639 language. [transfer none]

type :

subtitling type

composition :

composition page id

ancillary :

ancillary page id

enum GstMpegtsDVBLinkageType

typedef enum {
  /* 0x00, 0x0F-0x7F reserved for future use */
  GST_MPEGTS_DVB_LINKAGE_RESERVED_00               = 0x00,
  GST_MPEGTS_DVB_LINKAGE_INFORMATION               = 0x01,
  GST_MPEGTS_DVB_LINKAGE_EPG                       = 0x02,
  GST_MPEGTS_DVB_LINKAGE_CA_REPLACEMENT            = 0x03,
  GST_MPEGTS_DVB_LINKAGE_TS_CONTAINING_COMPLETE_SI = 0x04,
  GST_MPEGTS_DVB_LINKAGE_SERVICE_REPLACEMENT       = 0x05,
  GST_MPEGTS_DVB_LINKAGE_DATA_BROADCAST            = 0x06,
  GST_MPEGTS_DVB_LINKAGE_RCS_MAP                   = 0x07,
  GST_MPEGTS_DVB_LINKAGE_MOBILE_HAND_OVER          = 0x08,
  GST_MPEGTS_DVB_LINKAGE_SYSTEM_SOFTWARE_UPDATE    = 0x09,
  GST_MPEGTS_DVB_LINKAGE_TS_CONTAINING_SSU         = 0x0A,
  GST_MPEGTS_DVB_LINKAGE_IP_MAC_NOTIFICATION       = 0x0B,
  GST_MPEGTS_DVB_LINKAGE_TS_CONTAINING_INT         = 0x0C,
  GST_MPEGTS_DVB_LINKAGE_EVENT                     = 0x0D,
  GST_MPEGTS_DVB_LINKAGE_EXTENDED_EVENT            = 0x0E,
} GstMpegtsDVBLinkageType;

Linkage Type (EN 300 468 v.1.13.1)

GST_MPEGTS_DVB_LINKAGE_RESERVED_00

GST_MPEGTS_DVB_LINKAGE_INFORMATION

GST_MPEGTS_DVB_LINKAGE_EPG

GST_MPEGTS_DVB_LINKAGE_CA_REPLACEMENT

GST_MPEGTS_DVB_LINKAGE_TS_CONTAINING_COMPLETE_SI

GST_MPEGTS_DVB_LINKAGE_SERVICE_REPLACEMENT

GST_MPEGTS_DVB_LINKAGE_DATA_BROADCAST

GST_MPEGTS_DVB_LINKAGE_RCS_MAP

GST_MPEGTS_DVB_LINKAGE_MOBILE_HAND_OVER

GST_MPEGTS_DVB_LINKAGE_SYSTEM_SOFTWARE_UPDATE

GST_MPEGTS_DVB_LINKAGE_TS_CONTAINING_SSU

GST_MPEGTS_DVB_LINKAGE_IP_MAC_NOTIFICATION

GST_MPEGTS_DVB_LINKAGE_TS_CONTAINING_INT

GST_MPEGTS_DVB_LINKAGE_EVENT

GST_MPEGTS_DVB_LINKAGE_EXTENDED_EVENT


enum GstMpegtsDVBLinkageHandOverType

typedef enum {
  GST_MPEGTS_DVB_LINKAGE_HAND_OVER_RESERVED        = 0x00,
  GST_MPEGTS_DVB_LINKAGE_HAND_OVER_IDENTICAL       = 0x01,
  GST_MPEGTS_DVB_LINKAGE_HAND_OVER_LOCAL_VARIATION = 0x02,
  GST_MPEGTS_DVB_LINKAGE_HAND_OVER_ASSOCIATED      = 0x03,
} GstMpegtsDVBLinkageHandOverType;

GST_MPEGTS_DVB_LINKAGE_HAND_OVER_RESERVED

GST_MPEGTS_DVB_LINKAGE_HAND_OVER_IDENTICAL

GST_MPEGTS_DVB_LINKAGE_HAND_OVER_LOCAL_VARIATION

GST_MPEGTS_DVB_LINKAGE_HAND_OVER_ASSOCIATED


struct GstMpegtsDVBLinkageMobileHandOver

struct GstMpegtsDVBLinkageMobileHandOver {
  GstMpegtsDVBLinkageHandOverType hand_over_type;
  /* 0 = NIT, 1 = SDT */
  gboolean                        origin_type;
  guint16                         network_id;
  guint16                         initial_service_id;
};

struct GstMpegtsDVBLinkageEvent

struct GstMpegtsDVBLinkageEvent {
  guint16  target_event_id;
  gboolean target_listed;
  gboolean event_simulcast;
};

struct GstMpegtsDVBLinkageExtendedEvent

struct GstMpegtsDVBLinkageExtendedEvent {
  guint16        target_event_id;
  gboolean       target_listed;
  gboolean       event_simulcast;
  /* FIXME: */
  guint8         link_type;
  /* FIXME: */
  guint8         target_id_type;
  gboolean       original_network_id_flag;
  gboolean       service_id_flag;
  /* if (target_id_type == 3) */
  guint16        user_defined_id;
  /* else */
  guint16        target_transport_stream_id;
  guint16        target_original_network_id;
  guint16        target_service_id;
};

struct GstMpegtsDVBLinkageDescriptor

struct GstMpegtsDVBLinkageDescriptor {
  guint16                           transport_stream_id;
  guint16                           original_network_id;
  guint16                           service_id;
  GstMpegtsDVBLinkageType           linkage_type;
  guint8                            private_data_length;
  guint8                            *private_data_bytes;
};

guint16 transport_stream_id;

the transport id

guint16 original_network_id;

the original network id

guint16 service_id;

the service id

GstMpegtsDVBLinkageType linkage_type;

the type which linkage_data has

guint8 private_data_length;

the length for private_data_bytes

guint8 *private_data_bytes;

additional data bytes

gst_mpegts_dvb_linkage_descriptor_free ()

void                gst_mpegts_dvb_linkage_descriptor_free
                                                        (GstMpegtsDVBLinkageDescriptor *source);

gst_mpegts_dvb_linkage_descriptor_get_mobile_hand_over ()

const GstMpegtsDVBLinkageMobileHandOver * gst_mpegts_dvb_linkage_descriptor_get_mobile_hand_over
                                                        (const GstMpegtsDVBLinkageDescriptor *desc);

desc :

the GstMpegtsDVBLinkageDescriptor

Returns :

The GstMpegtsDVBLinkageMobileHandOver or NULL if an error happened

gst_mpegts_dvb_linkage_descriptor_get_event ()

const GstMpegtsDVBLinkageEvent * gst_mpegts_dvb_linkage_descriptor_get_event
                                                        (const GstMpegtsDVBLinkageDescriptor *desc);

desc :

the GstMpegtsDVBLinkageDescriptor

Returns :

The GstMpegtsDVBLinkageEvent or NULL if an error happened

gst_mpegts_dvb_linkage_descriptor_get_extended_event ()

const GPtrArray *   gst_mpegts_dvb_linkage_descriptor_get_extended_event
                                                        (const GstMpegtsDVBLinkageDescriptor *desc);

desc :

the GstMpegtsDVBLinkageDescriptor

Returns :

an GstMpegtsDVBLinkageExtendedEvent array or NULL if an error happened. [element-type GstMpegtsDVBLinkageExtendedEvent]

gst_mpegts_descriptor_parse_dvb_linkage ()

gboolean            gst_mpegts_descriptor_parse_dvb_linkage
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         GstMpegtsDVBLinkageDescriptor **res);

Extracts the DVB linkage information from descriptor.

descriptor :

a GST_MTS_DESC_DVB_LINKAGE GstMpegtsDescriptor

res :

the GstMpegtsDVBLinkageDescriptor to fill. [out][transfer full]

Returns :

TRUE if parsing succeeded, else FALSE.

gst_mpegts_descriptor_parse_dvb_private_data_specifier ()

gboolean            gst_mpegts_descriptor_parse_dvb_private_data_specifier
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         guint32 *private_data_specifier,
                                                         guint8 **private_data,
                                                         guint8 *length);

Parses out the private data specifier from the descriptor.

descriptor :

a GST_MTS_DESC_DVB_PRIVATE_DATA_SPECIFIER GstMpegtsDescriptor

private_data_specifier :

the private data specifier id registered by http://www.dvbservices.com/. [out]

private_data :

additional data or NULL. [out][transfer full][allow-none]

length :

length of private_data. [out][allow-none]

Returns :

TRUE if the parsing happened correctly, else FALSE.

gst_mpegts_descriptor_parse_dvb_frequency_list ()

gboolean            gst_mpegts_descriptor_parse_dvb_frequency_list
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         gboolean *offset,
                                                         GArray **list);

Parses out a list of frequencies from the descriptor.

descriptor :

a GST_MTS_DESC_DVB_FREQUENCY_LIST GstMpegtsDescriptor

offset :

FALSE in Hz, TRUE in kHz. [out]

list :

a list of all frequencies in Hz/kHz depending on offset. [out][transfer full][element-type guint32]

Returns :

TRUE if the parsing happened correctly, else FALSE.

struct GstMpegtsDataBroadcastDescriptor

struct GstMpegtsDataBroadcastDescriptor {
  guint16     data_broadcast_id;
  guint8      component_tag;
  guint8      length;
  guint8      *selector_bytes;
  gchar       *language_code;
  gchar       *text;
};

guint16 data_broadcast_id;

the data broadcast id

guint8 component_tag;

the component tag

guint8 length;

guint8 *selector_bytes;

the selector byte field

gchar *language_code;

language of text

gchar *text;

description of data broadcast

gst_mpegts_dvb_data_broadcast_descriptor_free ()

void                gst_mpegts_dvb_data_broadcast_descriptor_free
                                                        (GstMpegtsDataBroadcastDescriptor *source);

gst_mpegts_descriptor_parse_dvb_data_broadcast ()

gboolean            gst_mpegts_descriptor_parse_dvb_data_broadcast
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         GstMpegtsDataBroadcastDescriptor **res);

Parses out the data broadcast from the descriptor.

descriptor :

a GST_MTS_DESC_DVB_DATA_BROADCAST GstMpegtsDescriptor

res :

GstMpegtsDataBroadcastDescriptor. [out][transfer full]

Returns :

TRUE if the parsing happened correctly, else FALSE.

enum GstMpegtsDVBScramblingModeType

typedef enum {
  GST_MPEGTS_DVB_SCRAMBLING_MODE_RESERVED              = 0x00,
  GST_MPEGTS_DVB_SCRAMBLING_MODE_CSA1                  = 0x01,
  GST_MPEGTS_DVB_SCRAMBLING_MODE_CSA2                  = 0x02,
  GST_MPEGTS_DVB_SCRAMBLING_MODE_CSA3_STANDARD         = 0x03,
  GST_MPEGTS_DVB_SCRAMBLING_MODE_CSA3_MINIMAL_ENHANCED = 0x04,
  GST_MPEGTS_DVB_SCRAMBLING_MODE_CSA3_FULL_ENHANCED    = 0x05,
  /* 0x06 - 0x0f reserved for future use */
  GST_MPEGTS_DVB_SCRAMBLING_MODE_CISSA                 = 0x10,
  /* 0x11 - 0x1f reserved for future DVB-CISSA versions */
  GST_MPEGTS_DVB_SCRAMBLING_MODE_ATIS_0                = 0x70,
  GST_MPEGTS_DVB_SCRAMBLING_MODE_ATIS_F                = 0x7f,
} GstMpegtsDVBScramblingModeType;

GST_MPEGTS_DVB_SCRAMBLING_MODE_RESERVED

GST_MPEGTS_DVB_SCRAMBLING_MODE_CSA1

GST_MPEGTS_DVB_SCRAMBLING_MODE_CSA2

GST_MPEGTS_DVB_SCRAMBLING_MODE_CSA3_STANDARD

GST_MPEGTS_DVB_SCRAMBLING_MODE_CSA3_MINIMAL_ENHANCED

GST_MPEGTS_DVB_SCRAMBLING_MODE_CSA3_FULL_ENHANCED

GST_MPEGTS_DVB_SCRAMBLING_MODE_CISSA

GST_MPEGTS_DVB_SCRAMBLING_MODE_ATIS_0

GST_MPEGTS_DVB_SCRAMBLING_MODE_ATIS_F


gst_mpegts_descriptor_parse_dvb_scrambling ()

gboolean            gst_mpegts_descriptor_parse_dvb_scrambling
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         GstMpegtsDVBScramblingModeType *scrambling_mode);

Parses out the scrambling mode from the descriptor.

descriptor :

a GST_MTS_DESC_DVB_SCRAMBLING GstMpegtsDescriptor

scrambling_mode :

This 8-bit field identifies the selected mode of the scrambling algorithm (GstMpegtsDVBScramblingModeType). The technical details of the scrambling algorithm are available only to bona-fide users upon signature of a Non Disclosure Agreement (NDA) administered by the DVB Common Scrambling Algorithm Custodian. [out]

Returns :

TRUE if the parsing happened correctly, else FALSE.

gst_mpegts_descriptor_parse_dvb_data_broadcast_id ()

gboolean            gst_mpegts_descriptor_parse_dvb_data_broadcast_id
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         guint16 *data_broadcast_id,
                                                         guint8 **id_selector_bytes,
                                                         guint8 *len);

Parses out the data broadcast id from the descriptor.

descriptor :

a GST_MTS_DESC_DVB_DATA_BROADCAST_ID GstMpegtsDescriptor

data_broadcast_id :

the data broadcast id. [out]

id_selector_bytes :

the selector bytes, if present. [out][transfer full]

len :

the length of id_selector_bytes. [out]

Returns :

TRUE if the parsing happened correctly, else FALSE.

struct GstMpegtsDVBParentalRatingItem

struct GstMpegtsDVBParentalRatingItem {
  gchar  *country_code;
  guint8 rating;
};

gst_mpegts_descriptor_parse_dvb_parental_rating ()

gboolean            gst_mpegts_descriptor_parse_dvb_parental_rating
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         GPtrArray **rating);

Extracts the DVB parental rating information from descriptor.

descriptor :

a GST_MTS_DESC_DVB_PARENTAL_RATING GstMpegtsDescriptor

rating :

GstMpegtsDVBParentalRatingItem. [out][transfer full][element-type GstMpegtsDVBParentalRatingItem]

Returns :

TRUE if the parsing happened correctly, else FALSE.

gst_mpegts_descriptor_parse_dvb_stream_identifier ()

gboolean            gst_mpegts_descriptor_parse_dvb_stream_identifier
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         guint8 *component_tag);

Extracts the component tag from descriptor.

descriptor :

a GST_MTS_DESC_DVB_CONTENT GstMpegtsDescriptor

component_tag :

the component tag. [out][transfer none]

Returns :

TRUE if the parsing happended correctly, else FALSE.

gst_mpegts_descriptor_parse_dvb_ca_identifier ()

gboolean            gst_mpegts_descriptor_parse_dvb_ca_identifier
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         GArray **list);

Extracts ca id's from descriptor.

descriptor :

a GST_MTS_DESC_DVB_CA_IDENTIFIER GstMpegtsDescriptor

list :

a list of ca identifier. Edge entry identifies the CA system. Allocations of the value of this field are found in http://www.dvbservices.com. [out][transfer full][element-type guint16]

Returns :

TRUE if the parsing happened correctly, else FALSE.

struct GstMpegtsDVBServiceListItem

struct GstMpegtsDVBServiceListItem {
  guint16                 service_id;
  GstMpegtsDVBServiceType type;
};

guint16 service_id;

the id of a service

GstMpegtsDVBServiceType type;

the type of a service

gst_mpegts_descriptor_parse_dvb_service_list ()

gboolean            gst_mpegts_descriptor_parse_dvb_service_list
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         GPtrArray **list);

Parses out a list of services from the descriptor:

descriptor :

a GST_MTS_DESC_DVB_SERVICE_LIST GstMpegtsDescriptor

list :

the list of services. [out][transfer full][element-type GstMpegtsDVBServiceListItem]

Returns :

TRUE if the parsing happened correctly, else FALSE.

gst_mpegts_descriptor_parse_dvb_stuffing ()

gboolean            gst_mpegts_descriptor_parse_dvb_stuffing
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         guint8 **stuffing_bytes);

Parses out the stuffing bytes from the descriptor.

descriptor :

a GST_MTS_DESC_DVB_STUFFING GstMpegtsDescriptor

stuffing_bytes :

the stuffing bytes. [out][transfer full]

Returns :

TRUE if the parsing happened correctly, else FALSE.

gst_mpegts_descriptor_parse_dvb_bouquet_name ()

gboolean            gst_mpegts_descriptor_parse_dvb_bouquet_name
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         gchar **bouquet_name);

Extracts the bouquet name from descriptor.

bouquet_name :

the bouquet name. [out][transfer full][allow-none]

Returns :

TRUE if parsing succeeded, else FALSE.

struct GstMpegtsDvbMultilingualNetworkNameItem

struct GstMpegtsDvbMultilingualNetworkNameItem {
  gchar *language_code;
  gchar *network_name;
};

a multilingual network name entry

gchar *language_code;

the ISO 639 language code

gchar *network_name;

the network name

gst_mpegts_descriptor_parse_dvb_multilingual_network_name ()

gboolean            gst_mpegts_descriptor_parse_dvb_multilingual_network_name
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         GPtrArray **network_name_items);

Parses out the multilingual network name from the descriptor.

descriptor :

a GST_MTS_DESC_DVB_MULTILINGUAL_NETWORK_NAME GstMpegtsDescriptor

network_name_items :

a GstMpegtsDvbMultilingualNetworkNameItem. [out][transfer full][element-type GstMpegtsDvbMultilingualNetworkNameItem]

Returns :

TRUE if the parsing happened correctly, else FALSE.

struct GstMpegtsDvbMultilingualBouquetNameItem

struct GstMpegtsDvbMultilingualBouquetNameItem {
  gchar *language_code;
  gchar *bouquet_name;
};

a multilingual bouquet name entry

gchar *language_code;

the ISO 639 language code

gchar *bouquet_name;

the bouquet name

gst_mpegts_descriptor_parse_dvb_multilingual_bouquet_name ()

gboolean            gst_mpegts_descriptor_parse_dvb_multilingual_bouquet_name
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         GPtrArray **bouquet_name_items);

Parses out the multilingual bouquet name from the descriptor.

descriptor :

a GST_MTS_DESC_DVB_MULTILINGUAL_BOUQUET_NAME GstMpegtsDescriptor

bouquet_name_items :

a GstMpegtsDvbMultilingualBouquetNameItem. [out][transfer full][element-type GstMpegtsDvbMultilingualBouquetNameItem]

Returns :

TRUE if the parsing happened correctly, else FALSE.

struct GstMpegtsDvbMultilingualServiceNameItem

struct GstMpegtsDvbMultilingualServiceNameItem {
  gchar *language_code;
  gchar *provider_name;
  gchar *service_name;
};

a multilingual service name entry

gchar *language_code;

the ISO 639 language code

gchar *provider_name;

the provider name

gchar *service_name;

the service name

gst_mpegts_descriptor_parse_dvb_multilingual_service_name ()

gboolean            gst_mpegts_descriptor_parse_dvb_multilingual_service_name
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         GPtrArray **service_name_items);

Parses out the multilingual service name from the descriptor.

descriptor :

a GST_MTS_DESC_DVB_MULTILINGUAL_SERVICE_NAME GstMpegtsDescriptor

service_name_items :

a GstMpegtsDvbMultilingualServiceNameItem. [out][transfer full][element-type GstMpegtsDvbMultilingualServiceNameItem]

Returns :

TRUE if the parsing happened correctly, else FALSE.

struct GstMpegtsDvbMultilingualComponentItem

struct GstMpegtsDvbMultilingualComponentItem {
  gchar *language_code;
  gchar *description;
};

gchar *language_code;

the ISO 639 language code

gchar *description;

the component description

gst_mpegts_descriptor_parse_dvb_multilingual_component ()

gboolean            gst_mpegts_descriptor_parse_dvb_multilingual_component
                                                        (const GstMpegtsDescriptor *descriptor,
                                                         guint8 *component_tag,
                                                         GPtrArray **component_description_items);

Parses out the multilingual component from the descriptor.

descriptor :

a GST_MTS_DESC_DVB_MULTILINGUAL_COMPONENT GstMpegtsDescriptor

component_tag :

the component tag

component_description_items :

a GstMpegtsDvbMultilingualComponentItem. [out][transfer full][element-type GstMpegtsDvbMultilingualComponentItem]

Returns :

TRUE if the parsing happened correctly, else FALSE.