Video FFMPEG裁剪大小总是错误的

Video FFMPEG裁剪大小总是错误的,video,ffmpeg,video-processing,Video,Ffmpeg,Video Processing,我需要一组视频精确到1024x512(2个视频的功率),不是少一个像素,不是多一个像素 我首先将它们缩放到1024宽度 然后将它们裁剪为1024x512 问题是 结果总是在宽度上多1个像素或少2个像素,等等 Source dimension : 1624 × 1080 Output dimension : 1022 × 512 使用 由于缩放过滤器对SAR进行了调整,您的媒体检查器可能报告了由非单位SAR校正的分辨率。setsar过滤器将SAR重置为1以防止出现这种情况 Source dime

我需要一组视频精确到1024x512(2个视频的功率),不是少一个像素,不是多一个像素

我首先将它们缩放到1024宽度

然后将它们裁剪为1024x512

问题是

结果总是在宽度上多1个像素或少2个像素,等等

Source dimension : 1624 × 1080
Output dimension : 1022 × 512
使用

由于缩放过滤器对SAR进行了调整,您的媒体检查器可能报告了由非单位SAR校正的分辨率。setsar过滤器将SAR重置为1以防止出现这种情况

Source dimension : 1264 × 720
Output dimension : 1025 × 512
rm -R ./output

mkdir output

cd input

for i in *.mp4;

  do name=`echo "$i" | cut -d'.' -f1`

  FILE="${name}"

  TMP="temp.mp4"

  INPUT="${FILE}.mp4"

  OUT_PUT="../output/${FILE}.mp4"

  JPEG_OUTPUT="../output/${FILE}.jpg"

  echo FILE

  echo INPUT

  ffmpeg -i $INPUT -filter:v scale=1024:-2 -c:a copy ${TMP}

  ffmpeg -i ${TMP} -filter:v "crop=1024:512:exact=1" -c:a copy ${OUT_PUT}

  # ffmpeg -loglevel panic -i $OUT_PUT -vframes 1 -f image2 $JPEG_OUTPUT

  rm ${TMP}

done
ffmpeg -i $INPUT -filter:v "scale=1024:-2,crop=1024:512:exact=1,setsar=1" -c:a copy ${TMP}