共用方式為


INSSBuffer::GetBuffer method (wmsbuffer.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 GetBuffer method retrieves the location of the buffer controlled by the buffer object. Buffers are used to store samples. When passing samples to the writer, you need the location of the buffer so you can copy your samples into it. When you copy data to the address returned by this call, you must call INSSBuffer::SetLength to specify how much of the buffer actually contains data.

When receiving samples from the reader or synchronous reader, retrieve the size of the buffer at the same time as the location by calling INSSBuffer::GetBufferAndLength.

Syntax

HRESULT GetBuffer(
  [out] BYTE **ppdwBuffer
);

Parameters

[out] ppdwBuffer

Pointer to a pointer to the buffer.

Return value

The method returns an HRESULT. Possible values include, but are not limited to, those in the following table.

Return code Description
S_OK
The method succeeded.
E_POINTER
The ppdwBuffer parameter is NULL.

Requirements

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

See also

INSSBuffer Interface

INSSBuffer::GetBufferAndLength