美摄SDK For Android  3.10.0
断点续导

断点续导介绍

断点续导是在文件生成过程中的一个概念,指在生成过程中因为各种原因导致生成中断,当下一次生成开始,在所有参数与上一次生成完全一致的情况下,可以从中断位置继续生成文件。

断点续导需要在普通生成文件的基础上,开启断点续导标识、设置切片文件存储路径以及设置切片文件长度。

当用户开启断点续导后,SDK会根据用户指定的切片长度(默认10秒)在用户指定的文件储存路径下生成切片文件,在所有切片文件都生成成功后再把所有切片文件合成一个最终文件。

断点续导参数设置与接口使用

通过在生成时间线时,设置时间线配置中的具体参数来实现
public boolean compileTimeline(NvsTimeline timeline, long startTime, long endTime, String outputFilePath, int videoResolutionGrade, int videoBitrateGrade, Hashtable<String, Object> compileConfigurations, int flags)

COMPILE_VIDEO_ENABLE_BREAKPOINT_CONTINUATION = "enable breakpoint continuation" 设置是否开启断点续导

COMPILE_VIDEO_CACHE_FILE_PATH = "cache file path" 断点续导缓存文件路径

COMPILE_VIDEO_CACHE_FILE_DURATION = "cache file duration" 断点续导切片视频长度

断点续导FAQ

1.断点续导默认切片长度

答:切片默认长度为10秒。

2.断点续导失败的原因

答:在常规生成失败原因的基础上(如编码失败,解码失败,读写权限等),用户没有指定断点续导缓存路径,断点续导过程中切片文件或缓存路径被删除等也会导致断点续导失败。

3.断点续导使用建议

答:1)切片时长设置要适宜。设置的过短会造成切片过碎,设置的过长又会耗用比较长的时间。

2)每个续导文件最好使用不同的缓存路径。虽然SDK内部会以命名规则来区分切片文件,但是使用不同的缓存路径会使得文件系统更清晰,也更利于管理。

3)生成成功后,SDK并不会主动删除缓存切片文件,需要用户自行删除。

4)如果生成文件时长不长的前提下,不建议使用断点续导。因为断点续导需要生成切片文件,最后还要将切片文件合成,所以不触发断点续导的前提下直接生成的效率要比设置断点续导更快。