| 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 |
|