https://bugs.winehq.org/show_bug.cgi?id=56976
Bug ID: 56976 Summary: Diggles The Myth of Fenris v2.1.1.10: intro video doesn't work Product: Wine Version: 9.13 Hardware: x86-64 OS: Linux Status: NEW Keywords: regression Severity: normal Priority: P2 Component: winegstreamer Assignee: wine-bugs@winehq.org Reporter: gyebro69@gmail.com CC: z.figura12@gmail.com Regression SHA1: 2a0a43627b9bf3d2073e06322d651a827af64cc7 Distribution: ArchLinux
Created attachment 76803 --> https://bugs.winehq.org/attachment.cgi?id=76803 plain terminal output, gst-discoverer output
This bug report is about the 2020 remake/re-release of the game Diggles/Wiggles. The game is available on Steam and GOG. I tested with the GOG.com version (v2.1.1.10).
Description: the video file startup.mov should be played on game start but the video doesn't work: only black screen is shown and there is no audio either. Pressing <Esc> is skipping the unplayable video and the game loads the main menu.
gst-play opens and plays the video properly.
Reverting commit commit 2a0a43627b9bf3d2073e06322d651a827af64cc7 (winegstreamer: Implement MPEG-4 audio to wg_format conversion.) fixes the problem and the intro video works properly.
As far as I know there is no demo version available.
Please let me know if you need debug logs.
https://bugs.winehq.org/show_bug.cgi?id=56976
--- Comment #1 from Rafał Mużyło galtgendo@o2.pl --- My personal guess on helpful data would be that comparison of mfplat (and gstreamer) logs in working and non-working state could offer some useful hints on what went wrong...
Funny though that messing with audio nuked video...
https://bugs.winehq.org/show_bug.cgi?id=56976
--- Comment #2 from Zeb Figura z.figura12@gmail.com --- I don't suppose you have the game on Steam? The video seems to be simply skipped there for me...
Can you attach a log with +mfplat please?
It may also be worth testing https://gitlab.winehq.org/wine/wine/-/merge_requests/5988.
https://bugs.winehq.org/show_bug.cgi?id=56976
--- Comment #3 from Béla Gyebrószki gyebro69@gmail.com --- Created attachment 76813 --> https://bugs.winehq.org/attachment.cgi?id=76813 +mfplat log (wine-9.13-90-gca938c795c0)
(In reply to Zeb Figura from comment #2)
I don't suppose you have the game on Steam? The video seems to be simply skipped there for me...
Can you attach a log with +mfplat please?
It may also be worth testing https://gitlab.winehq.org/wine/wine/-/merge_requests/5988.
I don't have the game on Steam, sorry.
With MR5988 applied the first few frames of the video is played then the game hangs indefinitely: 0024:err:sync:RtlpWaitForCriticalSection section 023AE7B8 "?" wait timed out in thread 0024, blocked by 0170, retrying (60 sec) 0170:err:sync:RtlpWaitForCriticalSection section 003B6E1C "../dlls/winegstreamer/media_source.c: cs" wait timed out in thread 0170, blocked by 017c, retrying (60 sec)
https://bugs.winehq.org/show_bug.cgi?id=56976
--- Comment #4 from Zeb Figura z.figura12@gmail.com --- Hmm, are you sure that commit is the wrong one? It looks like it's breaking on the video stream, not the audio stream...
Can you please add GST_DEBUG=6 to the log?
It looks like this failure may be specific to the nvdec plugins, and I don't have a machine that has those...
https://bugs.winehq.org/show_bug.cgi?id=56976
--- Comment #5 from Béla Gyebrószki gyebro69@gmail.com --- Created attachment 76827 --> https://bugs.winehq.org/attachment.cgi?id=76827 GST_DEBUG=6 +mfplat.log (uncompressed 13 M)
(In reply to Zeb Figura from comment #4)
Hmm, are you sure that commit is the wrong one? It looks like it's breaking on the video stream, not the audio stream...
Can you please add GST_DEBUG=6 to the log?
It looks like this failure may be specific to the nvdec plugins, and I don't have a machine that has those...
You are probably right, it must be something with my 32-bit Gstreamer installation, because each time I remove the Gstreamer cache file 'registry.i686.bin' before starting the game, the video file works properly. When registry.i686.bin is already created the intro video works only with commit 2a0a43627 reverted.
https://bugs.winehq.org/show_bug.cgi?id=56976
--- Comment #6 from Rafał Mużyło galtgendo@o2.pl --- Created attachment 76976 --> https://bugs.winehq.org/attachment.cgi?id=76976 gdb output for conflicting threads
Just to leave a more permanent note about mr5988:
I've come across a case where that mr causes a critical section freeze that may be related. Attaching gdb backtrace for the conflicting threads.
If WINEDEBUG=mfplat,quartz the extra output that seems related is:
0:00:00.128983674 20347 0x7fc3fc0010e0 TRACE WINE wg_transform.c:402:transform_sink_event_cb: transform 0x7fc3fc182700, ignoring stream-start event: 0x7fc3fc6401d0, time 99:99:99.999999999, seq-num 202, GstEventStreamStart, stream-id=(string)stream, flags=(GstStreamFlags)GST_STREAM_FLAG_NONE; 0:00:00.128999925 20347 0x7fc3fc0010e0 INFO GST_EVENT gstevent.c:918:gst_event_new_caps: creating caps event audio/mpeg, layout=(string)interleaved, rate=(int)48000, channels=(int)6, channel-mask=(bitmask)0x000000000000003f, mpegversion=(int)4, stream-format=(string)raw 0:00:00.129021025 20347 0x7fc3fc0010e0 ERROR aacparse gstaacparse.c:358:gst_aac_parse_sink_setcaps:<aacparse0> Need codec_data for raw AAC 0:00:00.129035582 20347 0x7fc3fc0010e0 INFO GST_EVENT gstevent.c:9 98:gst_event_new_segment: creating segment event time segment start=0:00:00.000000000, offset=0:00:00.000000000, stop=99:99:99.999999999, rate=1.000000, applied_rate=1.000000, flags=0x00, time=0:00:00.000000000, base=0:00:00.000000000, position 0:00:00.000000000, duration 99:99:99.999999999 0:00:00.129050620 20347 0x7fc3fc0010e0 ERROR aacparse gstaacparse.c:358:gst_aac_parse_sink_setcaps:<aacparse0> Need codec_data for raw AAC
To clarify: these lines happen to early to be direct cause of the freeze, but look like something related to later set:
0:00:29.220619012 20347 0x7fc3fc0010e0 LOG WINE wg_allocator.c:292:wg_allocator_provide_sample: allocator 0x7fc3fc025f20, sample 0x7fc3b2ea02a0 0:00:29.220625164 20347 0x7fc3fc0010e0 LOG WINE wg_allocator.c:292:wg_allocator_provide_sample: allocator 0x7fc3fc025f20, sample (nil) 0:00:29.220629101 20347 0x7fc3fc0010e0 INFO WINE wg_transform.c:1037:wg_transform_read_data: Cannot read 49152 bytes, no output available 0:00:29.220634261 20347 0x7fc3fc0010e0 LOG WINE wg_allocator.c:312:wg_allocator_release_sample: allocator 0x7fc3fc025f20, sample 0x7fc3b2ea02a0, discard_data 0
which almost definitely is related to the freeze.