https://bugs.winehq.org/show_bug.cgi?id=50757
Bug ID: 50757 Summary: (Regression) Hyperdimension Neptunia Re;Birth1 Crashes/freezes frequently with FAudio Product: Wine Version: 6.3 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: xactengine Assignee: wine-bugs@winehq.org Reporter: orbea@riseup.net Distribution: ---
When playing the GOG version of Hyperdimension Neptunia ReBirth 1 (https://www.gog.com/game/hyperdimension_neptunia_rebirth1) it will frequently freeze/crash.
This only occurs when built wine is built against FAudio and happens most often during battles or less frequently the area maps. Sometimes it will also occur in other places such as during dialogue scenes or menus. It usually occurs within a few battles, but sometimes will take a bit longer. During the crashes the graphics will freeze and input will be unresponsive, but usually music continues to play only rarely stopping with the crash.
When wine is not built against FAudio there will be no sound in the title screen or during game play, but this can be worked around by installing xact with winetricks and setting the wine prefix to XP compatibility where after extensive testing it remains stable without crashing.
I tested FAudio versions 21.01 and 21.03 without changes.
With older wine versions (roughly 5.10 and older) the above workaround with native xact and XP compatibility is needed regardless if wine is built against FAudio and it does not crash.
So I bisected this and found the first bad commit:
-----
127ef80f0f9370a148357b7c1f001c3477a52264 is the first bad commit commit 127ef80f0f9370a148357b7c1f001c3477a52264 Author: Vijay Kiran Kamuju infyquest@gmail.com Date: Sat Jul 18 22:27:46 2020 +0200
xactengine3_7: Implement IXACT3SoundBank::Play function.
Based on patch from Ethan Lee.
Signed-off-by: Vijay Kiran Kamuju infyquest@gmail.com Signed-off-by: Alistair Leslie-Hughes leslie_alistair@hotmail.com Signed-off-by: Alexandre Julliard julliard@winehq.org
dlls/xactengine3_7/xact_dll.c | 35 +++++++++++++++++++++++++++++++++-- 1 file changed, 33 insertions(+), 2 deletions(-)
-----
However the parent commit (568227cc039ce16f232008f34fb72fc6aecc5029) will crash just before the title screen consistently. This can be worked around with setting WINEDLLOVERRIDES='xactengine3_7=n' in the environment where sound will be missing in the title screen and during game play, but like above can be fixed with a native xact and using XP compatibility mode. Several preceding commits do not crash before the title screen, but require setting WINEDLLOVERRIDES='xactengine3_7=n' in the environment for the sound to not be missing.
With the first bad commit ( 127ef80f0f9370a148357b7c1f001c3477a52264) a default prefix works and there is no missing sound, but it introduces the issue with frequent crashes.
Issue https://bugs.winehq.org/show_bug.cgi?id=50416 may be related.
https://bugs.winehq.org/show_bug.cgi?id=50757
orbea@riseup.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |regression
https://bugs.winehq.org/show_bug.cgi?id=50757
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Regression SHA1| |127ef80f0f9370a148357b7c1f0 | |01c3477a52264 CC| |infyquest@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=50757
--- Comment #1 from Gijs Vermeulen gijsvrm@gmail.com --- Is this still an issue with wine-6.20 and up-to-date SDL2?
https://bugs.winehq.org/show_bug.cgi?id=50757
Alistair Leslie-Hughes leslie_alistair@hotmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |leslie_alistair@hotmail.com
--- Comment #2 from Alistair Leslie-Hughes leslie_alistair@hotmail.com --- Currently it crashes on startup
Assertion failed: (voice->src.wmadec != NULL && (pBufferWMA != NULL || voice->src.format->wFormatTag == FAUDIO_FORMAT_XMAUDIO2)) || (voice->src.wmadec == NULL && (pBufferWMA == NULL && voice->src.format->wFormatTag != FAUDIO_FORMAT_XMAUDIO2)), file libs/faudio/src/FAudio.c, line 2456
This should be fixed in upstream faudio (https://github.com/FNA-XNA/FAudio/commit/de0c1f833c12a992af5c7daebe1705cd2c7...)
I guess at some point faudio will be updated in the wine base, and this can be marked as fixed.
https://bugs.winehq.org/show_bug.cgi?id=50757
Ilya Trukhanov lahvuun@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |lahvuun@gmail.com
--- Comment #3 from Ilya Trukhanov lahvuun@gmail.com --- (In reply to Alistair Leslie-Hughes from comment #2)
Currently it crashes on startup
Assertion failed: (voice->src.wmadec != NULL && (pBufferWMA != NULL || voice->src.format->wFormatTag == FAUDIO_FORMAT_XMAUDIO2)) || (voice->src.wmadec == NULL && (pBufferWMA == NULL && voice->src.format->wFormatTag != FAUDIO_FORMAT_XMAUDIO2)), file libs/faudio/src/FAudio.c, line 2456
This should be fixed in upstream faudio (https://github.com/FNA-XNA/FAudio/commit/ de0c1f833c12a992af5c7daebe1705cd2c72f743)
I don't get this assertion failure anymore with wine-6.21. Looks like that was the same issue as https://bugs.winehq.org/show_bug.cgi?id=51921
I guess at some point faudio will be updated in the wine base, and this can be marked as fixed.
The original problem was different, though:
During the crashes the graphics will freeze and input will be unresponsive, but usually music continues to play only rarely stopping with the crash
I think someone (preferably the reporter) needs to play through the game to verify that the issue is gone.
https://bugs.winehq.org/show_bug.cgi?id=50757
Alistair Leslie-Hughes leslie_alistair@hotmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |da89825f98e4f0cb3875735345a | |455512b36b665 Resolution|--- |FIXED Status|UNCONFIRMED |RESOLVED
--- Comment #4 from Alistair Leslie-Hughes leslie_alistair@hotmail.com --- Marking as fixed https://source.winehq.org/git/wine.git/?a=commit;h=da89825f98e4f0cb387573534...
https://bugs.winehq.org/show_bug.cgi?id=50757
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #5 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 6.22.