Проблемы с хранением аудио при разборе в формате m4a

Я пытаюсь записать звук с помощью потрясающего звукового движка, а затем загрузить его в Parse.

Есть большой вопрос о стековом потоке, который, кажется, имеет дело с этим здесь, но у меня есть проблемы со стороной форматирования m4a, что означает, что этот ответ мне не поможет.

Вот как я записываю аудио:

self.recorder = [[AERecorder alloc] initWithAudioController:_audioController];

NSArray * documentsFolders = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString * path = [documentsFolders[0] stringByAppendingPathComponent:@"Recording.aiff"];

А потом, как я сохраняю это в Parse:

NSArray * documentsFolders = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString * path = [documentsFolders[0] stringByAppendingPathComponent:@"Recording.aiff"];

NSData * audioData = [NSData dataWithContentsOfURL:[NSURL fileURLWithPath:path]];

PFObject * testObject = [PFObject objectWithClassName:@"TestObject"];

PFFile * audioFile = [PFFile fileWithName:@"audio.aiff" data:audioData];

testObject[@"audioFile"] = audioFile;
[testObject saveInBackground];

Это все работает нормально, и аудио загружается и сохраняется правильно.

Проблема в том, что я сохраняю аудио в формате AIFF, это означает, что для потоковой передачи и загрузки требуется больше времени, поскольку это файл большего размера. Я действительно хочу сохранить звук в формате m4a, так как скорость важнее, чем качество.

Я нахожу, хотя, когда я изменяю.aiff на.m4a, внезапно это не работает.

  • Когда я нажимаю на данные в Parse, тогда как раньше я не слышал звук, теперь URL не воспроизводится
  • Загрузка и воспроизведение в приложении не воспроизводит его раньше, чем раньше.

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

1 ответ

Решение

Можете ли вы попросить AERecorder использовать формат M4A и посмотреть, поможет ли это (в дополнение к изменению имен файлов).

[self.recorder prepareRecordingToFileAtPath:path fileType:kAudioFileM4AType error:nil];

Или установив этот тип файла в beginRecording.

http://theamazingaudioengine.com/doc/interface_a_e_recorder.html

Другие вопросы по тегам