FFmpeg 在启动时卡住了几秒钟

Posted

技术标签:

【中文标题】FFmpeg 在启动时卡住了几秒钟【英文标题】:FFmpeg stucks for few seconds on start 【发布时间】:2018-07-17 15:20:07 【问题描述】:

我正在尝试在 android 上剪切和调整视频大小(但在 MacOS 上类似),但是当我运行 ffmpeg 命令时它返回给我

帧= 0 fps=0.0 q=0.0 大小= 0kB 时间=00:00:00.00 比特率=N/A 速度=

它重复大约 20 秒(我有 3 秒持续时间的 4K 视频)。

有什么方法可以提高处理速度吗?这是我的 ffmpeg 命令的示例

ffmpeg -y -i input.mp4 -ss 00:01.82 -to 00:02.94 -vf scale=500:1024 -c:v libx264 -c:a aac -b:v 500k -b:a 96k 输出。 mp4

【问题讨论】:

【参考方案1】:

在输入执行解码后的寻帧后使用-ss,速度较慢。切换到解复用器搜索

ffmpeg -y -ss 00:01.82 -to 00:02.94 -i input.mp4 -vf scale=500:1024 -c:v libx264 -c:a aac -b:v 500k -b:a 96k output.mp4

-to for demuxer 是最近才添加的,所以获取当前的 git 版本。否则,将 -t 与计算的持续时间一起使用。

【讨论】:

不幸的是,这两个选项都不适用于我,使用 -t 而不是 -to 让它变得更慢,并且在输入不可用之前设置 -ss 和 -to,它只是失败了 好的,谢谢,这份报告帮助我了解了正在发生的事情。问题是“-to”参数以某种方式属于输出文件,但“ss”参数可以属于输入文件。我会编辑你的答案,让人们看到正确的答案 不,我的回答是正确的。 -to for demuxer 是最近才添加的。对于旧版本,您必须使用 -t(作为输入参数) 好吧,-t 在 Android 上也适用于我,只是没有可能为此构建更新版本

以上是关于FFmpeg 在启动时卡住了几秒钟的主要内容,如果未能解决你的问题,请参考以下文章

Linux为什么卡住了?

Linux为什么卡住了?

Grails 应用程序在启动时卡住,因为 DATABASECHANGELOG 表被锁定

电脑启动时的检查卡住了怎么办

linux 启动卡住不动

FFmpeg 手动启动,但在启动时不使用 Systemd