【发布时间】:2013-08-01 19:27:16
【问题描述】:
我目前正在使用AVQueuePlayer 播放从 URL 下载的单声道 mp3 文件。在扬声器上播放时声音听起来不错,但当我戴上耳机时,声音只从一侧出来。
确保AVPlayer 在两个通道上播放单声道音频文件的最简单方法是什么?
【问题讨论】:
标签: ios ios5 avfoundation avplayer avqueueplayer
我目前正在使用AVQueuePlayer 播放从 URL 下载的单声道 mp3 文件。在扬声器上播放时声音听起来不错,但当我戴上耳机时,声音只从一侧出来。
确保AVPlayer 在两个通道上播放单声道音频文件的最简单方法是什么?
【问题讨论】:
标签: ios ios5 avfoundation avplayer avqueueplayer
正如 Andreas Zöllner 在his answer 中所说:
您可以轻松地将 MTAudioProcessingTap 添加到现有的 AVPlayer 项目并将选定的通道样本复制到另一个通道 在您的进程回调函数期间。这是一个很棒的教程 解释基础:
http://chritto.wordpress.com/2013/01/07/processing-avplayers-audio-with-mtaudioprocessingtap/
代码:
NSURL *assetURL = [[NSBundle mainBundle] URLForResource:@"skyfall" withExtension:@"m4a"];
assert(assetURL);
// Create the AVAsset
AVAsset *asset = [AVAsset assetWithURL:assetURL];
assert(asset);
// Create the AVPlayerItem
AVPlayerItem *playerItem = [AVPlayerItem playerItemWithAsset:asset];
assert(playerItem);
assert([资产轨迹]); 断言([[资产跟踪]计数]);
self.player = [AVPlayer playerWithPlayerItem:playerItem]; 断言(self.player);
[self.player play];
【讨论】: