【问题标题】:Video No Longer Recording Audio (PBJVision/AVFoundation)视频不再录制音频 (PBJVision/AVFoundation)
【发布时间】:2018-02-03 18:00:35
【问题描述】:

我有一个应用程序(企业,分布式 OTA),其中包括记录视频剪辑。突然之间,我们开始上传缺少音频的视频,现在这个问题似乎完全可以重现。我一直在使用 PBJVision 库,它似乎工作得很好,但我也用 SwiftyCam(另一个基于 AVFoundation 的库)对此进行了测试,结果相同。目前还不清楚它是何时引入的,但我已经检查了以下内容:

  • 确保在目标 .plist 中设置了 NSMicrophoneUsageDescription
  • 确保摄像头和麦克风权限在系统设置中显示为已授予
  • 尝试在设置中禁用麦克风权限(应用正确提示用户重新启用权限)
  • 尝试早期版本的视频捕获库以防出现回归问题
  • 尝试不同的视频捕获库
  • 为 PBJVision/SwiftyCamera 显式设置音频启用和比特率,并确保会话至少在日志中报告它有音频(也就是说,库和 AVFoundation 认为有一个输入设置,输入流是正在处理中)
  • 使用系统摄像头拍摄视频,然后通过应用上传 - 在这种情况下,音频可以正常工作(这不是硬件问题)
  • 重置设备上的所有内容和权限,以确保没有某种缓存的权限闲置
  • 确保音量未静音

保存到相机胶卷的副本也是无声的,因此在上传视频时不会发生这种情况。我也开始使用 AVFoundation 来实现录制,但如果这会产生相同的结果,我不想浪费时间。什么可能导致特定应用程序不使用视频录制音频?我查看了相关问题,但提供的解决方案都没有解决我在这里遇到的问题。

编辑:

以下是启动、记录和停止 PBJVision 会话时出现的日志:

[5411:1305718] VISION: camera setup
[5411:1305718] VISION: switchDevice 1 switchMode 1
[5411:1305718] VISION: capture session setup
[5411:1305291] VISION: session was started
[5411:1305718] VISION: capture session running
[5411:1305291] VISION: starting video capture
[5411:1305718] VISION: ready for video (1)
[5411:1305718] VISION: audio stream setup, channels (1) sampleRate (44100.000000)
[5411:1305718] VISION: ready for audio (1)
[5411:1305291] VISION: ending video capture
[5411:1305963] VISION: capture session stopped
[5411:1305963] VISION: session was stopped
[5411:1305291] CMTimeMakeWithSeconds(8.396 seconds, timescale 24): warning: error of -0.021 introduced due to very low timescale

【问题讨论】:

    标签: ios swift audio avfoundation pbjvision


    【解决方案1】:

    事实证明,这实际上是由于在开始视频录制后使用另一个库播放声音所致。这显然抢占了录音的音频通道,因为它最终是空的(请参阅Record Audio/Video with AVCaptureSession and Playback Audio simultaneously?)。在开始视频录制之前或之后是否开始播放其他声音似乎并不重要。这是一个很好的警告案例,使用多个库都接触相同的系统 API ——在某些情况下,比如这个,它们以不合需要的方式交互。

    在这种情况下,解决方案是确保两个来源没有使用相同的AVAudioSessionCategory,因此它们不会冲突。

    【讨论】:

      猜你喜欢
      • 2011-12-24
      • 1970-01-01
      • 2015-05-16
      • 2018-04-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-18
      • 1970-01-01
      相关资源
      最近更新 更多