本文为您介绍媒体处理服务相关概念。

媒体处理产品级别概念

作业(Job)

作业(Job)指媒体处理中的单个任务。常见的作业类型有提交媒体信息作业、提交转码作业、查询转码作业、提交截图作业、提交智能标签作业、提交视频DNA作业等。以提交转码作业为例,提交时需要指定管道、模板及输入文件。

管道(Pipeline)

管道(Pipeline)指作业队列。作业加入到管道中,才会被媒体处理服务调度执行,如果管道中作业数量过多,会排队等待。管道有启用、暂停两种状态,管道被暂停时,媒体处理服务不再调度此管道中的作业执行,直到管道被重新启用为止,已经在执行的作业不受影响。不同类型管道并发能力不同。
说明 并发:多个线程在某个时间段内同时执行。

工作流(Workflow)

工作流(Workflow)是预先编排好的一系列任务流程,可以实现在指定OSS Bucket上传一个文件后,自动按照预先编排好的环节和条件依次执行作业。

转码模板(Transcoding template)

转码模板是转码参数(音频、视频、容器等)的集合。每个转码模板都有一个唯一ID标识。

自定义模板(Custom template)

简称Template,指用户自行定义转码参数的转码模板。用户可在每个服务地域内创建自定义模板,并在该区域的所有转码作业中使用。

预置模板(Preset template)

指媒体处理转码服务内置的智能转码模板,能根据输入文件的特点动态调整转码设置,从而为用户提供在一定带宽条件下的最优转码输出。媒体处理服务提供的预置模板详细说明请参见预置模板详情

模板分析作业(Analysic task)

由于输入文件本身有误差(分辨率、码率等),不一定所有的预置模板都适用于该输入文件。因此使用预置模板前,需要调用提交模板分析作业接口,模板分析作业的结果为该输入文件可用的预置模板列表,结果可以通过查询模板分析作业接口获取。

水印模板(Watermark template)

指为给视频添加水印而设置的模板。水印模板由相对固定的参数构成,包括水印位置、大小、偏移量等。要为输出视频添加水印时,在转码输出配置中设定水印模板、水印内容参数即可。

音视频基本概念

分辨率(Resolution)

分辨率(Resolution)用来描述视频对细节的分辨能力,通常表示为每一个方向上的像素数量,比如1280x720等。分辨率决定了视频画面细节的精细程度。通常情况下,视频的分辨率越高,所包含的像素就越多,画面就越清晰。

分辨率是决定码率的主要因素,不同的分辨率要采用不同的码率。总体而言,视频的分辨率越高,所要求的码率也越大,但并不总是如此,不同分辨率都有合理的码率选择范围。所谓“合理的范围”指的是,如果低于这个范围,视频画面质量会很差;如果高于这个范围,画面提升有限甚至几乎无提升,且浪费网络流量和存储空间。

码率(Bitrate)

码率(Bitrate)是指视频文件在单位时间内使用的数据流量,也叫码流或码流率,是视频编码中画面质量控制最重要的部分。量度单位为“比特每秒”(bit/s或bps),常使用Kbps(每秒多少千个比特)或Mbps。一般来说同样分辨率下,视频文件的码率越大,压缩比就越小,画面质量就越高。码率越大,说明单位时间内取样率越大,数据流精度就越高,处理出来的文件就越接近原始文件,图像质量越好,画质越清晰,要求播放设备的解码能力也越高。

当然,码率越大,文件体积也越大,其计算公式是文件体积=时间×码率/8。例如,网络上常见的一部60分钟的码率为1Mbps的720P的视频文件,其体积就大概为3600秒×1Mb/8=450MB。

帧率(Frame Rate)

帧率(Frame Rate)是单位时间内视频显示帧数的量度单位,也就是每秒钟刷新的图片的帧数,量度单位为“每秒显示帧数”(Frame Per Second,FPS)或“赫兹”。

高的帧率可以得到更流畅、更逼真的画面效果。一般来说25~30fps就可接受,提升至60fps则可以明显提升交互感和逼真感,但一般来说超过75fps就不容易察觉到有明显的流畅度提升了。如果帧率超过屏幕刷新率只会浪费图形处理的能力,因为显示设备不能以这么快的速度更新,这样超过刷新率的帧率就浪费掉了。在分辨率不变的情况下,帧率越高,则对显卡的处理能力要求越高。

