关于iOS中用AudioFile相关API解码或播放AAC_HE_V2时只能识别单声首22.05k采样率的问题
来源:互联网 发布:网络电影会给独立账号 编辑:程序博客网 时间:2024/05/29 04:57
关于iOS中用AudioFile相关API解码或播放AAC_HE_V2时只能识别单声首22.05k采样率的问题
在官方AQPlayer Demo 和 aqofflinerender中,都用了AudioFile相关的API来读取音频文件,大部分情况下,都是没问题的。但在读取或播放AAC_HE_V2格式音频时,会出现只能把原本双声道44100采样率的文件当成单声道22050采样来读取的问题。
在调用AudioFileGetProperty用
kAudioFilePropertyDataFormat参数获取文件格式时,就只能识别到单声道22050采样了。
是iOS不支持AAC_HE_V2解码吗?不可能的,这种格式是苹果官方主推过的音频格式,iOS没理由不支持。其实,问题就出在这个kAudioFilePropertyDataFormat上,这个API只会获取到最低级别的编码层级。我们知道,AAC_HE_V2编码包括了三层格式,(拿源文件44100双声道举列)第一层:只支持22050,单声道,第二层,支持44100,单声道,第三层支持44100,双声道。
在这种情况下,用kAudioFilePropertyDataFormat就取不到第三层的格式了,这时,就需要用另一个接口参数kAudioFilePropertyFormatList来获取第三层的格式。
封装了一个获取最佳播放格式的代码详见
http://www.mingjianhua.com/post/iOSAudioFileDecodeAAC_HE_V2.html
1 0
- 关于iOS中用AudioFile相关API解码或播放AAC_HE_V2时只能识别单声首22.05k采样率的问题
- iOS音频播放 (四):AudioFile
- iOS音频播放 (四):AudioFile
- iOS音频播放 (四):AudioFile
- iOS音频播放 (四):AudioFile
- iOS音频播放 (四):AudioFile
- iOS音频播放 (四):AudioFile
- iOS音频播放 (四):AudioFile 转
- 关于音频采样率以及比特率的问题
- Eclipse 的相关问题 只能编译Java 或 C、C++
- 关于我录制成的flv文件,播放器只能识别固定几分钟的原因
- iOS开发——音频播放 (四):AudioFile
- 关于VLC播放rtsp流只能播放一帧的问题
- 关于ios编码解码问题
- 关于IOS中的中文异或加密以及base64编解码问题
- C#关于编码、解码相关问题
- 关于CPictureEx类播放gif文件只能显示一帧的问题
- ffmpeg解码音频数据时,进行重采样(即改变文件原有的采样率)
- 原联通副总经理出任信贷非执行懂事
- 设备坐标和逻辑坐标
- 修改VirtualBox虚拟机默认存储路径及虚拟机迁移方法
- flex 4里闪烁效果
- matlab 排列组合函数的用法
- 关于iOS中用AudioFile相关API解码或播放AAC_HE_V2时只能识别单声首22.05k采样率的问题
- windows server 2008 IP安全策略关闭端口
- C语言宏定义##连接符和#符的使用
- ios8系统地图定位问题解决
- XML文件的代码提示
- iOS6 自动布局 入门–Auto Layout(转)
- log4j 日志管理
- Android SDK Android NDK Android Studio 官方下载地址
- iText操作PDF之学习笔记