Android ffmpeg压缩后的反向视频分辨率

Android ffmpeg压缩后的反向视频分辨率,android,ffmpeg,android-ffmpeg,Android,Ffmpeg,Android Ffmpeg,我正在尝试使用ffmpeg将视频压缩为mp4格式 带刻度过滤器: cmd = "-i, "+in+" -vf scale=480:-2,setsar=1:1, "+out; 或者像这样简单: cmd = "-i, "+in+" "+out; 如果我尝试使用这个命令,很多玩家(如potPlayer(win)或mxPlayer(android)的输出都会很好,但有些玩家(如kmPlayer.v3(win))的输出会被拉伸。带或不带刻度过滤器 我用手制动器尝试了相同的视频压缩,所以我发现我的播放器

我正在尝试使用
ffmpeg
将视频压缩为
mp4
格式

带刻度过滤器:

cmd = "-i, "+in+" -vf scale=480:-2,setsar=1:1, "+out;
或者像这样简单:

cmd = "-i, "+in+" "+out;
如果我尝试使用这个命令,很多玩家(如potPlayer(win)或mxPlayer(android)的输出都会很好,但有些玩家(如kmPlayer.v3(win))的输出会被拉伸。带或不带刻度过滤器

我用手制动器尝试了相同的视频压缩,所以我发现我的播放器没有问题

结果与我压缩的所有视频相同

还有另一个更烦人的问题,输出视频的分辨率被颠倒了。例如:

输入:w1280 h720

输出:W720H1280


我在谷歌上搜索了很多,但什么也没找到。

当你在上以纵向模式录制视频时,它可能已经设置好了,ffmpeg无法在缩放过滤器中正确使用它


您可以在ffmpeg命令行中添加-noautorotate选项,或者有一种方法可以更正元数据。

如果您在Android设备上以纵向模式拍摄视频,它可能已设置,并且您的ffmpeg无法在缩放过滤器中正确使用它。请尝试将-noautorotate添加到ffmpeg命令行。@AlexCohn是,
-noautorotate
解决了这个问题。当然,如果你想回答这个问题,我会接受的。谢谢。在android中,我在ffmpeg命令中添加了-noautorotate,但ffmpeg无法识别。请看一下这个命令:String[]cmd={“-i”,videoPathtem,“-i”,watermarkImagePath,“-filter_complex”,“overlay=0:0”,“-strict”,“-2”,“-metadata:s:v:0”,“rotate=“+videoRotation,resultVideoPath}@Muhammadhassan您有
rotate
命令,因此ffmpeg将忽略
-noautorotate
。它仍然不起作用,因为ffmpeg无法识别该命令,所以该命令和所有其他命令是否以ffmpeg的特定顺序编写?