【问题标题】:FFmpeg corrupted output from concatenationFFmpeg 损坏的连接输出
【发布时间】:2021-09-07 00:50:10
【问题描述】:

编辑/更新:当前的解决方案是在所有文件上运行此代码ffmpeg -i up.mp4 -vf scale=1920:1080 -crf 22 reUP.mp4 如此分辨率,但也匹配每秒帧数。

我以前可以打开CMD,输入CD C:\Users\...,然后输入ffmpeg -f concat -safe 0 -i xmylist.txt -crf 22 -c copy x1.mp4

录音来自同一部手机,一些来自前置摄像头,一些来自后置摄像头。我知道这可能会导致不同的问题?但直到最近它还运行良好。

现在输出已被此日志损坏: 单个视频文件播放得很好,大部分连接输出也可以,但有些部分会变成这样并冻结:

【问题讨论】:

  • @llogan i.ibb.co/zSw7Fky/bilde.png 以前可以很好地将前后结合使用:/ 我尝试更新无济于事。
  • @llogan 单个文件在 VLC 和 Potplayer 上播放良好,但两个媒体播放器在连接时无法播放。

标签: video ffmpeg editing


【解决方案1】:

您正在连接两个具有不同分辨率的视频文件。

  • front.mp4 是 1920x1080
  • rear.mp4 是 1280x720

重现问题并不太难(您可以将代码放在.bat 文件中):

rem Create tmplist.txt
echo file 'front.mp4' > tmplist.txt
echo file 'rear.mp4' >> tmplist.txt

rem Create video with resolution 192x108 for example (instead of 1920x1080)
ffmpeg -y -f lavfi -i testsrc=size=192x108:rate=25 -f lavfi -i sine=frequency=300 -acodec aac -ar 22050 -vcodec libx265 -crf 17 -pix_fmt yuv420p -t 3 front.mp4

rem Create video with resolution 128x72 for example (instead of 1280x720)
ffmpeg -y -f lavfi -i testsrc=size=128x72:rate=25 -f lavfi -i sine=frequency=400 -acodec aac -ar 22050 -vcodec libx265 -crf 17 -pix_fmt yuv420p -t 3 rear.mp4

rem Concatenate:
ffmpeg -y -f concat -safe 0 -i tmplist.txt -c copy tmp.mp4

结果(3 秒后):


解决方案:将所有连接的输入视频转换为相同的分辨率。

注意:

  • 至少有一些视频必须重新编码。

我想最好的解决办法是把低分辨率转换成高分辨率,然后申请concat:

ffmpeg -y -i rear.mp4 -vf scale=192:108,setsar=1 -vcodec libx265 -crf 22 -pix_fmt yuv420p resized_rear.mp4

ffmpeg -y -f concat -safe 0 -i tmplist.txt -c copy tmp2.mp4

不太推荐的解决方案:

只有一个解决方案,但它会重新编码所有视频(降低质量)。
不知道有没有使用文本文件的解决方案。

连接两个文件的示例 - 调整第二个视频的大小:

ffmpeg -y -i front.mp4 -i rear.mp4 -filter_complex "[1:v]scale=192:108,setsar=1[v1];[0:v][0:a][v1][1:a]concat=n=2:v=1:a=1[v][a]" -map "[v]" -map "[a]" -vcodec libx265 -crf 22 -pix_fmt yuv420p tmp_resized.mp4

【讨论】:

  • 为什么我以前可以毫无困难地做到这一点?是否与我来回更改文件类型有关(.mp4 --> .zzz --> .mp4)是否损坏了标题或其他内容?
  • 我不知道...你确定你以前有两个不同分辨率的视频文件吗?您是否可以修改其中一台摄像机的分辨率设置?
猜你喜欢
  • 2020-08-25
  • 2021-07-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-09-11
  • 1970-01-01
  • 2014-08-31
相关资源
最近更新 更多