Skip to main content

WLMFReadWrite.dll

Sourcesrc/WLMFReadWrite/
CMake targetWLMFReadWrite
TypeWin32 DLL (252 KB / 217 KB code, 70+ RTTI classes in the original)
FamilyMedia Foundation targets

At a glance​

A flat C API over Media Foundation read/write: the module exposes nine exports — seven MF reader/writer functions plus two COM standard entries. This is the workhorse DLL for codecs/transcode tooling that wants MF without the full object model.

Public surface​

From WLMFReadWrite.def:

DllCanUnloadNow DllGetClassObject
MFReader_Close@4 @3
MFReader_GetProperties@8 @4
MFReader_Open@4 @5
MFReader_ReadFrame@24 @6
MFWriter_Create@8 @7
MFWriter_Finalize@4 @8
MFWriter_WriteFrame@20 @9

All __stdcall with byte-count decorations.

API shape​

FunctionPurpose
MFReader_Open / MFReader_CloseOpen a media source / release it
MFReader_GetPropertiesQuery stream properties (duration, formats, frame count)
MFReader_ReadFrameRead one frame (24 bytes of params — buffer, stride, timestamps)
MFWriter_CreateCreate a writer for an output profile
MFWriter_WriteFrameWrite one frame
MFWriter_FinalizeFinalize the output (flush + index + close)

Implementation notes​

  • Wraps IMFSourceReader / IMFSinkWriter from mfreadwrite.h.
  • Contract-pinned: HRESULTs for open/read/write on sample media are asserted by tests/mmr-python (the parity-stub build's E_NOTIMPLs are not the oracle here).

Testing​

  • tests/WLMFReadWrite/ — per-module C++ tests.
  • Contract coverage in tests/mmr-python.

Analysis artifacts​

analysis/WLMFReadWrite/ (PDB GUID {54E10C67-67A5-4F8A-8567-1D47C28B2189}).