解码ogg文件到wav在WP8

本文关键字:WP8 wav ogg 文件 解码 | 更新日期: 2023-09-27 18:02:44

我想将ogg文件转换为wav,然后在wp8设备上播放。我已经检查了许多解决方案,但没有一个有效。这看起来很有希望,但有些地方不工作:

string _audioPath = "/SomeProject;component/Sounds/a_dog.ogg";
var stream = Application.GetResourceStream(new Uri(_audioPath, UriKind.Relative)).Stream;
using (var vorbis = new NVorbis.VorbisReader(stream, true))
        {
            float[] buf = new float[vorbis.TotalSamples];
            vorbis.ReadSamples(buf, 0, (int)vorbis.TotalSamples);
        }

当我执行它时,我看到在VorbisReader构造FileNotFoundException。我还检查了流是否可读,它是。我可以使用Read方法获取文件内容。

你知道为什么它不起作用吗?也许你知道wp8的其他库可以解码ogg文件?

[EDIT]我下载了NVorbis的源代码,并直接从我的项目中使用它,当我这样做时,我没有得到任何FileNotFoundExceptions,一切似乎都有效。也许这个异常是由于缺少库引起的?

解码ogg文件到wav在WP8

我想你和这个家伙遇到了同样的问题。简短的版本:我相信你的包URI应该是"Pack://application:…/SomeProject;Component/Sounds/a_dog.ogg"。NVorbis实际上并没有抛出异常本身,而是导致资源流这样做…