Tag: Windows API

NVIDIA H.264 Encoder Media Foundation Transform’s REGDB_E_CLASSNOTREG

For already years Nvidia’s H.264 video encoder Media Foundation Transform has been broken giving REGDB_E_CLASSNOTREG “Class not registered” failure in certain circumstances, like main display is not the one connected to Nvidia video adapter. As simple as this: CoInitialize(NULL); MFStartup(MF_VERSION); class __declspec(uuid(“{60F44560-5A20-4857-BFEF-D29773CB8040}”)) CFoo; // NVIDIA H.264 Encoder MFT CComPtr<IMFTransform> pTransform; const HRESULT nCoCreateInstanceResult = pTransform.CoCreateInstance(__uuidof(CFoo));…

Read the full article

Greetings from H.265 / HEVC Video Decoder Media Foundation Transform

H.265 / HEVC Video Decoder Media Foundation has been around for a while, but using Media Foundation overall one step off straightforward basic paths is like walking a minefield. A twenty-liner below hits memory access violation inside IMFTransform::GetInputStreamInfo “Exception thrown at 0x6D1E71E7 (hevcdecoder.dll) in MfHevcDecoder01.exe: 0xC0000005: Access violation reading location 0x00000000.”: #include “stdafx.h” #include <mfapi.h>…

Read the full article

Microsoft AAC Encoder’s MF_E_TRANSFORM_NEED_MORE_INPUT after MFT_OUTPUT_STATUS_SAMPLE_READY

Media Foundation AAC Encoder is a pure MFT, as opposed to legacy DSP’s which are made dual DMO/MFT interfaced and presumably have higher chances for smaller artifacts. The transform is synchronous and is supposed to be simpler inside: fully passive and drives by input/output calls. Nevertheles, advertising MFT_OUTPUT_STATUS_SAMPLE_READY via IMFTransform::GetOutputStatus call, if might falsely indicate…

Read the full article