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