iOS: воспроизведение аудио в Chrome, но не в Safari

Я использую AVAudioRecorder для записи звука на iPhone, а затем загружаю этот аудиофайл на сервер, где он воспроизводится на веб-сайте.

Файл играет просто хорошо на Chrome, но на Safari он не может играть!

Эти настройки я использую с AVAudioRecorder:

let settings = [
            AVFormatIDKey: Int(kAudioFormatLinearPCM),
            AVSampleRateKey: 16000.0,
            AVNumberOfChannelsKey: 1 as NSNumber,
            AVEncoderAudioQualityKey: AVAudioQuality.High.rawValue
        ]

Вот как я загружаю:

multipartFormData.appendBodyPart(data: audioData, name: "file", fileName: "file.m4a", mimeType: "audio/m4a")

Я также пробовал это, но это не работает:

multipartFormData.appendBodyPart(data: audioData, name: "file", fileName: "file.mp4", mimeType: "audio/mp4")

Почему Safari не воспроизводит мой файл?

1 ответ

  1. Ответ состоит в том, чтобы использовать kAudioFormatMPEG4AAC вместо kAudioFormatLinearPCM, и он будет играть хорошо на Safari.