From: Ziqing Hui zhui@codeweavers.com
Krkr2 game engine need AvgTimePerFrame to calculate video frame time. --- dlls/mf/tests/transform.c | 1 - dlls/winegstreamer/wmv_decoder.c | 2 ++ 2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/dlls/mf/tests/transform.c b/dlls/mf/tests/transform.c index c81a649a38c..28ac7291e0b 100644 --- a/dlls/mf/tests/transform.c +++ b/dlls/mf/tests/transform.c @@ -1349,7 +1349,6 @@ static void check_video_info_header_(int line, VIDEOINFOHEADER *info, const VIDE expected->rcTarget.left, expected->rcTarget.top, expected->rcTarget.right, expected->rcTarget.bottom); check_member_(__FILE__, line, *info, *expected, "%lu", dwBitRate); check_member_(__FILE__, line, *info, *expected, "%lu", dwBitErrorRate); - todo_wine_if(expected->AvgTimePerFrame) check_member_(__FILE__, line, *info, *expected, "%I64d", AvgTimePerFrame); check_member_(__FILE__, line, *info, *expected, "%lu", bmiHeader.biSize); check_member_(__FILE__, line, *info, *expected, "%ld", bmiHeader.biWidth); diff --git a/dlls/winegstreamer/wmv_decoder.c b/dlls/winegstreamer/wmv_decoder.c index d13b5a065ed..ee77309aae4 100644 --- a/dlls/winegstreamer/wmv_decoder.c +++ b/dlls/winegstreamer/wmv_decoder.c @@ -470,6 +470,8 @@ static HRESULT WINAPI media_object_GetOutputType(IMediaObject *iface, DWORD inde info->rcSource.bottom = height; info->rcTarget.right = width; info->rcTarget.bottom = height; + info->AvgTimePerFrame = MulDiv(10000000, decoder->input_format.u.video_wmv.fps_d, + decoder->input_format.u.video_wmv.fps_n); info->bmiHeader.biSize = sizeof(info->bmiHeader); info->bmiHeader.biWidth = width; info->bmiHeader.biHeight = height;