在开发一个节奏音乐游戏时,我注意到AVAudioPlayer在报告的.currentTime和音频文件中的实际位置之间有一个延迟,根据文件格式的不同而有所不同。
例如,与播放.aac文件(ADTS AAC)相比,播放.m4a文件会产生更低的延迟。
这在某种程度上是可以理解的,我已经接受了这一点(因为延迟是根据文件类型而定的)。
我不明白的是,为什么这些不同的延迟也会出现在两种.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理解这些不同结果的任何解释/解决方案都将不胜感激。
发布于 2012-09-24 22:07:50
找到问题了--是转换本身的问题。
当转换为adts aac时,转换后的音频有一个大约40ms的静音前缀...很奇怪..。
https://stackoverflow.com/questions/12195951
复制相似问题