h264编码速度质量参数设置

h264编码速度质量参数设置FFmpegandx26 参数说明 http ffmpeg org trac ffmpeg wiki x264Encoding 与编码速度和质量相关 av opt set c priv data preset slow 0 Currentprese

av_opt_set(c->priv_data, “preset”, “slow”, 0); Current presets in descending order of speed are: ultrafast,superfast, veryfast, faster, fast, medium, slow, slower, veryslow,placebo.

priv_data 属于每个编码器特有的设置域,用av_opt_set 设置

2014/5/29 :今天发现 av_opt_set(enc_ctx->priv_data, “preset”, “slow”, 0); slow的编码质量比medium(默认值)好多了。

固定码率150K,设置slow时:编码速度:245 fps 4ms

meidum 时:编码速度:335 fps 2ms,

veryslow 时:编码速度:140 fps 7ms

There is no native CBR mode, but you can “simulate” a constant bit rate setting by tuning the parameters of ABR, like

ffmpeg -i input -c:v libx264 -b:v 4000k -minrate 4000k -maxrate 4000k -bufsize 1835k out.m2v

in this example, -bufsize is the “rate control buffer” so it will enforce your requested “average” (4000k in this case) across each 1835k worth of video. So basically it is assumed that the receiver/end player will buffer that much data so it’s ok to fluctuate within that much.

Of course, if it’s all just empty/black frames then it will still serve less than that many bits/s (but it will raise the quality level as much as it can, up to the crf level).

只设置bit_rate是平均码率,不一定能控制住

提示 [libx264 @ 00c70be0] VBV maxrate specified, but no bufsize, ignored

再设置 c->rc_buffer_size = ; 即可。

如此控制后编码质量明显差了。。。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/224976.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月17日 上午10:25
下一篇 2026年3月17日 上午10:26


相关推荐

  • 谈谈FLP和CAP的关系

    谈谈FLP和CAP的关系1 写在前面承接上一篇博客 也谈分布式系统中的网络模型和故障模型 本篇博客仍然想探讨一些分布式系统的理论知识 大家应该都听说过分布式系统理论中的 FLP 不可能性和 CAP 不可能三角 那么 FLP 和 CAP 之间是什么关系呢 等价还是包含 本篇博客 就想来谈谈 FLP 和 CAP 之间的关系 2 理论回顾本节先分别回顾一下 FLP 和 CAP 这两个理论 2 1FLP 不可能性 Impossibilit

    2026年3月18日
    2
  • CSDN 夏令营课程 项目分析

    CSDN 夏令营课程 项目分析

    2022年1月14日
    41
  • cmd查询mysql端口占用,Window通过cmd查看端口占用、相应进程、杀死进程等的命令…「建议收藏」

    cmd查询mysql端口占用,Window通过cmd查看端口占用、相应进程、杀死进程等的命令…「建议收藏」如何查看程序占用的端口一、查看所有进程占用的端口在开始-运行-cmd,输入:netstat–ano可以查看所有进程二、查看占用指定端口的程序当你在用tomcat发布程序时,经常会遇到端口被占用的情况,我们想知道是哪个程序或进程占用了端口,可以用该命令netstat–ano|findstr“指定端口号”二、查看占用指定端口的程序当你在用tomcat发布程序时,经常会遇到端口被占用的情况…

    2022年5月19日
    39
  • java开发是什么_java开发到底是做什么的

    java开发是什么_java开发到底是做什么的1java开发到底是做什么的在互联网迅猛发展的时代,而我们如果对互联网一无所知,那就相当于文盲。所以很多人都想去了解它,去学习他。而作为互联网的产物——java,是一门非常不错的技术,学精通之后,你的未来不会再担心就业。那么下面小编给大家说说java开发到底是做什么的,希望能对你有些帮助。桌面级应用:尤其是需要跨平台的桌面级应用程序。桌面级应用:简单的说就是主要功能都在我们本机上运行的程序,比如w…

    2022年7月9日
    18
  • 软件行业职业规划

    软件行业职业规划每个 IT 心中都有一个自己的职业生涯规划 而且不得不承认 在这个行业里面工作时间长了 难免会丧失很多激情 一下是个人的职业规划 希望这个激情的火种能继续燃烧

    2026年3月19日
    2
  • Python判断字符串是否包含子字符串

    Python判断字符串是否包含子字符串Python如何判断一个字符串是否包含指定字符串?本文介绍Python判断一个字符串是否包含指定子串的4种方法。具有一定的借鉴价值。第一种使用in运算符最简单的方法是通过python的in运算符str=”Everyonehasaworld,quiteandlonely!”result=”world”instrresult2=”hello”i…

    2022年6月5日
    95

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号