AVAudioRecorder запись AAC / m4a

Я пытаюсь записать звук на устройстве с помощью AVAudioRecorder. Этот файл передается на веб-сервер, и я хочу воспроизвести полученный файл в веб-браузере.

Я пробовал различные комбинации настроек на устройстве ... кажется, ничто не кодирует файл в правильный формат AAC.

QuickTime сообщает, что не знает, как воспроизвести этот файл.

Образец кода

    private void InitializeRecordingSession() {
         string fileName = string.Format("{0}.m4a", Guid.NewGuid());
         string tmpdir = Environment.GetFolderPath(Environment.SpecialFolder.Personal) + "/audio";
          if (!Directory.Exists(tmpdir))
               Directory.CreateDirectory(tmpdir);
          audioFilePath = Path.Combine(tmpdir, fileName);

          Console.WriteLine("Audio File Path: " + audioFilePath);

          var url = NSUrl.FromFilename(audioFilePath);
          var settings = new AVAudioRecorderSettings() {
               AudioFormat = AudioFormatType.MPEG4AAC,
               SampleRate = 44100,
               NumberChannels = 1,
               AudioQuality = AVAudioQuality.High,    
          };

          recorder = AVAudioRecorder.ToUrl(url, settings, out error);

          //Set Recorder to Prepare To Record
          recorder.PrepareToRecord();  
     }

Edit-Поставив этот код перед строкой

recorder = AVAudioRecorder.ToUrl(url, settings, out error);

Все работало

NSError error;    
AVAudioSession audioSession = AVAudioSession.SharedInstance();
audioSession.SetCategory(AVAudioSession.CategoryRecord, out error);
audioSession.SetActive(true, out error);

Ответы на вопрос(3)

Ваш ответ на вопрос