【问题标题】:iPhone AVAudioPlayer failed to find codeciPhone AVAudioPlayer 找不到编解码器
【发布时间】:2011-02-26 16:03:49
【问题描述】:

我正在编写一个从服务器下载 wav 文件并需要播放该文件的应用程序。这些文件使用 2:1 压缩的 mulaw 编解码器。这些 wav 文件是由单独的进程动态创建的,因此我无法将文件预先转换为不同的格式或编解码器,我需要能够按原样播放它们。

我正在使用初始化如下的 AVAudioPlayer 实例:


NSURL *audioURL = [[NSURL alloc] initWithString:@"http://xxx.../file.wav"];
NSData *audioData = [[NSData alloc] initWithContentsOfURL:audioURL];

AVAudioPlayer *audio = [[AVAudioPlayer alloc] initWithData:audioData error:nil];

[音频播放];
但是,当 play 方法执行时,我在模拟器上执行时得到以下控制台输出:

AudioQueue 编解码器策略 1:找不到请求类型的编解码器

我还尝试将下载的数据保存到本地文件并使用文件 URL,但这会产生相同的结果。下载的文件在 Mac 和基于 Windows 的桌面媒体播放器上都可以正常播放。

SDK 文档声明 iPhone 支持 mulaw 编解码器,所以我不确定为什么找不到它。任何帮助将不胜感激。

谢谢。

【问题讨论】:

    标签: iphone avaudioplayer


    【解决方案1】:

    安东尼,

    我在使用模拟器时也收到了同样的错误消息。 但是我在设备上试了一下,效果很好。

    无论出于何种原因,模拟器都没有设备拥有的所有编解码器(mulaw 是基于软件的解码,因此两者之间的软件必须不同)。

    希望对你有帮助,

    罗伯

    【讨论】:

    • 谢谢 Rob,我会在设备上试一试。
    【解决方案2】:

    感谢 Rob!这让我发疯了一段时间,但最终它在设备上运行良好,只是在模拟器中不行。

    【讨论】:

      猜你喜欢
      • 2021-03-01
      • 2011-04-13
      • 1970-01-01
      • 1970-01-01
      • 2019-06-19
      • 2017-04-07
      • 2018-11-01
      • 1970-01-01
      • 2015-11-06
      相关资源
      最近更新 更多