当我使用时,force_original_aspect_ratio=decrease
视频居中。但是当我使用时,force_original_aspect_ratio=increase
只有高度会缩放以适合屏幕。宽度不会缩放,并且视频看起来被拉伸了。
这是我的代码和我正在使用的视频文件。
示例.bat
ffmpeg -i test1-.mp4 -r 30 -video_track_timescale 1000k -vf setsar=1 -q:v 1 -f mpegts -c:a copy test1.mp4
ffmpeg -i test3.mkv -r 30 -video_track_timescale 1000k -vf setsar=1 -q:v 1 -f mpegts -c:a copy test3.mp4
ffmpeg -f concat -i mylist1.txt -vf scale=720:1280:force_original_aspect_ratio=increase,setsar=1 merged_video2.mp4
我的列表1.txt
file test1.mp4
file test3.mp4
视频文件 https://drive.google.com/drive/folders/14mBJ_RyA-Pw1W-eCKn4ujB9FQ6UPZ1Y-?usp=sharing
test3.mp4 是使用时被拉伸的视频force_original_aspect_ratio=increase
。它具有自定义宽高比(屏幕录制)
这是我的工作解决方案,
图像序列测试1.bat
以下是我得出答案的过程。
图像序列测试.bat
我不知道为什么这些视频需要宽高比
1280x2275
,width = (1280*16)/9)
...可能是因为第一个视频是用高分辨率相机手机录制的。分辨率与1280x2275
正确的文件大小和屏幕显示大小相匹配(而720x1280
=缩小的屏幕大小,文件大小)...即使ffprobe
明确指出第一个视频的分辨率大小为720x1280
...渲染大小和文件大小表明这是不正确的,而那1280x2275
是正确的大小。