You need to enable JavaScript to run this app.
导航

基本概念

最近更新时间2024.01.11 15:00:24

首次发布时间2021.02.23 10:42:37

本文介绍音视频基础概念和视频点播产品相关概念,以便您更好地理解和使用视频点播产品。

封装格式

封装格式 (container format) 是指将音频、视频、字幕等数据流按照一定的规范组织在一起、形成一个完整的媒体文件。封装格式通常包含以下部分:

  • 文件头:包含整个媒体文件的基本信息。
  • 数据块:包含具体的音视频数据。
  • 元数据:包含数据块的编码格式、时间戳等信息。

不同的封装格式所支持的编码格式、容器特性、兼容性等均有所不同。在媒体文件的制作、传输、播放等过程中,封装格式的选择会影响到媒体文件的质量、兼容性、播放效果等方面。以下为常见的封装格式:

  • MP4:MP4 是最常见的封装格式之一,主流的播放器和浏览器均支持 MP4 格式。MP4 格式可以使用如 H.264、H.265 等编解码器进行压缩,使得 MP4 文件具有较小的文件大小和较高的视频质量,因此被广泛用于点播服务。然而,由于 MP4 格式是一种静态格式,无法根据网络带宽和设备性能进行自适应码率调节,因此在网络环境不稳定的情况下,可能会出现卡顿和缓冲的问题。
  • HLS (HTTP Live Streaming):HLS 是由苹果公司推出的视频流传输协议。它将整个视频流分割成小的 TS (Transport Stream) 分段并使用 HTTP 协议进行传输。HLS 流可以在不同的设备和操作系统上播放,并支持自适应码率流传输,可以根据用户的网络带宽和设备性能进行调整,以确保最佳的视频播放体验。HLS 常用于直播和点播服务。HLS 会将视频文件转换为多个 TS 分段,然后这些分段被打包成一个 M3U8 索引文件,包含所有分段的信息,以及它们在服务器上的 URL 地址。客户端应用程序可通过这个 M3U8 文件来按需获取并播放视频流。
  • DASH (Dynamic Adaptive Streaming over HTTP):DASH 是由 MPEG (Moving Pictures Experts Group) 组织推出的视频流传输协议。与 HLS 类似,DASH 也使用 HTTP 协议进行传输;与 HLS 不同的是,DASH 将视频文件切割成多个 MP4 分段,然后这些分段被打包成一个 MPD 播放列表文件。客户端应用程序可通过这个 MPD 文件来获取并播放视频流。
  • FLV:FLV 是由 Adobe 公司推出的封装格式,最初是为 Flash 网页视频设计的。FLV 文件通常比较小,且可以支持高效的编码格式,如 H.264 和 AAC。但由于 Flash Player 的退出,FLV 格式在现代应用中已经不太常用。

火山引擎视频点播转码服务支持多种封装格式,以便适应不同的应用场景和需求,详见媒体处理

编码格式

音视频编码格式 (codec) 是指将音频或视频信号转换为数字信号,并通过压缩算法将其压缩成较小的文件,以便于传输、存储和播放。不同的音视频编码格式各有优缺点,在选择时需要根据具体的应用场景和需求综合考虑。视频点播服务中常见的音频编码格式有 MP3、AAC、FLAC 和 WAV 等,常见的视频编码格式有 H.264、H.265、VP9 等。其中,H.264 是目前应用最广泛的视频编码格式之一,而 H.265 则是它的升级版。H.265 也被称为 HEVC(High Efficiency Video Coding,高效率视频编码),提供了更高的压缩比和更好的视频质量,适合用于高清和超高清视频的传输和存储。

以下是 H.264 和 H.265 的一些主要区别:

  • 压缩效率:H.265 比 H.264 具有更高的压缩效率,因此可以将视频文件压缩得更小,减少存储和传输的带宽需求。
  • 视频质量:H.265 比 H.264 具有更好的视频质量,特别是在低码率下,H.265 可以提供更清晰的视频图像,减少失真和噪声。
  • 复杂度:H.265 比 H.264 具有更高的编码和解码复杂度,因此需要更高的计算能力和更强大的硬件支持。
  • 兼容性:H.264 已经广泛应用于各种设备和应用程序中,而 H.265 的兼容性还相对较差。许多低端设备和旧版软件不能支持 H.265 解码。点播 SDK 支持播放 H.265 视频源和硬解,通过基于大数据沉淀的 H.265 硬解机型黑名单来判断机型是否适合硬解并提供灵活的降级策略,有效避免播放失败、花屏、黑屏等问题。

