summaryrefslogtreecommitdiffstats
path: root/dxsdk/Include/Mpeg2Bits.h
diff options
context:
space:
mode:
authoraap <aap@papnet.eu>2019-06-02 10:25:55 +0200
committerGitHub <noreply@github.com>2019-06-02 10:25:55 +0200
commit9c26e46e17b421288f7653f4c9cff81b4b6cdfb0 (patch)
treec1b34122ddd4be0461a5310c964e8218b9f5781e /dxsdk/Include/Mpeg2Bits.h
parentimplemented splashes; fixed zones (diff)
parentMerge branch 'master' into master (diff)
downloadre3-9c26e46e17b421288f7653f4c9cff81b4b6cdfb0.tar
re3-9c26e46e17b421288f7653f4c9cff81b4b6cdfb0.tar.gz
re3-9c26e46e17b421288f7653f4c9cff81b4b6cdfb0.tar.bz2
re3-9c26e46e17b421288f7653f4c9cff81b4b6cdfb0.tar.lz
re3-9c26e46e17b421288f7653f4c9cff81b4b6cdfb0.tar.xz
re3-9c26e46e17b421288f7653f4c9cff81b4b6cdfb0.tar.zst
re3-9c26e46e17b421288f7653f4c9cff81b4b6cdfb0.zip
Diffstat (limited to 'dxsdk/Include/Mpeg2Bits.h')
-rw-r--r--dxsdk/Include/Mpeg2Bits.h95
1 files changed, 95 insertions, 0 deletions
diff --git a/dxsdk/Include/Mpeg2Bits.h b/dxsdk/Include/Mpeg2Bits.h
new file mode 100644
index 00000000..45debbb6
--- /dev/null
+++ b/dxsdk/Include/Mpeg2Bits.h
@@ -0,0 +1,95 @@
+/////////////////////////////////////////////////////////////////////////////
+//
+// 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)