File:  [DVB] / multiplexer / pes.h
Revision 1.1: download - view: text, annotated - select for diffs
Mon Mar 19 20:52:34 2001 UTC (23 years, 2 months ago) by oskar
Branches: MAIN
CVS tags: HEAD
Multiplexer, first archived version.
New feature: --badtiming (see --help)

/*
 * ISO 13818 stream multiplexer
 * Copyright (C) 2001 Convergence Integrated Media GmbH Berlin
 * Author: Oskar Schirmer (oskar@convergence.de)
 */


#if PES_LOWEST_SID != 0xBC
#error "PES_LOWEST_SID must be 0xBC"
#endif
#define PES_CODE_STR_MAP  (0xBC)
#define PES_CODE_PRIVATE1 (0xBD)
#define PES_CODE_PADDING  (0xBE)
#define PES_CODE_PRIVATE2 (0xBF)
#define PES_CODE_AUDIO    (0xC0)
#define PES_NUMB_AUDIO    (0x20)
#define PES_CODE_VIDEO    (0xE0)
#define PES_NUMB_VIDEO    (0x10)
#define PES_CODE_ECM      (0xF0)
#define PES_CODE_EMM      (0xF1)
#define PES_CODE_DSMCC    (0xF2)
#define PES_CODE_ISO13522 (0xF3)
#define PES_CODE_ITU222A  (0xF4)
#define PES_CODE_ITU222B  (0xF5)
#define PES_CODE_ITU222C  (0xF6)
#define PES_CODE_ITU222D  (0xF7)
#define PES_CODE_ITU222E  (0xF8)
#define PES_CODE_ANCILARY (0xF9)
#define PES_CODE_STR_DIR  (0xFF)

#define PES_JOKER_AUDIO   (0xB8)
#define PES_JOKER_VIDEO   (0xB9)

#define PES_SYNC_SIZE     3
#define PES_STREAM_ID     (PES_SYNC_SIZE)
#define PES_HDCODE_SIZE   (PES_SYNC_SIZE+1)
#define PES_PACKET_LENGTH (PES_HDCODE_SIZE)
#define PES_HEADER_SIZE   (PES_HDCODE_SIZE+2)

#define ELEMD_MAIN        0
#define ELEMD_VIDEOSTR    2
#define ELEMD_AUDIOSTR    3
#define ELEMD_HIERARCHY   4
#define ELEMD_REGISTRAT   5
#define ELEMD_ALIGNMENT   6
#define ELEMD_TARGETBGG   7
#define ELEMD_VIDWINDOW   8
#define ELEMD_CA          9
#define ELEMD_ISO639LNG  10
#define ELEMD_SYSTEMCLK  11
#define ELEMD_MPLEXBUTL  12
#define ELEMD_COPYRIGHT  13
#define ELEMD_MAXBITRAT  14
#define ELEMD_PRIVATDAT  15
#define ELEMD_SMOOTHING  16
#define ELEMD_STD        17
#define ELEMD_IBP        18
#if NUMBER_ELEMD != 19
#error "NUMBER_ELEMD must be 19"
#endif

#define PES_STRTYP_VIDEO11172   0x01
#define PES_STRTYP_VIDEO13818   0x02
#define PES_STRTYP_AUDIO11172   0x03
#define PES_STRTYP_AUDIO13818   0x04
#define PES_STRTYP_PRIVATESEC   0x05
#define PES_STRTYP_PRIVATDATA   0x06
#define PES_STRTYP_MHEG13522    0x07
#define PES_STRTYP_DSMCC        0x08
#define PES_STRTYP_ITUH222      0x09
#define PES_STRTYP_13818TYPA    0x0A
#define PES_STRTYP_13818TYPB    0x0B
#define PES_STRTYP_13818TYPC    0x0C
#define PES_STRTYP_13818TYPD    0x0D
#define PES_STRTYP_AUXILIARY    0X0E

/*
#define data2map(f,a) (f->mapdata.ptr[f->mapdata.in++] = a)
*/


LinuxTV legacy CVS <linuxtv.org/cvs>