无法以M4a格式在Parse上存储音频

时间:2014-07-16 06:57:09

标签: ios audio parse-platform m4a aiff

我正在尝试使用the amazing audio engine录制音频,然后将其上传到Parse。

有关stackoverflow的一个很好的问题,它似乎处理了这个here,但我遇到了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中的数据时,在我听到音频之前,现在网址没有播放
  • 加载它并在应用程序上播放它不会在以前播放它。

我做错了什么或忽略了什么?我觉得这应该是一个快速的简单改变所以任何建议将不胜感激。

1 个答案:

答案 0 :(得分:1)

您是否可以尝试告诉AERecorder使用M4A格式并查看是否有帮助(除了更改文件名外)。

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

或者在beginRecording中设置该fileType。

http://theamazingaudioengine.com/doc/interface_a_e_recorder.html#pub-methods