在我的Meteor React应用程序中,我使用React Howler的修改版本一次播放两个音轨(两个Howler实例)。我还实现了一个简单的交叉推子来同时改变两个音轨的音量,这在Chrome和Android上运行良好。但是当我在iOS上测试它时,我意识到它播放的音频很好,但音量不会改变。
关于这一点的奇怪之处:当我在每个时间步读出当前音量(播放器每秒更新10次)时,它会在每个平台上输出正确的值。这意味着,正在iOS上正确设置和存储音量,但您听到的音量不会改变。
以下是我的ReactHowler版本中卷函数的工作原理:
get volume() {
return this._howler.volume();
}
set volume(val) {
if(this._howler.volume() != val){
console.log("setting volume to " + val)
}
this._howler.volume(val);
}
如前所述,控制台输出看起来很好。当交叉渐变器值更改时,它会显示
setting volume to 0.35
howler volume: 0.35 (this is output at every time frame for debugging purposes)
howler volume: 0.35
...