【问题标题】:FFMPEG command execution taking too much time in androidFFMPEG命令执行在android中花费太多时间
【发布时间】:2017-06-01 01:43:03
【问题描述】:

当我运行 FFMPEG 的任何命令时,执行时间过长。我正在使用 FFMPEG 命令进行反向视频、音频视频合并、创建 GIF 图像和更改视频速度。请告诉我如何快速运行 FFMPEG 命令。请帮帮我

【问题讨论】:

  • 添加一些您正在使用的示例命令,也许如果它们没有优化,people cab 可以帮助您优化它们并加快流程。
  • GIF 创建命令:String[] cmd = {"-y", "-i",path, "-vf", "scale=720:-1", "-t", " 10", "-r", "10", pathForSave};
  • 加速和慢速视频命令:String[] cmd = {"-y", "-i", videopath, "-filter_complex","[0:v]setpts=1.0*PTS[ v];[0:a]atempo=1.0[a],"-map","[v]","-map","[a]",pathForSave};
  • 您需要显示完整的ffmpeg 命令以及生成的完整控制台输出/日志。

标签: android ffmpeg android-ffmpeg


【解决方案1】:

在 ffmpeg 命令中添加以下代码以提高处理速度

-c:v libx264 -preset ultrafast

用于音频修剪

int minutes = (int) Math.floor(start_sec / 1000 / 60);
        int seconds =(int)Math.ceil(start_sec / 1000) - (minutes * 60);
        int endSeconds=(int) ((end_sec / 1000) - (minutes * 60));
        int duration=endSeconds-seconds;
        Log.d("start_point_seconds",""+seconds);
        Log.d("start minutes",""+minutes);
        String[] complexCommand = {"-i", src + "", "-ss", "00:"+minutes+":"+seconds, "-t",""+duration ,"-acodec","copy","/storage/emulated/0/Music/"+app_name+"/music_" + number + ".mp3"};

【讨论】:

  • 对不起,这不起作用。它不会编辑我的音频文件。这就是为什么这么快
  • 对不起,这不起作用。它不会编辑我的音频文件。这就是为什么这么快
  • 当音频持续时间超过 1 分钟时,我需要将音频文件修剪 1 分钟。但修剪大约需要 30 - 35 秒。我用过这个选项,但是输出文件和原来的文件是一样的。
【解决方案2】:

您应该在您的 ffmpeg 命令中使用“-preset”、“ultrafast”来加快执行时间,但它仅在视频小于 15 秒时才有效,否则它会加快执行时间但会延迟视频播放的启动时间,它可能看起来喜欢你的音频和视频与帧不匹配

【讨论】:

  • 我为 60 秒的视频做了什么。我正在合并音频和视频
  • 如果你想合并从同一视频中获取的音频,那么为了保证分辨率和帧的安全,请尝试添加“-q:v”、“1”,对于较大的视频,您可以尝试设置“-framerate " 或 -fps" 并使用 "acodec", "copy", "-vcodec", "copy" 以获得更好的合并输出
【解决方案3】:

ffmpeg 的执行时间取决于文件的大小。所以无论大文件转换需要很长时间,但这也取决于您执行的操作类型。

【讨论】:

  • 先生,我只使用 10 秒的视频来创建 gif,15 秒的视频反向和 60 秒的视频音频合并,但这需要太多时间
【解决方案4】:

是的,它在 Android 设备上非常慢。 FFMPEG 在大多数 Android 设备上都没有硬件速度。这意味着所有的计算都在CPU 中完成。 FFMPEG 命令的速度在很大程度上取决于设备的 CPU 速度。

对于通过FFMPEG进行视频处理的音频,它必须逐个样本或逐帧处理数据。

您可能会认为其他具有硬件加速功能的解决方案,例如 MediaCodecRenderScriptOpen GLESOpen CL,进行密集计算以加速。

【讨论】:

  • 如何转换慢动作视频,除了ffmpeg
猜你喜欢
  • 2020-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-01-10
  • 2017-08-04
  • 2013-05-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多