iOS - Есть ли способ проверить звук / голос, записанный в AVAudioRecorder? - PullRequest
0 голосов
/ 19 марта 2020

Как проверить, записан ли файл wav пуст или нет? есть библиотека или другой способ? Ниже мой код

var audioRecorder: AVAudioRecorder!
private let settings = [
        AVFormatIDKey: Int(kAudioFormatLinearPCM),
        AVSampleRateKey: 16000,
        AVNumberOfChannelsKey: 1,
        AVEncoderAudioQualityKey: AVAudioQuality.medium.rawValue
    ]

func startRecording() {
        checkForMicPermission()
        let audioFilename  = getFileName()

        self.audioFilePath  = audioFilename.absoluteString
        print("**** path", audioFilePath)

        removeRecordedFile()

        do {
            try AVAudioSession.sharedInstance().setCategory(.record, mode: .default, options: .duckOthers)
            try! AVAudioSession.sharedInstance().setActive(true)
            audioRecorder = try AVAudioRecorder(url: audioFilename, settings: settings)
            audioRecorder?.delegate = self
            audioRecorder?.record(forDuration: 10)
        } catch {
            print(error.localizedDescription)
            finishRecording(success: false)
        }
    }


func audioRecorderDidFinishRecording(_ recorder: AVAudioRecorder, successfully flag: Bool) {
            if !flag {
                finishRecording(success: false)
            }
        }

Я могу записать голос. Есть ли способ начать запись только при наличии звука и остановить его, когда наступит тишина. Есть ли способ выяснить, если нет звука, то нет записи.

...