[1166] | 1 | /*
|
---|
| 2 | * Copyright 2012 André Hentschel
|
---|
| 3 | *
|
---|
| 4 | * This library is free software; you can redistribute it and/or
|
---|
| 5 | * modify it under the terms of the GNU Lesser General Public
|
---|
| 6 | * License as published by the Free Software Foundation; either
|
---|
| 7 | * version 2.1 of the License, or (at your option) any later version.
|
---|
| 8 | *
|
---|
| 9 | * This library is distributed in the hope that it will be useful,
|
---|
| 10 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
---|
| 11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
---|
| 12 | * Lesser General Public License for more details.
|
---|
| 13 | *
|
---|
| 14 | * You should have received a copy of the GNU Lesser General Public
|
---|
| 15 | * License along with this library; if not, write to the Free Software
|
---|
| 16 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
---|
| 17 | */
|
---|
| 18 |
|
---|
| 19 | import "oaidl.idl";
|
---|
| 20 | import "wmsbuffer.idl";
|
---|
| 21 | import "drmexternals.idl";
|
---|
| 22 |
|
---|
| 23 | typedef struct _WMMediaType
|
---|
| 24 | {
|
---|
| 25 | GUID majortype;
|
---|
| 26 | GUID subtype;
|
---|
| 27 | BOOL bFixedSizeSamples;
|
---|
| 28 | BOOL bTemporalCompression;
|
---|
| 29 | ULONG lSampleSize;
|
---|
| 30 | GUID formattype;
|
---|
| 31 | IUnknown *pUnk;
|
---|
| 32 | ULONG cbFormat;
|
---|
| 33 | [size_is(cbFormat)] BYTE *pbFormat;
|
---|
| 34 | } WM_MEDIA_TYPE;
|
---|
| 35 |
|
---|
| 36 | typedef struct _WMWriterStatistics
|
---|
| 37 | {
|
---|
| 38 | QWORD qwSampleCount;
|
---|
| 39 | QWORD qwByteCount;
|
---|
| 40 | QWORD qwDroppedSampleCount;
|
---|
| 41 | QWORD qwDroppedByteCount;
|
---|
| 42 | DWORD dwCurrentBitrate;
|
---|
| 43 | DWORD dwAverageBitrate;
|
---|
| 44 | DWORD dwExpectedBitrate;
|
---|
| 45 | DWORD dwCurrentSampleRate;
|
---|
| 46 | DWORD dwAverageSampleRate;
|
---|
| 47 | DWORD dwExpectedSampleRate;
|
---|
| 48 | } WM_WRITER_STATISTICS;
|
---|
| 49 |
|
---|
| 50 | typedef struct _WMWriterStatisticsEx
|
---|
| 51 | {
|
---|
| 52 | DWORD dwBitratePlusOverhead;
|
---|
| 53 | DWORD dwCurrentSampleDropRateInQueue;
|
---|
| 54 | DWORD dwCurrentSampleDropRateInCodec;
|
---|
| 55 | DWORD dwCurrentSampleDropRateInMultiplexer;
|
---|
| 56 | DWORD dwTotalSampleDropsInQueue;
|
---|
| 57 | DWORD dwTotalSampleDropsInCodec;
|
---|
| 58 | DWORD dwTotalSampleDropsInMultiplexer;
|
---|
| 59 | } WM_WRITER_STATISTICS_EX;
|
---|
| 60 |
|
---|
| 61 | typedef struct _WMReaderStatistics
|
---|
| 62 | {
|
---|
| 63 | DWORD cbSize;
|
---|
| 64 | DWORD dwBandwidth;
|
---|
| 65 | DWORD cPacketsReceived;
|
---|
| 66 | DWORD cPacketsRecovered;
|
---|
| 67 | DWORD cPacketsLost;
|
---|
| 68 | WORD wQuality;
|
---|
| 69 | } WM_READER_STATISTICS;
|
---|
| 70 |
|
---|
| 71 | typedef struct _WMReaderClientInfo
|
---|
| 72 | {
|
---|
| 73 | DWORD cbSize;
|
---|
| 74 | WCHAR *wszLang;
|
---|
| 75 | WCHAR *wszBrowserUserAgent;
|
---|
| 76 | WCHAR *wszBrowserWebPage;
|
---|
| 77 | QWORD qwReserved;
|
---|
| 78 | LPARAM *pReserved;
|
---|
| 79 | WCHAR *wszHostExe;
|
---|
| 80 | QWORD qwHostVersion;
|
---|
| 81 | WCHAR *wszPlayerUserAgent;
|
---|
| 82 | } WM_READER_CLIENTINFO;
|
---|
| 83 |
|
---|
| 84 | typedef enum WMT_ATTR_DATATYPE
|
---|
| 85 | {
|
---|
| 86 | WMT_TYPE_DWORD = 0,
|
---|
| 87 | WMT_TYPE_STRING = 1,
|
---|
| 88 | WMT_TYPE_BINARY = 2,
|
---|
| 89 | WMT_TYPE_BOOL = 3,
|
---|
| 90 | WMT_TYPE_QWORD = 4,
|
---|
| 91 | WMT_TYPE_WORD = 5,
|
---|
| 92 | WMT_TYPE_GUID = 6,
|
---|
| 93 | } WMT_ATTR_DATATYPE;
|
---|
| 94 |
|
---|
| 95 | typedef enum WMT_STATUS
|
---|
| 96 | {
|
---|
| 97 | WMT_ERROR = 0,
|
---|
| 98 | WMT_OPENED = 1,
|
---|
| 99 | WMT_BUFFERING_START = 2,
|
---|
| 100 | WMT_BUFFERING_STOP = 3,
|
---|
| 101 | WMT_EOF = 4,
|
---|
| 102 | WMT_END_OF_FILE = 4,
|
---|
| 103 | WMT_END_OF_SEGMENT = 5,
|
---|
| 104 | WMT_END_OF_STREAMING = 6,
|
---|
| 105 | WMT_LOCATING = 7,
|
---|
| 106 | WMT_CONNECTING = 8,
|
---|
| 107 | WMT_NO_RIGHTS = 9,
|
---|
| 108 | WMT_MISSING_CODEC = 10,
|
---|
| 109 | WMT_STARTED = 11,
|
---|
| 110 | WMT_STOPPED = 12,
|
---|
| 111 | WMT_CLOSED = 13,
|
---|
| 112 | WMT_STRIDING = 14,
|
---|
| 113 | WMT_TIMER = 15,
|
---|
| 114 | WMT_INDEX_PROGRESS = 16,
|
---|
| 115 | WMT_SAVEAS_START = 17,
|
---|
| 116 | WMT_SAVEAS_STOP = 18,
|
---|
| 117 | WMT_NEW_SOURCEFLAGS = 19,
|
---|
| 118 | WMT_NEW_METADATA = 20,
|
---|
| 119 | WMT_BACKUPRESTORE_BEGIN = 21,
|
---|
| 120 | WMT_SOURCE_SWITCH = 22,
|
---|
| 121 | WMT_ACQUIRE_LICENSE = 23,
|
---|
| 122 | WMT_INDIVIDUALIZE = 24,
|
---|
| 123 | WMT_NEEDS_INDIVIDUALIZATION = 25,
|
---|
| 124 | WMT_NO_RIGHTS_EX = 26,
|
---|
| 125 | WMT_BACKUPRESTORE_END = 27,
|
---|
| 126 | WMT_BACKUPRESTORE_CONNECTING = 28,
|
---|
| 127 | WMT_BACKUPRESTORE_DISCONNECTING = 29,
|
---|
| 128 | WMT_ERROR_WITHURL = 30,
|
---|
| 129 | WMT_RESTRICTED_LICENSE = 31,
|
---|
| 130 | WMT_CLIENT_CONNECT = 32,
|
---|
| 131 | WMT_CLIENT_DISCONNECT = 33,
|
---|
| 132 | WMT_NATIVE_OUTPUT_PROPS_CHANGED = 34,
|
---|
| 133 | WMT_RECONNECT_START = 35,
|
---|
| 134 | WMT_RECONNECT_END = 36,
|
---|
| 135 | WMT_CLIENT_CONNECT_EX = 37,
|
---|
| 136 | WMT_CLIENT_DISCONNECT_EX = 38,
|
---|
| 137 | WMT_SET_FEC_SPAN = 39,
|
---|
| 138 | WMT_PREROLL_READY = 40,
|
---|
| 139 | WMT_PREROLL_COMPLETE = 41,
|
---|
| 140 | WMT_CLIENT_PROPERTIES = 42,
|
---|
| 141 | WMT_LICENSEURL_SIGNATURE_STATE = 43,
|
---|
| 142 | WMT_INIT_PLAYLIST_BURN = 44,
|
---|
| 143 | WMT_TRANSCRYPTOR_INIT = 45,
|
---|
| 144 | WMT_TRANSCRYPTOR_SEEKED = 46,
|
---|
| 145 | WMT_TRANSCRYPTOR_READ = 47,
|
---|
| 146 | WMT_TRANSCRYPTOR_CLOSED = 48,
|
---|
| 147 | WMT_PROXIMITY_RESULT = 49,
|
---|
| 148 | WMT_PROXIMITY_COMPLETED = 50,
|
---|
| 149 | WMT_CONTENT_ENABLER = 51
|
---|
| 150 | } WMT_STATUS;
|
---|
| 151 |
|
---|
| 152 | typedef enum WMT_STREAM_SELECTION
|
---|
| 153 | {
|
---|
| 154 | WMT_OFF = 0,
|
---|
| 155 | WMT_CLEANPOINT_ONLY = 1,
|
---|
| 156 | WMT_ON = 2,
|
---|
| 157 | } WMT_STREAM_SELECTION;
|
---|
| 158 |
|
---|
| 159 | typedef enum WMT_VERSION
|
---|
| 160 | {
|
---|
| 161 | WMT_VER_4_0 = 0x00040000,
|
---|
| 162 | WMT_VER_7_0 = 0x00070000,
|
---|
| 163 | WMT_VER_8_0 = 0x00080000,
|
---|
| 164 | WMT_VER_9_0 = 0x00090000
|
---|
| 165 | } WMT_VERSION;
|
---|
| 166 |
|
---|
| 167 | typedef enum WMT_PLAY_MODE
|
---|
| 168 | {
|
---|
| 169 | WMT_PLAY_MODE_AUTOSELECT,
|
---|
| 170 | WMT_PLAY_MODE_LOCAL,
|
---|
| 171 | WMT_PLAY_MODE_DOWNLOAD,
|
---|
| 172 | WMT_PLAY_MODE_STREAMING
|
---|
| 173 | } WMT_PLAY_MODE;
|
---|
| 174 |
|
---|
| 175 | typedef enum tagWMT_OFFSET_FORMAT
|
---|
| 176 | {
|
---|
| 177 | WMT_OFFSET_FORMAT_100NS,
|
---|
| 178 | WMT_OFFSET_FORMAT_FRAME_NUMBERS,
|
---|
| 179 | WMT_OFFSET_FORMAT_PLAYLIST_OFFSET,
|
---|
| 180 | WMT_OFFSET_FORMAT_TIMECODE,
|
---|
| 181 | WMT_OFFSET_FORMAT_100NS_APPROXIMATE
|
---|
| 182 | } WMT_OFFSET_FORMAT;
|
---|
| 183 |
|
---|
| 184 | typedef enum WMT_CODEC_INFO_TYPE
|
---|
| 185 | {
|
---|
| 186 | WMT_CODECINFO_AUDIO = 0,
|
---|
| 187 | WMT_CODECINFO_VIDEO = 1,
|
---|
| 188 | WMT_CODECINFO_UNKNOWN = 0xFFFFFFFF,
|
---|
| 189 | } WMT_CODEC_INFO_TYPE;
|
---|
| 190 |
|
---|
| 191 | typedef enum WMT_PROXY_SETTINGS
|
---|
| 192 | {
|
---|
| 193 | WMT_PROXY_SETTING_NONE = 0,
|
---|
| 194 | WMT_PROXY_SETTING_MANUAL = 1,
|
---|
| 195 | WMT_PROXY_SETTING_AUTO = 2,
|
---|
| 196 | WMT_PROXY_SETTING_BROWSER = 3,
|
---|
| 197 | WMT_PROXY_SETTING_MAX
|
---|
| 198 | } WMT_PROXY_SETTINGS;
|
---|
| 199 |
|
---|
| 200 | typedef enum tagWMT_STORAGE_FORMAT
|
---|
| 201 | {
|
---|
| 202 | WMT_Storage_Format_MP3 = 0,
|
---|
| 203 | WMT_Storage_Format_V1 = 1
|
---|
| 204 | } WMT_STORAGE_FORMAT;
|
---|
| 205 |
|
---|
| 206 | #include <pshpack2.h>
|
---|
| 207 | typedef struct _WMStreamPrioritizationRecord
|
---|
| 208 | {
|
---|
| 209 | WORD wStreamNumber;
|
---|
| 210 | BOOL fMandatory;
|
---|
| 211 | } WM_STREAM_PRIORITY_RECORD;
|
---|
| 212 |
|
---|
| 213 | typedef struct _WMT_TIMECODE_EXTENSION_DATA
|
---|
| 214 | {
|
---|
| 215 | WORD wRange;
|
---|
| 216 | DWORD dwTimecode;
|
---|
| 217 | DWORD dwUserbits;
|
---|
| 218 | DWORD dwAmFlags;
|
---|
| 219 | } WMT_TIMECODE_EXTENSION_DATA;
|
---|
| 220 | #include <poppack.h>
|
---|
| 221 |
|
---|
| 222 | typedef struct _WM_PORT_NUMBER_RANGE
|
---|
| 223 | {
|
---|
| 224 | WORD wPortBegin;
|
---|
| 225 | WORD wPortEnd;
|
---|
| 226 | } WM_PORT_NUMBER_RANGE;
|
---|
| 227 |
|
---|
| 228 | typedef LPCWSTR LPCWSTR_WMSDK_TYPE_SAFE;
|
---|
| 229 |
|
---|
| 230 | [
|
---|
| 231 | object,
|
---|
| 232 | uuid(6d7cdc70-9888-11d3-8edc-00c04f6109cf),
|
---|
| 233 | pointer_default(unique),
|
---|
| 234 | local
|
---|
| 235 | ]
|
---|
| 236 | interface IWMStatusCallback : IUnknown
|
---|
| 237 | {
|
---|
| 238 | HRESULT OnStatus(
|
---|
| 239 | [in] WMT_STATUS Status,
|
---|
| 240 | [in] HRESULT hr,
|
---|
| 241 | [in] WMT_ATTR_DATATYPE dwType,
|
---|
| 242 | [in] BYTE *pValue,
|
---|
| 243 | [in] void *pvContext);
|
---|
| 244 | }
|
---|
| 245 |
|
---|
| 246 | [
|
---|
| 247 | object,
|
---|
| 248 | uuid(96406bd8-2b2b-11d3-b36b-00c04f6108ff),
|
---|
| 249 | pointer_default(unique),
|
---|
| 250 | local
|
---|
| 251 | ]
|
---|
| 252 | interface IWMReaderCallback : IWMStatusCallback
|
---|
| 253 | {
|
---|
| 254 | HRESULT OnSample(
|
---|
| 255 | [in] DWORD dwOutputNum,
|
---|
| 256 | [in] QWORD cnsSampleTime,
|
---|
| 257 | [in] QWORD cnsSampleDuration,
|
---|
| 258 | [in] DWORD dwFlags,
|
---|
| 259 | [in] INSSBuffer *pSample,
|
---|
| 260 | [in] void *pvContext);
|
---|
| 261 | }
|
---|
| 262 |
|
---|
| 263 | [
|
---|
| 264 | object,
|
---|
| 265 | uuid(96406Bdd-2b2b-11d3-b36b-00c04f6108ff),
|
---|
| 266 | pointer_default(unique),
|
---|
| 267 | local
|
---|
| 268 | ]
|
---|
| 269 | interface IWMStreamList : IUnknown
|
---|
| 270 | {
|
---|
| 271 | HRESULT GetStreams(
|
---|
| 272 | [out, size_is(*pcStreams)] WORD *pwStreamNumArray,
|
---|
| 273 | [in, out] WORD *pcStreams);
|
---|
| 274 |
|
---|
| 275 | HRESULT AddStream([in] WORD wStreamNum);
|
---|
| 276 | HRESULT RemoveStream([in] WORD wStreamNum);
|
---|
| 277 | }
|
---|
| 278 |
|
---|
| 279 | [
|
---|
| 280 | object,
|
---|
| 281 | uuid(96406Bde-2b2b-11d3-b36b-00c04f6108ff),
|
---|
| 282 | pointer_default(unique),
|
---|
| 283 | local
|
---|
| 284 | ]
|
---|
| 285 | interface IWMMutualExclusion : IWMStreamList
|
---|
| 286 | {
|
---|
| 287 | HRESULT GetType([out] GUID *pguidType);
|
---|
| 288 | HRESULT SetType([in] REFGUID guidType);
|
---|
| 289 | }
|
---|
| 290 |
|
---|
| 291 | [
|
---|
| 292 | object,
|
---|
| 293 | uuid(ad694af1-f8d9-42f8-bc47-70311b0c4f9e),
|
---|
| 294 | pointer_default(unique),
|
---|
| 295 | local
|
---|
| 296 | ]
|
---|
| 297 | interface IWMBandwidthSharing : IWMStreamList
|
---|
| 298 | {
|
---|
| 299 | HRESULT GetType([out] GUID *guid);
|
---|
| 300 | HRESULT SetType([in] REFGUID guid);
|
---|
| 301 |
|
---|
| 302 | HRESULT GetBandwidth(
|
---|
| 303 | [out] DWORD *bitrate,
|
---|
| 304 | [out] DWORD *buffer);
|
---|
| 305 |
|
---|
| 306 | HRESULT SetBandwidth(
|
---|
| 307 | [in] DWORD bitrate,
|
---|
| 308 | [in] DWORD buffer);
|
---|
| 309 | }
|
---|
| 310 |
|
---|
| 311 | [
|
---|
| 312 | object,
|
---|
| 313 | uuid(8c1c6090-f9a8-4748-8ec3-dd1108ba1e77),
|
---|
| 314 | pointer_default(unique),
|
---|
| 315 | local
|
---|
| 316 | ]
|
---|
| 317 | interface IWMStreamPrioritization : IUnknown
|
---|
| 318 | {
|
---|
| 319 | HRESULT GetPriorityRecords(
|
---|
| 320 | [out] WM_STREAM_PRIORITY_RECORD *array,
|
---|
| 321 | [in, out] WORD *records);
|
---|
| 322 |
|
---|
| 323 | HRESULT SetPriorityRecords(
|
---|
| 324 | [in] WM_STREAM_PRIORITY_RECORD *array,
|
---|
| 325 | [in] WORD records);
|
---|
| 326 | }
|
---|
| 327 |
|
---|
| 328 | [
|
---|
| 329 | object,
|
---|
| 330 | uuid(96406Bdc-2b2b-11d3-b36b-00c04f6108ff),
|
---|
| 331 | pointer_default(unique),
|
---|
| 332 | local
|
---|
| 333 | ]
|
---|
| 334 | interface IWMStreamConfig : IUnknown
|
---|
| 335 | {
|
---|
| 336 | HRESULT GetStreamType([out] GUID *pguidStreamType);
|
---|
| 337 | HRESULT GetStreamNumber([out] WORD *pwStreamNum);
|
---|
| 338 | HRESULT SetStreamNumber([in] WORD wStreamNum);
|
---|
| 339 |
|
---|
| 340 | HRESULT GetStreamName(
|
---|
| 341 | [out, size_is(*pcchStreamName)] WCHAR *pwszStreamName,
|
---|
| 342 | [in, out] WORD *pcchStreamName);
|
---|
| 343 |
|
---|
| 344 | HRESULT SetStreamName([in] LPCWSTR_WMSDK_TYPE_SAFE pwszStreamName);
|
---|
| 345 |
|
---|
| 346 | HRESULT GetConnectionName(
|
---|
| 347 | [out, size_is(*pcchInputName)] WCHAR *pwszInputName,
|
---|
| 348 | [in, out] WORD *pcchInputName);
|
---|
| 349 |
|
---|
| 350 | HRESULT SetConnectionName([in] LPCWSTR_WMSDK_TYPE_SAFE pwszInputName);
|
---|
| 351 | HRESULT GetBitrate([out] DWORD *pdwBitrate);
|
---|
| 352 | HRESULT SetBitrate([in] DWORD pdwBitrate);
|
---|
| 353 | HRESULT GetBufferWindow([out] DWORD *pmsBufferWindow);
|
---|
| 354 | HRESULT SetBufferWindow([in] DWORD msBufferWindow);
|
---|
| 355 | }
|
---|
| 356 |
|
---|
| 357 | [
|
---|
| 358 | object,
|
---|
| 359 | uuid(96406bdb-2b2b-11d3-b36b-00c04f6108ff),
|
---|
| 360 | pointer_default(unique),
|
---|
| 361 | local
|
---|
| 362 | ]
|
---|
| 363 | interface IWMProfile : IUnknown
|
---|
| 364 | {
|
---|
| 365 | HRESULT GetVersion(
|
---|
| 366 | [out] WMT_VERSION *pdwVersion);
|
---|
| 367 |
|
---|
| 368 | HRESULT GetName(
|
---|
| 369 | [out, size_is(*pcchName)] WCHAR *pwszName,
|
---|
| 370 | [in, out] DWORD *pcchName);
|
---|
| 371 |
|
---|
| 372 | HRESULT SetName(
|
---|
| 373 | [in] const WCHAR *pwszName);
|
---|
| 374 |
|
---|
| 375 | HRESULT GetDescription(
|
---|
| 376 | [out, size_is(*pcchDescription)] WCHAR *pwszDescription,
|
---|
| 377 | [in, out] DWORD *pcchDescription);
|
---|
| 378 |
|
---|
| 379 | HRESULT SetDescription(
|
---|
| 380 | [in] const WCHAR *pwszDescription);
|
---|
| 381 |
|
---|
| 382 | HRESULT GetStreamCount(
|
---|
| 383 | [out] DWORD *pcStreams);
|
---|
| 384 |
|
---|
| 385 | HRESULT GetStream(
|
---|
| 386 | [in] DWORD dwStreamIndex,
|
---|
| 387 | [out] IWMStreamConfig **ppConfig);
|
---|
| 388 |
|
---|
| 389 | HRESULT GetStreamByNumber(
|
---|
| 390 | [in] WORD wStreamNum,
|
---|
| 391 | [out] IWMStreamConfig **ppConfig);
|
---|
| 392 |
|
---|
| 393 | HRESULT RemoveStream(
|
---|
| 394 | [in] IWMStreamConfig *pConfig);
|
---|
| 395 |
|
---|
| 396 | HRESULT RemoveStreamByNumber(
|
---|
| 397 | [in] WORD wStreamNum);
|
---|
| 398 |
|
---|
| 399 | HRESULT AddStream(
|
---|
| 400 | [in] IWMStreamConfig *pConfig);
|
---|
| 401 |
|
---|
| 402 | HRESULT ReconfigStream(
|
---|
| 403 | [in] IWMStreamConfig *pConfig);
|
---|
| 404 |
|
---|
| 405 | HRESULT CreateNewStream(
|
---|
| 406 | [in] REFGUID guidStreamType,
|
---|
| 407 | [out] IWMStreamConfig **ppConfig);
|
---|
| 408 |
|
---|
| 409 | HRESULT GetMutualExclusionCount(
|
---|
| 410 | [out] DWORD *pcME);
|
---|
| 411 |
|
---|
| 412 | HRESULT GetMutualExclusion(
|
---|
| 413 | [in] DWORD dwMEIndex,
|
---|
| 414 | [out] IWMMutualExclusion **ppME);
|
---|
| 415 |
|
---|
| 416 | HRESULT RemoveMutualExclusion(
|
---|
| 417 | [in] IWMMutualExclusion *pME);
|
---|
| 418 |
|
---|
| 419 | HRESULT AddMutualExclusion(
|
---|
| 420 | [in] IWMMutualExclusion *pME);
|
---|
| 421 |
|
---|
| 422 | HRESULT CreateNewMutualExclusion(
|
---|
| 423 | [out] IWMMutualExclusion **ppME);
|
---|
| 424 | }
|
---|
| 425 |
|
---|
| 426 | [
|
---|
| 427 | object,
|
---|
| 428 | uuid(07e72d33-d94e-4be7-8843-60ae5ff7e5f5),
|
---|
| 429 | pointer_default(unique),
|
---|
| 430 | local
|
---|
| 431 | ]
|
---|
| 432 | interface IWMProfile2 : IWMProfile
|
---|
| 433 | {
|
---|
| 434 | HRESULT GetProfileID([out] GUID *guid);
|
---|
| 435 | }
|
---|
| 436 |
|
---|
| 437 | [
|
---|
| 438 | object,
|
---|
| 439 | uuid(00ef96cc-a461-4546-8bcd-c9a28f0e06f5),
|
---|
| 440 | pointer_default(unique),
|
---|
| 441 | local
|
---|
| 442 | ]
|
---|
| 443 | interface IWMProfile3 : IWMProfile2
|
---|
| 444 | {
|
---|
| 445 | HRESULT GetStorageFormat([out] WMT_STORAGE_FORMAT *storage);
|
---|
| 446 | HRESULT SetStorageFormat([in] WMT_STORAGE_FORMAT storage);
|
---|
| 447 |
|
---|
| 448 | HRESULT GetBandwidthSharingCount([out] DWORD *count);
|
---|
| 449 |
|
---|
| 450 | HRESULT GetBandwidthSharing(
|
---|
| 451 | [in] DWORD index,
|
---|
| 452 | [out] IWMBandwidthSharing **bandwidth);
|
---|
| 453 |
|
---|
| 454 | HRESULT RemoveBandwidthSharing([in] IWMBandwidthSharing *bandwidth);
|
---|
| 455 |
|
---|
| 456 | HRESULT AddBandwidthSharing([in] IWMBandwidthSharing *bandwidth);
|
---|
| 457 |
|
---|
| 458 | HRESULT CreateNewBandwidthSharing([out] IWMBandwidthSharing **bandwidth);
|
---|
| 459 |
|
---|
| 460 | HRESULT GetStreamPrioritization([out] IWMStreamPrioritization **stream);
|
---|
| 461 |
|
---|
| 462 | HRESULT SetStreamPrioritization([in] IWMStreamPrioritization *stream);
|
---|
| 463 |
|
---|
| 464 | HRESULT RemoveStreamPrioritization();
|
---|
| 465 |
|
---|
| 466 | HRESULT CreateNewStreamPrioritization([out] IWMStreamPrioritization **stream);
|
---|
| 467 |
|
---|
| 468 | HRESULT GetExpectedPacketCount(
|
---|
| 469 | [in] QWORD duration,
|
---|
| 470 | [out] QWORD *packets);
|
---|
| 471 | }
|
---|
| 472 |
|
---|
| 473 | [
|
---|
| 474 | object,
|
---|
| 475 | uuid(d16679f2-6ca0-472d-8d31-2f5d55aee155),
|
---|
| 476 | pointer_default(unique),
|
---|
| 477 | local
|
---|
| 478 | ]
|
---|
| 479 | interface IWMProfileManager : IUnknown
|
---|
| 480 | {
|
---|
| 481 | HRESULT CreateEmptyProfile(
|
---|
| 482 | [in] WMT_VERSION dwVersion,
|
---|
| 483 | [out] IWMProfile **ppProfile);
|
---|
| 484 |
|
---|
| 485 | HRESULT LoadProfileByID(
|
---|
| 486 | [in] REFGUID guidProfile,
|
---|
| 487 | [out] IWMProfile **ppProfile);
|
---|
| 488 |
|
---|
| 489 | HRESULT LoadProfileByData(
|
---|
| 490 | [in] const WCHAR *pwszProfile,
|
---|
| 491 | [out] IWMProfile **ppProfile);
|
---|
| 492 |
|
---|
| 493 | HRESULT SaveProfile(
|
---|
| 494 | [in] IWMProfile *pIWMProfile,
|
---|
| 495 | [in] WCHAR *pwszProfile,
|
---|
| 496 | [in, out] DWORD *pdwLength);
|
---|
| 497 |
|
---|
| 498 | HRESULT GetSystemProfileCount(
|
---|
| 499 | [out] DWORD *pcProfiles);
|
---|
| 500 |
|
---|
| 501 | HRESULT LoadSystemProfile(
|
---|
| 502 | [in] DWORD dwProfileIndex,
|
---|
| 503 | [out] IWMProfile **ppProfile);
|
---|
| 504 | }
|
---|
| 505 |
|
---|
| 506 | [
|
---|
| 507 | object,
|
---|
| 508 | uuid(7a924e51-73c1-494d-8019-23d37ed9b89a),
|
---|
| 509 | pointer_default(unique),
|
---|
| 510 | local
|
---|
| 511 | ]
|
---|
| 512 | interface IWMProfileManager2 : IWMProfileManager
|
---|
| 513 | {
|
---|
| 514 | HRESULT GetSystemProfileVersion(WMT_VERSION *version);
|
---|
| 515 | HRESULT SetSystemProfileVersion(WMT_VERSION version);
|
---|
| 516 | };
|
---|
| 517 |
|
---|
| 518 | cpp_quote("HRESULT WINAPI WMCreateProfileManager(IWMProfileManager**);")
|
---|
| 519 |
|
---|
| 520 | [
|
---|
| 521 | object,
|
---|
| 522 | uuid(a970f41e-34de-4a98-b3ba-e4b3ca7528f0),
|
---|
| 523 | pointer_default(unique),
|
---|
| 524 | local
|
---|
| 525 | ]
|
---|
| 526 | interface IWMCodecInfo : IUnknown
|
---|
| 527 | {
|
---|
| 528 | HRESULT GetCodecInfoCount(
|
---|
| 529 | [in] REFGUID guid,
|
---|
| 530 | [out] DWORD *count);
|
---|
| 531 |
|
---|
| 532 | HRESULT GetCodecFormatCount(
|
---|
| 533 | [in] REFGUID guid,
|
---|
| 534 | [in] DWORD codecindex,
|
---|
| 535 | [out] DWORD *formatcount);
|
---|
| 536 |
|
---|
| 537 | HRESULT GetCodecFormat(
|
---|
| 538 | [in] REFGUID guid,
|
---|
| 539 | [in] DWORD codecindex,
|
---|
| 540 | [in] DWORD formatindex,
|
---|
| 541 | [out] IWMStreamConfig **streamconfig);
|
---|
| 542 | }
|
---|
| 543 |
|
---|
| 544 | [
|
---|
| 545 | object,
|
---|
| 546 | uuid(aa65e273-b686-4056-91ec-dd768d4df710),
|
---|
| 547 | pointer_default(unique),
|
---|
| 548 | local
|
---|
| 549 | ]
|
---|
| 550 | interface IWMCodecInfo2 : IWMCodecInfo
|
---|
| 551 | {
|
---|
| 552 | HRESULT GetCodecName(
|
---|
| 553 | [in] REFGUID guid,
|
---|
| 554 | [in] DWORD codecindex,
|
---|
| 555 | [out, size_is(*namesize)] WCHAR *name,
|
---|
| 556 | [in, out] DWORD *namesize);
|
---|
| 557 |
|
---|
| 558 | HRESULT GetCodecFormatDesc(
|
---|
| 559 | [in] REFGUID guid,
|
---|
| 560 | [in] DWORD codecindex,
|
---|
| 561 | [in] DWORD formatindex,
|
---|
| 562 | [out] IWMStreamConfig **streamconfig,
|
---|
| 563 | [out, size_is(*descrsize)] WCHAR *description,
|
---|
| 564 | [in, out] DWORD *descrsize);
|
---|
| 565 | }
|
---|
| 566 |
|
---|
| 567 | [
|
---|
| 568 | object,
|
---|
| 569 | uuid(7e51f487-4d93-4f98-8ab4-27d0565adc51),
|
---|
| 570 | pointer_default(unique),
|
---|
| 571 | local
|
---|
| 572 | ]
|
---|
| 573 | interface IWMCodecInfo3 : IWMCodecInfo2
|
---|
| 574 | {
|
---|
| 575 | HRESULT GetCodecFormatProp(
|
---|
| 576 | [in] REFGUID guid,
|
---|
| 577 | [in] DWORD codecindex,
|
---|
| 578 | [in] DWORD formatindex,
|
---|
| 579 | [in] const WCHAR *name,
|
---|
| 580 | [out] WMT_ATTR_DATATYPE *type,
|
---|
| 581 | [out, size_is(*size)] BYTE *value,
|
---|
| 582 | [in, out] DWORD *size);
|
---|
| 583 |
|
---|
| 584 | HRESULT GetCodecProp(
|
---|
| 585 | [in] REFGUID guid,
|
---|
| 586 | [in] DWORD codecindex,
|
---|
| 587 | [in] const WCHAR *name,
|
---|
| 588 | [out] WMT_ATTR_DATATYPE *type,
|
---|
| 589 | [out, size_is(*size)] BYTE *value,
|
---|
| 590 | [in, out] DWORD *size);
|
---|
| 591 |
|
---|
| 592 | HRESULT SetCodecEnumerationSetting(
|
---|
| 593 | [in] REFGUID guid,
|
---|
| 594 | [in] DWORD codecindex,
|
---|
| 595 | [in] const WCHAR *name,
|
---|
| 596 | [in] WMT_ATTR_DATATYPE type,
|
---|
| 597 | [in, size_is(size)] const BYTE *value,
|
---|
| 598 | [in] DWORD size);
|
---|
| 599 |
|
---|
| 600 | HRESULT GetCodecEnumerationSetting(
|
---|
| 601 | [in] REFGUID guid,
|
---|
| 602 | [in] DWORD codecindex,
|
---|
| 603 | [in] const WCHAR *name,
|
---|
| 604 | [out] WMT_ATTR_DATATYPE *type,
|
---|
| 605 | [out, size_is(*size)] BYTE *value,
|
---|
| 606 | [in, out] DWORD *size);
|
---|
| 607 | }
|
---|
| 608 |
|
---|
| 609 | cpp_quote("static const WCHAR g_wszNumPasses[] = {'_','P','A','S','S','E','S','U','S','E','D',0};")
|
---|
| 610 | cpp_quote("static const WCHAR g_wszVBREnabled[] = {'_','V','B','R','E','N','A','B','L','E','D',0};")
|
---|
| 611 |
|
---|
| 612 | [
|
---|
| 613 | object,
|
---|
| 614 | uuid(96406bce-2b2b-11d3-b36b-00c04f6108ff),
|
---|
| 615 | pointer_default(unique),
|
---|
| 616 | local
|
---|
| 617 | ]
|
---|
| 618 | interface IWMMediaProps : IUnknown
|
---|
| 619 | {
|
---|
| 620 | HRESULT GetType(
|
---|
| 621 | [out] GUID *pguidType);
|
---|
| 622 |
|
---|
| 623 | HRESULT GetMediaType(
|
---|
| 624 | [out] WM_MEDIA_TYPE *pType,
|
---|
| 625 | [in, out] DWORD *pcbType);
|
---|
| 626 |
|
---|
| 627 | HRESULT SetMediaType(
|
---|
| 628 | [in] WM_MEDIA_TYPE *pType);
|
---|
| 629 | }
|
---|
| 630 |
|
---|
| 631 | [
|
---|
| 632 | object,
|
---|
| 633 | uuid(96406bd7-2b2b-11d3-b36b-00c04f6108ff),
|
---|
| 634 | pointer_default(unique),
|
---|
| 635 | local
|
---|
| 636 | ]
|
---|
| 637 | interface IWMOutputMediaProps : IWMMediaProps
|
---|
| 638 | {
|
---|
| 639 | HRESULT GetStreamGroupName(
|
---|
| 640 | [out, size_is(*pcchName)] WCHAR *pwszName,
|
---|
| 641 | [in, out] WORD *pcchName);
|
---|
| 642 |
|
---|
| 643 | HRESULT GetConnectionName(
|
---|
| 644 | [out, size_is(*pcchName)] WCHAR *pwszName,
|
---|
| 645 | [in, out] WORD *pcchName);
|
---|
| 646 | }
|
---|
| 647 |
|
---|
| 648 | [
|
---|
| 649 | object,
|
---|
| 650 | uuid(96406bd9-2b2b-11d3-b36b-00c04f6108ff),
|
---|
| 651 | pointer_default(unique),
|
---|
| 652 | local
|
---|
| 653 | ]
|
---|
| 654 | interface IWMMetadataEditor : IUnknown
|
---|
| 655 | {
|
---|
| 656 | HRESULT Open(
|
---|
| 657 | [in] const WCHAR *pwszFilename);
|
---|
| 658 |
|
---|
| 659 | HRESULT Close();
|
---|
| 660 |
|
---|
| 661 | HRESULT Flush();
|
---|
| 662 | }
|
---|
| 663 |
|
---|
| 664 | [
|
---|
| 665 | object,
|
---|
| 666 | uuid(96406bd6-2b2b-11d3-b36b-00c04f6108ff),
|
---|
| 667 | pointer_default(unique),
|
---|
| 668 | local
|
---|
| 669 | ]
|
---|
| 670 | interface IWMReader : IUnknown
|
---|
| 671 | {
|
---|
| 672 | HRESULT Open(
|
---|
| 673 | [in] const WCHAR *pwszURL,
|
---|
| 674 | [in] IWMReaderCallback *pCallback,
|
---|
| 675 | [in] void *pvContext);
|
---|
| 676 |
|
---|
| 677 | HRESULT Close();
|
---|
| 678 |
|
---|
| 679 | HRESULT GetOutputCount(
|
---|
| 680 | [out] DWORD *pcOutputs);
|
---|
| 681 |
|
---|
| 682 | HRESULT GetOutputProps(
|
---|
| 683 | [in] DWORD dwOutputNum,
|
---|
| 684 | [out] IWMOutputMediaProps **ppOutput);
|
---|
| 685 |
|
---|
| 686 | HRESULT SetOutputProps(
|
---|
| 687 | [in] DWORD dwOutputNum,
|
---|
| 688 | [in] IWMOutputMediaProps *pOutput);
|
---|
| 689 |
|
---|
| 690 | HRESULT GetOutputFormatCount(
|
---|
| 691 | [in] DWORD dwOutputNumber,
|
---|
| 692 | [out] DWORD *pcFormats);
|
---|
| 693 |
|
---|
| 694 | HRESULT GetOutputFormat(
|
---|
| 695 | [in] DWORD dwOutputNumber,
|
---|
| 696 | [in] DWORD dwFormatNumber,
|
---|
| 697 | [out] IWMOutputMediaProps** ppProps);
|
---|
| 698 |
|
---|
| 699 | HRESULT Start(
|
---|
| 700 | [in] QWORD cnsStart,
|
---|
| 701 | [in] QWORD cnsDuration,
|
---|
| 702 | [in] float fRate,
|
---|
| 703 | [in] void *pvContext);
|
---|
| 704 |
|
---|
| 705 | HRESULT Stop();
|
---|
| 706 |
|
---|
| 707 | HRESULT Pause();
|
---|
| 708 |
|
---|
| 709 | HRESULT Resume();
|
---|
| 710 | }
|
---|
| 711 |
|
---|
| 712 | [
|
---|
| 713 | object,
|
---|
| 714 | uuid(e5b7ca9a-0f1c-4f66-9002-74ec50d8b304),
|
---|
| 715 | pointer_default(unique),
|
---|
| 716 | local
|
---|
| 717 | ]
|
---|
| 718 | interface IWMPlayerHook : IUnknown
|
---|
| 719 | {
|
---|
| 720 | HRESULT PreDecode();
|
---|
| 721 | }
|
---|
| 722 |
|
---|
| 723 | [
|
---|
| 724 | object,
|
---|
| 725 | uuid(96406bea-2b2b-11d3-b36b-00c04f6108ff),
|
---|
| 726 | pointer_default(unique),
|
---|
| 727 | local
|
---|
| 728 | ]
|
---|
| 729 | interface IWMReaderAdvanced : IUnknown
|
---|
| 730 | {
|
---|
| 731 | HRESULT SetUserProvidedClock(
|
---|
| 732 | [in] BOOL fUserClock);
|
---|
| 733 |
|
---|
| 734 | HRESULT GetUserProvidedClock(
|
---|
| 735 | [out] BOOL *pfUserClock);
|
---|
| 736 |
|
---|
| 737 | HRESULT DeliverTime(
|
---|
| 738 | [in] QWORD cnsTime);
|
---|
| 739 |
|
---|
| 740 | HRESULT SetManualStreamSelection(
|
---|
| 741 | [in] BOOL fSelection);
|
---|
| 742 |
|
---|
| 743 | HRESULT GetManualStreamSelection(
|
---|
| 744 | [out] BOOL *pfSelection);
|
---|
| 745 |
|
---|
| 746 | HRESULT SetStreamsSelected(
|
---|
| 747 | [in] WORD cStreamCount,
|
---|
| 748 | [in] WORD *pwStreamNumbers,
|
---|
| 749 | [in] WMT_STREAM_SELECTION *pSelections);
|
---|
| 750 |
|
---|
| 751 | HRESULT GetStreamSelected(
|
---|
| 752 | [in] WORD wStreamNum,
|
---|
| 753 | [out] WMT_STREAM_SELECTION *pSelection);
|
---|
| 754 |
|
---|
| 755 | HRESULT SetReceiveSelectionCallbacks(
|
---|
| 756 | [in] BOOL fGetCallbacks);
|
---|
| 757 |
|
---|
| 758 | HRESULT GetReceiveSelectionCallbacks(
|
---|
| 759 | [out] BOOL *pfGetCallbacks);
|
---|
| 760 |
|
---|
| 761 | HRESULT SetReceiveStreamSamples(
|
---|
| 762 | [in] WORD wStreamNum,
|
---|
| 763 | [in] BOOL fReceiveStreamSamples);
|
---|
| 764 |
|
---|
| 765 | HRESULT GetReceiveStreamSamples(
|
---|
| 766 | [in] WORD wStreamNum,
|
---|
| 767 | [out] BOOL *pfReceiveStreamSamples);
|
---|
| 768 |
|
---|
| 769 | HRESULT SetAllocateForOutput(
|
---|
| 770 | [in] DWORD dwOutputNum,
|
---|
| 771 | [in] BOOL fAllocate);
|
---|
| 772 |
|
---|
| 773 | HRESULT GetAllocateForOutput(
|
---|
| 774 | [in] DWORD dwOutputNum,
|
---|
| 775 | [out] BOOL *pfAllocate);
|
---|
| 776 |
|
---|
| 777 | HRESULT SetAllocateForStream(
|
---|
| 778 | [in] WORD wStreamNum,
|
---|
| 779 | [in] BOOL fAllocate);
|
---|
| 780 |
|
---|
| 781 | HRESULT GetAllocateForStream(
|
---|
| 782 | [in] WORD dwStreamNum,
|
---|
| 783 | [out] BOOL *pfAllocate);
|
---|
| 784 |
|
---|
| 785 | HRESULT GetStatistics(
|
---|
| 786 | [in, out] WM_READER_STATISTICS *pStatistics);
|
---|
| 787 |
|
---|
| 788 | HRESULT SetClientInfo(
|
---|
| 789 | [in] WM_READER_CLIENTINFO *pClientInfo);
|
---|
| 790 |
|
---|
| 791 | HRESULT GetMaxOutputSampleSize(
|
---|
| 792 | [in] DWORD dwOutput,
|
---|
| 793 | [out] DWORD *pcbMax);
|
---|
| 794 |
|
---|
| 795 | HRESULT GetMaxStreamSampleSize(
|
---|
| 796 | [in] WORD wStream,
|
---|
| 797 | [out] DWORD *pcbMax);
|
---|
| 798 |
|
---|
| 799 | HRESULT NotifyLateDelivery(
|
---|
| 800 | QWORD cnsLateness);
|
---|
| 801 | }
|
---|
| 802 |
|
---|
| 803 | [
|
---|
| 804 | object,
|
---|
| 805 | uuid(ae14a945-b90c-4d0d-9127-80d665f7d73e),
|
---|
| 806 | pointer_default(unique),
|
---|
| 807 | local
|
---|
| 808 | ]
|
---|
| 809 | interface IWMReaderAdvanced2 : IWMReaderAdvanced
|
---|
| 810 | {
|
---|
| 811 | HRESULT SetPlayMode(
|
---|
| 812 | [in] WMT_PLAY_MODE Mode);
|
---|
| 813 |
|
---|
| 814 | HRESULT GetPlayMode(
|
---|
| 815 | [out] WMT_PLAY_MODE *pMode);
|
---|
| 816 |
|
---|
| 817 | HRESULT GetBufferProgress(
|
---|
| 818 | [out] DWORD *pdwPercent,
|
---|
| 819 | [out] QWORD *pcnsBuffering);
|
---|
| 820 |
|
---|
| 821 | HRESULT GetDownloadProgress(
|
---|
| 822 | [out] DWORD *pdwPercent,
|
---|
| 823 | [out] QWORD *pqwBytesDownloaded,
|
---|
| 824 | [out] QWORD *pcnsDownload);
|
---|
| 825 |
|
---|
| 826 | HRESULT GetSaveAsProgress(
|
---|
| 827 | [out] DWORD *pdwPercent);
|
---|
| 828 |
|
---|
| 829 | HRESULT SaveFileAs(
|
---|
| 830 | [in] const WCHAR *pwszFilename);
|
---|
| 831 |
|
---|
| 832 | HRESULT GetProtocolName(
|
---|
| 833 | [out, size_is(*pcchProtocol)] WCHAR *pwszProtocol,
|
---|
| 834 | [in, out] DWORD *pcchProtocol);
|
---|
| 835 |
|
---|
| 836 | HRESULT StartAtMarker(
|
---|
| 837 | [in] WORD wMarkerIndex,
|
---|
| 838 | [in] QWORD cnsDuration,
|
---|
| 839 | [in] float fRate,
|
---|
| 840 | [in] void *pvContext);
|
---|
| 841 |
|
---|
| 842 | HRESULT GetOutputSetting(
|
---|
| 843 | [in] DWORD dwOutputNum,
|
---|
| 844 | [in] LPCWSTR pszName,
|
---|
| 845 | [out] WMT_ATTR_DATATYPE *pType,
|
---|
| 846 | [out, size_is(*pcbLength)] BYTE *pValue,
|
---|
| 847 | [in, out] WORD *pcbLength);
|
---|
| 848 |
|
---|
| 849 | HRESULT SetOutputSetting(
|
---|
| 850 | [in] DWORD dwOutputNum,
|
---|
| 851 | [in] LPCWSTR pszName,
|
---|
| 852 | [in] WMT_ATTR_DATATYPE Type,
|
---|
| 853 | [in, size_is(cbLength)] const BYTE *pValue,
|
---|
| 854 | [in] WORD cbLength);
|
---|
| 855 |
|
---|
| 856 | HRESULT Preroll(
|
---|
| 857 | [in] QWORD cnsStart,
|
---|
| 858 | [in] QWORD cnsDuration,
|
---|
| 859 | [in] float fRate);
|
---|
| 860 |
|
---|
| 861 | HRESULT SetLogClientID(
|
---|
| 862 | [in] BOOL fLogClientID);
|
---|
| 863 |
|
---|
| 864 | HRESULT GetLogClientID(
|
---|
| 865 | [out] BOOL *pfLogClientID);
|
---|
| 866 |
|
---|
| 867 | HRESULT StopBuffering();
|
---|
| 868 |
|
---|
| 869 | HRESULT OpenStream(
|
---|
| 870 | [in] IStream *pStream,
|
---|
| 871 | [in] IWMReaderCallback *pCallback,
|
---|
| 872 | [in] void *pvContext);
|
---|
| 873 | }
|
---|
| 874 |
|
---|
| 875 | [
|
---|
| 876 | object,
|
---|
| 877 | uuid(5dc0674b-f04B-4a4e-9f2a-b1afde2c8100),
|
---|
| 878 | pointer_default(unique),
|
---|
| 879 | local
|
---|
| 880 | ]
|
---|
| 881 | interface IWMReaderAdvanced3 : IWMReaderAdvanced2
|
---|
| 882 | {
|
---|
| 883 | HRESULT StopNetStreaming();
|
---|
| 884 |
|
---|
| 885 | HRESULT StartAtPosition(
|
---|
| 886 | [in] WORD wStreamNum,
|
---|
| 887 | [in] void *pvOffsetStart,
|
---|
| 888 | [in] void *pvDuration,
|
---|
| 889 | [in] WMT_OFFSET_FORMAT dwOffsetFormat,
|
---|
| 890 | [in] float fRate,
|
---|
| 891 | [in] void *pvContext);
|
---|
| 892 | }
|
---|
| 893 |
|
---|
| 894 | [
|
---|
| 895 | object,
|
---|
| 896 | uuid(945a76a2-12ae-4d48-bd3c-cd1d90399b85),
|
---|
| 897 | pointer_default(unique),
|
---|
| 898 | local
|
---|
| 899 | ]
|
---|
| 900 | interface IWMReaderAdvanced4 : IWMReaderAdvanced3
|
---|
| 901 | {
|
---|
| 902 | HRESULT GetLanguageCount(
|
---|
| 903 | [in] DWORD dwOutputNum,
|
---|
| 904 | [out] WORD *pwLanguageCount);
|
---|
| 905 |
|
---|
| 906 | HRESULT GetLanguage(
|
---|
| 907 | [in] DWORD dwOutputNum,
|
---|
| 908 | [in] WORD wLanguage,
|
---|
| 909 | [out, size_is(*pcchLanguageStringLength)] WCHAR *pwszLanguageString,
|
---|
| 910 | [in, out] WORD *pcchLanguageStringLength);
|
---|
| 911 |
|
---|
| 912 | HRESULT GetMaxSpeedFactor(
|
---|
| 913 | [out] double *pdblFactor);
|
---|
| 914 |
|
---|
| 915 | HRESULT IsUsingFastCache(
|
---|
| 916 | [out] BOOL *pfUsingFastCache);
|
---|
| 917 |
|
---|
| 918 | HRESULT AddLogParam(
|
---|
| 919 | [in] LPCWSTR wszNameSpace,
|
---|
| 920 | [in] LPCWSTR wszName,
|
---|
| 921 | [in] LPCWSTR wszValue);
|
---|
| 922 |
|
---|
| 923 | HRESULT SendLogParams();
|
---|
| 924 |
|
---|
| 925 | HRESULT CanSaveFileAs(
|
---|
| 926 | [out] BOOL *pfCanSave);
|
---|
| 927 |
|
---|
| 928 | HRESULT CancelSaveFileAs();
|
---|
| 929 |
|
---|
| 930 | HRESULT GetURL(
|
---|
| 931 | [out, size_is(*pcchURL)] WCHAR *pwszURL,
|
---|
| 932 | [in, out] DWORD *pcchURL);
|
---|
| 933 | }
|
---|
| 934 |
|
---|
| 935 | [
|
---|
| 936 | object,
|
---|
| 937 | uuid(24c44db0-55d1-49ae-a5cc-f13815e36363),
|
---|
| 938 | pointer_default(unique),
|
---|
| 939 | local
|
---|
| 940 | ]
|
---|
| 941 | interface IWMReaderAdvanced5 : IWMReaderAdvanced4
|
---|
| 942 | {
|
---|
| 943 | HRESULT SetPlayerHook(
|
---|
| 944 | [in] DWORD dwOutputNum,
|
---|
| 945 | [in] IWMPlayerHook *pHook);
|
---|
| 946 | }
|
---|
| 947 |
|
---|
| 948 | [
|
---|
| 949 | object,
|
---|
| 950 | uuid(18a2e7f8-428f-4acd-8a00-e64639bc93de),
|
---|
| 951 | pointer_default(unique),
|
---|
| 952 | local
|
---|
| 953 | ]
|
---|
| 954 | interface IWMReaderAdvanced6 : IWMReaderAdvanced5
|
---|
| 955 | {
|
---|
| 956 | HRESULT SetProtectStreamSamples(
|
---|
| 957 | [in, size_is(cbCertificate)] BYTE *pbCertificate,
|
---|
| 958 | [in] DWORD cbCertificate,
|
---|
| 959 | [in] DWORD dwCertificateType,
|
---|
| 960 | [in] DWORD dwFlags,
|
---|
| 961 | [out, size_is(*pcbInitializationVector)] BYTE *pbInitializationVector,
|
---|
| 962 | [in, out] DWORD *pcbInitializationVector);
|
---|
| 963 | }
|
---|
| 964 |
|
---|
| 965 | [
|
---|
| 966 | object,
|
---|
| 967 | uuid(9397f121-7705-4dc9-b049-98b698188414),
|
---|
| 968 | pointer_default( unique ),
|
---|
| 969 | local
|
---|
| 970 | ]
|
---|
| 971 | interface IWMSyncReader : IUnknown
|
---|
| 972 | {
|
---|
| 973 | HRESULT Open(
|
---|
| 974 | [in] const WCHAR *pwszFilename);
|
---|
| 975 |
|
---|
| 976 | HRESULT Close();
|
---|
| 977 |
|
---|
| 978 | HRESULT SetRange(
|
---|
| 979 | [in] QWORD cnsStartTime,
|
---|
| 980 | [in] LONGLONG cnsDuration);
|
---|
| 981 |
|
---|
| 982 | HRESULT SetRangeByFrame(
|
---|
| 983 | [in] WORD wStreamNum,
|
---|
| 984 | [in] QWORD qwFrameNumber,
|
---|
| 985 | [in] LONGLONG cFramesToRead);
|
---|
| 986 |
|
---|
| 987 | HRESULT GetNextSample(
|
---|
| 988 | [in] WORD wStreamNum,
|
---|
| 989 | [out] INSSBuffer **ppSample,
|
---|
| 990 | [out] QWORD *pcnsSampleTime,
|
---|
| 991 | [out] QWORD *pcnsDuration,
|
---|
| 992 | [out] DWORD *pdwFlags,
|
---|
| 993 | [out] DWORD *pdwOutputNum,
|
---|
| 994 | [out] WORD *pwStreamNum);
|
---|
| 995 |
|
---|
| 996 | HRESULT SetStreamsSelected(
|
---|
| 997 | [in] WORD cStreamCount,
|
---|
| 998 | [in] WORD *pwStreamNumbers,
|
---|
| 999 | [in] WMT_STREAM_SELECTION *pSelections);
|
---|
| 1000 |
|
---|
| 1001 | HRESULT GetStreamSelected(
|
---|
| 1002 | [in] WORD wStreamNum,
|
---|
| 1003 | [out] WMT_STREAM_SELECTION *pSelection);
|
---|
| 1004 |
|
---|
| 1005 | HRESULT SetReadStreamSamples(
|
---|
| 1006 | [in] WORD wStreamNum,
|
---|
| 1007 | [in] BOOL fCompressed);
|
---|
| 1008 |
|
---|
| 1009 | HRESULT GetReadStreamSamples(
|
---|
| 1010 | [in] WORD wStreamNum,
|
---|
| 1011 | [out] BOOL *pfCompressed);
|
---|
| 1012 |
|
---|
| 1013 | HRESULT GetOutputSetting(
|
---|
| 1014 | [in] DWORD dwOutputNum,
|
---|
| 1015 | [in] LPCWSTR pszName,
|
---|
| 1016 | [out] WMT_ATTR_DATATYPE *pType,
|
---|
| 1017 | [out, size_is(*pcbLength)] BYTE *pValue,
|
---|
| 1018 | [in, out] WORD *pcbLength);
|
---|
| 1019 |
|
---|
| 1020 | HRESULT SetOutputSetting(
|
---|
| 1021 | [in] DWORD dwOutputNum,
|
---|
| 1022 | [in] LPCWSTR pszName,
|
---|
| 1023 | [in] WMT_ATTR_DATATYPE Type,
|
---|
| 1024 | [in, size_is(cbLength)] const BYTE *pValue,
|
---|
| 1025 | [in] WORD cbLength);
|
---|
| 1026 |
|
---|
| 1027 | HRESULT GetOutputCount(
|
---|
| 1028 | [out] DWORD *pcOutputs);
|
---|
| 1029 |
|
---|
| 1030 | HRESULT GetOutputProps(
|
---|
| 1031 | [in] DWORD dwOutputNum,
|
---|
| 1032 | [out] IWMOutputMediaProps **ppOutput);
|
---|
| 1033 |
|
---|
| 1034 | HRESULT SetOutputProps(
|
---|
| 1035 | [in] DWORD dwOutputNum,
|
---|
| 1036 | [in] IWMOutputMediaProps *pOutput);
|
---|
| 1037 |
|
---|
| 1038 | HRESULT GetOutputFormatCount(
|
---|
| 1039 | [in] DWORD dwOutputNum,
|
---|
| 1040 | [out] DWORD *pcFormats);
|
---|
| 1041 |
|
---|
| 1042 | HRESULT GetOutputFormat(
|
---|
| 1043 | [in] DWORD dwOutputNum,
|
---|
| 1044 | [in] DWORD dwFormatNum,
|
---|
| 1045 | [out] IWMOutputMediaProps **ppProps);
|
---|
| 1046 |
|
---|
| 1047 | HRESULT GetOutputNumberForStream(
|
---|
| 1048 | [in] WORD wStreamNum,
|
---|
| 1049 | [out] DWORD *pdwOutputNum);
|
---|
| 1050 |
|
---|
| 1051 | HRESULT GetStreamNumberForOutput(
|
---|
| 1052 | [in] DWORD dwOutputNum,
|
---|
| 1053 | [out] WORD *pwStreamNum);
|
---|
| 1054 |
|
---|
| 1055 | HRESULT GetMaxOutputSampleSize(
|
---|
| 1056 | [in] DWORD dwOutput,
|
---|
| 1057 | [out] DWORD *pcbMax);
|
---|
| 1058 |
|
---|
| 1059 | HRESULT GetMaxStreamSampleSize(
|
---|
| 1060 | [in] WORD wStream,
|
---|
| 1061 | [out] DWORD *pcbMax);
|
---|
| 1062 |
|
---|
| 1063 | HRESULT OpenStream(
|
---|
| 1064 | [in] IStream *pStream);
|
---|
| 1065 | }
|
---|
| 1066 |
|
---|
| 1067 | [
|
---|
| 1068 | object,
|
---|
| 1069 | uuid(9f762fa7-a22e-428d-93c9-ac82f3aafe5a),
|
---|
| 1070 | pointer_default( unique ),
|
---|
| 1071 | local
|
---|
| 1072 | ]
|
---|
| 1073 | interface IWMReaderAllocatorEx : IUnknown
|
---|
| 1074 | {
|
---|
| 1075 | HRESULT AllocateForStreamEx(
|
---|
| 1076 | [in] WORD wStreamNum,
|
---|
| 1077 | [in] DWORD cbBuffer,
|
---|
| 1078 | [out] INSSBuffer **ppBuffer,
|
---|
| 1079 | [in] DWORD dwFlags,
|
---|
| 1080 | [in] QWORD cnsSampleTime,
|
---|
| 1081 | [in] QWORD cnsSampleDuration,
|
---|
| 1082 | [in] void *pvContext);
|
---|
| 1083 |
|
---|
| 1084 | HRESULT AllocateForOutputEx(
|
---|
| 1085 | [in] WORD wOutputNum,
|
---|
| 1086 | [in] DWORD cbBuffer,
|
---|
| 1087 | [out] INSSBuffer **ppBuffer,
|
---|
| 1088 | [in] DWORD dwFlags,
|
---|
| 1089 | [in] QWORD cnsSampleTime,
|
---|
| 1090 | [in] QWORD cnsSampleDuration,
|
---|
| 1091 | [in] void *pvContext);
|
---|
| 1092 | }
|
---|
| 1093 |
|
---|
| 1094 | [
|
---|
| 1095 | object,
|
---|
| 1096 | uuid(faed3d21-1b6b-4af7-8cb6-3e189bbc187b),
|
---|
| 1097 | pointer_default( unique ),
|
---|
| 1098 | local
|
---|
| 1099 | ]
|
---|
| 1100 | interface IWMSyncReader2 : IWMSyncReader
|
---|
| 1101 | {
|
---|
| 1102 | HRESULT SetRangeByTimecode(
|
---|
| 1103 | [in] WORD wStreamNum,
|
---|
| 1104 | [in] WMT_TIMECODE_EXTENSION_DATA *pStart,
|
---|
| 1105 | [in] WMT_TIMECODE_EXTENSION_DATA *pEnd);
|
---|
| 1106 |
|
---|
| 1107 | HRESULT SetRangeByFrameEx(
|
---|
| 1108 | [in] WORD wStreamNum,
|
---|
| 1109 | [in] QWORD qwFrameNumber,
|
---|
| 1110 | [in] LONGLONG cFramesToRead,
|
---|
| 1111 | [out] QWORD *pcnsStartTime);
|
---|
| 1112 |
|
---|
| 1113 | HRESULT SetAllocateForOutput(
|
---|
| 1114 | [in] DWORD dwOutputNum,
|
---|
| 1115 | [in] IWMReaderAllocatorEx *pAllocator);
|
---|
| 1116 |
|
---|
| 1117 | HRESULT GetAllocateForOutput(
|
---|
| 1118 | [in] DWORD dwOutputNum,
|
---|
| 1119 | [out] IWMReaderAllocatorEx **ppAllocator);
|
---|
| 1120 |
|
---|
| 1121 | HRESULT SetAllocateForStream(
|
---|
| 1122 | [in] DWORD dwStreamNum,
|
---|
| 1123 | [in] IWMReaderAllocatorEx *pAllocator);
|
---|
| 1124 |
|
---|
| 1125 | HRESULT GetAllocateForStream(
|
---|
| 1126 | [in] DWORD dwStreamNum,
|
---|
| 1127 | [out] IWMReaderAllocatorEx **ppAllocator);
|
---|
| 1128 | }
|
---|
| 1129 |
|
---|
| 1130 | [
|
---|
| 1131 | object,
|
---|
| 1132 | uuid(96406bd5-2b2b-11d3-b36b-00c04f6108ff),
|
---|
| 1133 | pointer_default(unique),
|
---|
| 1134 | local
|
---|
| 1135 | ]
|
---|
| 1136 | interface IWMInputMediaProps : IWMMediaProps
|
---|
| 1137 | {
|
---|
| 1138 | HRESULT GetConnectionName(
|
---|
| 1139 | [out, size_is(*pcchName)] WCHAR *pwszName,
|
---|
| 1140 | [in, out] WORD *pcchName);
|
---|
| 1141 |
|
---|
| 1142 | HRESULT GetGroupName(
|
---|
| 1143 | [out, size_is(*pcchName)] WCHAR *pwszName,
|
---|
| 1144 | [in, out] WORD *pcchName);
|
---|
| 1145 | }
|
---|
| 1146 |
|
---|
| 1147 | [
|
---|
| 1148 | object,
|
---|
| 1149 | uuid(96406be4-2b2b-11d3-b36b-00c04f6108ff),
|
---|
| 1150 | pointer_default(unique),
|
---|
| 1151 | local
|
---|
| 1152 | ]
|
---|
| 1153 | interface IWMWriterSink : IUnknown
|
---|
| 1154 | {
|
---|
| 1155 | HRESULT OnHeader(
|
---|
| 1156 | [in] INSSBuffer *pHeader);
|
---|
| 1157 |
|
---|
| 1158 | HRESULT IsRealTime(
|
---|
| 1159 | [out] BOOL *pfRealTime);
|
---|
| 1160 |
|
---|
| 1161 | HRESULT AllocateDataUnit(
|
---|
| 1162 | [in] DWORD cbDataUnit,
|
---|
| 1163 | [out] INSSBuffer **ppDataUnit);
|
---|
| 1164 |
|
---|
| 1165 | HRESULT OnDataUnit(
|
---|
| 1166 | [in] INSSBuffer *pDataUnit);
|
---|
| 1167 |
|
---|
| 1168 | HRESULT OnEndWriting();
|
---|
| 1169 | }
|
---|
| 1170 |
|
---|
| 1171 | [
|
---|
| 1172 | object,
|
---|
| 1173 | uuid(96406bd4-2b2b-11d3-b36b-00c04f6108ff),
|
---|
| 1174 | pointer_default(unique),
|
---|
| 1175 | local
|
---|
| 1176 | ]
|
---|
| 1177 | interface IWMWriter : IUnknown
|
---|
| 1178 | {
|
---|
| 1179 | HRESULT SetProfileByID(
|
---|
| 1180 | [in] REFGUID guidProfile);
|
---|
| 1181 |
|
---|
| 1182 | HRESULT SetProfile(
|
---|
| 1183 | [in] IWMProfile *pProfile);
|
---|
| 1184 |
|
---|
| 1185 | HRESULT SetOutputFilename(
|
---|
| 1186 | [in] const WCHAR *pwszFilename);
|
---|
| 1187 |
|
---|
| 1188 | HRESULT GetInputCount(
|
---|
| 1189 | [out] DWORD *pcInputs);
|
---|
| 1190 |
|
---|
| 1191 | HRESULT GetInputProps(
|
---|
| 1192 | [in] DWORD dwInputNum,
|
---|
| 1193 | [out] IWMInputMediaProps **ppInput);
|
---|
| 1194 |
|
---|
| 1195 | HRESULT SetInputProps(
|
---|
| 1196 | [in] DWORD dwInputNum,
|
---|
| 1197 | [in] IWMInputMediaProps *pInput);
|
---|
| 1198 |
|
---|
| 1199 | HRESULT GetInputFormatCount(
|
---|
| 1200 | [in] DWORD dwInputNumber,
|
---|
| 1201 | [out] DWORD *pcFormats);
|
---|
| 1202 |
|
---|
| 1203 | HRESULT GetInputFormat(
|
---|
| 1204 | [in] DWORD dwInputNumber,
|
---|
| 1205 | [in] DWORD dwFormatNumber,
|
---|
| 1206 | [out] IWMInputMediaProps **pProps);
|
---|
| 1207 |
|
---|
| 1208 | HRESULT BeginWriting();
|
---|
| 1209 |
|
---|
| 1210 | HRESULT EndWriting();
|
---|
| 1211 |
|
---|
| 1212 | HRESULT AllocateSample(
|
---|
| 1213 | [in] DWORD dwSampleSize,
|
---|
| 1214 | [out] INSSBuffer **ppSample);
|
---|
| 1215 |
|
---|
| 1216 | HRESULT WriteSample(
|
---|
| 1217 | [in] DWORD dwInputNum,
|
---|
| 1218 | [in] QWORD cnsSampleTime,
|
---|
| 1219 | [in] DWORD dwFlags,
|
---|
| 1220 | [in] INSSBuffer *pSample);
|
---|
| 1221 |
|
---|
| 1222 | HRESULT Flush();
|
---|
| 1223 | }
|
---|
| 1224 |
|
---|
| 1225 | [
|
---|
| 1226 | object,
|
---|
| 1227 | uuid(96406be3-2b2b-11d3-b36b-00C04f6108ff),
|
---|
| 1228 | pointer_default(unique),
|
---|
| 1229 | local
|
---|
| 1230 | ]
|
---|
| 1231 | interface IWMWriterAdvanced : IUnknown
|
---|
| 1232 | {
|
---|
| 1233 | HRESULT GetSinkCount(
|
---|
| 1234 | [out] DWORD *pcSinks);
|
---|
| 1235 |
|
---|
| 1236 | HRESULT GetSink(
|
---|
| 1237 | [in] DWORD dwSinkNum,
|
---|
| 1238 | [out] IWMWriterSink **ppSink);
|
---|
| 1239 |
|
---|
| 1240 | HRESULT AddSink(
|
---|
| 1241 | [in] IWMWriterSink *pSink);
|
---|
| 1242 |
|
---|
| 1243 | HRESULT RemoveSink(
|
---|
| 1244 | [in] IWMWriterSink *pSink);
|
---|
| 1245 |
|
---|
| 1246 | HRESULT WriteStreamSample(
|
---|
| 1247 | [in] WORD wStreamNum,
|
---|
| 1248 | [in] QWORD cnsSampleTime,
|
---|
| 1249 | [in] DWORD msSampleSendTime,
|
---|
| 1250 | [in] QWORD cnsSampleDuration,
|
---|
| 1251 | [in] DWORD dwFlags,
|
---|
| 1252 | [in] INSSBuffer *pSample);
|
---|
| 1253 |
|
---|
| 1254 | HRESULT SetLiveSource(
|
---|
| 1255 | BOOL fIsLiveSource);
|
---|
| 1256 |
|
---|
| 1257 | HRESULT IsRealTime(
|
---|
| 1258 | [out] BOOL *pfRealTime);
|
---|
| 1259 |
|
---|
| 1260 | HRESULT GetWriterTime(
|
---|
| 1261 | [out] QWORD *pCurrentTime);
|
---|
| 1262 |
|
---|
| 1263 | HRESULT GetStatistics(
|
---|
| 1264 | [in] WORD wStreamNum,
|
---|
| 1265 | [out] WM_WRITER_STATISTICS *pStats);
|
---|
| 1266 |
|
---|
| 1267 | HRESULT SetSyncTolerance(
|
---|
| 1268 | [in] DWORD msWindow);
|
---|
| 1269 |
|
---|
| 1270 | HRESULT GetSyncTolerance(
|
---|
| 1271 | [out] DWORD *pmsWindow);
|
---|
| 1272 | }
|
---|
| 1273 |
|
---|
| 1274 | [
|
---|
| 1275 | object,
|
---|
| 1276 | uuid(962dc1ec-c046-4db8-9cc7-26ceae500817),
|
---|
| 1277 | pointer_default(unique),
|
---|
| 1278 | local
|
---|
| 1279 | ]
|
---|
| 1280 | interface IWMWriterAdvanced2 : IWMWriterAdvanced
|
---|
| 1281 | {
|
---|
| 1282 | HRESULT GetInputSetting(
|
---|
| 1283 | [in] DWORD dwInputNum,
|
---|
| 1284 | [in] LPCWSTR pszName,
|
---|
| 1285 | [out] WMT_ATTR_DATATYPE *pType,
|
---|
| 1286 | [out, size_is(*pcbLength)] BYTE *pValue,
|
---|
| 1287 | [in, out] WORD *pcbLength);
|
---|
| 1288 |
|
---|
| 1289 | HRESULT SetInputSetting(
|
---|
| 1290 | [in] DWORD dwInputNum,
|
---|
| 1291 | [in] LPCWSTR pszName,
|
---|
| 1292 | [in] WMT_ATTR_DATATYPE Type,
|
---|
| 1293 | [in, size_is(cbLength)] const BYTE *pValue,
|
---|
| 1294 | [in] WORD cbLength);
|
---|
| 1295 | }
|
---|
| 1296 |
|
---|
| 1297 | [
|
---|
| 1298 | object,
|
---|
| 1299 | uuid(2cd6492d-7c37-4e76-9d3b-59261183a22e),
|
---|
| 1300 | pointer_default(unique),
|
---|
| 1301 | local
|
---|
| 1302 | ]
|
---|
| 1303 | interface IWMWriterAdvanced3 : IWMWriterAdvanced2
|
---|
| 1304 | {
|
---|
| 1305 | HRESULT GetStatisticsEx(
|
---|
| 1306 | [in] WORD wStreamNum,
|
---|
| 1307 | [out] WM_WRITER_STATISTICS_EX *pStats);
|
---|
| 1308 |
|
---|
| 1309 | HRESULT SetNonBlocking();
|
---|
| 1310 | }
|
---|
| 1311 |
|
---|
| 1312 | [
|
---|
| 1313 | object,
|
---|
| 1314 | uuid(96406bda-2b2b-11d3-b36b-00c04f6108ff),
|
---|
| 1315 | pointer_default(unique),
|
---|
| 1316 | local
|
---|
| 1317 | ]
|
---|
| 1318 | interface IWMHeaderInfo : IUnknown
|
---|
| 1319 | {
|
---|
| 1320 | HRESULT GetAttributeCount(
|
---|
| 1321 | [in] WORD stream_num,
|
---|
| 1322 | [out] WORD *attributes );
|
---|
| 1323 |
|
---|
| 1324 | HRESULT GetAttributeByIndex(
|
---|
| 1325 | [in] WORD index,
|
---|
| 1326 | [in, out] WORD *stream_num,
|
---|
| 1327 | [out, size_is( *name_len )] WCHAR *name,
|
---|
| 1328 | [in, out] WORD *name_len,
|
---|
| 1329 | [out] WMT_ATTR_DATATYPE *type,
|
---|
| 1330 | [out, size_is( *length )] BYTE *value,
|
---|
| 1331 | [in, out] WORD *length );
|
---|
| 1332 |
|
---|
| 1333 | HRESULT GetAttributeByName(
|
---|
| 1334 | [in, out] WORD *stream_num,
|
---|
| 1335 | [in] LPCWSTR name,
|
---|
| 1336 | [out] WMT_ATTR_DATATYPE *type,
|
---|
| 1337 | [out, size_is( *length )] BYTE *value,
|
---|
| 1338 | [in, out] WORD *length );
|
---|
| 1339 |
|
---|
| 1340 | HRESULT SetAttribute(
|
---|
| 1341 | [in] WORD stream_num,
|
---|
| 1342 | [in] LPCWSTR name,
|
---|
| 1343 | [in] WMT_ATTR_DATATYPE type,
|
---|
| 1344 | [in, size_is( length )] const BYTE *value,
|
---|
| 1345 | [in] WORD length );
|
---|
| 1346 |
|
---|
| 1347 | HRESULT GetMarkerCount(
|
---|
| 1348 | [out] WORD *markers );
|
---|
| 1349 |
|
---|
| 1350 | HRESULT GetMarker(
|
---|
| 1351 | [in] WORD index,
|
---|
| 1352 | [out, size_is( *marker_len )] WCHAR *marker_name,
|
---|
| 1353 | [in, out] WORD *marker_len,
|
---|
| 1354 | [out] QWORD *marker_time );
|
---|
| 1355 |
|
---|
| 1356 | HRESULT AddMarker(
|
---|
| 1357 | [in] LPCWSTR_WMSDK_TYPE_SAFE marker_name,
|
---|
| 1358 | [in] QWORD marker_time );
|
---|
| 1359 |
|
---|
| 1360 | HRESULT RemoveMarker(
|
---|
| 1361 | [in] WORD index );
|
---|
| 1362 |
|
---|
| 1363 | HRESULT GetScriptCount(
|
---|
| 1364 | [out] WORD *scripts );
|
---|
| 1365 |
|
---|
| 1366 | HRESULT GetScript(
|
---|
| 1367 | [in] WORD index,
|
---|
| 1368 | [out, size_is( *type_len )] WCHAR *type,
|
---|
| 1369 | [in, out] WORD *type_len,
|
---|
| 1370 | [out, size_is( *command_len )] WCHAR *command,
|
---|
| 1371 | [in, out] WORD *command_len,
|
---|
| 1372 | [out] QWORD *script_time );
|
---|
| 1373 |
|
---|
| 1374 | HRESULT AddScript(
|
---|
| 1375 | [in] LPCWSTR_WMSDK_TYPE_SAFE type,
|
---|
| 1376 | [in] LPCWSTR_WMSDK_TYPE_SAFE command,
|
---|
| 1377 | [in] QWORD script_time );
|
---|
| 1378 |
|
---|
| 1379 | HRESULT RemoveScript(
|
---|
| 1380 | [in] WORD index );
|
---|
| 1381 | }
|
---|
| 1382 |
|
---|
| 1383 | [
|
---|
| 1384 | object,
|
---|
| 1385 | uuid(15cf9781-454e-482e-b393-85fae487a810),
|
---|
| 1386 | pointer_default(unique),
|
---|
| 1387 | local
|
---|
| 1388 | ]
|
---|
| 1389 | interface IWMHeaderInfo2 : IWMHeaderInfo
|
---|
| 1390 | {
|
---|
| 1391 | HRESULT GetCodecInfoCount(
|
---|
| 1392 | [out] DWORD *codec_infos );
|
---|
| 1393 |
|
---|
| 1394 | HRESULT GetCodecInfo(
|
---|
| 1395 | [in] DWORD index,
|
---|
| 1396 | [in, out] WORD *name_len,
|
---|
| 1397 | [out, size_is( *name_len )] WCHAR *name,
|
---|
| 1398 | [in, out] WORD *description_len,
|
---|
| 1399 | [out, size_is( *description_len )] WCHAR *description,
|
---|
| 1400 | [out] WMT_CODEC_INFO_TYPE *codec_type,
|
---|
| 1401 | [in, out] WORD *codec_info_cnt,
|
---|
| 1402 | [out, size_is( *codec_info_cnt )] BYTE *codec_info );
|
---|
| 1403 | }
|
---|
| 1404 |
|
---|
| 1405 | [
|
---|
| 1406 | object,
|
---|
| 1407 | uuid(15cc68e3-27cc-4ecd-b222-3f5d02d80bd5),
|
---|
| 1408 | pointer_default(unique),
|
---|
| 1409 | local
|
---|
| 1410 | ]
|
---|
| 1411 | interface IWMHeaderInfo3 : IWMHeaderInfo2
|
---|
| 1412 | {
|
---|
| 1413 | HRESULT GetAttributeCountEx(
|
---|
| 1414 | [in] WORD stream_num,
|
---|
| 1415 | [out] WORD *attributes );
|
---|
| 1416 |
|
---|
| 1417 | HRESULT GetAttributeIndices(
|
---|
| 1418 | [in] WORD stream_num,
|
---|
| 1419 | [in] LPCWSTR name,
|
---|
| 1420 | [in] WORD *lang_index,
|
---|
| 1421 | [out, size_is( *count )] WORD *indices,
|
---|
| 1422 | [in, out] WORD *count );
|
---|
| 1423 |
|
---|
| 1424 | HRESULT GetAttributeByIndexEx(
|
---|
| 1425 | [in] WORD stream_num,
|
---|
| 1426 | [in] WORD index,
|
---|
| 1427 | [out, size_is( *name_len )] LPWSTR name,
|
---|
| 1428 | [in, out] WORD *name_len,
|
---|
| 1429 | [out] WMT_ATTR_DATATYPE *type,
|
---|
| 1430 | [out] WORD *lang_index,
|
---|
| 1431 | [out, size_is( *data_len )] BYTE *value,
|
---|
| 1432 | [in, out] DWORD *data_len );
|
---|
| 1433 |
|
---|
| 1434 | HRESULT ModifyAttribute(
|
---|
| 1435 | [in] WORD stream_num,
|
---|
| 1436 | [in] WORD index,
|
---|
| 1437 | [in] WMT_ATTR_DATATYPE type,
|
---|
| 1438 | [in] WORD lang_index,
|
---|
| 1439 | [in, size_is( length )] const BYTE *value,
|
---|
| 1440 | [in] DWORD length );
|
---|
| 1441 |
|
---|
| 1442 | HRESULT AddAttribute(
|
---|
| 1443 | [in] WORD stream_num,
|
---|
| 1444 | [in] LPCWSTR name,
|
---|
| 1445 | [out] WORD *index,
|
---|
| 1446 | [in] WMT_ATTR_DATATYPE type,
|
---|
| 1447 | [in] WORD lang_index,
|
---|
| 1448 | [in, size_is( length )] const BYTE *value,
|
---|
| 1449 | [in] DWORD length );
|
---|
| 1450 |
|
---|
| 1451 | HRESULT DeleteAttribute(
|
---|
| 1452 | [in] WORD stream_num,
|
---|
| 1453 | [in] WORD index );
|
---|
| 1454 |
|
---|
| 1455 | HRESULT AddCodecInfo(
|
---|
| 1456 | [in] LPCWSTR_WMSDK_TYPE_SAFE name,
|
---|
| 1457 | [in] LPCWSTR_WMSDK_TYPE_SAFE description,
|
---|
| 1458 | [in] WMT_CODEC_INFO_TYPE codec_type,
|
---|
| 1459 | [in] WORD codec_info_cnt,
|
---|
| 1460 | [in, size_is( codec_info_cnt )] BYTE *codec_info );
|
---|
| 1461 | }
|
---|
| 1462 |
|
---|
| 1463 | [
|
---|
| 1464 | object,
|
---|
| 1465 | uuid(96406bec-2b2b-11d3-b36b-00c04f6108ff),
|
---|
| 1466 | pointer_default(unique),
|
---|
| 1467 | local
|
---|
| 1468 | ]
|
---|
| 1469 | interface IWMReaderNetworkConfig : IUnknown
|
---|
| 1470 | {
|
---|
| 1471 | HRESULT GetBufferingTime([out] QWORD *buffering_time);
|
---|
| 1472 | HRESULT SetBufferingTime([in] QWORD buffering_time);
|
---|
| 1473 |
|
---|
| 1474 | HRESULT GetUDPPortRanges(
|
---|
| 1475 | [out, size_is( *ranges )] WM_PORT_NUMBER_RANGE *array,
|
---|
| 1476 | [in, out] DWORD *ranges);
|
---|
| 1477 |
|
---|
| 1478 | HRESULT SetUDPPortRanges(
|
---|
| 1479 | [in, size_is( ranges )] WM_PORT_NUMBER_RANGE *array,
|
---|
| 1480 | [in] DWORD ranges);
|
---|
| 1481 |
|
---|
| 1482 | HRESULT GetProxySettings(
|
---|
| 1483 | [in] const WCHAR *protocol,
|
---|
| 1484 | [out] WMT_PROXY_SETTINGS *proxy);
|
---|
| 1485 |
|
---|
| 1486 | HRESULT SetProxySettings(
|
---|
| 1487 | [in] LPCWSTR protocol,
|
---|
| 1488 | [in] WMT_PROXY_SETTINGS proxy);
|
---|
| 1489 |
|
---|
| 1490 | HRESULT GetProxyHostName(
|
---|
| 1491 | [in] const WCHAR *protocol,
|
---|
| 1492 | [out, size_is( *size )] WCHAR *hostname,
|
---|
| 1493 | [in, out] DWORD *size);
|
---|
| 1494 |
|
---|
| 1495 | HRESULT SetProxyHostName(
|
---|
| 1496 | [in] const WCHAR *protocol,
|
---|
| 1497 | [in] const WCHAR *hostname);
|
---|
| 1498 |
|
---|
| 1499 | HRESULT GetProxyPort(
|
---|
| 1500 | [in] const WCHAR *protocol,
|
---|
| 1501 | [out] DWORD *port);
|
---|
| 1502 |
|
---|
| 1503 | HRESULT SetProxyPort(
|
---|
| 1504 | [in] const WCHAR *protocol,
|
---|
| 1505 | [in] DWORD port);
|
---|
| 1506 |
|
---|
| 1507 | HRESULT GetProxyExceptionList(
|
---|
| 1508 | [in] const WCHAR *protocol,
|
---|
| 1509 | [out, size_is( *count )] WCHAR *exceptions,
|
---|
| 1510 | [in, out] DWORD *count);
|
---|
| 1511 |
|
---|
| 1512 | HRESULT SetProxyExceptionList(
|
---|
| 1513 | [in] const WCHAR *protocol,
|
---|
| 1514 | [in] const WCHAR *exceptions);
|
---|
| 1515 |
|
---|
| 1516 | HRESULT GetProxyBypassForLocal(
|
---|
| 1517 | [in] const WCHAR *protocol,
|
---|
| 1518 | [out] BOOL *bypass);
|
---|
| 1519 |
|
---|
| 1520 | HRESULT SetProxyBypassForLocal(
|
---|
| 1521 | [in] const WCHAR *protocol,
|
---|
| 1522 | [in] BOOL bypass);
|
---|
| 1523 |
|
---|
| 1524 | HRESULT GetForceRerunAutoProxyDetection([out] BOOL *detection);
|
---|
| 1525 | HRESULT SetForceRerunAutoProxyDetection([in] BOOL detection);
|
---|
| 1526 |
|
---|
| 1527 | HRESULT GetEnableMulticast([out] BOOL *multicast);
|
---|
| 1528 | HRESULT SetEnableMulticast([in] BOOL multicast);
|
---|
| 1529 |
|
---|
| 1530 | HRESULT GetEnableHTTP([out] BOOL *enable);
|
---|
| 1531 | HRESULT SetEnableHTTP([in] BOOL enable);
|
---|
| 1532 |
|
---|
| 1533 | HRESULT GetEnableUDP([out] BOOL *enable);
|
---|
| 1534 | HRESULT SetEnableUDP([in] BOOL enable);
|
---|
| 1535 |
|
---|
| 1536 | HRESULT GetEnableTCP([out] BOOL *enable);
|
---|
| 1537 | HRESULT SetEnableTCP([in] BOOL enable);
|
---|
| 1538 |
|
---|
| 1539 | HRESULT ResetProtocolRollover();
|
---|
| 1540 |
|
---|
| 1541 | HRESULT GetConnectionBandwidth([out] DWORD *bandwidth);
|
---|
| 1542 | HRESULT SetConnectionBandwidth([in] DWORD bandwidth);
|
---|
| 1543 |
|
---|
| 1544 | HRESULT GetNumProtocolsSupported([out] DWORD *protocols);
|
---|
| 1545 |
|
---|
| 1546 | HRESULT GetSupportedProtocolName(
|
---|
| 1547 | [in] DWORD protocol_num,
|
---|
| 1548 | [out, size_is( *size )] WCHAR *protocol,
|
---|
| 1549 | [in, out] DWORD *size);
|
---|
| 1550 |
|
---|
| 1551 | HRESULT AddLoggingUrl([in] const WCHAR *url);
|
---|
| 1552 |
|
---|
| 1553 | HRESULT GetLoggingUrl(
|
---|
| 1554 | [in] DWORD index,
|
---|
| 1555 | [out, size_is( *size )] WCHAR *url,
|
---|
| 1556 | [in, out] DWORD *size);
|
---|
| 1557 |
|
---|
| 1558 | HRESULT GetLoggingUrlCount([out] DWORD *count);
|
---|
| 1559 |
|
---|
| 1560 | HRESULT ResetLoggingUrlList();
|
---|
| 1561 | }
|
---|
| 1562 |
|
---|
| 1563 | [
|
---|
| 1564 | object,
|
---|
| 1565 | uuid(d979a853-042b-4050-8387-c939db22013f),
|
---|
| 1566 | pointer_default(unique),
|
---|
| 1567 | local
|
---|
| 1568 | ]
|
---|
| 1569 | interface IWMReaderNetworkConfig2 : IWMReaderNetworkConfig
|
---|
| 1570 | {
|
---|
| 1571 | HRESULT GetEnableContentCaching([out] BOOL *enable);
|
---|
| 1572 | HRESULT SetEnableContentCaching([in] BOOL enable);
|
---|
| 1573 |
|
---|
| 1574 | HRESULT GetEnableFastCache([out] BOOL *enable);
|
---|
| 1575 | HRESULT SetEnableFastCache([in] BOOL enable);
|
---|
| 1576 |
|
---|
| 1577 | HRESULT GetAcceleratedStreamingDuration([out] QWORD *duration);
|
---|
| 1578 | HRESULT SetAcceleratedStreamingDuration([in] QWORD duration);
|
---|
| 1579 |
|
---|
| 1580 | HRESULT GetAutoReconnectLimit([out] DWORD *limit);
|
---|
| 1581 | HRESULT SetAutoReconnectLimit([in] DWORD limit);
|
---|
| 1582 |
|
---|
| 1583 | HRESULT GetEnableResends([out] BOOL *enable);
|
---|
| 1584 | HRESULT SetEnableResends([in] BOOL enable);
|
---|
| 1585 |
|
---|
| 1586 | HRESULT GetEnableThinning([out] BOOL *enable);
|
---|
| 1587 | HRESULT SetEnableThinning([in] BOOL enable);
|
---|
| 1588 |
|
---|
| 1589 | HRESULT GetMaxNetPacketSize([out] DWORD *packet_size);
|
---|
| 1590 | }
|
---|
| 1591 |
|
---|
| 1592 | [
|
---|
| 1593 | object,
|
---|
| 1594 | uuid(96406bed-2b2b-11d3-b36b-00c04f6108ff),
|
---|
| 1595 | pointer_default(unique),
|
---|
| 1596 | local
|
---|
| 1597 | ]
|
---|
| 1598 |
|
---|
| 1599 | interface IWMReaderStreamClock : IUnknown
|
---|
| 1600 | {
|
---|
| 1601 | HRESULT GetTime([in] QWORD *now);
|
---|
| 1602 |
|
---|
| 1603 | HRESULT SetTimer([in] QWORD when,
|
---|
| 1604 | [in] void *param,
|
---|
| 1605 | [out] DWORD *id);
|
---|
| 1606 |
|
---|
| 1607 | HRESULT KillTimer([in] DWORD id);
|
---|
| 1608 | }
|
---|
| 1609 |
|
---|
| 1610 | [
|
---|
| 1611 | object,
|
---|
| 1612 | uuid(cdfb97ab-188f-40b3-b643-5b7903975c59),
|
---|
| 1613 | pointer_default(unique),
|
---|
| 1614 | local
|
---|
| 1615 | ]
|
---|
| 1616 | interface IWMPacketSize : IUnknown
|
---|
| 1617 | {
|
---|
| 1618 | HRESULT GetMaxPacketSize([out] DWORD *size);
|
---|
| 1619 | HRESULT SetMaxPacketSize([in] DWORD size);
|
---|
| 1620 | }
|
---|
| 1621 |
|
---|
| 1622 | [
|
---|
| 1623 | object,
|
---|
| 1624 | uuid(8bfc2b9e-b646-4233-a877-1c6a079669dc),
|
---|
| 1625 | pointer_default(unique),
|
---|
| 1626 | local
|
---|
| 1627 | ]
|
---|
| 1628 | interface IWMPacketSize2 : IWMPacketSize
|
---|
| 1629 | {
|
---|
| 1630 | HRESULT GetMinPacketSize([out] DWORD *size);
|
---|
| 1631 | HRESULT SetMinPacketSize([in] DWORD size);
|
---|
| 1632 | }
|
---|
| 1633 |
|
---|
| 1634 | [
|
---|
| 1635 | object,
|
---|
| 1636 | uuid(d2827540-3ee7-432c-b14c-dc17f085d3b3),
|
---|
| 1637 | pointer_default(unique),
|
---|
| 1638 | local
|
---|
| 1639 | ]
|
---|
| 1640 | interface IWMDRMReader : IUnknown
|
---|
| 1641 | {
|
---|
| 1642 | HRESULT AcquireLicense([in] DWORD flags);
|
---|
| 1643 | HRESULT CancelLicenseAcquisition();
|
---|
| 1644 |
|
---|
| 1645 | HRESULT Individualize([in] DWORD flags);
|
---|
| 1646 | HRESULT CancelIndividualization();
|
---|
| 1647 |
|
---|
| 1648 | HRESULT MonitorLicenseAcquisition();
|
---|
| 1649 | HRESULT CancelMonitorLicenseAcquisition();
|
---|
| 1650 |
|
---|
| 1651 | HRESULT SetDRMProperty(
|
---|
| 1652 | [in] const WCHAR *name,
|
---|
| 1653 | [in] WMT_ATTR_DATATYPE type,
|
---|
| 1654 | [in, size_is( length )] const BYTE *value,
|
---|
| 1655 | [in] WORD length);
|
---|
| 1656 |
|
---|
| 1657 | HRESULT GetDRMProperty(
|
---|
| 1658 | [in] const WCHAR *name,
|
---|
| 1659 | [out] WMT_ATTR_DATATYPE *type,
|
---|
| 1660 | [out, size_is( *length )] BYTE *value,
|
---|
| 1661 | [in, out] WORD *length);
|
---|
| 1662 | }
|
---|
| 1663 |
|
---|
| 1664 | [
|
---|
| 1665 | object,
|
---|
| 1666 | uuid(befe7a75-9f1d-4075-b9d9-a3c37bda49a0),
|
---|
| 1667 | pointer_default(unique),
|
---|
| 1668 | local
|
---|
| 1669 | ]
|
---|
| 1670 | interface IWMDRMReader2 : IWMDRMReader
|
---|
| 1671 | {
|
---|
| 1672 | HRESULT SetEvaluateOutputLevelLicenses([in] BOOL evaluate);
|
---|
| 1673 | HRESULT GetPlayOutputLevels(
|
---|
| 1674 | [out, size_is( *length )] DRM_PLAY_OPL *play,
|
---|
| 1675 | [in, out] DWORD *length,
|
---|
| 1676 | [out] DWORD *level);
|
---|
| 1677 |
|
---|
| 1678 | HRESULT GetCopyOutputLevels(
|
---|
| 1679 | [out, size_is( *length )] DRM_COPY_OPL *copy,
|
---|
| 1680 | [in, out] DWORD *length,
|
---|
| 1681 | [out] DWORD *level);
|
---|
| 1682 |
|
---|
| 1683 | HRESULT TryNextLicense();
|
---|
| 1684 | }
|
---|
| 1685 |
|
---|
| 1686 | [
|
---|
| 1687 | object,
|
---|
| 1688 | uuid(e08672de-f1e7-4ff4-a0a3-fc4b08e4caf8),
|
---|
| 1689 | pointer_default(unique),
|
---|
| 1690 | local
|
---|
| 1691 | ]
|
---|
| 1692 | interface IWMDRMReader3 : IWMDRMReader2
|
---|
| 1693 | {
|
---|
| 1694 | HRESULT GetInclusionList(
|
---|
| 1695 | [out] GUID **guids,
|
---|
| 1696 | [out] DWORD *count);
|
---|
| 1697 | }
|
---|
| 1698 |
|
---|
| 1699 | [
|
---|
| 1700 | object,
|
---|
| 1701 | uuid(bddc4d08-944d-4d52-a612-46c3fda07dd4),
|
---|
| 1702 | pointer_default( unique ),
|
---|
| 1703 | local
|
---|
| 1704 | ]
|
---|
| 1705 | interface IWMReaderAccelerator : IUnknown
|
---|
| 1706 | {
|
---|
| 1707 | HRESULT GetCodecInterface(
|
---|
| 1708 | [in] DWORD output,
|
---|
| 1709 | [in] REFIID riid,
|
---|
| 1710 | [out] void **codec);
|
---|
| 1711 |
|
---|
| 1712 | HRESULT Notify(
|
---|
| 1713 | [in] DWORD output,
|
---|
| 1714 | [in] WM_MEDIA_TYPE *subtype);
|
---|
| 1715 | }
|
---|
| 1716 |
|
---|
| 1717 | [
|
---|
| 1718 | object,
|
---|
| 1719 | uuid(f369e2f0-e081-4fe6-8450-b810b2f410d1),
|
---|
| 1720 | pointer_default(unique),
|
---|
| 1721 | local
|
---|
| 1722 | ]
|
---|
| 1723 | interface IWMReaderTimecode : IUnknown
|
---|
| 1724 | {
|
---|
| 1725 | HRESULT GetTimecodeRangeCount(
|
---|
| 1726 | [in] WORD num,
|
---|
| 1727 | [out] WORD *count);
|
---|
| 1728 |
|
---|
| 1729 | HRESULT GetTimecodeRangeBounds(
|
---|
| 1730 | [in] WORD stream,
|
---|
| 1731 | [in] WORD range,
|
---|
| 1732 | [out] DWORD *start_timecode,
|
---|
| 1733 | [out] DWORD *end_timecode);
|
---|
| 1734 | }
|
---|
| 1735 |
|
---|
| 1736 | [
|
---|
| 1737 | object,
|
---|
| 1738 | uuid(fdbe5592-81a1-41ea-93bd-735cad1adc05),
|
---|
| 1739 | pointer_default(unique),
|
---|
| 1740 | local
|
---|
| 1741 | ]
|
---|
| 1742 | interface IWMReaderTypeNegotiation : IUnknown
|
---|
| 1743 | {
|
---|
| 1744 | HRESULT TryOutputProps(
|
---|
| 1745 | [in] DWORD output,
|
---|
| 1746 | [in] IWMOutputMediaProps *props);
|
---|
| 1747 | }
|
---|
| 1748 |
|
---|
| 1749 | [
|
---|
| 1750 | object,
|
---|
| 1751 | uuid(df683f00-2d49-4d8e-92b7-fb19f6a0dc57),
|
---|
| 1752 | pointer_default(unique),
|
---|
| 1753 | local
|
---|
| 1754 | ]
|
---|
| 1755 | interface IWMLanguageList : IUnknown
|
---|
| 1756 | {
|
---|
| 1757 | HRESULT GetLanguageCount(
|
---|
| 1758 | [out] WORD *count);
|
---|
| 1759 |
|
---|
| 1760 | HRESULT GetLanguageDetails(
|
---|
| 1761 | [in] WORD index,
|
---|
| 1762 | [out, size_is( *length )] WCHAR *language,
|
---|
| 1763 | [in, out] WORD *length);
|
---|
| 1764 |
|
---|
| 1765 | HRESULT AddLanguageByRFC1766String(
|
---|
| 1766 | [in] LPCWSTR_WMSDK_TYPE_SAFE language,
|
---|
| 1767 | [out] WORD *index);
|
---|
| 1768 | }
|
---|
| 1769 |
|
---|
| 1770 | [
|
---|
| 1771 | object,
|
---|
| 1772 | uuid(f28c0300-9baa-4477-a846-1744d9cbf533),
|
---|
| 1773 | pointer_default(unique),
|
---|
| 1774 | local
|
---|
| 1775 | ]
|
---|
| 1776 | interface IWMReaderPlaylistBurn : IUnknown
|
---|
| 1777 | {
|
---|
| 1778 | HRESULT InitPlaylistBurn(
|
---|
| 1779 | [in] DWORD count,
|
---|
| 1780 | [in] LPCWSTR_WMSDK_TYPE_SAFE *filenames,
|
---|
| 1781 | [in] IWMStatusCallback *callback,
|
---|
| 1782 | [in] void *context);
|
---|
| 1783 |
|
---|
| 1784 | HRESULT GetInitResults(
|
---|
| 1785 | [in] DWORD count,
|
---|
| 1786 | [out] HRESULT *stat);
|
---|
| 1787 |
|
---|
| 1788 | HRESULT Cancel();
|
---|
| 1789 |
|
---|
| 1790 | HRESULT EndPlaylistBurn([in] HRESULT result);
|
---|
| 1791 | }
|
---|
| 1792 |
|
---|
| 1793 | [
|
---|
| 1794 | object,
|
---|
| 1795 | uuid(72995a79-5090-42a4-9c8c-d9d0b6d34be5),
|
---|
| 1796 | pointer_default(unique),
|
---|
| 1797 | local
|
---|
| 1798 | ]
|
---|
| 1799 | interface IWMPropertyVault : IUnknown
|
---|
| 1800 | {
|
---|
| 1801 | HRESULT GetPropertyCount([in] DWORD *count);
|
---|
| 1802 |
|
---|
| 1803 | HRESULT GetPropertyByName(
|
---|
| 1804 | [in] const WCHAR *name,
|
---|
| 1805 | [out] WMT_ATTR_DATATYPE *type,
|
---|
| 1806 | [out, size_is( *size )] BYTE *value,
|
---|
| 1807 | [in, out] DWORD *size);
|
---|
| 1808 |
|
---|
| 1809 | HRESULT SetProperty(
|
---|
| 1810 | [in] const WCHAR *name,
|
---|
| 1811 | [in] WMT_ATTR_DATATYPE type,
|
---|
| 1812 | [in] BYTE *value,
|
---|
| 1813 | [in] DWORD size);
|
---|
| 1814 |
|
---|
| 1815 | HRESULT GetPropertyByIndex(
|
---|
| 1816 | [in] DWORD index,
|
---|
| 1817 | [out, size_is( *pdwNameLen )] WCHAR *name,
|
---|
| 1818 | [in, out] DWORD *length,
|
---|
| 1819 | [out] WMT_ATTR_DATATYPE *type,
|
---|
| 1820 | [out, size_is( *size )] BYTE *value,
|
---|
| 1821 | [in, out] DWORD *size);
|
---|
| 1822 |
|
---|
| 1823 | HRESULT CopyPropertiesFrom([in] IWMPropertyVault *vault);
|
---|
| 1824 |
|
---|
| 1825 | HRESULT Clear();
|
---|
| 1826 | };
|
---|
| 1827 |
|
---|
| 1828 | [
|
---|
| 1829 | object,
|
---|
| 1830 | uuid(fc54a285-38c4-45b5-aa23-85b9f7cb424b),
|
---|
| 1831 | pointer_default(unique),
|
---|
| 1832 | local
|
---|
| 1833 | ]
|
---|
| 1834 | interface IWMWriterPreprocess : IUnknown
|
---|
| 1835 | {
|
---|
| 1836 | HRESULT GetMaxPreprocessingPasses(
|
---|
| 1837 | [in] DWORD input,
|
---|
| 1838 | [in] DWORD flags,
|
---|
| 1839 | [out] DWORD *passes);
|
---|
| 1840 |
|
---|
| 1841 | HRESULT SetNumPreprocessingPasses(
|
---|
| 1842 | [in] DWORD input,
|
---|
| 1843 | [in] DWORD flags,
|
---|
| 1844 | [in] DWORD passes);
|
---|
| 1845 |
|
---|
| 1846 | HRESULT BeginPreprocessingPass(
|
---|
| 1847 | [in] DWORD input,
|
---|
| 1848 | [in] DWORD flags);
|
---|
| 1849 |
|
---|
| 1850 | HRESULT PreprocessSample(
|
---|
| 1851 | [in] DWORD input,
|
---|
| 1852 | [in] QWORD sample_time,
|
---|
| 1853 | [in] DWORD flags,
|
---|
| 1854 | [in] INSSBuffer *sample);
|
---|
| 1855 |
|
---|
| 1856 | HRESULT EndPreprocessingPass(
|
---|
| 1857 | [in] DWORD input,
|
---|
| 1858 | [in] DWORD flags);
|
---|
| 1859 | };
|
---|
| 1860 |
|
---|
| 1861 | [
|
---|
| 1862 | object,
|
---|
| 1863 | uuid(05e5ac9f-3fb6-4508-bb43-a4067ba1ebe8),
|
---|
| 1864 | pointer_default(unique),
|
---|
| 1865 | local
|
---|
| 1866 | ]
|
---|
| 1867 | interface IWMLicenseBackup : IUnknown
|
---|
| 1868 | {
|
---|
| 1869 | HRESULT BackupLicenses(
|
---|
| 1870 | [in] DWORD dwFlags,
|
---|
| 1871 | [in] IWMStatusCallback *pCallback);
|
---|
| 1872 |
|
---|
| 1873 | HRESULT CancelLicenseBackup();
|
---|
| 1874 | }
|
---|
| 1875 |
|
---|
| 1876 | [
|
---|
| 1877 | object,
|
---|
| 1878 | uuid(c70b6334-a22e-4efb-a245-15e65a004a13),
|
---|
| 1879 | pointer_default(unique),
|
---|
| 1880 | local
|
---|
| 1881 | ]
|
---|
| 1882 | interface IWMLicenseRestore : IUnknown
|
---|
| 1883 | {
|
---|
| 1884 | HRESULT RestoreLicenses(
|
---|
| 1885 | [in] DWORD dwFlags,
|
---|
| 1886 | [in] IWMStatusCallback *pCallback);
|
---|
| 1887 |
|
---|
| 1888 | HRESULT CancelLicenseRestore();
|
---|
| 1889 | }
|
---|
| 1890 |
|
---|
| 1891 | cpp_quote("HRESULT WINAPI WMCheckURLExtension(LPCWSTR);")
|
---|
| 1892 | cpp_quote("HRESULT WINAPI WMCheckURLScheme(LPCWSTR);")
|
---|
| 1893 | cpp_quote("HRESULT WINAPI WMCreateWriter(IUnknown*,IWMWriter**);")
|
---|
| 1894 | cpp_quote("HRESULT WINAPI WMCreateReader(IUnknown*,DWORD,IWMReader**);")
|
---|
| 1895 | cpp_quote("HRESULT WINAPI WMCreateSyncReader(IUnknown*,DWORD,IWMSyncReader**);")
|
---|
| 1896 | cpp_quote("HRESULT WINAPI WMCreateEditor(IWMMetadataEditor**);")
|
---|
| 1897 | cpp_quote("HRESULT WINAPI WMCreateBackupRestorer(IUnknown*,IWMLicenseBackup**);")
|
---|
| 1898 | cpp_quote("HRESULT WINAPI WMCreateProfileManager(IWMProfileManager**);")
|
---|
| 1899 | cpp_quote("HRESULT WINAPI WMIsContentProtected(const WCHAR*, WINBOOL*);")
|
---|
| 1900 |
|
---|
| 1901 |
|
---|
| 1902 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_Base, 0x00000000,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71);")
|
---|
| 1903 | cpp_quote("EXTERN_GUID(WMMEDIATYPE_Video, 0x73646976,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71);")
|
---|
| 1904 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_RGB1, 0xe436eb78,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70);")
|
---|
| 1905 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_RGB4, 0xe436eb79,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70);")
|
---|
| 1906 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_RGB8, 0xe436eb7a,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70);")
|
---|
| 1907 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_RGB565, 0xe436eb7b,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70);")
|
---|
| 1908 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_RGB555, 0xe436eb7c,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70);")
|
---|
| 1909 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_RGB24, 0xe436eb7d,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70);")
|
---|
| 1910 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_RGB32, 0xe436eb7e,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70);")
|
---|
| 1911 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_I420, 0x30323449,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71);")
|
---|
| 1912 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_IYUV, 0x56555949,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71);")
|
---|
| 1913 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_YV12, 0x32315659,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71);")
|
---|
| 1914 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_YUY2, 0x32595559,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71);")
|
---|
| 1915 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_P422, 0x32323450,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71);")
|
---|
| 1916 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_UYVY, 0x59565955,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71);")
|
---|
| 1917 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_YVYU, 0x55595659,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71);")
|
---|
| 1918 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_YVU9, 0x39555659,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71);")
|
---|
| 1919 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_VIDEOIMAGE, 0x1d4a45f2,0xe5f6,0x4b44,0x83,0x88,0xf0,0xae,0x5c,0x0e,0x0c,0x37);")
|
---|
| 1920 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_MP43, 0x3334504d,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71);")
|
---|
| 1921 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_MP4S, 0x5334504d,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71);")
|
---|
| 1922 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_M4S2, 0x3253344d,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71);")
|
---|
| 1923 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_WMV1, 0x31564d57,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71);")
|
---|
| 1924 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_WMV2, 0x32564d57,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71);")
|
---|
| 1925 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_MSS1, 0x3153534d,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71);")
|
---|
| 1926 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_MPEG2_VIDEO, 0xe06d8026,0xdb46,0x11cf,0xb4,0xd1,0x00,0x80,0x5f,0x6c,0xbb,0xea);")
|
---|
| 1927 | cpp_quote("EXTERN_GUID(WMMEDIATYPE_Audio, 0x73647561,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71);")
|
---|
| 1928 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_PCM, 0x00000001,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71);")
|
---|
| 1929 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_DRM, 0x00000009,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71);")
|
---|
| 1930 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_WMAudioV9, 0x00000162,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71);")
|
---|
| 1931 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_WMAudio_Lossless, 0x00000163,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71);")
|
---|
| 1932 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_MSS2, 0x3253534d,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71);")
|
---|
| 1933 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_WMSP1, 0x0000000a,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71);")
|
---|
| 1934 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_WMSP2, 0x0000000b,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71);")
|
---|
| 1935 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_WMV3, 0x33564d57,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71);")
|
---|
| 1936 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_WMVP, 0x50564d57,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71);")
|
---|
| 1937 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_WVP2, 0x32505657,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71);")
|
---|
| 1938 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_WMVA, 0x41564d57,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71);")
|
---|
| 1939 | cpp_quote("EXTERN_GUID(WMMEDIASUBTYPE_WVC1, 0x31435657,0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71);")
|
---|