| #ifndef __MPLEXCONSTS_H__ |
| #define __MPLEXCONSTS_H__ |
| |
| |
| #define SEQUENCE_HEADER 0x000001b3 |
| #define SEQUENCE_END 0x000001b7 |
| #define PICTURE_START 0x00000100 |
| #define EXT_START_CODE 0x000001b5 |
| #define GROUP_START 0x000001b8 |
| #define SYNCWORD_START 0x000001 |
| |
| #define IFRAME 1 |
| #define PFRAME 2 |
| #define BFRAME 3 |
| #define DFRAME 4 |
| #define NOFRAME 5 |
| |
| #define PIC_TOP_FIELD 1 |
| #define PIC_BOT_FIELD 2 |
| #define PIC_FRAME 3 |
| |
| #define CODING_EXT_ID 8 |
| #define AUDIO_SYNCWORD 0x7ff |
| |
| |
| #define PACK_START 0x000001ba |
| #define SYS_HEADER_START 0x000001bb |
| #define ISO11172_END 0x000001b9 |
| #define PACKET_START 0x000001 |
| |
| #define MAX_FFFFFFFF 4294967295.0 /* = 0xffffffff in dec. */ |
| |
| #define CLOCKS_per_90Kth_sec 300 |
| |
| #define CLOCKS (CLOCKS_per_90Kth_sec*90000) |
| /* MPEG-2 System Clock Hertz - we divide down by 300.0 for MPEG-1*/ |
| |
| /* Range of sizes of the fields following the packet length field in packet header: |
| used to calculate if recieve buffers will have enough space... */ |
| |
| #define MPEG2_BUFFERINFO_LENGTH 3 |
| #define MPEG1_BUFFERINFO_LENGTH 2 |
| #define DTS_PTS_TIMESTAMP_LENGTH 5 |
| #define MPEG2_AFTER_PACKET_LENGTH_MIN 3 |
| #define MPEG1_AFTER_PACKET_LENGTH_MIN (0+1) |
| |
| /* Sector under-size below which header stuffing rather than padding packets |
| or post-packet zero stuffing is used. *Must* be less than 20 for VCD |
| multiplexing to work correctly! |
| */ |
| |
| #define MINIMUM_PADDING_PACKET_SIZE 10 |
| |
| #define PACKET_HEADER_SIZE 6 |
| |
| #define AUDIO_STREAMS 0xb8 /* Marker Audio Streams */ |
| #define VIDEO_STREAMS 0xb9 /* Marker Video Streams */ |
| #define AUDIO_STR_0 0xc0 /* Marker Audio Stream0 */ |
| #define VIDEO_STR_0 0xe0 /* Marker Video Stream0 */ |
| #define PADDING_STR 0xbe /* Marker Padding Stream */ |
| #define PRIVATE_STR_1 0xbd /* private stream 1 */ |
| #define PRIVATE_STR_2 0xbf /* private stream 2 */ |
| #define AC3_SUB_STR_0 0x80 /* AC3 substream id 0 */ |
| |
| #define LPCM_SUB_STR_0 0xa0 /* LPCM substream id 0 */ |
| |
| #define ZERO_STUFFING_BYTE 0 |
| #define STUFFING_BYTE 0xff |
| #define RESERVED_BYTE 0xff |
| #define TIMESTAMPBITS_NO 0 /* Flag NO timestamps */ |
| #define TIMESTAMPBITS_PTS 2 /* Flag PTS timestamp */ |
| #define TIMESTAMPBITS_DTS 1 /* Flag PTS timestamp */ |
| #define TIMESTAMPBITS_PTS_DTS (TIMESTAMPBITS_DTS|TIMESTAMPBITS_PTS) /* Flag BOTH timestamps */ |
| |
| #define MARKER_MPEG1_SCR 2 /* Marker SCR */ |
| #define MARKER_MPEG2_SCR 1 /* These don't need to be distinct! */ |
| #define MARKER_JUST_PTS 2 /* Marker only PTS */ |
| #define MARKER_PTS 3 /* Marker PTS */ |
| #define MARKER_DTS 1 /* Marker DTS */ |
| #define MARKER_NO_TIMESTAMPS 0x0f /* Marker NO timestamps */ |
| |
| |
| #endif // __MPLEXCONSTS_H__ |