首页 > 解决方案 > ffmpeg 处理混合视频期间丢失的数据包

问题描述

我正在尝试将多个视频和音频流混合成一个大视频,然后使用 HLS 进行流式传输。如果在处理过程中有一些丢包,尤其是丢失了1秒或2秒的大量丢包怎么办。是否有任何选项可用于解决此问题,或者我应该只是简单地创建假数据包/帧来填充丢失的数据包/帧?我正在使用 ffmpeg api 来执行此操作,因此我可以同时使用 ffmpeg 命令行选项和代码。这是我为两个视频缩短的复杂过滤器(完整的过滤器太复杂了,在这里没有必要)

[0:v] setpts='(RTCTIME - RTCSTART) / (TB * 1000000)' [v0]; [1:v] setpts='(RTCTIME - RTCSTART) / (TB * 1000000)' [v1]; [v0][v1] xstack=inputs=2:layout=0_0|428_0 [vmixed]; [0:a] asetpts='(RTCTIME - RTCSTART) / (TB * 1000000)' [a0]; [1:a] asetpts='(RTCTIME - RTCSTART) / (TB * 1000000)' [a1]; [a0][a1] amix=inputs=2:duration=longest [amixed];

标签: ffmpeg

解决方案


推荐阅读