首页 > 代码库 > 设置kExtAudioFileProperty_ClientDataFormat报错

设置kExtAudioFileProperty_ClientDataFormat报错

原因:

如果项目中有使用AVPlayer播放音乐时,由于使用硬件编码器,所以会导致设置ExtAudioFile的ClientFormat时出现1752656245错误。

解决:

指定ExtAudioFile的编码器为软件编码器即可。如:

// 先设置编码器
UInt32 codec = kAppleSoftwareAudioCodecManufacturer;
ExtAudioFileSetProperty(fileRef, kExtAudioFileProperty_CodecManufacturer, sizeof(codec), &codec);
//再设置格式
AudioStreamBasicDescription desc;
//.....
ExtAudioFileSetProperty(fileRef, kExtAudioFileProperty_ClientDataFormat, sizeof(desc), &desc);

参考:

http://isenry.blogspot.com/2012/07/audio-queue-starts-failed-err-hwiu.html