ios - 从AIFF转换的AVAudioPlayer M4A文件产生的延迟不同于从ADTS AAC转换的M4A

标签 ios audio aac m4a adts

在制作节奏音乐游戏时,我注意到AVAudioPlayer在报告的.currentTime和音频文件中的实际位置之间存在延迟,该延迟根据文件格式而有所不同。

例如,播放.m4a文件将比播放.aac文件(ADTS AAC)产生更低的延迟。

这有点可以理解,我已经接受了这一点(因为延迟是根据文件类型而定的)。

我不明白的是,为什么对于两种.m4a文件,从原始AIFF文件转换的文件,以及先转换为ADTS AAC然后转换为.m4a的文件,也会发生这些不同的延迟的原因

换一种说法:

如果我运行:

afconvert -f m4af -d aac my_aif_file.aif

我得到的文件播放的延迟比这样创建的文件低:
afconvert -f adts -d aac my_aif_file.aif
afconvert -f m4af -d aac my_aif_file.aac

任何理解这些不同结果的解释/解决方案将不胜感激。

最佳答案

找到了问题-就是转换本身。

转换为adts aac时,转换后的音频具有约40ms的静音前缀...
奇怪的...

关于ios - 从AIFF转换的AVAudioPlayer M4A文件产生的延迟不同于从ADTS AAC转换的M4A,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12195951/

相关文章:

.net - .net mcisendstring-使用资源而不是完整路径

c# - 在 WPF 中播放和记录 16 位 PCM(原始)音频字节

javascript - Gamedesign "group"用于静音和取消静音的 html5 音频元素

ios - iOS 版 Linphone

ios - 拖动 View Controller 而不是滑动手势

ios - 快照缩放的 UIView

ios - 使用带回调的音频文件初始化将 MP3 转换为 AAC

ios - RxSwift 基于变量构建 Observable

ios - 指定的样本格式 s16 无效或不受支持

Android 音频 RTMP 发布