Opened 22 months ago
Last modified 8 months ago
#12832 new defect
DIRECTOR: Missing music cue in Spaceship Warlock intro
|Reported by:||eriktorbjorn||Owned by:|
Description (last modified by )
Judging by https://www.youtube.com/watch?v=fi_WSGdWeMs there should be a musical bridge between the percussion part of the intro and the song playing over the game title. This happens approximately between 45 and 50 seconds into the YouTube movie.
In ScummVM, it goes straight from the percussion to the song. This happens by in my Windows and Macintosh versions of the game. (I'm still a bit uncertain which files are needed for the Mac version, so I'm more confident about the Windows one.)
Change History (5)
comment:1 by , 21 months ago
comment:2 by , 20 months ago
comment:3 by , 20 months ago
It seems that
is played and immediately superceded by
There is ongoing discussion about this issue in Disord #engine-director.
comment:4 by , 8 months ago
This appears to be working in the Windows version now, but not in the Mac version.
comment:5 by , 8 months ago
I'm not sure, but I think this is the commit that fixed it in the Windows version:
f48dbb43b6b6483ef2160ae3d087eb2e0f06c7e5 is the first new commit commit f48dbb43b6b6483ef2160ae3d087eb2e0f06c7e5 Author: Scott Percival <firstname.lastname@example.org> Date: Sun Jul 31 19:00:13 2022 +0800 DIRECTOR: Use LoopableAudioStream for score audio loops For looping sounds, the original code polled the score and created a new AudioStream every time the previous iteration finished playing. The downside of this approach is the sound needs to be fully resampled and buffered after each playback, which can be heard as a gap between loops. To fix this, loops now use a LoopableAudioStream. The reason why the previous code did not was to allow for a specific edge case. In Director, when a looping audio channel is set to cast member 0, the loop is allowed to finish the current iteration before the audio stops. Originally there wasn't a way of doing that, but now the LoopableAudioStream classes can stop playing after a number of iterations. As such, we keep a copy of the LoopableAudioStream handle and call for the loop to stop when the cast member gets set to 0. Improves looped audio playback in Eastern Mind. Fixes the guitar solo between the transition from BLAST.DXR to INTRO.DXR in Meet MediaBand. Fixes the audio transition between n.am and s.am in Meet MediaBand. engines/director/sound.cpp | 58 +++++++++++++++++++++++++--------------------- engines/director/sound.h | 7 +++++-
For reference, these are my versions of the game:
Windows: Version 1.1.3 "MPC"
Macintosh: Version 1.1.1 "Classic"
(Oddly enough, the copyright year for 1.1.1 is 1996, while the copyright year for 1.1.3 is 1991 and 1994. I guess they were independently versioned.)