【问题标题】:Android video compression using ffmpeg使用 ffmpeg 的 Android 视频压缩
【发布时间】:2014-07-02 12:35:46
【问题描述】:

我正在使用 ffmpeg 库压缩视频。 用户可以浏览任何视频并对其进行压缩。它适用于视频名称没有空格的视频。但如果视频名称有空格,压缩不起作用。我们尝试为视频路径添加双引号,但它仍然无法正常工作。例如。我们的视频路径是这样的 - /storage/sdcard1/Video/teri jhuki nazar.mp4

如何解决这个问题?

【问题讨论】:

  • 您是否尝试过对 URL 进行编码(将空格替换为 %20)?或者尝试在这个answer 中创建一个URI?
  • 是的,我尝试了以下命令,但仍然无法正常工作 ffmpeg -i /storage/sdcard1/Video/teri%20jhuki%20nazar.mp4
  • 先尝试重命名文件,不带空格。压缩重命名为原始文件后
  • @Nikhil Desale,我正在尝试将 FFmpeg 库集成到我的 android 应用程序中,但在添加依赖项后我没有得到正确的想法。如何在我的活动中使用 FFmpeg 来减少视频。你能给我一些想法吗?

标签: android video ffmpeg compression filenames


【解决方案1】:

ffmpeg 中,每个命令都使用空格单独标识。 当您指定包含空格的路径时,路径将根据空格进行拆分,并将被视为不同的命令,因此会出现错误。

Here你可以看到每个命令是如何区分的。

我建议您在命令样式和差异化方面进行自己的更改。


参考:

【讨论】:

    【解决方案2】:

    用“\”替换空格

    String filePath = "/storage/sdcard1/Video/teri jhuki nazar.mp4";
            filePath = filePath.replace(" ", "\\ ");
    

    ffmpeg -i /storage/sdcard1/Video/teri%20jhuki%20nazar.mp4
    

    【讨论】:

    • 我的推荐是:"ffmpeg -y -i "+picturePath+" -strict experimental -vcodec libx264 -crf 20 /sdcard/videokit/out.mp4";它不适用于仅具有空间的视频名称
    【解决方案3】:

    使用以下示例代码避免视频文件中出现空格。

    String temp = URLDecoder.decode("Your file path");
    
    String videopath = temp;
    

    然后将视频路径发送到 ffmpeg。这是goona工作。

    【讨论】:

      猜你喜欢
      • 2014-05-28
      • 1970-01-01
      • 2013-12-29
      • 2016-06-09
      • 2017-03-02
      • 2017-01-21
      • 2015-10-22
      • 1970-01-01
      • 2021-02-27
      相关资源
      最近更新 更多