[PATCH v3 3/4] mf/tests: Check H264 decoder stream count and IDs.

Rémi Bernon rbernon at codeweavers.com
Wed Mar 9 02:53:05 CST 2022


Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45988
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47084
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49715
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52183
Signed-off-by: Rémi Bernon <rbernon at codeweavers.com>
---
 dlls/mf/tests/mf.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/dlls/mf/tests/mf.c b/dlls/mf/tests/mf.c
index a2d7ad7a33f..fd12584b932 100644
--- a/dlls/mf/tests/mf.c
+++ b/dlls/mf/tests/mf.c
@@ -6614,6 +6614,7 @@ static void test_h264_decoder(void)
 
     MFT_REGISTER_TYPE_INFO input_type = {MFMediaType_Video, MFVideoFormat_H264};
     MFT_REGISTER_TYPE_INFO output_type = {MFMediaType_Video, MFVideoFormat_NV12};
+    DWORD input_id, output_id, input_count, output_count;
     const BYTE *h264_encoded_data, *nv12_frame_data;
     ULONG h264_encoded_data_len, nv12_frame_len;
     MFT_OUTPUT_STREAM_INFO output_info;
@@ -6824,6 +6825,17 @@ static void test_h264_decoder(void)
     todo_wine
     ok(output_info.cbAlignment == 0, "got cbAlignment %#lx\n", output_info.cbAlignment);
 
+    input_count = output_count = 0xdeadbeef;
+    hr = IMFTransform_GetStreamCount(transform, &input_count, &output_count);
+    todo_wine
+    ok(hr == S_OK, "GetStreamCount returned %#lx\n", hr);
+    todo_wine
+    ok(input_count == 1, "got input_count %lu\n", input_count);
+    todo_wine
+    ok(output_count == 1, "got output_count %lu\n", output_count);
+    hr = IMFTransform_GetStreamIDs(transform, 1, &input_id, 1, &output_id);
+    ok(hr == E_NOTIMPL, "GetStreamIDs returned %#lx\n", hr);
+
     resource = FindResourceW(NULL, L"h264data.bin", (const WCHAR *)RT_RCDATA);
     ok(resource != 0, "FindResourceW failed, error %lu\n", GetLastError());
     h264_encoded_data = LockResource(LoadResource(GetModuleHandleW(NULL), resource));
-- 
2.35.1




More information about the wine-devel mailing list