bdamedia.h 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500
  1. /*
  2. * bdamedia.h
  3. *
  4. * This file is part of the ReactOS DXSDK package.
  5. *
  6. * THIS SOFTWARE IS NOT COPYRIGHTED
  7. *
  8. * This source code is offered for use in the public domain. You may
  9. * use, modify or distribute it freely.
  10. *
  11. * This code is distributed in the hope that it will be useful but
  12. * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
  13. * DISCLAIMED. This includes but is not limited to warranties of
  14. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  15. *
  16. */
  17. #ifndef _BDAMEDIA_
  18. #define _BDAMEDIA_
  19. #include <ksmedia.h>
  20. #include <bdatypes.h>
  21. typedef struct _KSP_BDA_NODE_PIN {
  22. KSPROPERTY Property;
  23. ULONG ulNodeType;
  24. ULONG ulInputPinId;
  25. ULONG ulOutputPinId;
  26. } KSP_BDA_NODE_PIN, *PKSP_BDA_NODE_PIN;
  27. typedef struct _KSM_BDA_PIN {
  28. KSMETHOD Method;
  29. __C89_NAMELESS union {
  30. ULONG PinId;
  31. ULONG PinType;
  32. };
  33. ULONG Reserved;
  34. } KSM_BDA_PIN, *PKSM_BDA_PIN;
  35. typedef struct _KSM_BDA_PIN_PAIR {
  36. KSMETHOD Method;
  37. __C89_NAMELESS union {
  38. ULONG InputPinId;
  39. ULONG InputPinType;
  40. };
  41. __C89_NAMELESS union {
  42. ULONG OutputPinId;
  43. ULONG OutputPinType;
  44. };
  45. } KSM_BDA_PIN_PAIR, *PKSM_BDA_PIN_PAIR;
  46. /* ------------------------------------------------------------
  47. BDA Topology Property Set {A14EE835-0A23-11d3-9CC7-00C04F7971E0}
  48. */
  49. #define STATIC_KSPROPSETID_BdaTopology \
  50. 0xa14ee835, 0x0a23, 0x11d3, 0x9c, 0xc7, 0x0, 0xc0, 0x4f, 0x79, 0x71, 0xe0
  51. DEFINE_GUIDSTRUCT("A14EE835-0A23-11d3-9CC7-00C04F7971E0", KSPROPSETID_BdaTopology);
  52. #define KSPROPSETID_BdaTopology DEFINE_GUIDNAMED(KSPROPSETID_BdaTopology)
  53. typedef enum {
  54. KSPROPERTY_BDA_NODE_TYPES,
  55. KSPROPERTY_BDA_PIN_TYPES,
  56. KSPROPERTY_BDA_TEMPLATE_CONNECTIONS,
  57. KSPROPERTY_BDA_NODE_METHODS,
  58. KSPROPERTY_BDA_NODE_PROPERTIES,
  59. KSPROPERTY_BDA_NODE_EVENTS,
  60. KSPROPERTY_BDA_CONTROLLING_PIN_ID,
  61. KSPROPERTY_BDA_NODE_DESCRIPTORS
  62. } KSPROPERTY_BDA_TOPOLOGY;
  63. #define DEFINE_KSPROPERTY_ITEM_BDA_NODE_TYPES(GetHandler, SetHandler) \
  64. DEFINE_KSPROPERTY_ITEM( \
  65. KSPROPERTY_BDA_NODE_TYPES, \
  66. (GetHandler), \
  67. sizeof(KSPROPERTY), \
  68. 0, \
  69. FALSE, \
  70. NULL, 0, NULL, NULL, 0)
  71. #define DEFINE_KSPROPERTY_ITEM_BDA_PIN_TYPES(GetHandler, SetHandler) \
  72. DEFINE_KSPROPERTY_ITEM( \
  73. KSPROPERTY_BDA_PIN_TYPES, \
  74. (GetHandler), \
  75. sizeof(KSPROPERTY), \
  76. 0, \
  77. FALSE, \
  78. NULL, 0, NULL, NULL, 0)
  79. #define DEFINE_KSPROPERTY_ITEM_BDA_TEMPLATE_CONNECTIONS(GetHandler, SetHandler) \
  80. DEFINE_KSPROPERTY_ITEM( \
  81. KSPROPERTY_BDA_TEMPLATE_CONNECTIONS, \
  82. (GetHandler), \
  83. sizeof(KSPROPERTY), \
  84. sizeof(BDA_TEMPLATE_CONNECTION), \
  85. FALSE, \
  86. NULL, 0, NULL, NULL, 0)
  87. #define DEFINE_KSPROPERTY_ITEM_BDA_NODE_METHODS(GetHandler, SetHandler) \
  88. DEFINE_KSPROPERTY_ITEM( \
  89. KSPROPERTY_BDA_NODE_METHODS, \
  90. (GetHandler), \
  91. sizeof(KSP_NODE), \
  92. 0, \
  93. FALSE, \
  94. NULL, 0, NULL, NULL, 0)
  95. #define DEFINE_KSPROPERTY_ITEM_BDA_NODE_PROPERTIES(GetHandler, SetHandler) \
  96. DEFINE_KSPROPERTY_ITEM( \
  97. KSPROPERTY_BDA_NODE_PROPERTIES, \
  98. (GetHandler), \
  99. sizeof(KSP_NODE), \
  100. 0, \
  101. FALSE, \
  102. NULL, 0, NULL, NULL, 0)
  103. #define DEFINE_KSPROPERTY_ITEM_BDA_NODE_EVENTS(GetHandler, SetHandler) \
  104. DEFINE_KSPROPERTY_ITEM( \
  105. KSPROPERTY_BDA_NODE_EVENTS, \
  106. (GetHandler), \
  107. sizeof(KSP_NODE), \
  108. 0, \
  109. FALSE, \
  110. NULL, 0, NULL, NULL, 0)
  111. #define DEFINE_KSPROPERTY_ITEM_BDA_CONTROLLING_PIN_ID(GetHandler, SetHandler) \
  112. DEFINE_KSPROPERTY_ITEM( \
  113. KSPROPERTY_BDA_CONTROLLING_PIN_ID, \
  114. (GetHandler), \
  115. sizeof(KSP_BDA_NODE_PIN), \
  116. sizeof(ULONG), \
  117. FALSE, \
  118. NULL, 0, NULL, NULL, 0)
  119. #define DEFINE_KSPROPERTY_ITEM_BDA_NODE_DESCRIPTORS(GetHandler, SetHandler) \
  120. DEFINE_KSPROPERTY_ITEM( \
  121. KSPROPERTY_BDA_NODE_DESCRIPTORS, \
  122. (GetHandler), \
  123. sizeof(KSPROPERTY), \
  124. 0, \
  125. FALSE, \
  126. NULL, 0, NULL, NULL, 0)
  127. /* ------------------------------------------------------------
  128. BDA Device Configuration Method Set {71985F45-1CA1-11d3-9CC8-00C04F7971E0}
  129. */
  130. #define STATIC_KSMETHODSETID_BdaDeviceConfiguration \
  131. 0x71985f45, 0x1ca1, 0x11d3, 0x9c, 0xc8, 0x0, 0xc0, 0x4f, 0x79, 0x71, 0xe0
  132. DEFINE_GUIDSTRUCT("71985F45-1CA1-11d3-9CC8-00C04F7971E0", KSMETHODSETID_BdaDeviceConfiguration);
  133. #define KSMETHODSETID_BdaDeviceConfiguration DEFINE_GUIDNAMED(KSMETHODSETID_BdaDeviceConfiguration)
  134. typedef enum {
  135. KSMETHOD_BDA_CREATE_PIN_FACTORY = 0,
  136. KSMETHOD_BDA_DELETE_PIN_FACTORY,
  137. KSMETHOD_BDA_CREATE_TOPOLOGY
  138. } KSMETHOD_BDA_DEVICE_CONFIGURATION;
  139. #define DEFINE_KSMETHOD_ITEM_BDA_CREATE_PIN_FACTORY(MethodHandler, SupportHandler) \
  140. DEFINE_KSMETHOD_ITEM( \
  141. KSMETHOD_BDA_CREATE_PIN_FACTORY, \
  142. KSMETHOD_TYPE_READ, \
  143. (MethodHandler), \
  144. sizeof(KSM_BDA_PIN), \
  145. sizeof(ULONG), \
  146. SupportHandler)
  147. #define DEFINE_KSMETHOD_ITEM_BDA_DELETE_PIN_FACTORY(MethodHandler, SupportHandler) \
  148. DEFINE_KSMETHOD_ITEM( \
  149. KSMETHOD_BDA_DELETE_PIN_FACTORY, \
  150. KSMETHOD_TYPE_NONE, \
  151. (MethodHandler), \
  152. sizeof(KSM_BDA_PIN), \
  153. 0, \
  154. SupportHandler)
  155. #define DEFINE_KSMETHOD_ITEM_BDA_CREATE_TOPOLOGY(MethodHandler, SupportHandler) \
  156. DEFINE_KSMETHOD_ITEM( \
  157. KSMETHOD_BDA_CREATE_TOPOLOGY, \
  158. KSMETHOD_TYPE_WRITE, \
  159. (MethodHandler), \
  160. sizeof(KSM_BDA_PIN_PAIR), \
  161. 0, \
  162. SupportHandler)
  163. /* ------------------------------------------------------------
  164. BDA Pin Control Property {0DED49D5-A8B7-4d5d-97A1-12B0C195874D}
  165. */
  166. #define STATIC_KSPROPSETID_BdaPinControl \
  167. 0xded49d5, 0xa8b7, 0x4d5d, 0x97, 0xa1, 0x12, 0xb0, 0xc1, 0x95, 0x87, 0x4d
  168. DEFINE_GUIDSTRUCT("0DED49D5-A8B7-4d5d-97A1-12B0C195874D", KSPROPSETID_BdaPinControl);
  169. #define KSPROPSETID_BdaPinControl DEFINE_GUIDNAMED(KSPROPSETID_BdaPinControl)
  170. typedef enum {
  171. KSPROPERTY_BDA_PIN_ID = 0,
  172. KSPROPERTY_BDA_PIN_TYPE
  173. } KSPROPERTY_BDA_PIN_CONTROL;
  174. #define DEFINE_KSPROPERTY_ITEM_BDA_PIN_ID(GetHandler, SetHandler) \
  175. DEFINE_KSPROPERTY_ITEM( \
  176. KSPROPERTY_BDA_PIN_ID, \
  177. (GetHandler), \
  178. sizeof(KSPROPERTY), \
  179. sizeof(ULONG), \
  180. FALSE, \
  181. NULL, 0, NULL, NULL, 0)
  182. #define DEFINE_KSPROPERTY_ITEM_BDA_PIN_TYPE(GetHandler, SetHandler) \
  183. DEFINE_KSPROPERTY_ITEM( \
  184. KSPROPERTY_BDA_PIN_TYPE, \
  185. (GetHandler), \
  186. sizeof(KSPROPERTY), \
  187. sizeof(ULONG), \
  188. FALSE, \
  189. NULL, 0, NULL, NULL, 0)
  190. /* ------------------------------------------------------------
  191. BDA Change Sync Method Set {FD0A5AF3-B41D-11d2-9C95-00C04F7971E0}
  192. */
  193. #define STATIC_KSMETHODSETID_BdaChangeSync \
  194. 0xfd0a5af3, 0xb41d, 0x11d2, 0x9c, 0x95, 0x0, 0xc0, 0x4f, 0x79, 0x71, 0xe0
  195. DEFINE_GUIDSTRUCT("FD0A5AF3-B41D-11d2-9C95-00C04F7971E0", KSMETHODSETID_BdaChangeSync);
  196. #define KSMETHODSETID_BdaChangeSync DEFINE_GUIDNAMED(KSMETHODSETID_BdaChangeSync)
  197. typedef enum {
  198. KSMETHOD_BDA_START_CHANGES = 0,
  199. KSMETHOD_BDA_CHECK_CHANGES,
  200. KSMETHOD_BDA_COMMIT_CHANGES,
  201. KSMETHOD_BDA_GET_CHANGE_STATE
  202. } KSMETHOD_BDA_CHANGE_SYNC;
  203. #define DEFINE_KSMETHOD_ITEM_BDA_START_CHANGES(MethodHandler, SupportHandler) \
  204. DEFINE_KSMETHOD_ITEM( \
  205. KSMETHOD_BDA_START_CHANGES, \
  206. KSMETHOD_TYPE_NONE, \
  207. (MethodHandler), \
  208. sizeof(KSMETHOD), \
  209. 0, \
  210. SupportHandler)
  211. #define DEFINE_KSMETHOD_ITEM_BDA_CHECK_CHANGES(MethodHandler, SupportHandler) \
  212. DEFINE_KSMETHOD_ITEM( \
  213. KSMETHOD_BDA_CHECK_CHANGES, \
  214. KSMETHOD_TYPE_NONE, \
  215. (MethodHandler), \
  216. sizeof(KSMETHOD), \
  217. 0, \
  218. SupportHandler)
  219. #define DEFINE_KSMETHOD_ITEM_BDA_COMMIT_CHANGES(MethodHandler, SupportHandler) \
  220. DEFINE_KSMETHOD_ITEM( \
  221. KSMETHOD_BDA_COMMIT_CHANGES, \
  222. KSMETHOD_TYPE_NONE, \
  223. (MethodHandler), \
  224. sizeof(KSMETHOD), \
  225. 0, \
  226. SupportHandler)
  227. #define DEFINE_KSMETHOD_ITEM_BDA_GET_CHANGE_STATE(MethodHandler, SupportHandler) \
  228. DEFINE_KSMETHOD_ITEM( \
  229. KSMETHOD_BDA_GET_CHANGE_STATE, \
  230. KSMETHOD_TYPE_READ, \
  231. (MethodHandler), \
  232. sizeof(KSMETHOD), \
  233. 0, \
  234. SupportHandler)
  235. #define STATIC_KSPROPSETID_BdaFrequencyFilter \
  236. 0x71985f47, 0x1ca1, 0x11d3, 0x9c, 0xc8, 0x0, 0xc0, 0x4f, 0x79, 0x71, 0xe0
  237. DEFINE_GUIDSTRUCT("71985F47-1CA1-11d3-9CC8-00C04F7971E0", KSPROPSETID_BdaFrequencyFilter);
  238. #define KSPROPSETID_BdaFrequencyFilter DEFINE_GUIDNAMED(KSPROPSETID_BdaFrequencyFilter)
  239. typedef enum {
  240. KSPROPERTY_BDA_RF_TUNER_FREQUENCY = 0,
  241. KSPROPERTY_BDA_RF_TUNER_POLARITY,
  242. KSPROPERTY_BDA_RF_TUNER_RANGE,
  243. KSPROPERTY_BDA_RF_TUNER_TRANSPONDER,
  244. KSPROPERTY_BDA_RF_TUNER_BANDWIDTH,
  245. KSPROPERTY_BDA_RF_TUNER_FREQUENCY_MULTIPLIER,
  246. KSPROPERTY_BDA_RF_TUNER_CAPS,
  247. KSPROPERTY_BDA_RF_TUNER_SCAN_STATUS,
  248. KSPROPERTY_BDA_RF_TUNER_STANDARD,
  249. KSPROPERTY_BDA_RF_TUNER_STANDARD_MODE
  250. } KSPROPERTY_BDA_FREQUENCY_FILTER;
  251. #define STATIC_KSPROPSETID_BdaDigitalDemodulator \
  252. 0xef30f379, 0x985b, 0x4d10, 0xb6, 0x40, 0xa7, 0x9d, 0x5e, 0x4, 0xe1, 0xe0
  253. DEFINE_GUIDSTRUCT("EF30F379-985B-4d10-B640-A79D5E04E1E0", KSPROPSETID_BdaDigitalDemodulator);
  254. #define KSPROPSETID_BdaDigitalDemodulator DEFINE_GUIDNAMED(KSPROPSETID_BdaDigitalDemodulator)
  255. typedef enum {
  256. KSPROPERTY_BDA_MODULATION_TYPE = 0,
  257. KSPROPERTY_BDA_INNER_FEC_TYPE,
  258. KSPROPERTY_BDA_INNER_FEC_RATE,
  259. KSPROPERTY_BDA_OUTER_FEC_TYPE,
  260. KSPROPERTY_BDA_OUTER_FEC_RATE,
  261. KSPROPERTY_BDA_SYMBOL_RATE,
  262. KSPROPERTY_BDA_SPECTRAL_INVERSION,
  263. KSPROPERTY_BDA_GUARD_INTERVAL,
  264. KSPROPERTY_BDA_TRANSMISSION_MODE,
  265. KSPROPERTY_BDA_ROLL_OFF,
  266. KSPROPERTY_BDA_PILOT,
  267. KSPROPERTY_BDA_SIGNALTIMEOUTS
  268. } KSPROPERTY_BDA_DIGITAL_DEMODULATOR;
  269. #define STATIC_KSPROPSETID_BdaLNBInfo \
  270. 0x992cf102, 0x49f9, 0x4719, 0xa6, 0x64, 0xc4, 0xf2, 0x3e, 0x24, 0x8, 0xf4
  271. DEFINE_GUIDSTRUCT("992CF102-49F9-4719-A664-C4F23E2408F4", KSPROPSETID_BdaLNBInfo);
  272. #define KSPROPSETID_BdaLNBInfo DEFINE_GUIDNAMED(KSPROPSETID_BdaLNBInfo)
  273. typedef enum {
  274. KSPROPERTY_BDA_LNB_LOF_LOW_BAND = 0,
  275. KSPROPERTY_BDA_LNB_LOF_HIGH_BAND,
  276. KSPROPERTY_BDA_LNB_SWITCH_FREQUENCY
  277. } KSPROPERTY_BDA_LNB_INFO;
  278. #define STATIC_KSPROPSETID_BdaSignalStats \
  279. 0x1347d106, 0xcf3a, 0x428a, 0xa5, 0xcb, 0xac, 0xd, 0x9a, 0x2a, 0x43, 0x38
  280. DEFINE_GUIDSTRUCT("1347D106-CF3A-428a-A5CB-AC0D9A2A4338", KSPROPSETID_BdaSignalStats);
  281. #define KSPROPSETID_BdaSignalStats DEFINE_GUIDNAMED(KSPROPSETID_BdaSignalStats)
  282. typedef enum {
  283. KSPROPERTY_BDA_SIGNAL_STRENGTH = 0,
  284. KSPROPERTY_BDA_SIGNAL_QUALITY,
  285. KSPROPERTY_BDA_SIGNAL_PRESENT,
  286. KSPROPERTY_BDA_SIGNAL_LOCKED,
  287. KSPROPERTY_BDA_SAMPLE_TIME
  288. } KSPROPERTY_BDA_SIGNAL_STATS;
  289. typedef struct tagBDA_TRANSPORT_INFO {
  290. ULONG ulcbPhyiscalPacket;
  291. ULONG ulcbPhyiscalFrame;
  292. ULONG ulcbPhyiscalFrameAlignment;
  293. REFERENCE_TIME AvgTimePerFrame;
  294. } BDA_TRANSPORT_INFO, *PBDA_TRANSPORT_INFO;
  295. typedef struct tagKS_DATARANGE_BDA_TRANSPORT {
  296. KSDATARANGE DataRange;
  297. BDA_TRANSPORT_INFO BdaTransportInfo;
  298. } KS_DATARANGE_BDA_TRANSPORT, *PKS_DATARANGE_BDA_TRANSPORT;
  299. #if (_WIN32_WINNT >= 0x0601)
  300. typedef enum tagChannelChangeSpanningEvent_State {
  301. ChannelChangeSpanningEvent_Start = 0,
  302. ChannelChangeSpanningEvent_End = 2
  303. } ChannelChangeSpanningEvent_State;
  304. typedef struct _ChannelChangeInfo {
  305. ChannelChangeSpanningEvent_State state;
  306. ULONGLONG TimeStamp;
  307. } ChannelChangeInfo;
  308. typedef struct _ChannelInfo {
  309. LONG lFrequency;
  310. __C89_NAMELESS union {
  311. struct {
  312. LONG lONID;
  313. LONG lTSID;
  314. LONG lSID;
  315. } DVB;
  316. struct {
  317. LONG lProgNumber;
  318. } DC;
  319. struct {
  320. LONG lProgNumber;
  321. } ATSC;
  322. } ;
  323. } ChannelInfo;
  324. typedef enum _PBDAParentalControlPolicy {
  325. PBDAParentalControlGeneralPolicy = 0,
  326. PBDAParentalControlLiveOnlyPolicy = 1
  327. } PBDAParentalControlPolicy;
  328. typedef enum _SignalAndServiceStatusSpanningEvent_State {
  329. SignalAndServiceStatusSpanningEvent_Clear = 0,
  330. SignalAndServiceStatusSpanningEvent_NoTVSignal = 1,
  331. SignalAndServiceStatusSpanningEvent_ServiceOffAir = 2
  332. } SignalAndServiceStatusSpanningEvent_State;
  333. typedef struct _DualMonoInfo {
  334. LANGID LangID1;
  335. LANGID LangID2;
  336. LONG lISOLangCode1;
  337. LONG lISOLangCode2;
  338. } DualMonoInfo;
  339. typedef struct _DVBScramblingControlSpanningEvent {
  340. ULONG ulPID;
  341. WINBOOL fScrambled;
  342. } DVBScramblingControlSpanningEvent;
  343. typedef struct _LanguageInfo {
  344. LANGID LangID;
  345. LONG lISOLangCode;
  346. } LanguageInfo;
  347. typedef struct _PBDAParentalControl {
  348. ULONG ulStartTime;
  349. ULONG ulEndTime;
  350. ULONG ulPolicy;
  351. } PBDAParentalControl;
  352. typedef struct _PIDListSpanningEvent {
  353. WORD wPIDCount;
  354. ULONG pulPIDs[1];
  355. } PIDListSpanningEvent;
  356. typedef struct _SpanningEventDescriptor {
  357. WORD wDataLen;
  358. WORD wProgNumber;
  359. WORD wSID;
  360. BYTE bDescriptor[1];
  361. } SpanningEventDescriptor;
  362. typedef struct _SpanningEventEmmMessage {
  363. BYTE bCAbroadcasterGroupId;
  364. BYTE bMessageControl;
  365. WORD wServiceId;
  366. WORD wTableIdExtension;
  367. BYTE bDeletionStatus;
  368. BYTE bDisplayingDuration1;
  369. BYTE bDisplayingDuration2;
  370. BYTE bDisplayingDuration3;
  371. BYTE bDisplayingCycle;
  372. BYTE bFormatVersion;
  373. BYTE bDisplayPosition;
  374. WORD wMessageLength;
  375. WCHAR szMessageArea[MIN_DIMENSION];
  376. } SpanningEventEmmMessage;
  377. #endif /*(_WIN32_WINNT >= 0x0601)*/
  378. /* ------------------------------------------------------------
  379. BDA Stream Format GUIDs
  380. */
  381. #define STATIC_KSDATAFORMAT_TYPE_BDA_ANTENNA \
  382. 0x71985f41, 0x1ca1, 0x11d3, 0x9c, 0xc8, 0x0, 0xc0, 0x4f, 0x79, 0x71, 0xe0
  383. DEFINE_GUIDSTRUCT("71985F41-1CA1-11d3-9CC8-00C04F7971E0", KSDATAFORMAT_TYPE_BDA_ANTENNA);
  384. #define KSDATAFORMAT_TYPE_BDA_ANTENNA DEFINE_GUIDNAMED(KSDATAFORMAT_TYPE_BDA_ANTENNA)
  385. #define STATIC_KSDATAFORMAT_SUBTYPE_BDA_MPEG2_TRANSPORT \
  386. 0xf4aeb342, 0x0329, 0x4fdd, 0xa8, 0xfd, 0x4a, 0xff, 0x49, 0x26, 0xc9, 0x78
  387. DEFINE_GUIDSTRUCT("F4AEB342-0329-4fdd-A8FD-4AFF4926C978", KSDATAFORMAT_SUBTYPE_BDA_MPEG2_TRANSPORT);
  388. #define KSDATAFORMAT_SUBTYPE_BDA_MPEG2_TRANSPORT DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_BDA_MPEG2_TRANSPORT)
  389. #define STATIC_KSDATAFORMAT_SPECIFIER_BDA_TRANSPORT \
  390. 0x8deda6fd, 0xac5f, 0x4334, 0x8e, 0xcf, 0xa4, 0xba, 0x8f, 0xa7, 0xd0, 0xf0
  391. DEFINE_GUIDSTRUCT("8DEDA6FD-AC5F-4334-8ECF-A4BA8FA7D0F0", KSDATAFORMAT_SPECIFIER_BDA_TRANSPORT);
  392. #define KSDATAFORMAT_SPECIFIER_BDA_TRANSPORT DEFINE_GUIDNAMED(KSDATAFORMAT_SPECIFIER_BDA_TRANSPORT)
  393. #define STATIC_KSDATAFORMAT_TYPE_BDA_IF_SIGNAL \
  394. 0x61be0b47, 0xa5eb, 0x499b, 0x9a, 0x85, 0x5b, 0x16, 0xc0, 0x7f, 0x12, 0x58
  395. DEFINE_GUIDSTRUCT("61BE0B47-A5EB-499b-9A85-5B16C07F1258", KSDATAFORMAT_TYPE_BDA_IF_SIGNAL);
  396. #define KSDATAFORMAT_TYPE_BDA_IF_SIGNAL DEFINE_GUIDNAMED(KSDATAFORMAT_TYPE_BDA_IF_SIGNAL)
  397. #define STATIC_KSDATAFORMAT_TYPE_MPEG2_SECTIONS \
  398. 0x455f176c, 0x4b06, 0x47ce, 0x9a, 0xef, 0x8c, 0xae, 0xf7, 0x3d, 0xf7, 0xb5
  399. DEFINE_GUIDSTRUCT("455F176C-4B06-47CE-9AEF-8CAEF73DF7B5", KSDATAFORMAT_TYPE_MPEG2_SECTIONS);
  400. #define KSDATAFORMAT_TYPE_MPEG2_SECTIONS DEFINE_GUIDNAMED(KSDATAFORMAT_TYPE_MPEG2_SECTIONS)
  401. #define STATIC_KSDATAFORMAT_SUBTYPE_ATSC_SI \
  402. 0xb3c7397c, 0xd303, 0x414d, 0xb3, 0x3c, 0x4e, 0xd2, 0xc9, 0xd2, 0x97, 0x33
  403. DEFINE_GUIDSTRUCT("B3C7397C-D303-414D-B33C-4ED2C9D29733", KSDATAFORMAT_SUBTYPE_ATSC_SI);
  404. #define KSDATAFORMAT_SUBTYPE_ATSC_SI DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_ATSC_SI)
  405. #define STATIC_KSDATAFORMAT_SUBTYPE_DVB_SI \
  406. 0xe9dd31a3, 0x221d, 0x4adb, 0x85, 0x32, 0x9a, 0xf3, 0x9, 0xc1, 0xa4, 0x8
  407. DEFINE_GUIDSTRUCT("e9dd31a3-221d-4adb-8532-9af309c1a408", KSDATAFORMAT_SUBTYPE_DVB_SI);
  408. #define KSDATAFORMAT_SUBTYPE_DVB_SI DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_DVB_SI)
  409. #define STATIC_KSDATAFORMAT_SUBTYPE_BDA_OPENCABLE_PSIP \
  410. 0x762e3f66, 0x336f, 0x48d1, 0xbf, 0x83, 0x2b, 0x0, 0x35, 0x2c, 0x11, 0xf0
  411. DEFINE_GUIDSTRUCT("762E3F66-336F-48d1-BF83-2B00352C11F0", KSDATAFORMAT_SUBTYPE_BDA_OPENCABLE_PSIP);
  412. #define KSDATAFORMAT_SUBTYPE_BDA_OPENCABLE_PSIP DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_BDA_OPENCABLE_PSIP)
  413. #define STATIC_KSDATAFORMAT_SUBTYPE_BDA_OPENCABLE_OOB_PSIP \
  414. 0x951727db, 0xd2ce, 0x4528, 0x96, 0xf6, 0x33, 0x1, 0xfa, 0xbb, 0x2d, 0xe0
  415. DEFINE_GUIDSTRUCT("951727DB-D2CE-4528-96F6-3301FABB2DE0", KSDATAFORMAT_SUBTYPE_BDA_OPENCABLE_OOB_PSIP);
  416. #define KSDATAFORMAT_SUBTYPE_BDA_OPENCABLE_OOB_PSIP DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_BDA_OPENCABLE_OOB_PSIP)
  417. #define STATIC_KSDATAFORMAT_SUBTYPE_ISDB_SI \
  418. 0x4a2eeb99, 0x6458, 0x4538, 0xb1, 0x87, 0x04, 0x01, 0x7c, 0x41, 0x41, 0x3f
  419. DEFINE_GUIDSTRUCT("4a2eeb99-6458-4538-b187-04017c41413f", KSDATAFORMAT_SUBTYPE_ISDB_SI);
  420. #define KSDATAFORMAT_SUBTYPE_ISDB_SI DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_ISDB_SI)
  421. #define STATIC_KSDATAFORMAT_SUBTYPE_PBDA_TRANSPORT_RAW \
  422. 0x0d7aed42, 0xcb9a, 0x11db, 0x97, 0x05, 0x00, 0x50, 0x56, 0xc0, 0x00, 0x08
  423. DEFINE_GUIDSTRUCT("0d7AED42-CB9A-11DB-9705-005056C00008", KSDATAFORMAT_SUBTYPE_PBDA_TRANSPORT_RAW);
  424. #define KSDATAFORMAT_SUBTYPE_PBDA_TRANSPORT_RAW DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_PBDA_TRANSPORT_RAW)
  425. #endif /* _BDAMEDIA_ */