问题
- 我负责给游戏设计音乐和音效。
- 我的音频文件的采样率是48kHz (24位), 回放时的采样率却是44kHz (16位) 。这导致声音的音调低了两个半音。
- 我想知道Unity是否支持采样率高于 44kHz (16位) 的音频文件
原因
在制作用于游戏的音乐或音效时,您想在Unity正常回放具有任意采样率的音频文件,同时保证输出的采样率不会被降低。
解决方案
Unity可以播放任何采样率的AudioClip,并可以完美地将音频重采样为Unity指定的输出采样率:44kHz。
44kHz (16bit)的输出采样率
所有的压缩格式(Vorbis,MP3,ADPCM,等等)会在转码前将AudioClip转换为16位。这样的压缩方法可以产生小体积文件,但是音质相应会低。这种格式适合中等长度的音乐和音效。
高于48kHz (24bit)的输出采样率
Unity支持输出采样率高于48kHz (24位)的音频。如果您想产生高采样率的AudioClip,这需要依赖于不同的音频压缩格式。如果您选择不压缩音频(PCM格式),这个AudioClip将保留48kHz (24位)的采样率。通常情况下只有PCM可以保留这样的位深。在文件体积庞大的代价下这种格式的音频质量更高,非常适合用于非常短的音效。
在Unity 5及以上的版本里,通过脚本设置采样率不再受支持。如有必须,您必须手动设置采样率。步骤如下:
- 点击您已经导入到项目内的AudioClip。
- 以下画面会显示在您的检视窗内。
- 在以下三个选项中选择:
- 保持采样率 - 这将会保有音频原本的采样率不受更改。
- 优化采样率 - 这将会分析音频里出现的最高频率以选择最优采样率
- 覆盖采样率 - 这个选项允许手动更改音频的采样率,适合用于丢弃频率信息。
评论
0 条评论
文章评论已关闭。