DVB variants of MPEG-TS sections

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

Functions

Types and Values

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

Returns

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


gst_mpegts_nit_new ()

GstMpegTsNIT *
gst_mpegts_nit_new (void);

Allocates and initializes a GstMpegTsNIT.

Returns

A newly allocated GstMpegTsNIT.

[transfer full]


gst_mpegts_nit_stream_new ()

GstMpegTsNITStream *
gst_mpegts_nit_stream_new (void);

Allocates and initializes a GstMpegTsNITStream

Returns

A newly allocated GstMpegTsNITStream.

[transfer full]


gst_mpegts_section_from_nit ()

GstMpegTsSection *
gst_mpegts_section_from_nit (GstMpegTsNIT *nit);

Ownership of nit is taken. The data in nit is managed by the GstMpegTsSection

Parameters

nit

a GstMpegTsNIT to create the GstMpegTsSection from.

[transfer full]

Returns

the GstMpegTsSection.

[transfer full]


gst_mpegts_section_get_sdt ()

const GstMpegTsSDT *
gst_mpegts_section_get_sdt (GstMpegTsSection *section);

Returns the GstMpegTsSDT contained in the section .

Parameters

Returns

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


gst_mpegts_sdt_new ()

GstMpegTsSDT *
gst_mpegts_sdt_new (void);

Allocates and initializes a GstMpegTsSDT.

Returns

A newly allocated GstMpegTsSDT.

[transfer full]


gst_mpegts_sdt_service_new ()

GstMpegTsSDTService *
gst_mpegts_sdt_service_new (void);

Allocates and initializes a GstMpegTsSDTService.

Returns

A newly allocated GstMpegTsSDTService.

[transfer full]


gst_mpegts_section_from_sdt ()

GstMpegTsSection *
gst_mpegts_section_from_sdt (GstMpegTsSDT *sdt);

Ownership of sdt is taken. The data in sdt is managed by the GstMpegTsSection

Parameters

sdt

a GstMpegTsSDT to create the GstMpegTsSection from.

[transfer full]

Returns

the GstMpegTsSection.

[transfer full]


gst_mpegts_section_get_eit ()

const GstMpegTsEIT *
gst_mpegts_section_get_eit (GstMpegTsSection *section);

Returns the GstMpegTsEIT contained in the section .

Parameters

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

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

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;
  guint16    network_id;

  GPtrArray  *descriptors;

  GPtrArray *streams;
};

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

Members

gboolean actual_network;

Whether this NIT corresponds to the actual stream

 

guint16 network_id;

ID of the network that this NIT describes

 

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;
};

DVB Bouquet Association Table (EN 300 468)

Members

GPtrArray *descriptors;

.

[element-type GstMpegTsDescriptor]

GPtrArray *streams;

.

[element-type GstMpegTsBATStream]

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;
  guint16    transport_stream_id;

  GPtrArray *services;
};

Service Description Table (EN 300 468)

Members

guint16 original_network_id;

Network ID of the originating delivery system

 

gboolean actual_ts;

True if the table describes this transport stream

 

guint16 transport_stream_id;

ID of this transport stream

 

GPtrArray *services;

List of services.

[element-type GstMpegTsSDTService]

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;
};

Members

guint16 service_id;

The program number this table belongs to

 

gboolean EIT_schedule_flag;

EIT schedule information is present in this transport stream

 

gboolean EIT_present_following_flag;

EIT present/following information is present in this transport stream

 

GstMpegTsRunningStatus running_status;

Status of this service

 

gboolean free_CA_mode;

True if one or more streams is controlled by a CA system

 

GPtrArray *descriptors;

List of descriptors.

[element-type GstMpegTsDescriptor]

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;
};

Event Information Table (EN 300 468)

Members

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;

List of events.

[element-type GstMpegTsEITEvent]

struct GstMpegTsEITEvent

struct GstMpegTsEITEvent {
  guint16      event_id;

  GstDateTime *start_time;
  guint32      duration;

  GstMpegTsRunningStatus running_status;
  gboolean     free_CA_mode;

  GPtrArray      *descriptors;
};

Event from a GstMpegTsEIT

Members

guint16 event_id;

   

GstDateTime *start_time;

   

guint32 duration;

   

GstMpegTsRunningStatus running_status;

   

gboolean free_CA_mode;

   

GPtrArray *descriptors;

List of descriptors.

[element-type GstMpegTsDescriptor]

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;
};

Time Offset Table (EN 300 468)

Members

GstDateTime *utc_time;

   

GPtrArray *descriptors;

List of descriptors.

[element-type GstMpegTsDescriptor]