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

Rémi Bernon rbernon at codeweavers.com
Fri Mar 4 07:21:06 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 b7249a76d07..453e651930a 100644
--- a/dlls/mf/tests/mf.c
+++ b/dlls/mf/tests/mf.c
@@ -6610,6 +6610,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};
+    UINT32 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;
@@ -6820,6 +6821,17 @@ static void test_h264_decoder(void)
     todo_wine
     ok(output_info.cbAlignment == 0, "got cbAlignment %#x\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 %#x\n", hr);
+    todo_wine
+    ok(input_count == 1, "got input_count %u\n", input_count);
+    todo_wine
+    ok(output_count == 1, "got output_count %u\n", output_count);
+    hr = IMFTransform_GetStreamIDs(transform, 1, &input_id, 1, &output_id);
+    ok(hr == E_NOTIMPL, "GetStreamIDs returned %#x\n", hr);
+
     resource = FindResourceW(NULL, L"h264data.bin", (const WCHAR *)RT_RCDATA);
     ok(resource != 0, "FindResourceW failed, error %u\n", GetLastError());
     h264_encoded_data = LockResource(LoadResource(GetModuleHandleW(NULL), resource));
-- 
2.34.1




More information about the wine-devel mailing list