火山引擎视频点播转码服务支持多种音视频编码格式,以便适应不同的应用场景和需求,详见媒体处理

转码

转码 (transcoding) 指将已经压缩编码的音视频码流先解码、再重新编码的过程。转码通常涉及编码格式(如 H.264、AAC)、编码参数(如采样率、码率、I 帧间隔)、封装格式(如 MP4、TS)等的转换。下图展示了转码的过程:

转码可以帮您达成以下目的:

  • 满足业务需求,例如抖音、西瓜等长短视频场景、活动定制化水印、异常片源的检测和支持。
  • 优化用户体验,例如利用画质增强、超分、插帧、降噪等智能算法提高音视频质量。
  • 节省成本,例如通过转码降低机器资源或带宽成本。

转封装

转封装 (transmuxing) 是指将一种封装格式中的音视频数据解封装并重新封装到另一个封装格式中,而不改变音视频数据的编码格式和内容。转封装的目的是为了适应不同的播放平台和设备,以及优化网络传输效率。需要注意的是,转封装只是改变了音视频数据的封装格式,而不改变编码格式。因此,在转封装时,只需要进行少量的计算和处理,不会对视频质量和文件大小产生很大的影响。而在转码时,需要进行大量的计算和处理,可能会影响视频质量和文件大小。

码率

码率 (bitrate) 表示单位时间内传输或处理的比特数,单位为 Mbps(兆比特每秒)或 Kbps(千比特每秒)。在视频领域中,码率通常表示视频编码的质量。较高的码率可以提高视频质量,但会增加视频文件的大小和网络传输的带宽需求。

分辨率

分辨率 (resolution) 指视频中每一帧图像的大小,单位为 pixel(像素数)。例如,720p 表示视频的宽度为 1280 像素,高度为 720 像素。分辨率越高,图像就越清晰,但也会增加视频文件的大小和解码的计算量。

分辨率和码率之间存在着紧密的联系。在一定的时间内,较高的分辨率需要传输更多的数据量,因此需要更高的码率来保证视频质量。如果分辨率和码率不匹配,可能会导致视频质量变差或者出现卡顿等问题。举例来说,当前视频的分辨率是 1080p,码率是 2 Mbps,如果将分辨率提高到 4K,那么视频的大小会增加,需要更高的码率来保证视频质量。如果继续使用 2 Mbps 的码率,那么视频质量可能会降低,因为视频中的细节信息无法得到充分的传输和展示。

帧率

帧率 (frame rate) 表示视频中每秒钟包含的帧数,单位为 fps(帧每秒)。较高的帧率可以提高视频的流畅度和动态效果,但会增加视频文件的大小和解码的计算量。在点播场景中,视频帧率通常可设置为 25 至 30 fps。这是因为在人眼的视觉感知范围内,25 至 30 fps 的帧率已经足够提供较为流畅的动态效果和观看体验。同时,较低的帧率可以减小视频文件的大小和网络传输的带宽需求,适合在带宽有限的网络环境下进行传输和播放。但是,对于一些特殊的视频,如体育赛事、游戏视频等,可以适当提高视频的帧率,以保证视频的流畅度和观看体验。

声道

声道 (channel) 是指在录制音频时使用的麦克风数量,以及在播放音频时使用的扬声器数量。声道数量越多,音频的空间感和真实性就越强。常见的声道数量包括:

  • 单声道 (Mono):即只有一个声道,通常用于广播、录音和电话等应用中。
  • 双声道 (Stereo):即两个声道,通常用于音乐、电影等音频娱乐领域中。左右声道分别承载不同的音频信息,可以通过左右声道的声音差异来营造出更为丰富的音效。

采样率

采样率 (sampling rate) 表示录制音频时对声音进行采样的频率,单位为 Hz(赫兹)。在数字音频中,模拟音频信号需要经过采样、量化和编码等过程,才能被存储和传输。采样率越高,可以更准确地还原原始模拟音频信号,同时也会增加数字音频的数据量和传输带宽需求。常见的采样率包括:44.1 kHz、48 kHz、96 kHz、192 kHz 等。其中,44.1 kHz 和 48 kHz 是 CD 和 DVD 标准的采样率,96 kHz 和 192 kHz 则是高保真音频和专业音频制作中常用的采样率。

HDR

HDR (High Dynamic Range) 是一种影像技术,用于提高图像的动态范围和色彩表现能力,以获得更加真实、明亮、丰富的视觉效果。传统的 SDR(Standard Dynamic Range)图像通常只包含较窄的亮度范围,无法充分还原真实场景中的明暗细节和色彩信息。而 HDR 图像采用了更高的亮度范围和更多的色彩信息,可以更加准确地还原真实场景中的明暗细节和色彩信息。

