[Bug 60512] New: wmvread testcase: IWMReaderAdvanced::GetMaxOutputSampleSize() on the asynchronous WMVCore reader fails with E_NOTIMPL
http://bugs.winehq.org/show_bug.cgi?id=60512 Bug ID: 60512 Summary: wmvread testcase: IWMReaderAdvanced::GetMaxOutputSampleSize() on the asynchronous WMVCore reader fails with E_NOTIMPL Product: Wine Version: 10.0 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Keywords: source, testcase Severity: normal Priority: P2 Component: wmp&wmvcore Assignee: wine-bugs@list.winehq.org Reporter: brunet.cyril@hotmail.com Target Milestone: --- Distribution: --- Created attachment 82371 --> http://bugs.winehq.org/attachment.cgi?id=82371 wmvread.c (testcase) Some video players open WMV/ASF files with the asynchronous WMVCore reader (WMCreateReader() + IWMReaderCallback) and call IWMReaderAdvanced::GetMaxOutputSampleSize() on the video output before starting playback, to size their buffers. In Wine this method of the asynchronous reader is a stub: fixme:wmvcore:WMReaderAdvanced_GetMaxOutputSampleSize (...)->(0 ...) It returns E_NOTIMPL (0x80004001) and leaves the size at 0. A player that checks the result stops there and never plays the file, although Wine can open and decode it: the testcase below plays the same file to the end right after the failed call. The synchronous reader already implements the equivalent IWMSyncReader::GetMaxOutputSampleSize(); only the asynchronous reader (dlls/wmvcore/async_reader.c) is missing it. Steps to reproduce: 1. Build the attached wmvread.c: x86_64-w64-mingw32-gcc -municode wmvread.c -lole32 -luuid -o wmvread.exe 2. Create a small WMV file: ffmpeg -f lavfi -i testsrc=size=640x360:rate=25 -f lavfi -i sine=frequency=440 -t 3 -c:v wmv2 -b:v 1M -c:a wmav2 test.wmv 3. wine wmvread.exe test.wmv Expected: GetMaxOutputSampleSize returns S_OK and the maximum size of the video output samples, as documented for IWMReaderAdvanced::GetMaxOutputSampleSize (not verified on Windows by me). Actual: IWMReaderAdvanced::GetMaxOutputSampleSize(0) hr 0x80004001, size 0 ... video samples 75, audio samples 65, other 0 Tested with wine-11.16-1379-g5b6b85421c2 (current git, after 11.19, unmodified, clean prefix, no DLL overrides) and with Wine 10.0 and 11.0: same result. Complete terminal output attached. I first saw this with a video application that plays WMV9 (WMV3) streams through this reader: it stops right after this call and plays nothing. GStreamer's WMV decoders are installed (gstreamer1.0-libav 1.28.2, avdec_wmv3 available), and the WMV3 stream does get decoded to I420 when the reader runs. System: Ubuntu 26.04.1 LTS x86_64, GStreamer 1.28.2 with plugins base/good/bad/ugly/libav. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=60512 --- Comment #1 from brunet.cyril@hotmail.com --- Created attachment 82372 --> http://bugs.winehq.org/attachment.cgi?id=82372 Complete terminal output (wine-11.16-1379-g5b6b85421c2, wmvread.exe test.wmv) -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
participants (1)
-
WineHQ Bugzilla