Rémi Bernon (@rbernon) commented about dlls/winegstreamer/video_decoder.c:
decoder->wg_format = wg_format;
if (FAILED(hr = MFCalculateImageSize(&subtype, decoder->wg_format.u.video.width,
decoder->wg_format.u.video.height, &sample_size)))
return hr;
/* keep the frame rate that was requested, GStreamer doesn't provide any */
if (SUCCEEDED(IMFMediaType_GetUINT64(decoder->output_type, &MF_MT_FRAME_RATE, &frame_rate)))
{
decoder->wg_format.u.video.fps_n = frame_rate >> 32;
decoder->wg_format.u.video.fps_d = (UINT32)frame_rate;
}
samples[0].dwStatus |= MFT_OUTPUT_DATA_BUFFER_FORMAT_CHANGE;
*status |= MFT_OUTPUT_DATA_BUFFER_FORMAT_CHANGE;
- }
You can probably skip this, as you don't really support format change in the client. AFAIK it's only useful for the H264 decoder.
Instead, you can pass `NULL` in the `wg_transform_read_mf` `format` parameter.