Ios 以m4a格式存储解析时的音频时出现问题

Ios 以m4a格式存储解析时的音频时出现问题,ios,audio,parse-platform,m4a,aiff,Ios,Audio,Parse Platform,M4a,Aiff,我正在尝试使用录制音频,然后将其上载到Parse 关于stackoverflow有一个很好的问题,它似乎可以解决这个问题,但我在m4a格式方面遇到了问题,这意味着这个答案对我没有帮助 这是我录制音频的方式: self.recorder = [[AERecorder alloc] initWithAudioController:_audioController]; NSArray * documentsFolders = NSSearchPathForDirectoriesInDomains(N

我正在尝试使用录制音频,然后将其上载到Parse

关于stackoverflow有一个很好的问题,它似乎可以解决这个问题,但我在m4a格式方面遇到了问题,这意味着这个答案对我没有帮助

这是我录制音频的方式:

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

NSArray * documentsFolders = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString * path = [documentsFolders[0] stringByAppendingPathComponent:@"Recording.aiff"];
然后我如何保存它以进行解析:

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就不会播放了
  • 重新加载并在应用程序上播放不会像以前那样播放

有什么我做错了或忽略了的吗?我觉得这应该是一个很快很容易的改变,所以任何建议将不胜感激

您能否尝试告诉AERecorder使用M4A格式,看看这是否有帮助(除了更改文件名之外)

或者在beginRecording中设置该文件类型


请注意,prepareRecording函数运行只需几分之一秒,这意味着任何更改也将被延迟(按下按钮时更改),记录器将始终运行,并在后台准备文件,然后调用AERecorderStartRecording();可以通过将口吃转移到不太明显的时间来解决这个问题。
[self.recorder prepareRecordingToFileAtPath:path fileType:kAudioFileM4AType error:nil];