Annotation of multiplexer/pes.h, revision 1.8
1.1 oskar 1: /*
2: * ISO 13818 stream multiplexer
3: * Copyright (C) 2001 Convergence Integrated Media GmbH Berlin
1.7 oskar 4: * Author: Oskar Schirmer (schirmer@scara.com)
1.6 oskar 5: *
6: * This program is free software; you can redistribute it and/or modify
7: * it under the terms of the GNU General Public License as published by
8: * the Free Software Foundation; either version 2 of the License, or
9: * (at your option) any later version.
10: *
11: * This program is distributed in the hope that it will be useful,
12: * but WITHOUT ANY WARRANTY; without even the implied warranty of
13: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14: * GNU General Public License for more details.
15: *
16: * You should have received a copy of the GNU General Public License
17: * along with this program; if not, write to the Free Software
18: * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
1.1 oskar 19: */
20:
21:
22: #if PES_LOWEST_SID != 0xBC
23: #error "PES_LOWEST_SID must be 0xBC"
24: #endif
25: #define PES_CODE_STR_MAP (0xBC)
26: #define PES_CODE_PRIVATE1 (0xBD)
27: #define PES_CODE_PADDING (0xBE)
28: #define PES_CODE_PRIVATE2 (0xBF)
29: #define PES_CODE_AUDIO (0xC0)
30: #define PES_NUMB_AUDIO (0x20)
31: #define PES_CODE_VIDEO (0xE0)
32: #define PES_NUMB_VIDEO (0x10)
33: #define PES_CODE_ECM (0xF0)
34: #define PES_CODE_EMM (0xF1)
35: #define PES_CODE_DSMCC (0xF2)
36: #define PES_CODE_ISO13522 (0xF3)
37: #define PES_CODE_ITU222A (0xF4)
38: #define PES_CODE_ITU222B (0xF5)
39: #define PES_CODE_ITU222C (0xF6)
40: #define PES_CODE_ITU222D (0xF7)
41: #define PES_CODE_ITU222E (0xF8)
42: #define PES_CODE_ANCILARY (0xF9)
43: #define PES_CODE_STR_DIR (0xFF)
44:
45: #define PES_JOKER_AUDIO (0xB8)
46: #define PES_JOKER_VIDEO (0xB9)
47:
48: #define PES_SYNC_SIZE 3
49: #define PES_STREAM_ID (PES_SYNC_SIZE)
50: #define PES_HDCODE_SIZE (PES_SYNC_SIZE+1)
51: #define PES_PACKET_LENGTH (PES_HDCODE_SIZE)
52: #define PES_HEADER_SIZE (PES_HDCODE_SIZE+2)
53:
54: #define ELEMD_MAIN 0
55: #define ELEMD_VIDEOSTR 2
56: #define ELEMD_AUDIOSTR 3
57: #define ELEMD_HIERARCHY 4
58: #define ELEMD_REGISTRAT 5
59: #define ELEMD_ALIGNMENT 6
60: #define ELEMD_TARGETBGG 7
61: #define ELEMD_VIDWINDOW 8
62: #define ELEMD_CA 9
63: #define ELEMD_ISO639LNG 10
64: #define ELEMD_SYSTEMCLK 11
65: #define ELEMD_MPLEXBUTL 12
66: #define ELEMD_COPYRIGHT 13
67: #define ELEMD_MAXBITRAT 14
68: #define ELEMD_PRIVATDAT 15
69: #define ELEMD_SMOOTHING 16
70: #define ELEMD_STD 17
71: #define ELEMD_IBP 18
72:
73: #define PES_STRTYP_VIDEO11172 0x01
74: #define PES_STRTYP_VIDEO13818 0x02
75: #define PES_STRTYP_AUDIO11172 0x03
76: #define PES_STRTYP_AUDIO13818 0x04
77: #define PES_STRTYP_PRIVATESEC 0x05
78: #define PES_STRTYP_PRIVATDATA 0x06
79: #define PES_STRTYP_MHEG13522 0x07
80: #define PES_STRTYP_DSMCC 0x08
81: #define PES_STRTYP_ITUH222 0x09
82: #define PES_STRTYP_13818TYPA 0x0A
83: #define PES_STRTYP_13818TYPB 0x0B
84: #define PES_STRTYP_13818TYPC 0x0C
85: #define PES_STRTYP_13818TYPD 0x0D
1.8 ! oskar 86: #define PES_STRTYP_AUXILIARY 0x0E
! 87: #define PES_STRTYP_MPEG2AAC 0x0F
! 88: #define PES_STRTYP_14496VIDEO 0x10
! 89: #define PES_STRTYP_14496AUDIO 0x11
! 90: #define PES_STRTYP_14496GENERIC 0x12
! 91: #define PES_STRTYP_14496SLPACK 0x13
! 92: #define PES_STRTYP_13818SYNCDLP 0x14
! 93: #define PES_STRTYP_H264VIDEO 0x1B
! 94: #define PES_STRTYP_VIDEODIGIC2 0x80
! 95: #define PES_STRTYP_AUDIOATSCAC3 0x81
! 96: #define PES_STRTYP_AUDIOHDMVDTS 0x82
! 97: #define PES_STRTYP_AUDIOLPCM 0x83
! 98: #define PES_STRTYP_AUDIOSDDS 0x84
! 99: #define PES_STRTYP_ATSCPROGID 0x85
! 100: #define PES_STRTYP_AUDIODTSHD 0x86
! 101: #define PES_STRTYP_AUDIOEAC3 0x87
! 102: #define PES_STRTYP_AUDIODTS 0x8A
! 103: #define PES_STRTYP_AUDIOA52BAC3 0x91
1.1 oskar 104:
1.3 oskar 105: #define streamtype_isvideo(typ) \
106: ((typ == PES_STRTYP_VIDEO11172) || \
1.8 ! oskar 107: (typ == PES_STRTYP_VIDEO13818) || \
! 108: (typ == PES_STRTYP_14496VIDEO) || \
! 109: (typ == PES_STRTYP_H264VIDEO))
1.3 oskar 110:
111: #define streamtype_isaudio(typ) \
112: ((typ == PES_STRTYP_AUDIO11172) || \
1.8 ! oskar 113: (typ == PES_STRTYP_AUDIO13818) || \
! 114: (typ == PES_STRTYP_14496AUDIO))
1.3 oskar 115:
LinuxTV legacy CVS <linuxtv.org/cvs>