前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >「音视频专题」 音视频基础概念介绍

「音视频专题」 音视频基础概念介绍

作者头像
100001509164
发布2022-01-20 21:44:58
1.2K0
发布2022-01-20 21:44:58
举报
文章被收录于专栏:DevTipsDevTips

01 前言

大家好,从本文开始我们将从 Android 音视频专题开始探索,并按照 iOS/Android 音视频开发专题介绍 依次开始。iOS 音视频专题将在 Android 音视频专题结束后进行。 在进入实战之前,我们有必要了解下音视频相关术语。

02 音频视频编码

什么是音视频编码 ?

所谓音视频编码就是指通过特定的压缩技术,将某个音视频格式的文件转换成另一种音视频格式文件的格式。

音视频编码的意义 ?

音视频编码的最终目的是对音视频进行压缩,未经编码(压缩)的音视频数据量大,存储困难,不利于网络传输。如果视频不经过编码压缩,在直播场景下做不到实时传输的需求。

视频编码格式有哪些 ?

  1. H.264 (AVC) 也被成为高级视频编码(Advanced Video Codding),是一种视频压缩视频标准,简称AVC,一种被广泛使用的高精度视频的录制,压缩和发布格式。
  2. H.265 (HEVC) 也被称为高效视频编码(High Efficiency Video Coding),是一种视频压缩视频标准,简称 HEVC。可支持 4K 分辨率,最高分辨率可达到 8192x4320 (8K分辨率),目前的发展趋势。

音频编码格式有哪些 ?

  1. AAC 也被成为高级音频编码 (Advanced Audio Codding) ,又被称为 MPEG-4 AAC,是一种有损压缩的音频编码集。其设计目的是为了替代原有的 MP3 编码标准,在相同码率下质量优于 MP3 编码。
  2. MP3 全称 MEPG-1 or MEPG-2 Audio Layer III,曾经非常流行的一种数字音频编码和有损压缩格式。
  3. WMA 全称 Windows Media Audio,是微软公司开发的一种数字音频编码格式,本身支持有损和无损压缩。

目前 H.264 和 AAC 是最流行的编码压缩技术,无论媒体文件还是实时媒体流,H.264 一般与 AAC 一起使用。

H.264 (AVC) 与 x264 是什么关系 ?

H.264 是一个视频编码标准,由国际上两个著名的视频专家组(VCEG 和 MPEG) 合作提出的,两个专家组既称它为 H.264,也称为 AVC。

x264 是一个编码器,它实现的参考标准就是 H.264,x264 是符合 H.264 的开源项目,是H.264 的简化版,不支持某些高级特性。常见的 H.264 的编解码器有 JM 和 x264。

音频视频编解码器的比较

上述的介绍的编码格式只是目前较为主流的编码格式。

什么是封装格式 ?

AVI , 3GP ,MP4 都是一种视频封装格式, 是存储特定视频编码格式的容器,一般为文件扩展名。封装格式只是媒体数据的容器,不会影响视频画质,是把特定轨道按照特定格式存储到文件中。封装格式可以存储多种编码格式 ,如 QuickTime 几乎可以存储所有视频编码格式。

主流封装格式有哪些 ?

  • AVI

文件扩展名: .avi

缺点:体积大,只能存储一个视频轨道和音频轨道。不支持添加字幕。

优点:画质好

  • WMV

文件扩展名: .wmv

缺点:用户量少,普及低。

优点:高清编码格式,体积小,适合在线播放和传输。

  • MPEG

文件扩展名: .mpg , .mpeg , .3gp , .mp4 等

缺点:有损的文件格式

优点:支持字幕,可以封装多种编码的视频和音频。

另外,封装格式对音视频体积影响较小,体积主要由编码格式决定。

04 其他知识点

帧率

帧率是视频显示帧数的量度,简称 fps 或者 赫兹 (Hz)。每秒显示帧数或者帧率表示 GPU 处理时每秒能够绘制的次数。帧率越高画面更逼真和流畅,一般 30 fps 可以满足大部分场景,如果帧率超过屏幕的刷新频率,只会浪费 GPU。

刷新率

刷新率是指屏幕每秒内刷新的次数,单位 赫兹 (Hz) ,频率越高越流畅。一般如果达到 80hz ,可以消除图像闪烁和抖动。

码率

码率俗称比特率,比特率是单位时间内连续媒体的比特数量。码率越高,文件体积越大。通过码率我们可以计算出文件的大小:

文件大小 (b) = 码率(b/s)* 时长(s)

一般情况下码率越大画质越好,但也和具体编码算法有关。

DTS 和 PTS

DTS : Decode Time Stamp ,一般用于标识该比特流在什么时候送入解码器解码。(因为之间有参考关系)

PTS : Presentation Time Stamp,一般用于解码后的视频帧什么时候被显示。

视频帧的类型

I 帧:表示为关键帧,I 帧可以独立解码,可以理解为一帧完整的画面,解码时不参考其他帧。

P 帧:表示这一帧和之前一个 I 帧或 P 帧的差别帧,只包含前一帧的差别数据,解码时需要用之前的 I 帧或 P 帧叠加和本帧的差别生成图像。

B 帧:表示双向差别帧,B 帧记录的是本帧和与前后帧差别,解码时需要使用本帧叠加前后帧。B 帧最小,但是解码时性能较低。

05 结束语

最近,有 iOS 开发者私信我说 Android 专题和 iOS 专题是否可以交叉介绍,这里向大家说明下 iOS 专题需要 Android 专题结束后才会讲解。

如果你熟悉 iOS AVFoundation ,那么通过 Android 专题的你会对 AVFoundation 有更深的理解。Android 专题中与 iOS 系统API 采用了相同的架构设计, API 名称大致相同。最终 Android 专题结束后产出的 API 截图如下 :

往期内容:

iOS/Android 音视频开发专题介绍

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-03-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 DevTips 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
图像处理
图像处理基于腾讯云深度学习等人工智能技术,提供综合性的图像优化处理服务,包括图像质量评估、图像清晰度增强、图像智能裁剪等。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档