home *** CD-ROM | disk | FTP | other *** search
- /////////////////////////////////////////////////////////////////////////////
- //
- // Copyright (c) Microsoft Corporation. All rights reserved.
- //
- // Module Name:
- //
- // Mpeg2Bits.h
- //
- // Abstract:
- //
- // This file defines the MPEG-2 section header bitfields. These are
- // defined here instead of in mpegstructs.idl because of MIDL
- // compiler conflicts with bitfield definitions.
- //
- /////////////////////////////////////////////////////////////////////////////
-
- #pragma once
-
- #pragma pack(push)
- #pragma pack(1)
-
-
- //
- // PID structure
- //
-
- #ifdef __midl
-
- typedef struct
- {
- WORD Bits;
- } PID_BITS_MIDL;
-
- #else
-
- typedef struct
- {
- WORD Reserved : 3;
- WORD ProgramId : 13;
- } PID_BITS, *PPID_BITS;
-
- #endif
-
-
-
- //
- // Generic MPEG packet header structure
- //
-
- #ifdef __midl
-
- typedef struct
- {
- WORD Bits;
- } MPEG_HEADER_BITS_MIDL;
-
- #else
-
- typedef struct
- {
- WORD SectionLength : 12;
- WORD Reserved : 2;
- WORD PrivateIndicator : 1;
- WORD SectionSyntaxIndicator : 1;
- } MPEG_HEADER_BITS, *PMPEG_HEADER_BITS;
-
- #endif
-
-
-
- //
- // Long MPEG packet header structure
- //
-
- #ifdef __midl
-
- typedef struct
- {
- BYTE Bits;
- } MPEG_HEADER_VERSION_BITS_MIDL;
-
- #else
-
- typedef struct
- {
- BYTE CurrentNextIndicator : 1;
- BYTE VersionNumber : 5;
- BYTE Reserved : 2;
- } MPEG_HEADER_VERSION_BITS, *PMPEG_HEADER_VERSION_BITS;
-
- #endif
-
-
-
- #pragma pack(pop)
-