帮助我找到一个命令或脚本,可以将任何视频转换为16:9、h264和~2500kbps。我有一个服务器,人们上传不同质量,大小和长度的视频。它可以是640x480或1216x2160。最终,我需要获得16:9的分辨率(如果需要,带黑色边框)和没有明显质量损失的比特率,这将是在线广播可以接受的。
我有这个命令,但它不会检查视频的分辨率。如果视频是560x4481000kbps和700mb,那么转换后将是1280x7203000kbps和1.5 it,这是不正确的。
ffmpeg -i 5.avi -vcodec libx264 -crf 23 -preset veryfast -vf scale=1280:720:force_original_aspect_ratio=decrease,pad=1280:720:(ow-iw)/2:(oh-ih)/2,setsar=1 -tune zerolatency highoutput.mp4发布于 2019-12-08 17:10:35
请尝试以下内容作为起点:
ffmpeg -i "5.avi" -vcodec libx264 -crf 23 -vf "scale=w=trunc(ih*dar/2)*2:h=trunc(ih/2)*2, setsar=1/1, scale=w=1920:h=1080:force_original_aspect_ratio=1, pad=w=1920:h=1080:x=(ow-iw)/2:y=(oh-ih)/2:color=#000000" "output.mp4"请根据画质调整crf值。
发布于 2019-12-08 19:30:19
使用
-vf scale=iw*sar:ih,setsar=1,pad='max(iw+mod(iw,2),2*trunc(ih*16/9/2))':'max(ih+mod(ih,2),2*trunc(iw*9/16/2))':-1:-1
https://stackoverflow.com/questions/59233805
复制相似问题