ffmpeg - 我如何强制 ffmpeg 在保持纵横比的同时保持大小可被 2 整除?
问题描述
例如,这个命令行:
ffmpeg -i rtsp://184.72.239.149/vod/mp4:BigBuckBunny_175k.mov -vf "scale=w=416:h=234:force_original_aspect_ratio=decrease" -an -f rawvideo -pix_fmt yuv420p -r 15 -
工作正常,除非源视频为 360x240,输出将为 351x234。由于颜色数据的存储方式,很难处理具有奇数大小的 yuv420p 视频,这有点糟糕。
有没有办法可以强制 ffmpeg 给出最接近的可能偶数值?
解决方案
如果您正在调整大小,请仅使用具有绝对值的维度之一,例如:
改变:
-vf "scale=w=416:h=234:force_original_aspect_ratio=decrease"
至:
-vf "scale=w=416:h=-2"
应缩放到 416 的宽度并适当缩放高度,以使纵横比保持不变。
-2 = scale using mod 2
-4 = scale using mod 4 etc....
推荐阅读
- javascript - 连接反应是按行可视化的组件
- java - 非易失性共享变量的损坏
- node.js - NodeJS 中的 SaxonJS
- c# - 上传后将视频添加到播放列表引发 NotFound 错误(Youtube API v3)
- flutter - 无法在 Visual Studio Code 上启动 Dart Analyzer
- python - 如何处理大量轴标签?
- flutter - 在 Flutter 应用程序中显示 git 上次提交哈希和当前分支/标签
- haskell - 如何在Haskell中将列表连接成带有分隔符的字符串
- sql - 仅获取第一行或最高值 SQL
- swift - 快速的类属性行为