-ss 和 -itsoffset negative 不起作用 FFMPEG

-ss 和 -itsoffset negative 不起作用 FFMPEG

这是我的命令行:

ffmpeg -r 30 -framerate 30 -f gdigrab -draw_mouse 0 -i title="Output" -f dshow
-i audio="CABLE Output (VB-Audio Virtual Cable)" -ss 1 -vcodec h264 -preset superfast
-pix_fmt yuv420p -vf "scale=trunc(iw/2)*2:trunc(ih/2)*2" -profile:v baseline
-level 3.1 -x264opts "keyint=60:min-keyint=60:no-scenecut" -ab 64k -ar 44100
-maxrate 2100k -minrate 2100k -bufsize 2100k -threads 1 "C:\Users\...\Desktop\TEST.mp4"

我的音频比视频延迟 1 秒。这意味着,视频先来了 1 秒。-ss 1正如您所见,我正在使用它,但它什么也没改变。我尝试更改为-itsoffset -1以及它们两者的所有可能的语法,但什么也没发生。

当我尝试使用正片来延迟视频时-itsoffset,一切正常,但是音频却不行。

有人知道为什么吗?

答案1

尝试

ffmpeg -framerate 30 -f gdigrab -draw_mouse 0 -i title="Output" -f dshow
-i audio="CABLE Output (VB-Audio Virtual Cable)" -vcodec h264 -preset superfast
-pix_fmt yuv420p -vf "scale=trunc(iw/2)*2:trunc(ih/2)*2" -profile:v baseline
-level 3.1 -x264opts "keyint=60:min-keyint=60:no-scenecut" -af asetpts=PTS-(1/TB) -ab 64k -ar 44100
-maxrate 2100k -minrate 2100k -bufsize 2100k -threads 1 "C:\Users\...\Desktop\TEST.mp4"

asetpts音频的输出时间戳偏移 1 秒,因此音频相对于输入同步提前一秒。

相关内容