【发布时间】: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