Web 技术研究所

我一直坚信着,Web 将会成为未来应用程序的主流

AudioAPI的默认采样频率

  AudioAPI的默认采样频率是由实现定义,且不能修改的。它在AudioContext实例的sampleRate属性上可以读取到,但这个属性是一个只读属性。虽然Chrome上在实例化AudioContext可以带参数,但它会被视为OfflineAudioContext来处理。
<script>
var AudioContext=AudioContext||webkitAudioContext;
var context=new AudioContext(2,2048,88200);
console.log(context.sampleRate);
</script>

  虽然从实例的sampleRate属性上可以看到Chrome的设置是生效的,但实际上当为AudioContext传入参数时,它被作为OfflineAudioContext来处理,并抛出一个警告。Firefox则按照规范的定义直接无视掉参数,所以传入的参数没有生效。
  总之AudioContext是无法修改SampleRate的,这是很坑的设定。采样频率太大会影响程序处理的性能,特别是在录音时处理输入的音频,采样频率太大还需要手动压缩。就默认采样频率而言,Firefox使用44100,而Chrome使用了最大采样比率96000,我们通常只需要44100的就够了,Chrome的这个默认值反而占资源。而且对于录音的应用场景只要11025的采样频率就足够了,这个值无法自己定义就非常不方便。
网名:
54.162.218.*
电子邮箱:
仅用于接收通知
提交 悄悄的告诉你,Ctrl+Enter 可以提交哦
神奇海螺
[查看全部主题]
各类Web技术问题讨论区
发起新主题
本模块采用即时聊天邮件通知的模式
让钛合金F5成为历史吧!
次碳酸钴的技术博客,文章原创,转载请保留原文链接 ^_^