最近作的项目有须要录音上传的功能,记录下踩得坑。ios
ios的录音格式默认的为wav。可是这个格式安卓没法读取,最开始是转成了MP3。测试没什么问题,可是老板说mp3的数据占用比较大,常规的用法是amr。测试了下,确实amr文件只有MP3的十分之一左右。
格式转换用的是VoiceConvert,网上有不少。若有须要本身找下。我只记录下安卓和ios互通的坑。测试
录音录完以后上传转成amr。而后下载下来还要转成wav,由于ios真机不支持amr格式播放。ios测试都正常,能够正常上传下载播放。可是安卓的录音上传成功以后,ios下载以后没法播放,一直格式转换失败。网上找了不少,发现是录制录音时,安卓的格式设置不对,正确的设置应该以下图(图是网上拷的,侵删):spa
而这面安卓把setAudioEncoder和setOutputFormat设置成ACC。以前约定的是amr格式转,因此他设置成ACC就没法转换格式。只能设置成AMR_NB。code