mirror of
https://github.com/panda3d/panda3d.git
synced 2025-10-03 10:22:45 -04:00
getting play rate for wav files
This commit is contained in:
parent
756340d3e9
commit
0216703540
@ -161,7 +161,19 @@ namespace {
|
|||||||
break;
|
break;
|
||||||
case AIL_QUICK_DIGITAL_TYPE:
|
case AIL_QUICK_DIGITAL_TYPE:
|
||||||
case AIL_QUICK_MPEG_DIGITAL_TYPE:
|
case AIL_QUICK_MPEG_DIGITAL_TYPE:
|
||||||
|
if (AIL_quick_status(audio) == QSTAT_PLAYING) {
|
||||||
return AIL_sample_playback_rate((HSAMPLE)audio->handle);
|
return AIL_sample_playback_rate((HSAMPLE)audio->handle);
|
||||||
|
} else {
|
||||||
|
//HACK: The play rate is returning 0 unless it's playing
|
||||||
|
if (AIL_quick_play(audio, 1)) {
|
||||||
|
S32 rate = AIL_sample_playback_rate((HSAMPLE)audio->handle);
|
||||||
|
AIL_quick_halt(audio);
|
||||||
|
return rate;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
audio_debug("Get_playback_rate unknown audio type");
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -459,7 +471,7 @@ set_play_rate(float play_rate) {
|
|||||||
case AIL_QUICK_DIGITAL_TYPE:
|
case AIL_QUICK_DIGITAL_TYPE:
|
||||||
case AIL_QUICK_MPEG_DIGITAL_TYPE:
|
case AIL_QUICK_MPEG_DIGITAL_TYPE:
|
||||||
// wave and mp3 use sample rate (e.g. 44100)
|
// wave and mp3 use sample rate (e.g. 44100)
|
||||||
_audio->speed = S32(play_rate*_original_playback_rate);
|
_audio->speed = S32(play_rate*float(_original_playback_rate));
|
||||||
if ((_audio->speed != -1) && (AIL_quick_status(_audio) == QSTAT_PLAYING)) {
|
if ((_audio->speed != -1) && (AIL_quick_status(_audio) == QSTAT_PLAYING)) {
|
||||||
AIL_set_sample_playback_rate((HSAMPLE)_audio->handle, _audio->speed);
|
AIL_set_sample_playback_rate((HSAMPLE)_audio->handle, _audio->speed);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user