如何使用 FFMPEG 获得最佳的 FLV 整体质量?

发布于 2024-09-08 17:13:09 字数 282 浏览 6 评论 0原文

我希望以最小的文件大小实现最佳质量的 FLV。毕竟,这不是每个人的目标吗?如果这有什么影响的话,这些视频将会被直播。

目前,我的视频宽度不超过 320 像素,有些是宽屏,因此它们的高度略小于 240 像素。就目前情况而言,转换后的 FLV 的质量相当差。

当前命令:

> ffmpeg -i video.mov -ar 22050 -ab 32 -f flv -s 320x240 -aspect 4:3 video.flv

I'm looking to accomplish the best quality FLV with the lowest file size. After all, isn't that everyone's goal? These videos will be streamed if that makes any difference.

For now, my video(s) are no wider than 320px, and some are widescreen, so their heights are a little smaller than 240px. As it stands, the quality of the converted FLVs is quite poor.

Current command:

> ffmpeg -i video.mov -ar 22050 -ab 32 -f flv -s 320x240 -aspect 4:3 video.flv

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

时间你老了 2024-09-15 17:13:09

默认情况下,flv 默认为 200Kb,qmax 高达 30(因为您没有覆盖它),它可能会产生接近该值的输出。
您可以通过以下任一方法解决此问题:

  • 将 qmax 设置为较低值,强制质量控制提高比特率以满足要求。
  • 使用 -vb 400k 提高比特率

在测试视频上,我刚刚尝试 -qmax 10 给出了可接受的输出。
使用 qmax 和 qmin 设置可接受质量的下限和上限是首选方法。

By default flv defaults to 200Kb and with the qmax being as high as 30 (since you're not overriding it) it'll probably be producing output near that.
You can fix this by either:

  • Setting qmax to a lower value forcing the quality control to up the birate to meet the requirement.
  • Upping the bitrate with -vb 400k

On the test video I just tried -qmax 10 gave acceptable output.
Using qmax and qmin to set the lower and upper acceptable quality is the preferred way.

悟红尘 2024-09-15 17:13:09

到目前为止,我对所提供的选项没有任何运气 - 其中大多数对我的输入文件没有影响,该文件始终产生质量差的结果 - 但以下确实效果很好:

ffmpeg -qscale 4 -i infile.avi outfile.flv

减少 qscale 值以获得更好的质量,增加它以获得较小的文件大小。来自文档

-qscale n 其中 n 是 1-31 之间的数字,其中 1 表示最高质量/最大文件大小,31 表示最低质量/最小文件大小。

在 Mac OS X 10.6.8 上测试。

I didn't have any luck with the options presented thus far - most of them had no effect on my input file, which was consistently producing poor-quality results - but the following worked very well indeed:

ffmpeg -qscale 4 -i infile.avi outfile.flv

Reduce the qscale value for better quality, increase it for a smaller file-size. From the docs:

-qscale n where n is a number from 1-31, with 1 being highest quality/largest filesize and 31 being the lowest quality/smallest filesize.

Tested on Mac OS X 10.6.8.

蛮可爱 2024-09-15 17:13:09

我认为最大化质量/大小比率的最佳解决方案是完全废弃 ffmpeg 的“flv”编码,并使用 H.264。

我通常使用 handbrake 将文件转换为 MP4/AAC,然后仅使用 FFMPEG 将文件重新混合到 FLV 容器中。

ffmpeg -i input_file.mp4 -vcodec copy -acodec copy -y output_file.flv

手刹也有很多参数,一些有趣的预设可以在这里找到:http://trac. handbrake.fr/wiki/BuiltInPresets

I think the best solution to maximize the ratio quality/size is to scrap the "flv" encoding of ffmpeg altogether, and use H.264 instead.

I'm usually using handbrake to convert files to MP4/AAC, and then only use FFMPEG to remux the file into an FLV container.

ffmpeg -i input_file.mp4 -vcodec copy -acodec copy -y output_file.flv

There are also a lot of parameters for handbrake, some interesting presets can be found here: http://trac.handbrake.fr/wiki/BuiltInPresets

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文