将-reset\u时间戳与编码结合使用。ts代替。mp4基本上解决了这个问题-编码时reset\u时间戳似乎不起作用。mp4,不知道为什么,可能是个bug?
我之所以这么说,主要是因为音频在第一段后仍会在一帧左右漂移,但不是指数级的。我发现一帧的音频去同步是可以接受的。虽然我现在应该提到的是,当我尝试将这些剪辑重新连接在一起时,我会遇到音频漂移问题,不总是,但有时会。使用aresample=async=250可以修复concat后的漂移,但这样做时,您可以听到音频有点拉伸。不能指望一切都完美。
ffmpeg - y -thread_queue_size 9999 -indexmem 9999 -guess_layout_max 0 -f dshow -video_size 3440x1440 -rtbufsize 2147.48M ^
-framerate 200 -pixel_format nv12 -i video="Video (00 Pro Capture HDMI 4K+)":audio="SPDIF/ADAT (1+2) (RME Fireface UC)" ^
-map 0:0,0:1 -map 0:1 -flags +cgop -force_key_frames expr:gte(t,n_forced*2) -c:v h264_nvenc -preset: llhp -pix_fmt nv12 ^
-b:v 250M -minrate 250M -maxrate 250M -bufsize 250M -c:a aac -ar 44100 -b:a 384k -ac 2 -r 100 ^
-af "atrim=0.038, asetpts=PTS-STARTPTS, aresample=async=250" -vsync 1 -ss 00:00:01.096 -max_muxing_queue_size 9999 ^
-f segment -segment_time 600 -segment_wrap 9 -reset_timestamps 1 C:\Users\djcim\Videos\PC\PC\PC%02d.ts