那天说了c#不好弄ogg和mp3的解码,然后就发现打脸了。
找到了一些开源的解码器,由于ogg的音质容量比要明显好于mp3,主要弄ogg的播放。
由于自带解码器,可以实现全平台下载并播放,甚至可以实现边下边播。
源代码见
https://github.com/lightszero/BlockFun/tree/master/unity/oggP
适配了两个解码器
一个CSVorbis,这个实现有一些问题,声音播放出来略有变调,感觉噪音也有些大。
这个CSVorbis是从一个开源的XNA项目中改造过来的,也有可能是我的改造除了问题。
又找了另外一个叫做 NVorbis的解码器,这个实现明显专业了许多,修改了一点Unity不兼容的代码,整个库不需要改造,直接适配即可。
声音很正常,比较完美。