Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mpc-hc/mpc-hc.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCasimir666 <casimir666@users.sourceforge.net>2009-12-05 11:27:07 +0300
committerCasimir666 <casimir666@users.sourceforge.net>2009-12-05 11:27:07 +0300
commit124f69849a8a917deea6543eeae21f6464d15a7f (patch)
tree6182d0571cf19fa0719244cf0eedf37963993478 /src/apps/mplayerc/Mpeg2SectionData.h
parent7ee261016254b880b83f50488392d07cf3739f17 (diff)
Added : BDA capture card support (experimental)
git-svn-id: https://mpc-hc.svn.sourceforge.net/svnroot/mpc-hc/trunk@1383 10f7b99b-c216-0410-bff0-8a66a9350fd8
Diffstat (limited to 'src/apps/mplayerc/Mpeg2SectionData.h')
-rw-r--r--src/apps/mplayerc/Mpeg2SectionData.h46
1 files changed, 46 insertions, 0 deletions
diff --git a/src/apps/mplayerc/Mpeg2SectionData.h b/src/apps/mplayerc/Mpeg2SectionData.h
new file mode 100644
index 000000000..4eb9cfa2e
--- /dev/null
+++ b/src/apps/mplayerc/Mpeg2SectionData.h
@@ -0,0 +1,46 @@
+#pragma once
+
+#include "DVBChannel.h"
+
+
+#pragma pack(1)
+typedef struct
+{
+ UINT8 TableID;
+ WORD SectionSyntaxIndicator : 1;
+ WORD Reserved1 : 3;
+ WORD SectionLength : 12;
+ WORD BouquetID;
+ UINT8 Reserved2 : 1;
+ UINT8 VersionNumber : 5;
+ UINT8 CurrentNextIndicator : 1;
+ UINT8 SectionNumber;
+ UINT8 LastSectionNumber;
+} SI_HEADER;
+
+
+
+class CMpeg2DataParser
+{
+public :
+
+ CMpeg2DataParser(IBaseFilter* pFilter);
+
+ HRESULT ParseSDT(ULONG ulFreq);
+ HRESULT ParsePAT();
+ HRESULT ParseNIT();
+
+ static CString ConvertString (BYTE* pBuffer, int nLength);
+
+ CAtlMap<int,CDVBChannel> Channels;
+
+private :
+
+ CComQIPtr<IMpeg2Data> m_pData;
+ MPEG2_FILTER m_Filter;
+
+
+ DVB_STREAM_TYPE ConvertToDVBType(PES_STREAM_TYPE nType);
+ HRESULT ParseSIHeader(CGolombBuffer& gb, DVB_SI SIType, WORD& wSectionLength, WORD& wTSID);
+ HRESULT ParsePMT(CDVBChannel& Channel);
+};