video - 如何在不收到警告的情况下使用 ffmpeg 连接多个 webm 文件?

标签 video ffmpeg codec

我正在尝试使用此命令 ffmpeg -f concat -i mylist.txt -c copy finalvideo.webm 连接 6 个相同分辨率和相同编解码器的 WebM 视频文件,但我收到多个警告和最终警告输出只有第一个视频文件

我的列表.txt

file '1.webm'
file '2.webm'
file '3.webm'
file '4.webm'
file '5.webm'
file '6.webm'

ffmpeg日志

  built with gcc 7.1.0 (GCC)

Input #0, concat, from 'mylist.txt':
  Duration: N/A, start: 0.000000, bitrate: N/A
    Stream #0:0(eng): Audio: opus, 48000 Hz, mono, fltp
    Stream #0:1(eng): Video: vp9 (Profile 0), yuv420p(tv), 1920x1080, SAR 1:1 DAR 16:9, 1k fps, 1k tbr,
 1k tbn, 1k tbc
    Metadata:
      alpha_mode      : 1
Output #0, webm, to 'finalvideo.webm':
  Metadata:
    encoder         : Lavf57.78.100
    Stream #0:0(eng): Video: vp9 (Profile 0), yuv420p(tv), 1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 1k fps
, 1k tbr, 1k tbn, 1k tbc
    Metadata:
      alpha_mode      : 1
    Stream #0:1(eng): Audio: opus, 48000 Hz, mono, fltp
Stream mapping:
  Stream #0:1 -> #0:0 (copy)
  Stream #0:0 -> #0:1 (copy)
Press [q] to stop, [?] for help
[concat @ 0000000000797200] DTS -9223363446920184 < 3900 out of order
DTS -9223363446920184, next:3901000 st:1 invalid dropping
PTS -9223363446920184, next:3901000 invalid dropping st:1
[webm @ 00000000029e20e0] Timestamps are unset in a packet for stream 0. This is deprecated and will st
op working in the future. Fix your code to set the timestamps properly
DTS -9223363446920156, next:3902000 st:1 invalid dropping
PTS -9223363446920156, next:3902000 invalid dropping st:1
DTS -9223363446920128, next:3903000 st:1 invalid dropping




[webm @ 00000000029e20e0] Application provided invalid, non monotonically increasing dts to muxer in st
ream 0: 4094 >= 0
av_interleaved_write_frame(): Invalid argument
frame=  350 fps=0.0 q=-1.0 Lsize=    2436kB time=00:00:04.09 bitrate=4873.8kbits/s speed=11.7x
video:2576kB audio:46kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
Conversion failed!

最佳答案

尝试使用 -avoid_negative_ts 1 作为可能的解决方法。

升级您的 ffmpeg 版本可能会有所帮助。

https://trac.ffmpeg.org/ticket/6248

https://trac.ffmpeg.org/ticket/6979

关于video - 如何在不收到警告的情况下使用 ffmpeg 连接多个 webm 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56873496/

相关文章:

iOS:获取实时(ish)视频数据

javascript - Safari 中的 html5 视频自动播放延迟

Node.js - 我不断收到以下错误 : Error: ffmpeg stream: write EPIPE

debugging - 当 "codec => rubydebug"时,logstash 在哪里写入日志?

c# - 如何返回视频(flv)路径以在flowplayer中显示?

ios - 将视频保存到文档而不是相册

javascript - 在nodejs上使用ffmpeg连接mp4视频文件

Android 使用 FFmpeg 的位图系列和 mp3 创建 MP4(我需要最小的 ffmpeg 配置来构建)

编解码器内的Grails createLink?

android - 如何在 Android 设备上使用 pjsip 以获得 G.729 编解码器功能