ffmpeg - 如何获得最高分辨率,可被 2 整除,其中包含旋转后没有黑色边框的视频?

标签 ffmpeg

我旋转视频。然后我的目标是获得最大的分辨率,可被 2 整除,其中包含没有黑色边框的视频。

rotated and bigger



rotated, smaller and dividable by 2

我的做法。

ffmpeg -ss 6 -i "t.MP4" -ss 0 -t 5 -vf "rotate='8*PI/180:ow=hypot(iw,ih):oh=ow', scale='1920:1920', crop='1920:1080:0:420'" -c:v libx264 -crf 28 -acodec copy "t2.MP4"

但这不符合标准。我需要哪个命令?

最佳答案

利用

ffmpeg -i t.mp4 -vf "rotate=8*PI/180:ow=rotw(8*PI/180):oh=roth(8*PI/180), \
                     crop=iw-2*imgh*sin(8*PI/180):ih-2*imgw*sin(8*PI/180): \
                     imgh*sin(8*PI/180):imgw*sin(8*PI/180), \
                     scale=iw:-2"
       -c:v libx264 -crf 28 -acodec copy "t2.MP4"

对于逆时针旋转,在旋转过滤器中的角度添加 -ve 符号,而不是在裁剪过滤器中。

在上面的命令中,imgwimgh代表源图像的宽度和高度,必须明确提供,即对于 1280x720 视频,其中显示 imgw , 你应该提供 1280 .

关于ffmpeg - 如何获得最高分辨率,可被 2 整除,其中包含旋转后没有黑色边框的视频?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36792081/

相关文章:

shell - ffmpeg 获取并非所有 jpg 文件

video - FFmpeg: "[h264 @ <hexnumber>]AVC: Consumed only n bytes instead of n+6"

.net - 使用FFMPEG上传后如何获取音频文件的持续时间

macos - python3.6 ffmpeg调用MacOSX(关闭)

ffmpeg - 最好的服务器端视频处理库或软件

php - 跳过 MP4 视频

c#-4.0 - ffmpeg 水印错误 : video pixel format unknown, Parser not found for codec

macos - OSX 上 ffmpeg 的神秘错误

c - 如何获取 ffmpeg 链接到的库列表(静态 ffmpeg 库)?

php - 使用 ffmpeg 和 php 执行帧转换