问题描述
我正在使用AVAssetExportSession编码视频。对于某些源文件(不是所有文件),AVASsetExportSession导出后未经编辑,视频和音频之间将不同步。
当在AVAssetExportSession的初始化中将AVMutableComposition放入 asset 参数时,将导致此问题。(当将源资产直接放入 asset 参数时,不会出现不同步的情况。 )我刚刚创建了一个新的AVMutableComposition。然后,我将源资产的视频轨道和音频轨道插入了AVMutableComposition。但是,导出会话的结果不同步。
这是源资产和导出视频的音轨图像。
Source asset and exported video
音频1轨道用于源,音频2轨道用于导出的视频。导出视频的音频速度比原始视频快0.05秒。
通过一些搜索,我怀疑此问题与编码器延迟(Encoder delay)有关。因为44100Hz的0.05秒约为2112个样本。但我不确定。可以使用AVAssetExportSession解析吗?还是应该使用AVAssetReader / AVAssetWriter或比AVAssetExportSession更可控的其他工具?有什么解决办法吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)