FFmpegAndroid 库在压缩后旋转视频

2023-12-06

execFFmpegBinary(new String[]{"-y", "-i", 路径, "-s", "160x120", "-r", "25", "-vcodec", "mpeg4", "-b: v”、“150k”、“-b:a”、“48000”、“-ac”、“2”、“-ar”、“22050”、文件路径});

视频压缩后自动旋转..

有什么解决办法吗?

这是库Link


这可能是自动旋转问题FFMPEG并且您必须禁用自动旋转:

ffmpeg -noautorotate -i input.mp4 output.mp4

如果此解决方案不能解决您的问题,您可以使用 Android API 获取输入视频旋转,如下所示:

MediaMetadataRetriever m = new MediaMetadataRetriever();
m.setDataSource(inputVideoFilePath);
String rotation;
if (Build.VERSION.SDK_INT >= 17) {
     rotation = m.extractMetadata(MediaMetadataRetriever.METADATA_KEY_VIDEO_ROTATION);
}

找到输入文件的旋转后,您必须相应地旋转输出文件,如下所示:

ffmpeg -noautorotate -i input.mp4 -filter:v "rotation*PI/180" output.mp4
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

FFmpegAndroid 库在压缩后旋转视频 的相关文章

随机推荐

  • 如何以编程方式判断Word文档是否损坏?

    我有一个小的 C 应用程序 可以与 word 进行互操作 将一堆 word doc 文件转换为文本文件 并且在大多数情况下 这都可以正常工作 但是 如果文档已损坏 则 word 无法打开该文件并弹出一个对话框 这意味着我无法完全自动化此转换
  • 强制关闭 Android Activity 之前的回调?

    我希望在我的应用程序崩溃之前执行一些紧急清理代码 我尝试使用 onDestroy onFinal 和 Finalize 无济于事 这在 Android Activity 中可能吗 好吧 我建议您的应用程序一开始就不要崩溃 如果有什么东西可能
  • 有没有更好的方法来求数字乘法和求和?

    int N 2345 var digitArray N ToString ToCharArray int multiplicationSum 1 foreach char digit in digitArray multiplication
  • 如何标记因子但仍保留其原始水平值 - R

    我将这个问题分为两部分 第一部分是一般问题 第二部分是具体问题 首先 我想知道是否有一种可能的方法来标记数字因子但仍保留其原始数字级别 这特别令人困惑 因为我意识到当我们将标签参数传递给一个因子时 它就会变成该因子的级别 例如 x lt f
  • 我的网址是否以斜杠 (/) 结尾?我该如何使用 codeigniter 来做到这一点

    我正在尝试找出最合适的 从我读过的文章来看 似乎最好以斜杠结尾 url 所以而不是 http example url article 内容如下 http example url article 首先 我调整了 htaccess 以强制尾随斜
  • 在 Java 中组成 URL 或 URI 的惯用方法是什么?

    如何在 Java 中构建 URL 或 URI 有没有一种惯用的方法 或者可以轻松做到这一点的库 我需要允许从请求字符串开始 解析 更改各种 URL 部分 方案 主机 路径 查询字符串 并支持添加和自动编码查询参数 从 Apache HTTP
  • Node.js 开始读取文件的特定行

    在 Node js 上 我们可以使用以下命令逐行读取文件readline module var fs require fs var readline require readline var rl readline createInterf
  • Azure 广告在声明中返回角色,但 User.IsInRole 返回 false

    知道是什么原因造成的吗 我可以在 User Claims 中看到声明 我唯一能想到的是 来自 Azure Ad Roles 的声明返回的结果与 IsInRole 检查的内容不同 声明中显示的 CorpAdmin 角色 User IsInRo
  • 使用 ...(rest) 参数将参数从数组传递到 Actionscript 方法

    我的问题是这个问题的 Flex 换位 我可以将数组作为参数传递给 Java 中具有可变参数的方法吗 也就是说 我在一些 Actionscript 代码中有一个数组 我需要将数组中索引的每个对象传递到一个方法中method arguments
  • 从 ListView 的自定义适配器中的 URL 加载图像 (Android Studio)

    虽然位图似乎已正确获取 但变量 userBitmap 将保持为空 然而 当在我的平板电脑上向上或向下滚动时 新的列表行将包含图片 但它们都是相同的并且是错误的 真的 真的很困惑 我尝试了多种不同的方法从网络获取图像 任何帮助是极大的赞赏 我
  • 如何恢复初始 git 提交?

    我第一次提交到 git 存储库 然后我对这个承诺感到后悔并想恢复它 我尝试 git reset hard HEAD 1 我收到这条消息 fatal ambiguous argument HEAD 1 unknown revision or
  • Ajax,防止点击时出现多个请求

    当用户单击登录或注册按钮时 我试图阻止多个请求 这是我的代码 但它不起作用 第一次工作正常 然后返回 false do login click function e e preventDefault if this data request
  • C# - 从数据表中删除具有相同列值的行

    我有一个DataTable看起来像这样 ID Name DateBirth 1 aa 1 1 11 2 bb 2 3 11 2 cc 1 2 12 3 cd 2 3 12 这是删除具有相同 ID 的行的最快方法 以获得类似的结果 保留第一个
  • iterparse 无法解析某个字段,而其他类似的则可以

    我用Python的iterparse解析 nessus 扫描的 XML 结果 nessus 文件 对意外记录的解析失败 但类似的记录已被正确解析 XML 文件的一般结构是很多记录 如下所示
  • 不同的控制器有不同的布局文件

    如何使我的 ZF2 模块加载特定控制器的其他布局文件 考虑你有IndexController and AdminController在您的 ZF2 应用模块中和IndexController正在使用布局 phtml但你想用管理布局 phtm
  • 在目录中递归查找并替换文件名

    我想重命名以以下开头的文件夹中的所有文件123 xxx txt to xxx txt 例如我的目录有 123 xxx txt 123 yyy txt 123 zzz txt 我想将所有文件重命名为 xxx txt yyy txt zzz t
  • WKWebView 缩放以适合

    从 UIWebView 转移到 WKWebView 我无法弄清楚如何使用 WKWebView 大小上的 loadHTMLString 函数加载我正在加载的 HTML 以适应视图边界 我现在可以加载 html 但它超出了我视图的右侧和底部 如
  • Android:将视图拖到屏幕外

    我有一个活动 用户可以在一些按钮周围拖放 我所有的可拖动视图都在RelativeLayout为了拖动它们 我改变了它们的上边距和左边距 一切都很完美 除了当我将视图拖动到靠近屏幕的右侧和底部边缘时 它们会收缩而不是被绘制到屏幕之外 有什么方
  • 如何使用群组碰撞?

    所以我一直想知道如何使用 pygame groupcollide 我现在完全被难住了 因为我使用的是 collide rect 所以没问题 但对于 groupcollide 我似乎无法弄清楚如何调用该组内项目的属性 我不能进行碰撞 因为会有
  • FFmpegAndroid 库在压缩后旋转视频

    execFFmpegBinary new String y i 路径 s 160x120 r 25 vcodec mpeg4 b v 150k b a 48000 ac 2 ar 22050 文件路径 视频压缩后自动旋转 有什么解决办法吗