Есть ли другой способ определить, является ли вывод аудио или видео при использовании AVCaptureOutput? - PullRequest
0 голосов
/ 03 июня 2019

Когда мы используем AVCaptureOutput, мы заметили, что аудиоданные и данные изображения поступают последовательно. Чтобы получить информацию о громкости звука, не вызывая ошибки, мы обнаружили! используя следующий фрагмент кода:

if output.connections[0].audioChannels.count > 0 {} else {} 

Мы думаем, что может быть лучше.

func captureOutput(_ output: AVCaptureOutput,
                   didOutput sampleBuffer: CMSampleBuffer,
                   from connection: AVCaptureConnection) {

  if output.connections[0].audioChannels.count > 0 {

     let volume = connection.audioChannels[0].averagePowerLevel

  } else {
     // Codes for video
  } 



}
...