java - 如何在 Android 中使用 FFMPEG 将视频大小压缩到所需大小?
问题描述
我正在Android
开发需要将视频压缩到实际大小的 80%、60%、40% 和 25% 的应用程序。为了实现这一点,我在我的应用程序中使用了 VideoKit库。我可以在库中使用以下命令压缩视频。
String command = "-vf scale=960:540 -r 12 -qscale:v 10 -b:v 1762k -acodec copy -b:a 61k";
但我的要求是根据大小压缩视频。例如,我有 100MB 的视频,我想将它压缩到 60%,然后它应该被压缩到 60MB。请注意,我不关心视频的质量。上面的命令没有按预期工作。所以我遇到了两遍机制,它给出了所需文件大小的输出。如何在VideoKit库中使用以下命令。我尝试使用它,但它无法正常工作,错误代码为 3018。
ffmpeg -y -i input -c:v libx264 -b:v 2600k -pass 1 -an -f mp4 /dev/null && \
ffmpeg -i input -c:v libx264 -b:v 2600k -pass 2 -c:a aac -b:a 128k output.mp4
如果有人尝试过,那将对我有很大帮助。
解决方案
推荐阅读
- reactjs - 带参数的 useQuery 时反应查询 useMutation
- html - 材质旋转木马不在材质网格内渲染
- macros - 如何使用 Scheme 中的语法规则从 List 创建 Alist?
- node.js - 将项目的节点版本从 v6x 更新到 v12x
- android - 导航视图的菜单项无法导航到各自的目的地
- flutter - 我想通过添加dependencis在我的其他flutter应用程序中导入我自己的flutter包(上传到私人git服务器上)但它不起作用
- python - 在 Pycharm 中使用 GPU 运行 TensorFlow
- python - 如何使用 Scrapy 为下一页提取数据
- reactjs - 在“{}”类型上找不到带有“字符串”类型参数的索引签名
- laravel - Laravel - 检查 slug 字段是否为空,如果是则自动执行某些操作