## DVB variants of MPEG-TS sections

DVB variants of MPEG-TS sections — Sections for the various DVB specifications

## Functions

const GstMpegTsNIT * | gst_mpegts_section_get_nit ()
const GstMpegTsSDT * | gst_mpegts_section_get_sdt ()
const GstMpegTsEIT * | gst_mpegts_section_get_eit ()
GstDateTime * | gst_mpegts_section_get_tdt ()
const GstMpegTsTOT * | gst_mpegts_section_get_tot ()

## Types and Values

enum | GstMpegTsSectionDVBTableID
struct | GstMpegTsNIT
struct | GstMpegTsNITStream
struct | GstMpegTsBAT
struct | GstMpegTsBATStream
struct | GstMpegTsSDT
struct | GstMpegTsSDTService
struct | GstMpegTsEIT
struct | GstMpegTsEITEvent
enum | GstMpegTsRunningStatus
struct | GstMpegTsTOT

## Object Hierarchy

        GEnum
        ╰── GstMpegTsRunningStatus

## Includes

    #include <gst/mpegts/mpegts.h>

## Description

## Functions

### gst_mpegts_section_get_nit ()

    const GstMpegTsNIT *
    gst_mpegts_section_get_nit (GstMpegTsSection *section);

Returns the GstMpegTsNIT contained in the `section` .

#### Parameters

section | a GstMpegTsSection of type `GST_MPEGTS_SECTION_NIT` |

#### Returns

The GstMpegTsNIT contained in the section, or `NULL` if an error happened.

### gst_mpegts_section_get_sdt ()

    const GstMpegTsSDT *
    gst_mpegts_section_get_sdt (GstMpegTsSection *section);

Returns the GstMpegTsSDT contained in the `section` .

#### Parameters

section | a GstMpegTsSection of type `GST_MPEGTS_SECTION_SDT` |

#### Returns

The GstMpegTsSDT contained in the section, or `NULL` if an error happened.

### gst_mpegts_section_get_eit ()

    const GstMpegTsEIT *
    gst_mpegts_section_get_eit (GstMpegTsSection *section);

Returns the GstMpegTsEIT contained in the `section` .

#### Parameters

section | a GstMpegTsSection of type `GST_MPEGTS_SECTION_EIT` |

#### Returns

The GstMpegTsEIT contained in the section, or `NULL` if an error happened.

### gst_mpegts_section_get_tdt ()

    GstDateTime *
    gst_mpegts_section_get_tdt (GstMpegTsSection *section);

Returns the GstDateTime of the TDT

#### Parameters

section | a GstMpegTsSection of type `GST_MPEGTS_SECTION_TDT` |

#### Returns

The GstDateTime contained in the section, or `NULL` if an error happened. Release with gst_date_time_unref when done.

### gst_mpegts_section_get_tot ()

    const GstMpegTsTOT *
    gst_mpegts_section_get_tot (GstMpegTsSection *section);

Returns the GstMpegTsTOT contained in the `section` .

#### Parameters

section | a GstMpegTsSection of type `GST_MPEGTS_SECTION_TOT` |

#### Returns

The GstMpegTsTOT contained in the section, or `NULL` if an error happened.

## Types and Values

### enum GstMpegTsSectionDVBTableID

Values for a GstMpegTsSection table_id.

These are the registered DVB table_id variants.

see also: GstMpegTsSectionTableID

#### Members

GST_MTS_TABLE_ID_NETWORK_INFORMATION_ACTUAL_NETWORK |  |
GST_MTS_TABLE_ID_NETWORK_INFORMATION_OTHER_NETWORK |  |
GST_MTS_TABLE_ID_SERVICE_DESCRIPTION_ACTUAL_TS |  |
GST_MTS_TABLE_ID_SERVICE_DESCRIPTION_OTHER_TS |  |
GST_MTS_TABLE_ID_BOUQUET_ASSOCIATION |  |
GST_MTS_TABLE_ID_EVENT_INFORMATION_ACTUAL_TS_PRESENT |  |
GST_MTS_TABLE_ID_EVENT_INFORMATION_OTHER_TS_PRESENT |  |
GST_MTS_TABLE_ID_EVENT_INFORMATION_ACTUAL_TS_SCHEDULE_1 |  |
GST_MTS_TABLE_ID_EVENT_INFORMATION_ACTUAL_TS_SCHEDULE_N |  |
GST_MTS_TABLE_ID_EVENT_INFORMATION_OTHER_TS_SCHEDULE_1 |  |
GST_MTS_TABLE_ID_EVENT_INFORMATION_OTHER_TS_SCHEDULE_N |  |
GST_MTS_TABLE_ID_TIME_DATE |  |
GST_MTS_TABLE_ID_RUNNING_STATUS |  |
GST_MTS_TABLE_ID_STUFFING |  |
GST_MTS_TABLE_ID_TIME_OFFSET |  |
GST_MTS_TABLE_ID_APPLICATION_INFORMATION_TABLE |  |
GST_MTS_TABLE_ID_CONTAINER |  |
GST_MTS_TABLE_ID_RELATED_CONTENT |  |
GST_MTS_TABLE_ID_CONTENT_IDENTIFIER |  |
GST_MTS_TABLE_ID_MPE_FEC |  |
GST_MTS_TABLE_ID_RESOLUTION_NOTIFICATION |  |
GST_MTS_TABLE_ID_MPE_IFEC |  |
GST_MTS_TABLE_ID_DISCONTINUITY_INFORMATION |  |
GST_MTS_TABLE_ID_SELECTION_INFORMATION |  |
GST_MTS_TABLE_ID_CA_MESSAGE_ECM_0 |  |
GST_MTS_TABLE_ID_CA_MESSAGE_ECM_1 |  |
GST_MTS_TABLE_ID_CA_MESSAGE_SYSTEM_PRIVATE_1 |  |
GST_MTS_TABLE_ID_CA_MESSAGE_SYSTEM_PRIVATE_N |  |
GST_MTS_TABLE_ID_SCT |  |
GST_MTS_TABLE_ID_FCT |  |
GST_MTS_TABLE_ID_TCT |  |
GST_MTS_TABLE_ID_SPT |  |
GST_MTS_TABLE_ID_CMT |  |
GST_MTS_TABLE_ID_TBTP |  |
GST_MTS_TABLE_ID_PCR_PACKET_PAYLOAD |  |
GST_MTS_TABLE_ID_TRANSMISSION_MODE_SUPPORT_PAYLOAD |  |
GST_MTS_TABLE_ID_TIM |  |
GST_MTS_TABLE_ID_LL_FEC_PARITY_DATA_TABLE |  |

