#13496 closed defect (fixed)
SCI: LSL6 music plays all instruments / tracks at once
Reported by: | RayKoopa | Owned by: | athrxx |
---|---|---|---|
Priority: | normal | Component: | Engine: SCI |
Version: | Keywords: | audio, overlapping | |
Cc: | RayKoopa | Game: | Leisure Suit Larry 6 |
Description (last modified by )
- ScummVM 2.6.0git5915-gf29cdfcf46a (May 22 2022 09:53:09)
- Game language: English
- Game version: Hi-Res 1.000.000
- Windows 11 21H2 10.0.22000.675
Steps to reproduce:
- Start a new game.
- Leave the hotel and enter the beach (either to the right of the pool, or to the top of the exterior bridge).
- Wait for song to play the flute.
- All flute tracks will start at once in the first run-through of the song. Then the second repeating part of the song plays normally. Sample comparison (AdLib) ScummVM <=> DOSBox
Additional info:
- Music emulation does not matter (I reproduced it on AdLib, Midi, and MT32).
- IIRC, this bug exists at least since SVGA support was added, as that made me try the game in ScummVM and notice this years ago, but I just switched to DOSBox back then thinking I couldn't figure out setting up MIDI properly.
Additional info from forum member Praetorian:
- Also happens in original Lo-res version.
- Beach music seemingly does not play at all when entering from the bridge.
Attachments (1)
Change History (10)
by , 2 years ago
Attachment: | lsl6hires.001 added |
---|
comment:1 by , 2 years ago
Cc: | added |
---|
comment:2 by , 2 years ago
Description: | modified (diff) |
---|
comment:3 by , 2 years ago
Component: | Audio → Engine: SCI |
---|---|
Keywords: | audio overlapping added |
Summary: | LSL6 music plays all instruments / tracks at once → SCI: LSL6 music plays all instruments / tracks at once |
comment:4 by , 2 years ago
Some notes from taking a quick look at this:
- The beach music is sound 860
- Hi-res and lo-res have different sound 860 resources
- Only hi-res sounds really bad. Lo-res sounds a little funky at the end but that might be normal, I don't know yet. Let's focus on hi-res first.
- It's not a conflict with other sounds. I get same results when using the debugger to play sound 860 in other rooms with no other sounds.
- SCI Companion also plays hi-res 860 with what sounds like too many notes/instruments.
- SCI Viewer plays hi-res 860 nicely without the extra notes/instruments.
- Hi-res and lo-res have script differences for deciding when to start and stop beach music, which isn't relevant to the problem, but does explain why which entrance you use affects things in lo-res.
- It's not a regression; it happens in the first SCI32 version of ScummVM.
In other words, it seems entirely like a playback bug that this particular sound exposes.
comment:5 by , 2 years ago
I also checked on the LORES 1.000.000 version now and have to add the following:
- If the music plays, it sounds exactly as broken as HIRES for me (not happening in DOSBox).
- Music never changes when using the bridge (when entering _and_ leaving the room). This _also_ happens in DOSBox so it seems to be a game bug that is fixed in HIRES.
comment:6 by , 2 years ago
The problem seems to be that channels 9 and 12 are both being played in sound 860 when only one of them should be. I'm not sure which, or why. It does affect both versions, although the resulting effect is different because those channels are different between the two versions, at least on adlib with the two versions I have.
I came to this conclusion by toggling channels during playback in SCI Companion.
Confirmed (audibly) that lo-res in DOSBox only plays one of the two channels.
comment:7 by , 2 years ago
Other music is also affected:
- The hotel hallway music instantly plays off with the flute in ScummVM, but only does after one run-through without it in DOSBox and as I remember it on real hardware. I'm playing through the game currently, listening closely...
- The bar music (if playing a MIDI and not Burgundy's song) also plays all tracks at once.
EDIT: Music also seems to randomly disappear when saving / restoring games, but that may be another issue. However, restoring a game on the beach also gets it to incorrectly play both tracks at once again.
comment:8 by , 2 years ago
Owner: | set to |
---|---|
Resolution: | → fixed |
Status: | new → closed |
This has been fixed by athrxx in the following PR:
https://github.com/scummvm/scummvm/pull/3934
Thanks for reporting this, and thanks athrxx for fixing it! :)
Closing
comment:9 by , 2 years ago
I can confirm that this fixes all music bugs I previously noticed!
- Hotel / Lobby (flute track available immediately)
- Beach (playing multiple flute tracks)
- Bar (playing multiple distorted guitar tracks immediately)
I also could no longer trigger the bug with music seemingly randomly getting muted during loading / saving games but I check that more thoroughly now and report a new bug if it returns.
Thanks a lot. This makes the emulation experience feel perfect now. :-)
Clarify since when I believe this bug exists