ffmpeg - 如果视频输入不是 16:9,FFMPEG 会在图像中添加黑条
问题描述
所以我正在玩 ffmpeg 并且我目前有命令:
"ffmpeg_path -ss seek_time -i input_video_path -vframes 1 -f mjpeg output_image_path 2<&1"
我面临的问题是,例如我有一个来自手机的垂直视频,输出图像将被拉伸到 16:9,我想做的是在图像的一侧添加黑条,如果输入不是 16:9 格式。
关于我如何做到这一点的任何建议或想法?
谢谢!
解决方案
使用垫过滤器。相同的文档包含您想要的确切示例:
- 填充输入以获得 16:9 的最终 w/h 比:
pad="ih*16/9:ih:(ow-iw)/2:(oh-ih)/2"
可以使用以下-vf
选项指定过滤器:
ffmpeg -ss <time> -i <input> -vframes 1 -f mjpeg -vf pad="ih*16/9:ih:(ow-iw)/2:(oh-ih)/2" <output>
推荐阅读
- java - Spring Boot java.util.concurrent.ThreadPoolExecutor 大小
- javascript - Javascript将数组转换为对象数组
- amazon-web-services - 从 Airflow Celery Executor 连接到启用 TLS 的 Elasticache Redis
- python - Python任何和in和for循环的时间复杂度
- java - 如何在Java中将有理数转换为具有特定小数位数的字符串?
- php - 如何将数组与另一个数组相加以在 PHP 中创建多维数组?
- excel - 如何识别新客户/回头客
- halcon - HALCON 警告中 HAND-EYE 校准中的姿势对不一致
- wix - Wix 工具集 Bundle Chain 安装全局条件
- python - 我在哪里可以编辑使用 py2app 创建的 Python 包的版权?