FFmpeg
|
#include "avformat.h"
Go to the source code of this file.
Data Structures | |
struct | SLConfigDescr |
struct | Mp4Descr |
struct | DVBAC3Descriptor |
Macros | |
#define | TS_FEC_PACKET_SIZE 204 |
#define | TS_DVHS_PACKET_SIZE 192 |
#define | TS_PACKET_SIZE 188 |
#define | TS_MAX_PACKET_SIZE 204 |
#define | NB_PID_MAX 8192 |
#define | USUAL_SECTION_SIZE 1024 /* except EIT which is limited to 4096 */ |
#define | MAX_SECTION_SIZE 4096 |
#define | PAT_PID 0x0000 /* Program Association Table */ |
#define | CAT_PID 0x0001 /* Conditional Access Table */ |
#define | TSDT_PID 0x0002 /* Transport Stream Description Table */ |
#define | IPMP_PID 0x0003 |
#define | NIT_PID 0x0010 /* Network Information Table */ |
#define | SDT_PID 0x0011 /* Service Description Table */ |
#define | BAT_PID 0x0011 /* Bouquet Association Table */ |
#define | EIT_PID 0x0012 /* Event Information Table */ |
#define | RST_PID 0x0013 /* Running Status Table */ |
#define | TDT_PID 0x0014 /* Time and Date Table */ |
#define | TOT_PID 0x0014 |
#define | NET_SYNC_PID 0x0015 |
#define | RNT_PID 0x0016 /* RAR Notification Table */ |
#define | LINK_LOCAL_PID 0x001C |
#define | MEASUREMENT_PID 0x001D |
#define | DIT_PID 0x001E /* Discontinuity Information Table */ |
#define | SIT_PID 0x001F /* Selection Information Table */ |
#define | FIRST_OTHER_PID 0x0020 |
#define | LAST_OTHER_PID 0x1FFA |
#define | NULL_PID 0x1FFF /* Null packet (used for fixed bandwidth padding) */ |
#define | M2TS_PMT_PID 0x0100 |
#define | M2TS_PCR_PID 0x1001 |
#define | M2TS_VIDEO_PID 0x1011 |
#define | M2TS_AUDIO_START_PID 0x1100 |
#define | M2TS_PGSSUB_START_PID 0x1200 |
#define | M2TS_TEXTSUB_PID 0x1800 |
#define | M2TS_SECONDARY_AUDIO_START_PID 0x1A00 |
#define | M2TS_SECONDARY_VIDEO_START_PID 0x1B00 |
#define | PAT_TID 0x00 /* Program Association section */ |
#define | CAT_TID 0x01 /* Conditional Access section */ |
#define | PMT_TID 0x02 /* Program Map section */ |
#define | TSDT_TID 0x03 /* Transport Stream Description section */ |
#define | M4OD_TID 0x05 |
#define | NIT_TID 0x40 /* Network Information section - actual network */ |
#define | ONIT_TID 0x41 /* Network Information section - other network */ |
#define | SDT_TID 0x42 /* Service Description section - actual TS */ |
#define | OSDT_TID 0x46 /* Service Descrition section - other TS */ |
#define | BAT_TID 0x4A /* Bouquet Association section */ |
#define | UNT_TID 0x4B /* Update Notification Table section */ |
#define | DFI_TID 0x4C /* Downloadable Font Info section */ |
#define | EIT_TID 0x4E /* Event Information section - actual TS */ |
#define | OEIT_TID 0x4F /* Event Information section - other TS */ |
#define | EITS_START_TID 0x50 /* Event Information section schedule - actual TS */ |
#define | EITS_END_TID 0x5F /* Event Information section schedule - actual TS */ |
#define | OEITS_START_TID 0x60 /* Event Information section schedule - other TS */ |
#define | OEITS_END_TID 0x6F /* Event Information section schedule - other TS */ |
#define | TDT_TID 0x70 /* Time Date section */ |
#define | RST_TID 0x71 /* Running Status section */ |
#define | ST_TID 0x72 /* Stuffing section */ |
#define | TOT_TID 0x73 /* Time Offset section */ |
#define | AIT_TID 0x74 /* Application Inforamtion section */ |
#define | CT_TID 0x75 /* Container section */ |
#define | RCT_TID 0x76 /* Related Content section */ |
#define | CIT_TID 0x77 /* Content Identifier section */ |
#define | MPE_FEC_TID 0x78 /* MPE-FEC section */ |
#define | RPNT_TID 0x79 /* Resolution Provider Notification section */ |
#define | MPE_IFEC_TID 0x7A /* MPE-IFEC section */ |
#define | PROTMT_TID 0x7B /* Protection Message section */ |
#define | DIT_TID 0x7E /* Discontinuity Information section */ |
#define | SIT_TID 0x7F /* Selection Information section */ |
#define | STREAM_TYPE_VIDEO_MPEG1 0x01 |
#define | STREAM_TYPE_VIDEO_MPEG2 0x02 |
#define | STREAM_TYPE_AUDIO_MPEG1 0x03 |
#define | STREAM_TYPE_AUDIO_MPEG2 0x04 |
#define | STREAM_TYPE_PRIVATE_SECTION 0x05 |
#define | STREAM_TYPE_PRIVATE_DATA 0x06 |
#define | STREAM_TYPE_AUDIO_AAC 0x0f |
#define | STREAM_TYPE_AUDIO_AAC_LATM 0x11 |
#define | STREAM_TYPE_VIDEO_MPEG4 0x10 |
#define | STREAM_TYPE_METADATA 0x15 |
#define | STREAM_TYPE_VIDEO_H264 0x1b |
#define | STREAM_TYPE_VIDEO_HEVC 0x24 |
#define | STREAM_TYPE_VIDEO_CAVS 0x42 |
#define | STREAM_TYPE_VIDEO_VC1 0xea |
#define | STREAM_TYPE_VIDEO_DIRAC 0xd1 |
#define | STREAM_TYPE_AUDIO_AC3 0x81 |
#define | STREAM_TYPE_AUDIO_DTS 0x82 |
#define | STREAM_TYPE_AUDIO_TRUEHD 0x83 |
#define | STREAM_TYPE_AUDIO_EAC3 0x87 |
#define | STREAM_ID_PRIVATE_STREAM_1 0xbd |
#define | STREAM_ID_AUDIO_STREAM_0 0xc0 |
#define | STREAM_ID_VIDEO_STREAM_0 0xe0 |
#define | STREAM_ID_METADATA_STREAM 0xfc |
#define | STREAM_ID_EXTENDED_STREAM_ID 0xfd |
#define | VIDEO_STREAM_DESCRIPTOR 0x02 |
#define | REGISTRATION_DESCRIPTOR 0x05 |
#define | ISO_639_LANGUAGE_DESCRIPTOR 0x0a |
#define | IOD_DESCRIPTOR 0x1d |
#define | SL_DESCRIPTOR 0x1e |
#define | FMC_DESCRIPTOR 0x1f |
#define | METADATA_DESCRIPTOR 0x26 |
#define | METADATA_STD_DESCRIPTOR 0x27 |
Functions | |
MpegTSContext * | avpriv_mpegts_parse_open (AVFormatContext *s) |
int | avpriv_mpegts_parse_packet (MpegTSContext *ts, AVPacket *pkt, const uint8_t *buf, int len) |
void | avpriv_mpegts_parse_close (MpegTSContext *ts) |
int | ff_parse_mpeg2_descriptor (AVFormatContext *fc, AVStream *st, int stream_type, const uint8_t **pp, const uint8_t *desc_list_end, Mp4Descr *mp4_descr, int mp4_descr_count, int pid, MpegTSContext *ts) |
Parse an MPEG-2 descriptor. More... | |
int | ff_check_h264_startcode (AVFormatContext *s, const AVStream *st, const AVPacket *pkt) |
Check presence of H264 startcode. More... | |
#define TS_FEC_PACKET_SIZE 204 |
Definition at line 27 of file mpegts.h.
Referenced by get_packet_size(), and mpegts_probe().
#define TS_DVHS_PACKET_SIZE 192 |
Definition at line 28 of file mpegts.h.
Referenced by get_packet_size(), and mpegts_probe().
#define TS_PACKET_SIZE 188 |
Definition at line 29 of file mpegts.h.
Referenced by avpriv_mpegts_parse_open(), avpriv_mpegts_parse_packet(), finished_reading_packet(), get_packet_size(), handle_packet(), handle_packets(), mpegts_get_pcr(), mpegts_insert_null_packet(), mpegts_insert_pcr_only(), mpegts_probe(), mpegts_raw_read_packet(), mpegts_read_header(), mpegts_write_flush(), mpegts_write_pes(), mpegts_write_section(), read_packet(), rtp_send_mpegts_raw(), rtp_write_header(), and write_packet().
#define NB_PID_MAX 8192 |
Definition at line 32 of file mpegts.h.
Referenced by handle_packets(), m4sl_cb(), mpegts_free(), mpegts_open_filter(), and mpegts_read_packet().
#define MAX_SECTION_SIZE 4096 |
Definition at line 34 of file mpegts.h.
Referenced by mpegts_open_section_filter(), and write_section_data().
#define PAT_PID 0x0000 /* Program Association Table */ |
Definition at line 37 of file mpegts.h.
Referenced by avpriv_mpegts_parse_open(), discard_pid(), mpegts_init(), and mpegts_read_header().
#define TSDT_PID 0x0002 /* Transport Stream Description Table */ |
#define SDT_PID 0x0011 /* Service Description Table */ |
Definition at line 43 of file mpegts.h.
Referenced by avpriv_mpegts_parse_open(), mpegts_init(), and mpegts_read_header().
#define EIT_PID 0x0012 /* Event Information Table */ |
Definition at line 45 of file mpegts.h.
Referenced by avpriv_mpegts_parse_open(), eit_cb(), and mpegts_read_header().
#define DIT_PID 0x001E /* Discontinuity Information Table */ |
#define LAST_OTHER_PID 0x1FFA |
Definition at line 62 of file mpegts.h.
Referenced by mpegts_init().
#define NULL_PID 0x1FFF /* Null packet (used for fixed bandwidth padding) */ |
#define M2TS_PMT_PID 0x0100 |
Definition at line 69 of file mpegts.h.
Referenced by mpegts_init().
#define M2TS_VIDEO_PID 0x1011 |
Definition at line 71 of file mpegts.h.
Referenced by mpegts_init().
#define M2TS_AUDIO_START_PID 0x1100 |
Definition at line 72 of file mpegts.h.
Referenced by mpegts_init().
#define M2TS_PGSSUB_START_PID 0x1200 |
Definition at line 73 of file mpegts.h.
Referenced by mpegts_init().
#define M2TS_TEXTSUB_PID 0x1800 |
Definition at line 74 of file mpegts.h.
Referenced by mpegts_init().
#define PAT_TID 0x00 /* Program Association section */ |
Definition at line 79 of file mpegts.h.
Referenced by mpegts_write_pat(), and pat_cb().
#define PMT_TID 0x02 /* Program Map section */ |
Definition at line 81 of file mpegts.h.
Referenced by mpegts_write_pmt(), and pmt_cb().
#define TSDT_TID 0x03 /* Transport Stream Description section */ |
#define NIT_TID 0x40 /* Network Information section - actual network */ |
#define ONIT_TID 0x41 /* Network Information section - other network */ |
#define SDT_TID 0x42 /* Service Description section - actual TS */ |
Definition at line 87 of file mpegts.h.
Referenced by mpegts_write_sdt(), mpegts_write_section1(), and sdt_cb().
#define OSDT_TID 0x46 /* Service Descrition section - other TS */ |
#define UNT_TID 0x4B /* Update Notification Table section */ |
#define EIT_TID 0x4E /* Event Information section - actual TS */ |
#define OEIT_TID 0x4F /* Event Information section - other TS */ |
#define EITS_START_TID 0x50 /* Event Information section schedule - actual TS */ |
#define EITS_END_TID 0x5F /* Event Information section schedule - actual TS */ |
#define OEITS_START_TID 0x60 /* Event Information section schedule - other TS */ |
#define OEITS_END_TID 0x6F /* Event Information section schedule - other TS */ |
#define RPNT_TID 0x79 /* Resolution Provider Notification section */ |
#define DIT_TID 0x7E /* Discontinuity Information section */ |
#define STREAM_TYPE_AUDIO_AAC_LATM 0x11 |
Definition at line 126 of file mpegts.h.
Referenced by get_dvb_stream_type().
#define STREAM_TYPE_METADATA 0x15 |
Definition at line 128 of file mpegts.h.
Referenced by get_dvb_stream_type().
#define STREAM_TYPE_VIDEO_VC1 0xea |
Definition at line 132 of file mpegts.h.
Referenced by get_dvb_stream_type(), get_m2ts_stream_type(), and mpegts_write_pmt().
#define STREAM_TYPE_VIDEO_DIRAC 0xd1 |
Definition at line 133 of file mpegts.h.
Referenced by get_dvb_stream_type(), and mpegts_write_pmt().
#define STREAM_TYPE_AUDIO_DTS 0x82 |
Definition at line 136 of file mpegts.h.
Referenced by get_dvb_stream_type().
#define STREAM_TYPE_AUDIO_TRUEHD 0x83 |
Definition at line 137 of file mpegts.h.
Referenced by get_dvb_stream_type().
#define STREAM_TYPE_AUDIO_EAC3 0x87 |
Definition at line 138 of file mpegts.h.
Referenced by get_dvb_stream_type().
#define STREAM_ID_PRIVATE_STREAM_1 0xbd |
Definition at line 141 of file mpegts.h.
Referenced by mpegts_write_pes().
#define STREAM_ID_AUDIO_STREAM_0 0xc0 |
Definition at line 142 of file mpegts.h.
Referenced by mpegts_write_pes().
#define STREAM_ID_VIDEO_STREAM_0 0xe0 |
Definition at line 143 of file mpegts.h.
Referenced by mpegts_write_pes().
#define STREAM_ID_METADATA_STREAM 0xfc |
Definition at line 144 of file mpegts.h.
Referenced by mpegts_write_pes().
#define STREAM_ID_EXTENDED_STREAM_ID 0xfd |
Definition at line 145 of file mpegts.h.
Referenced by mpegts_write_pes().
#define VIDEO_STREAM_DESCRIPTOR 0x02 |
Definition at line 148 of file mpegts.h.
Referenced by ff_parse_mpeg2_descriptor().
#define REGISTRATION_DESCRIPTOR 0x05 |
Definition at line 149 of file mpegts.h.
Referenced by ff_parse_mpeg2_descriptor(), pmt_cb(), and put_registration_descriptor().
#define ISO_639_LANGUAGE_DESCRIPTOR 0x0a |
Definition at line 150 of file mpegts.h.
Referenced by ff_parse_mpeg2_descriptor(), and mpegts_write_pmt().
#define SL_DESCRIPTOR 0x1e |
Definition at line 152 of file mpegts.h.
Referenced by ff_parse_mpeg2_descriptor().
#define FMC_DESCRIPTOR 0x1f |
Definition at line 153 of file mpegts.h.
Referenced by ff_parse_mpeg2_descriptor().
#define METADATA_DESCRIPTOR 0x26 |
Definition at line 154 of file mpegts.h.
Referenced by ff_parse_mpeg2_descriptor(), and mpegts_write_pmt().
MpegTSContext* avpriv_mpegts_parse_open | ( | AVFormatContext * | s | ) |
Definition at line 3334 of file mpegts.c.
Referenced by get_sockaddr(), iec61883_read_header(), and mpegts_init().
int avpriv_mpegts_parse_packet | ( | MpegTSContext * | ts, |
AVPacket * | pkt, | ||
const uint8_t * | buf, | ||
int | len | ||
) |
Definition at line 3355 of file mpegts.c.
Referenced by ff_rtsp_open_transport_ctx(), iec61883_parse_queue_hdv(), and mpegts_handle_packet().
void avpriv_mpegts_parse_close | ( | MpegTSContext * | ts | ) |
Definition at line 3380 of file mpegts.c.
Referenced by ff_rtsp_close_streams(), iec61883_close(), and mpegts_close_context().
int ff_parse_mpeg2_descriptor | ( | AVFormatContext * | fc, |
AVStream * | st, | ||
int | stream_type, | ||
const uint8_t ** | pp, | ||
const uint8_t * | desc_list_end, | ||
Mp4Descr * | mp4_descr, | ||
int | mp4_descr_count, | ||
int | pid, | ||
MpegTSContext * | ts | ||
) |
Parse an MPEG-2 descriptor.
[in] | fc | Format context (used for logging only) |
st | Stream | |
stream_type | STREAM_TYPE_xxx | |
pp | Descriptor buffer pointer | |
desc_list_end | End of buffer |
Definition at line 1781 of file mpegts.c.
Referenced by parse_chunks(), and pmt_cb().
int ff_check_h264_startcode | ( | AVFormatContext * | s, |
const AVStream * | st, | ||
const AVPacket * | pkt | ||
) |
Check presence of H264 startcode.
Definition at line 1584 of file mpegtsenc.c.
Referenced by avi_write_packet(), mpegts_write_packet_internal(), and write_packet().