我想知道在Android媒体播放器上加载和播放小wav是否比较快的小文件更快。 wavs大约是30 KB,与mp3相同的文件大约是20 kb。 mp3具有节省资源空间的优势。声音文件必须以瞬间播放。
答案 0 :(得分:3)
对于这样小的声音,SoundPool会获得最佳效果。
答案 1 :(得分:1)
即使是最弱的Android设备也有足够的计算能力来播放mp3,并且可能也有硬件加速。真正的问题是播放wav与播放mp3的设置开销,这应该很容易以编程方式进行测量。
我有点惊讶你用mp3获得了如此差的压缩率。即使是无损压缩算法也倾向于使用wav获得2:1的压缩比。鉴于Android设备可能没有连接到高保真音质的扬声器,你应该能够使用64 kbit / s单声道mp3压缩,甚至更低。如果您可以将文件大小控制在4K以下,那么它将适合单个内存页面,这大约与操作系统开销一样低。
如果出于某种原因你的压缩比为1.5:1,那么可能不值得额外的工作。
答案 2 :(得分:1)
Wav文件使用更多空间,因为它们具有更高的采样率。声波将会追溯到更多的点,理论上它需要更多的处理能力才能发挥作用。 wave也是未压缩的,这意味着它具有来自源的所有信息。当您拍摄CD并将其转换为wav时,您或多或少会拥有原始照片的副本。当您转换为mp3时,它使用较少的参考点,并且细节丢失。其次,大多数mp3编码器将音乐标准化,这是一种奇特的说法,它使安静的部分更响亮,而响亮的部分更安静。所有这一切都说有些人听不到差异,这主要取决于你正在听什么类型的耳机/扬声器......所说的ALLL不应该是任何一种格式的延迟,唯一的区别应该是采样率或声音文件的“分辨率”
答案 3 :(得分:0)
我没有技术性的“东西”来支持我,但是因为没有其他人对此表示反对,我会的。
我知道mp3的压缩比wavs“更好”,因此文件更小。然而,这意味着需要更多的CPU才能“解压缩”文件。 (这可能是在专用硬件上完成的,因此它可能是一个没有实际意义的点。)此外,由于文件将被夸大,可能是欺骗性地看到mp3文件的较小尺寸,并认为加载和播放会更快。
考虑到wav文件格式的历史,并且它在不同程序之间交换声音文件(Wikipedia)时作为“最低公分母”,我会做出有根据的猜测,它会是加载和播放一个小的wav文件更快。这非常依赖于Android的音频库以及硬件的软件实现,所以如果有人知道更多,听听他们的看法会很棒。