音视频相关业务名词解释
本文为扫盲文,为刚进入音视频行业的同学提供一些专业名词的解释,方便更快熟悉音视频相关的业务。
视频上传
顾名思义,视频上传 即通过使用相关工具,将视频从本地导入到云端服务器进行存储的过程。
stream视频流
视频流是指视频数据的传输,例如,它能够被作为一个稳定的和连续的流通过网络处理。
因为流动,客户机浏览器或插件能够在整个文件被传输完成前显示多媒体数据。
视频流式传输的优点:
- 启动时延大幅度缩短,边下边播,不需要等待所有内容下载完成才开始浏览。网络状况较好的情况下,卡顿较少,但快进、快退需要时间等待
- 对系统缓存容量的需求大大降低, 由于Internet是以包传输为基础进行断续的异步传输,数据被分解为许多包进行传输,动态变化的网络使各个包可能选择不同的路由,故到达用户计算机的时间延迟也就不同。所以,在客户端需要缓存系统来弥补延迟和抖动的影响和保证数据包传输顺序的正确,使媒体数据能连续输出,不会因网络暂时拥堵而使播放出现停顿。虽然流式传输仍需要缓存,但由于不需要把所有的动画、视音频内容都下载到缓存中,因此,对缓存的要求降低。
- 流式传输的实现有特定的实时传输协议采用RTSP等实时传输协议,更加适合动画、视音频在网上的流式实时传输。
流媒体的组成部分
- 编码工具:用于创建、捕捉和编辑多媒体数据,形成流媒体格式
- 流媒体数据
- 服务器:存放和控制流媒体的数据
- 网络:适合多媒体传输协议甚至是实时传输协议的网络
- 播放器:供客户端浏览流媒体文件 这5个部分有些是网站需要的,有些是客户端需要的,而且不同的流媒体标准和不同公司的解决方案会在某些方面有所不同。 3、各种多媒体信息的流媒体传输格式 在Internet上所传输的多媒体格式中,基本上只有文本、图形可以照原格式在网上传输。动画、音频、视频等虽然可以直接播放在网上播放,但文件偏大,即使使用专线上网,也要等完全下载后才能观看,这三种类型的媒体均要采用流式技术来进行处理以便于在网上传输。另外,还有一些如PowerPoint文件、多媒体课件等内容也需要用流式技术进行传输。 流媒体格式是将一个资料(动画、影音等)分段传送,用户不必等待整个内容传送完毕,就可以观看到即时的连续的内容,甚至可以随时的暂停、快进、快倒。由于不同的公司发展的文件格式不同,传送的方式也有所差异,因此,我们必须非常清楚各种流媒体文件的格式。
视频播放
流媒体是从英语Streaming Media中翻译过来,它是一种可以使音频、视频和其它多媒体能在Internet及Intranet上以实时的、无需下载等待的方式进行播放的技术。流媒体文件格式是支持采用流式传输及播放的媒体格式。流式传输方式是将动画、视音频等多媒体文件经过特殊的压缩方式分成一个个压缩包用户不必像非流式播放那样等到整个文件全部下载完毕后才能看到当中的内容,而是只需经过几秒或几十秒的启动延时即可在用户的计算机上利用相应的播放器或其它的硬件、软件对压缩的动画、视音频等流式多媒体文件解压后进行播放和观看,多媒体文件的剩余部分将在后台的服务器内继续下载。
流式下载编辑
下载边播放的BT软件,下载时必须要从电影的开头下载,而并非是其它BT软件的下载方式.,这种可以边下载边播放的下载 方式,就可以称为流式下载… 如果想要边下载边播放的话,就推荐你用流式下载. 如果是其它无法在线播放的资源,推荐使用非流式下载. 媒体是指采用流式传输的方式在Internet播放的媒体格式。 流式传输方式则是将整个A/V及3D等多媒体文件经过特殊的压缩方式分成一个个压缩包,由视频服务器向用户计算机连续、实时传送。在采用流式传输方式的系统中,用户不必像采用下载方式那样等到整个文件全部下载完毕,而是只需经过几秒或几十秒的启动延时即可在用户的计算机上利用解压设备(硬件或软件)对压缩的A/V、3D等多媒体文件解压后进行播放和观看。此时多媒体文件的剩余部分将在后台的服务器内继续下载。 与单纯的下载方式相比,这种对多媒体文件边下载边播放的流式传输方式不仅使启动延时大幅度地缩短,而且对系统缓存容量的需求也大大降低。(ChinaByte)
H264 H265
H.265与H.264有何不同,同等画质体积仅为一半、带宽占用省一半、画质更细腻等诸多优势 首先分别介绍一下:H.264与H.265
1、H.264也称作MPEG-4AVC(Advanced Video Codec,高级视频编码),是一种视频压缩标准,同时也是一种被广泛使用的高精度视频的录制、压缩和发布格式。H.264因其是蓝光光盘的一种编解码标准而着名,所有蓝光播放器都必须能解码H.264。H.264相较于以前的编码标准有着一些新特性,如多参考帧的运动补偿、变块尺寸运动补偿、帧内预测编码等,通过利用这些新特性,H.264比其他编码标准有着更高的视频质量和更低的码率
2、H.265/HEVC的编码架构大致上和H.264/AVC的架构相似,也主要包含:帧内预测(intra prediction)、帧间预测(inter prediction)、转换 (transform)、量化 (quantization)、去区块滤波器(deblocking filter)、熵编码(entropy coding)等模块。但在HEVC编码架构中,整体被分为了三个基本单位,分别是:编码单位(coding unit,CU)、预测单位(predict unit,PU) 和转换单位(transform unit,TU )。
H.265是新的编码协议,也即是H.264的升级版。
视频拆条
视频拆条是因互联网视频和新媒体短视频内容平台的需要,对传统电视媒体节目进行二次加工,将原来完整的一条节目内容,按照某种逻辑思维或特定需要,将其拆分成多条视频。
互联网视频内容的主要来源包括传统电视媒体的节目、各类机构视频成品、影视公司影视作品,通过将这些视频拆条,可以深度挖掘有价值的信息,重新编目后,可用于IPTV、OTT、手机电视和新媒体短视频平台,满足新媒体视听节目碎片化要求,是视音频编目行业一个新的尝试和探索。
视频抽帧
从视频流中截取关键的帧
简单的说,视频抽帧就是从视频中把要做抽帧的片段在轨道里放到能看见一帧帧画面的模式,用刀片再割断删除你要去除的某帧,比如每隔一帧去除一帧,或者每隔三帧去除二帧~等等等等,然后将剩下的帧移动紧挨对齐,这就是抽帧。
视频帧率
视频帧率(Frame rate)是用于测量显示帧数的量度。所谓的测量单位为每秒显示帧数(Frames per Second,简:FPS)或“赫兹”(Hz)。此词多用于影视制作和电子游戏。
视频帧率(Frame rate)是用于测量显示帧数的量度。所谓的测量单位为每秒显示帧数(Frames per Second,简:FPS)或“赫兹”(Hz)。此词多用于影视制作和电子游戏。
视频分发
一般视频分发基于算法进行
视频来源多样化,有的基于UCG(用户主动生成),有些基于爬虫,爬取其他平台的内容(一般都有水印)
视频分发还可以配合精准推荐算法,进行定向广告投放
|
|
视频缩略图
一般会抽取视频第一帧作为视频缩略图,或者支持后台上传图片作为视频缩略图
ffmpeg
FFmpeg是一个开源免费跨平台的视频和音频流方案,属于自由软件,采用LGPL或GPL许可证(依据你选择的组件)。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/视频编解码库libavcodec,为了保证高可移植性和编解码质量,libavcodec里很多codec都是从头开发的。
这个项目最早由Fabrice Bellard发起,现在由Michael Niedermayer维护。许多FFmpeg的开发人员都来自MPlayer项目,而且当前FFmpeg也是放在MPlayer项目组的服务器上。项目的名称来自MPEG视频编码标准,前面的”FF”代表”Fast Forward”。
FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。它包括了目前领先的音/视频编码库libavcodec。 FFmpeg是在Linux下开发出来的,但它可以在包括Windows在内的大多数操作系统中编译。这个项目是由Fabrice Bellard发起的,现在由Michael Niedermayer主持。可以轻易地实现多种视频格式之间的相互转换,例如可以将摄录下的视频avi等转成现在视频网站所采用的flv格式。
misc转码
个人认为这是混合转码的一种综合说法
视频加工
通过工具对视频进行基本分析(长宽),格式校验,压缩,编解码,格式转换,缩略图抽取等操作
视频格式
问题:本地视频文件常见有MP4、MKV、AVI等,这些都是什么?有什么区别?
首先,MP4、AVI、MKV都是本地视频文件的后缀,在windows系统下,用于提示操作系统应该采用哪个应用程序打开。而在流媒体领域,这些都被称为『视频封装格式』,因为除了音视频流之外,它们还包含了一些辅助信息以及组织视音频的方式。不同格式的视频在不同平台上用户体验不同,很大原因在于对视音频的组织方式带来的差异。笔者以为百度百科上的解释蛮通俗易懂的(维基百科的说法不够直白):
视频格式是视频播放软件为了能够播放视频文件而赋予视频文件的一种识别符号。
简言之,视频格式规定了和播放器的通信协议。
视频协议
问题:在腾讯视频、哔哩哔哩网上看的视频,与本地播放的MP4、MKV、AVI文件,有什么区别?
『视频协议』是针对网络流媒体而言的,也就是只有在有网络时通过浏览器或者移动端APP才能看到的视频,目前常见的协议有RTSP、RTMP、HLS、HTTP等。笔者短暂地接触过GStreamer开发,在连接到RSTP视频时,发现除了视音频流和metadata之外,还携带了播放的信令。
也有文章会把『视频协议』归入『视频封装格式』。笔者看来,这么分类也有其道理:『视频协议』和『视频封装格式』都同时携带了视音频和metadata,以及协议/格式需要的其他信息。以FFMpeg为例,并不区分视频格式和视频协议;但是GStreamer的话,还时需要指定『视频协议』,但是不区分『视频封装格式』。
剥开『视频封装格式』和『视频协议』的外壳,接下来了解视音频流本身,这才是流媒体领域中真正的主角。本文仅介绍视频流。
视频流 以及 编解码 / 视频转码
就视频流而言,相信大家平时一定经常听到类似“h264码流”、“yuv流”、“编码流”、“解码流”,“原始流”、“裸流”,“压缩后的流”或者“未压缩的流”等等。归纳而言,提到『视频流』的时候,一定只有两种形式:
经过压缩算法压缩的流数据,称为『编码流』,又因为目前压缩/编码算法以H264为主,因此也常常称为『H264码流』。
未经压缩的流数据,是解码后的流数据,称为『原始流』,可以想象视频是由一幅一幅在时间上连续的“图像”组成的,而因为视频内部的“图像”是『YUV』(后文将介绍),因此也常常称为『YUV流』。
总结出现的名称,“h264码流”、“编码流”、“压缩后的流”是压缩/编码后的视频流;而“yuv流”、“解码流”、“未压缩的流”则是未经压缩/编码的视频流。“裸流”是一个具有歧义的词,是上下文内容,既可以是前者,也可以是后者。
因此,如果以后阅读任何流媒体相关的文章时,看到『视频流』都应该搞清楚,这究竟是编码/压缩的,还是没有。在生活中,接触到的视频文件绝大部分都是编码/压缩后的;在网络传输场景中,绝大部分也是编码/压缩后的。只有在视频播放时,观众观赏到的时一帧帧被『转码』为『RGB』的解码后视频流。
编码/压缩在流媒体领域是一项非常重要的技术:从『H264码流』到『YUV流』的过程称为解码,反之称为编码。
常见的帧名词
- 帧率(FPS)
『帧率』,FPS,全称Frames Per Second。指每秒传输的帧数,或者每秒显示的帧数,一般来说,『帧率』影响画面流畅度,且成正比:帧率越大,画面越流畅;帧率越小,画面越有跳动感。一个较权威的说法:
当视频帧率不低于24fps时,人眼才会觉得视频时连贯的,称为“视觉暂留”现象。
因此,才有说法:尽管『帧率』越高越流畅,但在很多实际应用场景中24fps就可以了。 - 分辨率(Resolution)
『分辨率』,也常被俗称为『图像的尺寸』或者『图像的大小』。指一帧图像包含的像素的多少,常见有1280x720(720P),1920X1080(1080P)等规格。『分辨率』影响图像大小,且与之成正比:『分辨率』越高,图像越大;反之,图像越小。 - 码率(BPS)
『码率』,BPS,全称Bits Per Second。指每秒传送的数据位数,常见单位KBPS(千位每秒)和MBPS(兆位每秒)。笔者认为这个概念真正要理解起来还是需要好好说明的,网上一说:“『码率』与体积成正比:码率越大,体积越大;码率越小,体积越小”;另一说:“『码率』越大,说明单位时间内取样率越大,数据流精度就越高,这样表现出来的的效果就是:视频画面更清晰画质更高”;还有说法是:”『码率』就是『失真度』“。但是笔者有一段时间就是不理解,每秒传输的数据越大,为什么必然就对应画面更清晰?还有体积怎么理解呢?且看下文”三者之间的关系“。
参考链接
https://baike.baidu.com/item/%E8%A7%86%E9%A2%91%E6%B5%81
https://www.cnblogs.com/LLBFWH/p/11660530.html
https://www.pingwest.com/a/120094
https://zhuanlan.zhihu.com/p/36109778
https://blog.csdn.net/shenhuan1104/article/details/72824076
视频文件格式知多少 | avi、mpeg、mp4、mov、ProRes、DNxHR、mfx、mkv、wmv、flv、rmvb、webm…