我使用远程src中的ffmpeg生成hls内容,并且经验滞后,我在浏览器中不理解。hls.js - 如何增加预加载的缓冲区大小
举例来说,即使有说out8.ts,out9.ts ... hls.js玩家将在发言权out7.ts并不会加载out8.ts或out9.ts.
它会等到out7.ts 已基本完成播放,然后尝试加载out.m3u8其中将包含out8.ts并可能out9.ts.但是这样做太晚了,最终导致滞后。我在本地主机上以高效的方式执行此操作。
这似乎一旦开始发生就会重演。
我怎样才能让hls.js 更经常请M3U8和缓冲什么都存在?或尽可能多?
此外,如果有已经说1-10.ts文件,我怎么能让hls.js开始不是最后一个(虽然更接近实况),但也许在5.TS,所以它不会运行进入紧急的最后期限问题,关于下一次更新的m3u8和可能的长期11.ts阻止它缓冲它?
我的选择:
new Hls({
autoStartLoad: true,
debug: App.isDevelopment(),
manifestLoadingTimeOut : 60000,
/*manifestLoadingMaxRetry : 9,*/
manifestLoadingRetryDelay : 500,
levelLoadingTimeOut : 60000,
/*levelLoadingMaxRetry : 9,*/
levelLoadingRetryDelay : 500,
fragLoadingTimeOut : 60000,
/*fragLoadingMaxRetry : 6,*/
fragLoadingRetryDelay : 250,
startFragPrefetch : true
});
是否有使用梆子代替hls.js关于控制这样的事情在有什么区别?
是的,我已经使用hls_time并尝试了各种长度。我认为主要的问题是我没有为每个细分市场固定长度。有些会是10秒,其他8或12会在后一种情况下导致滞后,因为在前10秒过去后它不会准备好。 虽然这有助于获得一致的长度: -x264-params scenecut = 0 -x264opts keyint_min = 100 -g 100 -r 20 -framerate 20 – momomo