【问题标题】:iOS: How to play a mono audio file on both channels with AVPlayeriOS:如何使用 AVPlayer 在两个通道上播放单声道音频文件
【发布时间】:2013-08-01 19:27:16
【问题描述】:

我目前正在使用AVQueuePlayer 播放从 URL 下载的单声道 mp3 文件。在扬声器上播放时声音听起来不错,但当我戴上耳机时,声音只从一侧出来。

确保AVPlayer 在两个通道上播放单声道音频文件的最简单方法是什么?

【问题讨论】:

    标签: ios ios5 avfoundation avplayer avqueueplayer


    【解决方案1】:

    正如 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];

    【讨论】:

    • 谢谢,我看了一下博客(这似乎是关于 Taps 的唯一文档形式),它看起来像是一条可能的路线,但该功能是在 iOS6 中添加的,我的应用程序需要目标iOS5,所以有点问题。
    猜你喜欢
    • 1970-01-01
    • 2018-06-03
    • 1970-01-01
    • 2020-08-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多