视频转码(Video Transcoding)

视频转码(Video Transcoding)是指将已经压缩编码的视频码流转换成另一个视频码流,以适应不同的网络带宽、不同的终端处理能力和不同的用户需求。转码本质上是一个先解码、再编码的过程,因此转换前后的码流可能遵循相同的视频编码标准,也可能不遵循相同的视频编码标准。

编码级别(Profile)

编码级别(Profile)是针对特定应用场景的特定编码功能的集合。H.264 规定了三种主要级别:

  • Baseline:支持 I/P 帧,只支持无交错(Progressive)和 CAVLC,一般用于低阶或需要额外容错的应用,比如视频通话、手机视频等即时通信领域;
  • Main:提供 I/P/B 帧,支持无交错(Progressive)和交错(Interlaced),同样提供对于 CAVLC 和 CABAC 的支持,用于主流消费类电子产品规格如低解码(相对而言)的 MP4、便携的视频播放器、PSP 和 iPod 等;
  • High:在 Main 的基础上增加了 8x8 内部预测、自定义量化、无损视频编码和更多的 YUV 格式(如 4:4:4),用于广播及视频碟片存储(蓝光影片),高清电视的应用。

转封装

转封装指的是将视频或音频的封装格式进行转换,如将AVI的视频转换为MP4,期间并不会进行音视频的编码和解码工作,而是直接将视频和音频压缩码流从一种封装格式文件中获取出来然后打包成另一种封装格式的文件。相比转码,转封装有两大特点:

  • 处理速度极快。音视频编解码过程十分复杂,占据了转码的绝大部分时间。转封装不需要进行编码和解码,节约了大量的处理时间。
  • 音视频质量无损。没有解码(解压缩)和编码(压缩)过程,所以不会有音视频的压缩损伤。

转封装后的文件与原始文件的分辨率、码率等几乎一致,故播放时也称其为“原画”。

通用概念

地域(Region)

地域(Region)指阿里云的服务节点。用户通过选择不同阿里云Region的服务,可就近使用阿里云的服务,获得更低的访问延时和更好的用户体验。

对象存储(OSS)

指阿里云对象存储服务(OSS)。媒体处理服务对用户存储于OSS的媒体文件进行转码,转码输出文件也保存在OSS中。更多OSS相关概念,请参见OSS基本概念

存储空间(Bucket)

存储空间是用户用于存储对象(Object)的容器,所有的对象都必须隶属于某个存储空间。存储空间具有各种配置属性,包括地域、访问权限、存储类型等,用户可以根据实际需求,创建不同类型的存储空间用来存储不同的数据。

对象(Object)

对象是OSS存储数据的基本单元,也被称为OSS的文件。和传统的文件系统不同,对象没有文件目录层级结构的关系。对象由元信息(Object Meta),用户数据(Data)和文件名(Key)组成,并且由存储空间内部唯一的Key来标识。对象元信息是一组键值对,便是了对象的一些属性,比如最后修改时间、大小等信息,同时用户也可以在辕信息中存储一些自定义的信息。

对象的生命周期是从上传成功到被删除未知。在整个生命周期内,除通过追加方式上传的Object可以通过继续追加上传写入数据外,其他方式上传的Object内容无法编辑,您可以通过重复上传同名的对象来覆盖之前的对象。

AccessKey(访问密钥)

AccessKey简称AK,指的是访问身份验证中用到的AccessKey ID和AccessKey Secret。OSS通过使用AccessKey ID和AccessKey Secret对称加密的方法来验证某个请求的发送者身份。AccessKey ID用于标识用户,AccessKey Secret是用户用于加密签名字符串和OSS用来验证签名字符串的密钥,必须保密。

AccessKey包含以下三种:
  • Bucket的拥有者申请的AccessKey。
  • 被Bucket的拥有者通过RAM授权给第三方请求者的AccessKey。
  • 被Bucket的拥有者通过STS授权给第三方请求者的AccessKey。