火山引擎视频点播转码服务支持通过智能算法将 SDR 视频转换为 HDR 视频,从而提升视频的对比度和色彩丰富度,实现更好的视觉效果,详见画质增强

UHD

UHD (Ultra High Definition) 指超高清。根据国际电信联盟发布的超高清 UHD 标准,超高清屏幕的物理分辨率为 3840×2160(4K)及以上。这比传统的高清晰度视频格式的分辨率高出数倍,意味着 UHD 视频可以提供更多的像素,能够呈现更加细腻、真实的图像细节,使得观看者可以更加清晰、真实地感受到图像中的细节和色彩。与分辨率的提高相伴随的是对带宽和处理能力的要求也随之提高。为了支持 UHD 视频,需要使用高性能的处理器、显卡、存储设备以及支持 UHD 视频格式的显示器和电视等设备。

超分

超分(Super Resolution,超分辨率)是一种图像处理技术,用于将低分辨率图像转换为高分辨率图像。超分技术通常分为两种类型:

  • 基于插值的超分:指通过插值方法来增强低分辨率图像的分辨率,如双线性插值、双三次插值等。这种方法虽然简单,但是容易产生锯齿、失真等问题,无法保证图像的质量和真实性。
  • 基于重建的超分:指通过建立高分辨率图像与其对应的低分辨率图像之间的映射关系,通过重建的方法来生成高分辨率图像。这种方法通常需要使用更加复杂的算法和模型,可以更加准确地还原原始图像的细节和信息,同时也可以保证图像的质量和真实性。

火山引擎视频点播转码服务支持智能超分,基于深度学习方法,根据视频信息对其进行空域、时域建模重构出缺失的细节,将低分辨率的视频重建出高分辨率视频,详见画质增强

空间

空间是视频点播资源隔离的基础单位。您可以按照空间粒度分别管理您的媒资信息、默认工作流、分发加速策略和回调策略等。

Vid

Vid 指 Video ID,是视频点播服务中每个音视频文件的唯一标识符。在视频点播服务中,您可以通过 Vid 搜索视频,或直接使用 Vid 对视频进行媒体处理等。值得注意的是,视频转码不会影响视频的 Vid,即转码后的视频 Vid 与转码前一致。

媒资

在视频点播中,媒资指音视频、图片、字幕等媒体内容资产,以及这些媒体内容资产的元数据信息。可分为以下两类:

  • 音视频资源:指上传到点播空间后可被用于媒资处理和播放的音视频文件。
  • 素材资源:作为素材上传到点播空间的音频、视频、动图、图片等文件。素材不可作为媒资处理的对象,不可播放,仅可被用于视频封面、水印贴片或剪辑。

BucketName

BucketName 指存储桶名称。视频点播空间底层使用了对象存储服务来存储媒资,BucketName 代表对象存储服务中存储桶的名称。

FileName

FileName 指文件路径,是媒资在存储桶中的唯一标识,代表媒资在存储桶中的存储位置。举例来说,假设 123.mp4 文件的存储位置为 {BucketName}/Project/VideoFiles/123.mp4,则文件路径是 Project/VideoFiles/123.mp4。FileName 具体的字符规则,请见文件命名通用字符规则

FilePrefix

FilePrefix 指文件前缀,是位于媒资文件名前的完整路径,其中不包括存储桶名称。举例来说,假设 123.mp4 文件的存储位置为 {BucketName}/Project/VideoFiles/123.mp4,则文件前缀是 /Project/VideoFiles/。如果将 123.mp4 文件保存在未指定路径的存储桶中,则文件前缀为 /

FileTitle

FileTitle 指文件名称,用来指代不同的媒资文件。举例来说,对于 123.mp4 文件,FileTitle 为 123

FileExtension

FileExtension 指文件后缀,是视频点播用来标志文件格式的一种机制。举例来说,对于 123.mp4 文件,FileExtension 为 mp4,表示这个文件是一个 MP4 格式的视频文件。句号 . 就是文件名称与文件后缀的分隔符。

PGC

PGC (Professionally Generated Content) 指专业生产内容。PGC 的创作主体是拥有专业知识、拥有内容相关领域资质的、具有一定权威的专家。

UGC

UGC (User Generated Content) 指用户生成内容,也可称为用户原创内容。

CNAME

CNAME (Canonical Name) 指别名记录,即实现将一个域名映射到另外的一个域名。CNAME 可将多个主机名指向一个别名,从而实现便捷变更 IP 地址。