summaryrefslogtreecommitdiff
path: root/src/nw4r
diff options
context:
space:
mode:
authorrobojumper <robojumper@gmail.com>2025-05-26 20:11:18 +0200
committerrobojumper <robojumper@gmail.com>2025-05-26 20:11:18 +0200
commit097c070b9275231f882075db5567c2dbc027bfcb (patch)
tree35f7a6159e9f0cfe42467ef8ed66804462a729bf /src/nw4r
parentae18395969ced5c92d8d20c6150c879b12be8f8b (diff)
snd_WsdPlayer OK
Diffstat (limited to 'src/nw4r')
-rw-r--r--src/nw4r/snd/snd_WsdPlayer.cpp20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/nw4r/snd/snd_WsdPlayer.cpp b/src/nw4r/snd/snd_WsdPlayer.cpp
index c7f60adc..2b4734c6 100644
--- a/src/nw4r/snd/snd_WsdPlayer.cpp
+++ b/src/nw4r/snd/snd_WsdPlayer.cpp
@@ -141,6 +141,23 @@ void WsdPlayer::InvalidateData(void const *start, void const *end)
}
}
+bool WsdPlayer::ReadWsdDataInfo(WsdDataInfo *info) const
+{
+ SoundThread::AutoLock lock;
+
+ WaveSoundInfo wsInfo;
+ WaveSoundNoteInfo wsNoteInfo;
+ WaveInfo waveInfo;
+ bool result = mCallback->GetWaveSoundData(&wsInfo, &wsNoteInfo, &waveInfo, mWsdData, mWsdIndex, 0, mCallbackData);
+ if (result) {
+ info->loopFlag = waveInfo.loopFlag != false;
+ info->sampleRate = waveInfo.sampleRate;
+ info->loopStart = waveInfo.loopStart;
+ info->loopEnd = waveInfo.loopEnd;
+ }
+ return result;
+}
+
void WsdPlayer::FinishPlayer()
{
SoundThread::AutoLock lock;
@@ -349,6 +366,9 @@ void WsdPlayer::UpdateChannel()
mChannel->SetFxSend(bus, fxSend[i]);
}
+ for (int i = 0; i < 4; i++)
+ mChannel->SetRemoteOutVolume(i, GetRemoteOutVolume(i));
+
for (int i = 0; i < mVoiceOutCount; i++)
mChannel->SetVoiceOutParam(i, GetVoiceOutParam(i));