Top |
DVB variants of MPEG-TS descriptorsDVB variants of MPEG-TS descriptors — Descriptors for the various DVB specifications |
GEnum ├── GstMpegtsCableOuterFECScheme ├── GstMpegtsDVBCodeRate ├── GstMpegtsDVBServiceType ├── GstMpegtsModulationType ├── GstMpegtsSatellitePolarizationType ╰── GstMpegtsSatelliteRolloff
gboolean gst_mpegts_descriptor_parse_dvb_content (const GstMpegtsDescriptor *descriptor
,GPtrArray **content
);
Extracts the DVB content information from descriptor
.
void
gst_mpegts_dvb_component_descriptor_free
(GstMpegtsComponentDescriptor *source
);
gboolean gst_mpegts_descriptor_parse_dvb_component (const GstMpegtsDescriptor *descriptor
,GstMpegtsComponentDescriptor **res
);
Extracts the DVB component information from descriptor
.
void
gst_mpegts_extended_event_descriptor_free
(GstMpegtsExtendedEventDescriptor *source
);
gboolean gst_mpegts_descriptor_parse_dvb_extended_event (const GstMpegtsDescriptor *descriptor
,GstMpegtsExtendedEventDescriptor **res
);
Extracts the DVB extended event information from descriptor
.
gboolean gst_mpegts_descriptor_parse_satellite_delivery_system (const GstMpegtsDescriptor *descriptor
,GstMpegtsSatelliteDeliverySystemDescriptor *res
);
Extracts the satellite delivery system information from descriptor
.
descriptor |
a |
|
res |
the GstMpegtsSatelliteDeliverySystemDescriptor to fill. |
[out][transfer none] |
gboolean gst_mpegts_descriptor_parse_cable_delivery_system (const GstMpegtsDescriptor *descriptor
,GstMpegtsCableDeliverySystemDescriptor *res
);
Extracts the cable delivery system information from descriptor
.
descriptor |
a |
|
res |
the GstMpegtsCableDeliverySystemDescriptor to fill. |
[out][transfer none] |
gboolean gst_mpegts_descriptor_parse_terrestrial_delivery_system (const GstMpegtsDescriptor *descriptor
,GstMpegtsTerrestrialDeliverySystemDescriptor *res
);
Parses out the terrestrial delivery system from the descriptor
.
descriptor |
a |
|
res |
[out][transfer none] |
void
gst_mpegts_t2_delivery_system_descriptor_free
(GstMpegtsT2DeliverySystemDescriptor *source
);
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 |
|
res |
[out][transfer full] |
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
.
gboolean gst_mpegts_descriptor_parse_dvb_network_name (const GstMpegtsDescriptor *descriptor
,gchar **name
);
Parses out the dvb network name from the descriptor
:
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.
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
.
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] |
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.
guint
gst_mpegts_descriptor_parse_dvb_teletext_nb
(const GstMpegtsDescriptor *descriptor
);
Find the number of teletext entries in 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
);
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 |
||
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] |
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
);
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
);
an GstMpegtsDVBLinkageExtendedEvent array or NULL
if an error happened.
[element-type GstMpegtsDVBLinkageExtendedEvent]
gboolean gst_mpegts_descriptor_parse_dvb_linkage (const GstMpegtsDescriptor *descriptor
,GstMpegtsDVBLinkageDescriptor **res
);
Extracts the DVB linkage information from descriptor
.
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 |
|
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 |
[out][allow-none] |
gboolean gst_mpegts_descriptor_parse_dvb_frequency_list (const GstMpegtsDescriptor *descriptor
,gboolean *offset
,GArray **list
);
Parses out a list of frequencies from the descriptor
.
void
gst_mpegts_dvb_data_broadcast_descriptor_free
(GstMpegtsDataBroadcastDescriptor *source
);
gboolean gst_mpegts_descriptor_parse_dvb_data_broadcast (const GstMpegtsDescriptor *descriptor
,GstMpegtsDataBroadcastDescriptor **res
);
Parses out the data broadcast from the descriptor
.
gboolean gst_mpegts_descriptor_parse_dvb_scrambling (const GstMpegtsDescriptor *descriptor
,GstMpegtsDVBScramblingModeType *scrambling_mode
);
Parses out the scrambling mode from the descriptor
.
descriptor |
||
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] |
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
.
gboolean gst_mpegts_descriptor_parse_dvb_parental_rating (const GstMpegtsDescriptor *descriptor
,GPtrArray **rating
);
Extracts the DVB parental rating information from descriptor
.
gboolean gst_mpegts_descriptor_parse_dvb_stream_identifier (const GstMpegtsDescriptor *descriptor
,guint8 *component_tag
);
Extracts the component tag from descriptor
.
gboolean gst_mpegts_descriptor_parse_dvb_ca_identifier (const GstMpegtsDescriptor *descriptor
,GArray **list
);
Extracts ca id's from descriptor
.
gboolean gst_mpegts_descriptor_parse_dvb_service_list (const GstMpegtsDescriptor *descriptor
,GPtrArray **list
);
Parses out a list of services from the descriptor
:
gboolean gst_mpegts_descriptor_parse_dvb_stuffing (const GstMpegtsDescriptor *descriptor
,guint8 **stuffing_bytes
);
Parses out the stuffing bytes from the descriptor
.
gboolean gst_mpegts_descriptor_parse_dvb_bouquet_name (const GstMpegtsDescriptor *descriptor
,gchar **bouquet_name
);
Extracts the bouquet name from descriptor
.
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 |
|
network_name_items |
[out][transfer full][element-type GstMpegtsDvbMultilingualNetworkNameItem] |
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 |
|
bouquet_name_items |
[out][transfer full][element-type GstMpegtsDvbMultilingualBouquetNameItem] |
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 |
|
service_name_items |
[out][transfer full][element-type GstMpegtsDvbMultilingualServiceNameItem] |
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 |
|
component_tag |
the component tag |
|
component_description_items |
[out][transfer full][element-type GstMpegtsDvbMultilingualComponentItem] |
The type of GstMpegtsDescriptor
These values correspond to the registered descriptor type from the various DVB specifications.
Consult the relevant specifications for more details.
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.
struct GstMpegtsContent { GstMpegtsContentNibbleHi content_nibble_1; guint8 content_nibble_2; guint8 user_byte; };
struct GstMpegtsComponentDescriptor { guint8 stream_content; guint8 component_type; guint8 component_tag; gchar *language_code; gchar *text; };
struct GstMpegtsExtendedEventItem { gchar *item_description; gchar *item; };
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)
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 |
the frequency in kHz (kiloHertz) |
|
gfloat |
the orbital position in degrees |
|
gboolean |
If |
|
GstMpegtsSatellitePolarizationType |
The polarization of the transmitted signal |
|
GstMpegtsSatelliteRolloff |
Roll-off factor used in DVB-S2 |
|
gboolean |
modulation system, |
|
GstMpegtsModulationType |
Modulation scheme used |
|
guint32 |
Symbol rate (in symbols per second) |
|
GstMpegtsDVBCodeRate |
inner FEC scheme used |
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 |
the frequency in Hz (Hertz) |
|
GstMpegtsCableOuterFECScheme |
the outer FEC scheme used |
|
GstMpegtsModulationType |
Modulation scheme used |
|
guint32 |
Symbol rate (in symbols per second) |
|
GstMpegtsDVBCodeRate |
inner FEC scheme used |
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 |
the frequency in Hz (Hertz) |
|
guint32 |
the bandwidth in Hz (Hertz) |
|
gboolean |
||
gboolean |
||
gboolean |
||
GstMpegtsModulationType |
the constallation |
|
GstMpegtsTerrestrialHierarchy |
the hierarchy |
|
GstMpegtsDVBCodeRate |
||
GstMpegtsDVBCodeRate |
||
GstMpegtsTerrestrialGuardInterval |
||
GstMpegtsTerrestrialTransmissionMode |
||
gboolean |
|
struct GstMpegtsT2DeliverySystemCellExtension { guint8 cell_id_extension; guint32 transposer_frequency; };
struct GstMpegtsT2DeliverySystemCell { guint16 cell_id; GArray *centre_frequencies; GPtrArray *sub_cells; };
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 |
||
guint16 |
||
guint8 |
||
guint32 |
||
GstMpegtsTerrestrialGuardInterval |
||
GstMpegtsTerrestrialTransmissionMode |
||
gboolean |
||
gboolean |
||
GPtrArray * |
. |
[element-type GstMpegtsT2DeliverySystemCell] |
The type of service of a channel.
As specified in Table 87 of ETSI EN 300 468 v1.13.1
The type of teletext page.
As specified in Table 100 of ETSI EN 300 468 v1.13.1
struct GstMpegtsDVBLinkageMobileHandOver { GstMpegtsDVBLinkageHandOverType hand_over_type; /* 0 = NIT, 1 = SDT */ gboolean origin_type; guint16 network_id; guint16 initial_service_id; };
struct GstMpegtsDVBLinkageEvent { guint16 target_event_id; gboolean target_listed; gboolean event_simulcast; };
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 { guint16 transport_stream_id; guint16 original_network_id; guint16 service_id; GstMpegtsDVBLinkageType linkage_type; guint8 private_data_length; guint8 *private_data_bytes; };
guint16 |
the transport id |
|
guint16 |
the original network id |
|
guint16 |
the service id |
|
GstMpegtsDVBLinkageType |
the type which |
|
guint8 |
the length for |
|
guint8 * |
additional data bytes |
struct GstMpegtsDataBroadcastDescriptor { guint16 data_broadcast_id; guint8 component_tag; guint8 length; guint8 *selector_bytes; gchar *language_code; gchar *text; };
struct GstMpegtsDVBParentalRatingItem { gchar *country_code; guint8 rating; };
struct GstMpegtsDVBServiceListItem { guint16 service_id; GstMpegtsDVBServiceType type; };
struct GstMpegtsDvbMultilingualNetworkNameItem { gchar *language_code; gchar *network_name; };
a multilingual network name entry
struct GstMpegtsDvbMultilingualBouquetNameItem { gchar *language_code; gchar *bouquet_name; };
a multilingual bouquet name entry
struct GstMpegtsDvbMultilingualServiceNameItem { gchar *language_code; gchar *provider_name; gchar *service_name; };
a multilingual service name entry