我正在尝试缩放Android手机捕获的视频,以减少要上传到服务器的数据量。我现在正在做的是:
String.format("-i %s -vf \"scale='if(gt(a,1),-1,%d)':'if(gt(1,a),%d,-1)'\" -strict -2 %s", in, h, w, out);
它缩小得很好。但是用户经常以不同的方式打电话。在设备上播放原始视频时,它会根据元数据中保存的旋转进行旋转。但编码后的视频不包含此信息。
如何根据此数据执行旋转视频的缩放,或者至少将此数据存储在输出文件中? 感谢。
答案 0 :(得分:0)
使用ffmpeg
的最新版本。它将根据旋转元数据/ sidesata自动旋转。旋转后,旋转的元数据将被删除。
另外,请考虑stream copying音频,而不是重新编码。