### struct GstMpegTsNIT

    struct GstMpegTsNIT {
      gboolean   actual_network;

      GPtrArray  *descriptors;

      GPtrArray *streams;
    };

Network Information Table (ISO/IEC 13818-1 / EN 300 468)

The network_id is contained in the subtable_extension field of the container GstMpegTsSection.

#### Members

gboolean `actual_network`; | Whether this NIT corresponds to the actual stream |
GPtrArray *`descriptors`; | the global descriptors. | [element-type GstMpegTsDescriptor]
GPtrArray *`streams`; | the streams. | [element-type GstMpegTsNITStream]

### struct GstMpegTsNITStream

    struct GstMpegTsNITStream {
      guint16  transport_stream_id;
      guint16  original_network_id;

      GPtrArray  *descriptors;
    };

#### Members

guint16 `transport_stream_id`; |  |
guint16 `original_network_id`; |  |
GPtrArray *`descriptors`; | . | [element-type GstMpegTsDescriptor]

### struct GstMpegTsBAT

    struct GstMpegTsBAT {
      GPtrArray     *descriptors;

      GPtrArray  *streams;
    };

`descriptors` : (element-type GstMpegTsDescriptor): `streams` : (element-type GstMpegTsBATStream):

DVB Bouquet Association Table (EN 300 468)

### struct GstMpegTsBATStream

    struct GstMpegTsBATStream {
      guint16   transport_stream_id;
      guint16   original_network_id;

      GPtrArray   *descriptors;
    };

### struct GstMpegTsSDT

    struct GstMpegTsSDT {
      guint16    original_network_id;
      gboolean   actual_ts;

      GPtrArray *services;
    };

`services` : (element-type GstMpegTsSDTService): List of services

Service Description Table (EN 300 468)

### struct GstMpegTsSDTService

    struct GstMpegTsSDTService {
      guint16    service_id;

      gboolean   EIT_schedule_flag;
      gboolean   EIT_present_following_flag;
      GstMpegTsRunningStatus running_status;
      gboolean   free_CA_mode;

      GPtrArray    *descriptors;
    };

`descriptors` : (element-type GstMpegTsDescriptor): List of descriptors

### struct GstMpegTsEIT

    struct GstMpegTsEIT {
      guint16        transport_stream_id;
      guint16        original_network_id;
      guint8         segment_last_section_number;
      guint8         last_table_id;

      gboolean       actual_stream;
      gboolean       present_following;

      GPtrArray     *events;
    };

`events` : (element-type GstMpegTsEITEvent): List of events

Event Information Table (EN 300 468)

### struct GstMpegTsEITEvent

    struct GstMpegTsEITEvent {
      guint16      event_id;

      GstDateTime *start_time;
      guint32      duration;

      GstMpegTsRunningStatus running_status;
      gboolean     free_CA_mode;

      GPtrArray      *descriptors;
    };

`descriptors` : (element-type GstMpegTsDescriptor): List of descriptors

Event from a `GstMpegTsEIT`

### enum GstMpegTsRunningStatus

Running status of a service.

Corresponds to table 6 of ETSI EN 300 468 (v1.13.0)

#### Members

GST_MPEGTS_RUNNING_STATUS_UNDEFINED |  |
GST_MPEGTS_RUNNING_STATUS_NOT_RUNNING |  |
GST_MPEGTS_RUNNING_STATUS_STARTS_IN_FEW_SECONDS |  |
GST_MPEGTS_RUNNING_STATUS_PAUSING |  |
GST_MPEGTS_RUNNING_STATUS_RUNNING |  |
GST_MPEGTS_RUNNING_STATUS_OFF_AIR |  |

### struct GstMpegTsTOT

    struct GstMpegTsTOT {
      GstDateTime   *utc_time;

      GPtrArray        *descriptors;
    };

`descriptors` : (element-type GstMpegTsDescriptor): List of descriptors

Time Offset Table (EN 300 468)