共用方式為


IWMSyncReader2::SetAllocateForStream method (wmsdkidl.h)

[The feature associated with this page, Windows Media Format 11 SDK, is a legacy feature. It has been superseded by Source Reader and Sink Writer. Source Reader and Sink Writer have been optimized for Windows 10 and Windows 11. Microsoft strongly recommends that new code use Source Reader and Sink Writer instead of Windows Media Format 11 SDK, when possible. Microsoft suggests that existing code that uses the legacy APIs be rewritten to use the new APIs if possible.]

The SetAllocateForStream method sets a sample allocation callback interface for allocating stream samples. This method enables you to use your own buffers for reading samples. Once set, the synchronous reader will call the IWMReaderAllocatorEx::AllocateForStreamEx method every time it needs a buffer to hold a stream sample.

Syntax

HRESULT SetAllocateForStream(
  [in] WORD                 wStreamNum,
  [in] IWMReaderAllocatorEx *pAllocator
);

Parameters

[in] wStreamNum

WORD containing the stream number.

[in] pAllocator

Pointer to an IWMReaderAllocatorEx interface implemented in your application.

Return value

If the method succeeds, it returns S_OK. If it fails, it returns an HRESULT error code.

Requirements

Requirement Value
Minimum supported client Windows 2000 Professional [desktop apps only],Windows Media Format 9 Series SDK, or later versions of the SDK
Minimum supported server Windows 2000 Server [desktop apps only]
Target Platform Windows
Header wmsdkidl.h (include Wmsdk.h)
Library Wmvcore.lib; WMStubDRM.lib (if you use DRM)

See also

Allocating Buffers for File Reading

IWMSyncReader2 Interface

IWMSyncReader2::GetAllocateForStream