mpeg.c File Reference
#include "avformat.h"
#include "internal.h"
#include "mpeg.h"
#include <assert.h>

Go to the source code of this file.

Data Structures

struct  MpegDemuxContext

Macros

#define MAX_SYNC_SIZE   100000

Typedefs

typedef struct MpegDemuxContext MpegDemuxContext

Functions

static int check_pes (uint8_t *p, uint8_t *end)
static int check_pack_header (const uint8_t *buf)
static int mpegps_probe (AVProbeData *p)
static int mpegps_read_header (AVFormatContext *s, AVFormatParameters *ap)
static int64_t get_pts (AVIOContext *pb, int c)
static int find_next_start_code (AVIOContext *pb, int *size_ptr, int32_t *header_state)
static long mpegps_psm_parse (MpegDemuxContext *m, AVIOContext *pb)
 Extract stream types from a program stream map According to ISO/IEC 13818-1 ('MPEG-2 Systems') table 2-35.
static int mpegps_read_pes_header (AVFormatContext *s, int64_t *ppos, int *pstart_code, int64_t *ppts, int64_t *pdts)
static int mpegps_read_packet (AVFormatContext *s, AVPacket *pkt)
static int64_t mpegps_read_dts (AVFormatContext *s, int stream_index, int64_t *ppos, int64_t pos_limit)

Variables

AVInputFormat ff_mpegps_demuxer

Macro Definition Documentation

#define MAX_SYNC_SIZE   100000

Definition at line 32 of file mpeg.c.

Referenced by mpegps_read_pes_header().

Typedef Documentation

Function Documentation

static int check_pack_header ( const uint8_t *  buf)
static

Definition at line 52 of file mpeg.c.

Referenced by mpegps_probe().

static int check_pes ( uint8_t *  p,
uint8_t *  end 
)
static

Definition at line 34 of file mpeg.c.

Referenced by mpegps_probe().

static int find_next_start_code ( AVIOContext pb,
int *  size_ptr,
int32_t *  header_state 
)
static

Definition at line 140 of file mpeg.c.

Referenced by mpegps_read_pes_header().

static int64_t get_pts ( AVIOContext pb,
int  c 
)
static

Definition at line 130 of file mpeg.c.

Referenced by mpegps_read_pes_header().

static int mpegps_probe ( AVProbeData p)
static

Definition at line 56 of file mpeg.c.

static long mpegps_psm_parse ( MpegDemuxContext m,
AVIOContext pb 
)
static

Extract stream types from a program stream map According to ISO/IEC 13818-1 ('MPEG-2 Systems') table 2-35.

Returns
number of bytes occupied by PSM in the bitstream

Definition at line 208 of file mpeg.c.

Referenced by mpegps_read_pes_header().

static int64_t mpegps_read_dts ( AVFormatContext s,
int  stream_index,
int64_t *  ppos,
int64_t  pos_limit 
)
static

Definition at line 582 of file mpeg.c.

static int mpegps_read_header ( AVFormatContext s,
AVFormatParameters ap 
)
static

Definition at line 107 of file mpeg.c.

static int mpegps_read_packet ( AVFormatContext s,
AVPacket pkt 
)
static

Definition at line 421 of file mpeg.c.

static int mpegps_read_pes_header ( AVFormatContext s,
int64_t *  ppos,
int *  pstart_code,
int64_t *  ppts,
int64_t *  pdts 
)
static

Definition at line 239 of file mpeg.c.

Referenced by mpegps_read_dts(), and mpegps_read_packet().

Variable Documentation

AVInputFormat ff_mpegps_demuxer
Initial value:
{
.name = "mpeg",
.long_name = NULL_IF_CONFIG_SMALL("MPEG-PS format"),
.priv_data_size = sizeof(MpegDemuxContext),
.read_timestamp = mpegps_read_dts,
}

Definition at line 610 of file mpeg.c.