【问题标题】:Record Streaming Audio from currently playing video in AVPlayer从 AVPlayer 中当前播放的视频中录制流式音频
【发布时间】:2015-01-23 12:03:38
【问题描述】:

许多类似的问题,但不完全相同。

我目前已将代码设置为通过 AVPlayer 播放视频。

我想要做的是以某种方式提取流视频的音频并最终与麦克风输入合并(使用 AVAudioMixer?)。 (想想卡拉 OK 应用)所以当用户播放录音时,它只会播放视频中的音频和麦克风中的录音。

我认为 AVAudioEngine 是要走的路,但我一辈子都做不到。

所以我的问题是我如何从 AVPlayer 中当前播放的视频中提取或录制音频,重要的是,它通过在线源 (youtube) 进行流式传输。

另一种提问方式如下

我有一个收音机应用程序(想想 tuneIn Radio),我想录制流式音频。

【问题讨论】:

标签: objective-c avfoundation


【解决方案1】:

一位消息人士建议您在AVPlayerAVAudioRecorder 同时启动时监听音频路由的变化。这个想法是使用AudioSessionAddPropertyListener(...) 并监控kAudioSessionProperty_AudioRoute 音频路由,然后在收到AVPlayer 路由时开始录制。

参考号:Playing video with AVPlayer and recording sound with AVAudioRecorder simultaneously

另一个解决方案是使用MTAudioProcessingTap (ref),使用 KVObserving 设置流处理程序,并记录流式视频的音频通道。

参考号:Recording Live Audio Streams on iOS

另一种解决方案是只与代表开始一个类别为AVAudioSessionCategoryPlayAndRecord 的音频会话,并在您开始播放视频后启动音频录制。

参考号:how can i record a song which is playing with AVPlayer and an wav file at a same time?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-01-05
    • 1970-01-01
    • 2015-10-20
    • 1970-01-01
    • 2013-03-27
    • 1970-01-01
    • 2017-05-27
    • 1970-01-01
    相关资源
    最近更新 更多