请问有人比较熟悉FFmpeg吗?咨询一个参数:buffer

最近在处理积攒下来的视频(就是你懂的那种),对那种商业视频是直接无损剪裁处理的,但是现在有越来越多自拍的视频(也是你懂的那种)

这种视频一般都是非专业设备录制,其实清晰度很低,但是码流又比较大,导致很占空间,所以准备把一些有收藏价值的重新压一下,最开始是使用的Premiere,能同时做一些基本的剪裁、降噪、遮挡水印等操作,同时压制成H.265编码的MP4.

这几天做下来的经验是一个2G大小的视频,可以压制到200M左右,而清晰度几乎没有变化。

同时又遇到了一个问题,在这些自拍的视频中,有些清晰度非常低,分辨率也很小,比如360 x 540这种的,但是在Premiere中,H.265动态码率最低只能设置到0.19Mbps(Adobe公司其他的 几个软件也一样,比如Media Encoder和AE)

但实际上这类视频设置到50kbps的码流都不会影响清晰度。所以换用了FFmpeg,又用了它的GUI程序:FFQueue,码流设置到1kbps都行,
但是在使用动态码流的时候,也就是设置了最高和最低码流之后,会提示必须设置buffer,请问这个参数是什么意思?应该如何设置比较好?会影响视频的哪些方面?这个参数是否与其他参数有关联关系?(比如某个参数设100,这个参数最好在5到10什么的)

我只想问下老司机,用什么下载种子比较好.迅雷bt就是没有速度
之前用的格式工厂压缩视频,不太熟FFmpeg
buffer看起来是设置缓冲区大小,应该是转码中转时申请的内存大小不会影响到最后的文件,设置个512看看(不靠谱猜测)

卧槽老哥你是91大神么

压视频我一般喜欢用 handbrake 和 XmediaRecode。h.264 设置固定质量 20,码率什么的都不操心,压出来效果就很好。

buffer这个参数,如果是缓存的话,单位不应该是kbytes/s。总感觉这个参数是和H.265的编码算法相关的。

比如H.265用到的熵编码中的变长编码,运动矢量预测方法,自适应变换,感觉都可能与这个buffer参数有关,这是会影响到视频压缩质量的。(不是简单的一个中转缓冲区)

找到大概的解释了:

ffmpeg官方wiki比较建议,设置b:v时,同时加上 -bufsize
-bufsize 用于设置码率控制缓冲器的大小,设置的好处是,让整体的码率更趋近于希望的值,减少波动。(简单来说,比如1 2的平均值是1.5, 1.49 1.51 也是1.5, 当然是第二种比较好)

-bufsize 就是设置缓存池的大小,在控制比特率时,每填满一次缓存池就检测一次是否超过比特率设置然后决定是否进一步处理该段数据。

做个不严谨的说明,仅供理解大概:
假设有个视频每秒的比特率都不同,它前5秒比特率分别是 50k、50k、125k、125k、150k;输出比特率限定为 50k-100k。

假如 -bufsize 设为 100k:
那么读到第二秒时,凑满100k了,检查一下,100k/2s,没超标,放行;
第三秒没读完,满了,检查一下,100k/0.8s=125,超了,压
这样 -bufsize 太小,就频繁检查,频繁压缩,影响画质。

假如 -bufsize 设为 500k:
500k=50k+50k+125k+125k+150k,500k/5s=100,合格,不压;
那么实际出来的视频就会在50k-150k波动,超出预期的50k-100k。

按照官方建议,游戏视频之类的检查间隔为 1-2s,静态的可以延长到5s。
也就是 bufsize = maxrate * (1~2) 或者 maxrate * 5

3 个赞

不是不是,从来不在网上发自己的视频照片,无论打码还是不打码

但是收集了很多…(可以类比7000软件那个帖子,但是要比软件丰富的多的多的多…)

冷门资源慢是正常的,快才是不正常的。或许有公网 ip 会好一点。

关于下载,我没有看到比这两个系列帖子讲的更全面的了,可以看一遍。

迅雷大全+迅雷无法下载替代工具 :https://www.52pojie.cn/thread-944208-1-1.html

常用BT种子、磁力链、ed2k链等下载资源P2P搜索工具:https://www.52pojie.cn/thread-946507-1-1.html

感谢大佬,你解释的太清楚明白了,多谢多谢。

LZ好人一生平安image