本文为媒矿工厂翻译的技术文章
原标题:What is Video Encoding or Transcoding – Complete Guide
原作者:Krishna Rao
原文链接:https://ottverse.com/what-is-video-encoding-transcoding-codecs-compression/
翻译整理:徐鋆
-
什么是视频编码?
-
什么是视频转码及其与视频编码的区别?
-
视频编码中的质量与比特率(或大小)
-
视频编码的重要因素——编解码器、比特率、分辨率、时间、GOP、帧类型
-
视频编码是一门艺术还是一门科学?
什么是视频编码?
-
客观指标包括PSNR,SSIM,VMAF,这些是使用数学判断视频质量的指标。(以下链接阅读有关PSNR,VMAF和SSIM的更多信息:https://ottverse.com/calculate-psnr-vmaf-ssim-using-ffmpeg/,以下链接查看easyVMAF的相关信息:https://ottverse.com/vmaf-easyvmaf/,这是用于VMAF计算的便捷工具。)
-
诸如MOS之类的主观指标涉及强大的人为因素,一群人以0-5的分数对视频进行评分以评估其质量。这也称为黄金眼查看法。
什么是视频转码及与编码的区别?
-
解码不同的容器格式(mp4, ts)。
-
使用不同的视频编解码器(例如H.264/AVC, HEVC, AV1, VP9等)解码比特流。
-
更改视频的分辨率以产生不同分辨率的输出(对于ABR流制作至关重要)。
-
Transrating是指改变视频比特率的操作。
-
Transmuxing是指更改容器格式(例如将mp4更改为avi或ts)的操作。
视频编码/转码中的质量与比特率
-
使用离散余弦变换(DCT)将视频从像素域转换为频域。
如果不了解DCT的工作原理,可以查看以下链接:
https://ottverse.com/discrete-cosine-transform-dct-video-compression/。
-
使用一种称为量化的技术丢弃许多频域数据(称为系数),同时确保人眼无法感知这种数据丢失。
-
如果重度压缩视频,则会丢失大量信息,并且压缩效果在视觉上是可感知的(视频质量差)。
-
如果轻度压缩视频,则文件较大,但视频质量好。
1080p 低比特率
1080p高比特率
影响视频编码的重要因素
内容性质
容易压缩的视频
难压缩的视频
-
它包含快速动作运动吗?
-
有很多草或水(很难压缩!)
-
快速动作电影(战争还是高速汽车追逐?)
-
头和肩膀内容,例如新闻和脱口秀节目
-
卡通,动漫?
-
内容中是否包含在一个方向上移动的股票代码文本,而电影在另一个方向上移动?
-
LCEVC架构深入探讨:https://ottverse.com/lcevc-mpeg5-part2-low-complexity-enhancement-video-coding-guide/
-
LCEVC与H.264/AVC——增益28%,速度3倍:https://ottverse.com/lcevc-vs-avc-using-ffmpeg/
-
EVC(基本视频编码)简介:https://ottverse.com/guide-to-essential-video-coding-evc-mpeg5-part1/
-
采访VVC(通用视频编码)的架构师:https://ottverse.com/vvc-vvenc-vvdec-benjamin-bross-adam-wieckowski-hhi/
-
CBR或恒定比特率:在牺牲视频质量的同时,平均比特率保持恒定。
-
VBR或可变比特率:视频质量保持恒定,同时允许比特率波动。
-
Capped VBR或带限可变比特率:视频质量保持恒定,同时允许比特率在限制或上限范围内波动。
-
kbps或每秒千bit
-
mbps或每秒兆bit
-
使用视频的高度(例如1080p或720p)。
-
或提及宽度和高度的值:1920×1080或1280×720。
-
高分辨率视频(例如4K)将需要更多的比特和更多的时间进行压缩。
-
低分辨率视频(360p)将需要较少的比特,并且压缩速度更快
-
如果是直播流视频,那么就无法每分钟编码一帧视频,这将是灾难性的。而是需要以大约24 fps,50 fps或60 fps实时压缩视频。在这种情况下,编码器通常会牺牲质量以获取速度。
-
但是,如果仅需要流式传输视频,则可以奢侈地花费数小时来压缩每个小时的视频。在这种情况下,编码器将调整为缓慢压缩,并使用几种复杂的工具来获得更高的压缩效率和更好的视频质量。
-
顾名思义,封闭GOP对GOP外部的帧是封闭的。 属于封闭GOP的帧只能引用其自身GOP内的帧。
-
开放GOP与封闭GOP相反,它允许来自开放GOP的帧引用来自另一个GOP的帧。
-
I帧(关键帧或帧内帧)仅包含使用帧内预测的宏块。
-
P帧代表预测帧,并且除了空域预测之外,还允许使用时域预测来压缩宏块。对于运动估计,P帧使用先前已编码的帧。
-
B帧可以引用在其之前和之后出现的帧。 因此,B代表双向。
视频编码清单
-
了解观众——观众的典型带宽是多少?是否正在通过高速互联网流向城市人口?还是针对互联网速度较慢的农村人口?他们使用固定连接(有线互联网)吗?或者,他们是否一直在移动并且正在使用他们的移动数据流量?
-
终端用户使用什么设备?他们通常在大屏幕SmartTV上观看电视,还是主要使用手持智能手机?
-
正在流式传输的内容的性质是什么?它是快速运动电影,体育还是新闻等少运动内容,还是卡通等易于压缩的内容?
-
手上有多少时间用于压缩视频?直播还是点播?
-
使用哪个视频编解码器?目标受众的设备是否可以解码H.264/AVC, HEVC, AV1或VP9?
视频编码和转码工具
-
Mux.com
-
Encoding.com
-
Wowza.com
-
harmonic 360
-
AWS Elemental
-
QEncode
-
Coconut.co
-
Bitmovin.com
视频编码是艺术还是科学?
结论