当前位置: 首页 > 知识库问答 >
问题:

用ffmpeg转换FLV到MP4的速度非常慢

谭伟
2023-03-14

我试图支持我们网站上的网络摄像头视频的录制,然后我需要转码到MP4和 ;WebM,以支持HTML5播放。我在我们的服务器上安装了FFMPEG1.2,整个过程运行得相当好。

不过,我遇到的一个问题是将FLV转换成MP4。它是不可接受的慢,例如,一个8秒的FLV需要大约2.5分钟的代码转换!

我使用的FFMPEG命令是:

ffmpeg -y -i webcam.flv -c:a libfaac -ac 2 -b:a 64k -ar 44100 -c:v libx264 \
  -b:v 350k webcam.mp4

有太多的FFMPEG参数,我有点不知道解决这个问题的最佳方法。您可以从这里下载测试flv:

dropbox.com/s/hhd6uhdiuhk800w/webcam.flv

相比之下,转码到WebM大约需要5秒:

ffmpeg -y -i webcam.flv -c:a libvorbis -ac 2 -b:a 64k -ar 44100 -c:v libvpx \
  -b:v 350k -metadata:s:v:0 rotate=0 webcam.webm

共有1个答案

微生德泽
2023-03-14

好的,我找到答案了。我仔细查看了ffmpeg输出,并注意到:

[mp4 @ 0xa0060c0] Frame rate very high for a muxer not efficiently supporting it.
Please consider specifying a lower framerate, a different muxer or -vsync 2

多。所以我添加了“-vsync2”作为输出文件之前的最后一个参数,它很有效,将代码转换时间缩短到了10秒左右!很开心。

对我来说,为所有类型的A/V输入制定“通用”ffmpeg设置仍然像是黑魔法...

 类似资料:
  • 在与ffmpeg的斗争中,经过几天的混乱,我已经设法让它几乎做我想做的事情! 我有一个音轨和一系列的图像,要转换成幻灯片显示每个图像5秒。 null

  • 我正试图在浏览器中显示mp4视频。原始文件具有AVI容器格式。我可以成功地转换到mp4和目标文件是可读的(视频+声音)与图腾电影播放器。所以我想显示贝娄页面一切都会好的 $ffmpeg-y-fflags+genpts-i input.avi-acodec copy-vcodec copy ouput.mp4 打开上面的html文件会播放声音,但不会显示视频。

  • 我正尝试在iOS应用程序中使用ffmpeg将本地。mp4视频转换为HLS。我已经使用pods集成了ffmpeg包装器,并生成了所有分段的。ts文件和m3u8文件,但是一些。ts文件段没有在。m3u8播放列表文件中列出,如下所示。它总是列出最后5个视频片段。 我使用以下代码生成HLS。 还有其他方法可以做到这一点吗?

  • 我不小心删除了一个视频文件,但设法用恢复工具保存了它。视频被破坏了,但我设法修复了它,现在有了一个。h264文件。 我对FFMPEG是完全陌生的,运气不太好。任何建议都会很好。 提前致谢

  • 1. Gradle 2.代码 3、Logcat: 采用gcc 4.9构建。x(GCC)20150123(预发布)配置:---目标操作系统=linux--交叉前缀=/root/bravobit/ffmpeg-android/toolschain-android/bin/arm-linux-androideabi---arch=arm--cpu=cortex-a8--启用运行时cpudetec--sy

  • 问题内容: 有谁知道如何使用Java将任何一种视频格式转换为flv,我一直在寻找用于转换视频的Java api,但似乎没有这种方法,但是可能有一种方法可以实现,我的意思是诸如youtube服务之类的功能确实可以转换视频,但是使用Java,我需要一个可以将视频显示为FLv格式但可以任何格式上传的网络应用程序,如果有人做出了类似的事情,请告诉我如何或任何想法, 谢谢。 问题答案: Java中没有人直接