加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

视频制作输出高质量视频文件教程

发布时间:2019-12-16 14:28:31 所属栏目:编程 来源:站长网
导读:首先我们先来搞搞清楚码率这个概念:一部电影下来,画面变化是很频繁的,刚才还花前月下,这会儿可能已拳脚相加,所以压缩率也一直在变化。为了跟踪这种变化,引入了码率(Bit Rate)的概念(更准确的译法应该叫码速,但中国学理工的人一般来说中文都很蹩

首先我们先来搞搞清楚码率这个概念:一部电影下来,画面变化是很频繁的,刚才还花前月下,这会儿可能已拳脚相加,所以压缩率也一直在变化。为了跟踪这种变化,引入了码率(Bit Rate)的概念(更准确的译法应该叫“码速”,但中国学理工的人一般来说中文都很蹩脚,现在我们只能叫“码率”了),即每秒播放出来的二进制数,是以bps(bits per second)为单位的。电影的播放时间是固定的,所以每秒通过的数据流越大,也就是这一时间段码率越大,间接说明其对原始影片的压缩率越小,从而达到更接近原始清晰度的效果。

早期的MPEG曾用过固定码率算法(CBR),后来在MPEG2中采用了动态码率(VBR),所以DVD的MPEG2实际压缩率比VCD的MPEG1还要高,因为画面大了数倍所以显得更加清晰些。SONY还曾推出过超大码率(Super Bit),被称为超比特压缩,因介质容量问题,没能广泛采用。
现在在数码影像界流行的M-JPEG,可以看作是将无数的JPEG画面每秒30帧地播放而形成的连贯视频,用这个思路也有助于我们了解MPEG2的动态压缩过程。

我们知道JPEG是静态图像压缩标准,如果用PHTOSHOP存贮一张JPEG图片,当压缩率设得很大时,失真率随之增大,画面会模糊不清,但文件占用空间会很小,选到最小压缩率也就是最好画质时,画面几乎没有失真,但二者存出的文件体积有可能相差10倍以上。我们可以想象一部90分钟长的电影(每秒30幅图像),是由90×60×30=24300幅图像组成的。如果有剧烈的运动,那么相邻画面便会产生明显的变化,这时我们可以采用较大的压缩率,使这一段视频所占空间变小,对于相对静止些的画面,我们采用最小压缩、最好画质,这样便成功骗过了我们的眼睛,到静止画面时捕捉到的细节,会告诉大脑画面刚才也是这么清晰。这就是为什么MPEG2的码率可以从1M到10M之间变化。这实在是一种既不损失播放质量,又能适当减小体积的好方法,但它只适用于动态画面。如果静态画面的码率不够大,失真就会严重,因此从侧面了解一部电影的清晰度,平均码率是一个很好的参考。

综合上面的介绍,我们知道:一副瞬间的画面,其即时码率越高,画面质量越高。

再让我们看看我们用VDM压缩得到avi文件的过程,在码率(Bitrate)这里,分为singlepass-bitrate,singlepass-quantizer,和multipass三种模式。singlepass-bitrate是固定码率也就是CBR,最简单的编码,影片码率将全程使用同一数值,对于大动态画面非常不适合。singlepass-quantizer既Q模式,也是属于动态码率VBR的一种,因为采用量化模式,可以根据我们指定的数值自动进行码率的计算,但很有可能和原片的码率相去甚远。multipass既多次运算模式,现在大家都习惯于使用2pass,即二次运算,第一次运算编码器会用最高品质编码,同时收集画面信息,将这些信息记录在stats文件中,以供第二次运算参考,第二次运算的时候,编码器会根据第一次压缩时获得的信息以及我们指定的目标码率(Target Bitrate)自动分配全片的码率,目标码率也就是最终文件的平均码率,而全程码率波动越大,其质量越高。顺便提一句,如果用到avs,其中的滤镜也会影响码率的变化。

第一副是我压制的罪恶之城的avi文件的码率曲线,采用2pass,目标码率设定1000kbps,大家可以看到高峰和低谷变化非常之大,实际平均码率为981kbps,最大4223kbps,最小只有7kbps。

 

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读