【问题标题】:Can I use ReplayKit to record both microphone and system audio?我可以使用 ReplayKit 来录制麦克风和系统音频吗?
【发布时间】:2017-10-30 14:45:18
【问题描述】:

网上没有太多关于此的文档,因为这是一项奇怪的任务。我正在尝试使用 ReplayKit 同时录制我的屏幕、内置麦克风和系统音频。

这是我现在录制屏幕的方式:

    if([self.screenRecorder isAvailable]){
        [self.screenRecorder setMicrophoneEnabled:YES];
        [self.screenRecorder startRecordingWithHandler:nil];
    }

运行时,系统会提示用户使用麦克风或不使用麦克风进行录制。我可以两者都做吗?有解决方法吗?如果我选择麦克风,当我的应用程序播放声音时,麦克风会被禁用。

如果有人可以提出不涉及 replaykit 的可能解决方案,那也将不胜感激!

谢谢

【问题讨论】:

    标签: ios avfoundation avplayer xcode9 replaykit


    【解决方案1】:

    是的,有可能,您可以使用提供手动渲染模式的 AVAudioEngine,将两个 playerNode(音频应用程序、音频麦克风)放入 MixerNode 并渲染。

    【讨论】:

      【解决方案2】:

      因此,在研究了这个之后,您也可以使用 AVAudioSession API 非常简单地做到这一点:

      let audioSession = AVAudioSession.sharedInstance()
      try! audioSession.setCategory(AVAudioSessionCategoryPlayAndRecord, with: AVAudioSessionCategoryOptions.mixWithOthers)
      

      【讨论】:

      • 不工作,它只通过麦克风录制音频,使用此类别选项无法录制扬声器音频。
      猜你喜欢
      • 2022-08-21
      • 1970-01-01
      • 2023-03-21
      • 2018-01-31
      • 1970-01-01
      • 2019-12-02
      • 1970-01-01
      • 1970-01-01
      • 2011-10-08
      相关资源
      最近更新 更多