1.2音视频到底是什么


视频是什么?

动画书

不知道大家小时候是否玩过一种动画小人书,连续翻动的时候,小人书的画面就会变成一个动画,类似现在的gif格式图片。请注意:翻动速度一定要够快

本来是一本静态的小人书,通过翻动以后,就会变成一个有趣的小动画,如果画面够多,翻动速度够快的话,这其实就是一个小视频

视频的原理正是如此,由于人类眼睛的特殊结构,画面快速切换时,画面会有残留(视觉暂留),感觉起来就是连贯的动作。所以,视频就是由一系列图片构成的。

视频是什么

视频(Video)泛指将一系列静态影像以电信号的方式加以捕捉、纪录、处理、储存、传送与重现的各种技术。

连续的图像变化每秒超过24帧(frame)画面以上时,根据视觉暂留原理,人眼无法辨别单幅的静态画面;看上去是平滑连续的视觉效果,这样连续的画面叫做视频

视频技术最早是为了电视系统而发展,但现在已经发展为各种不同的格式以利消费者将视频记录下来。

网络技术的发达也促使视频的纪录片段以串流媒体的形式存在于因特网之上并可被电脑接收与播放。

视频与电影属于不同的技术,后者是利用照相术将动态的影像捕捉为一系列的静态照片。

常见的视频格式:avi,mov,mp4,wmv,flv,mkv...

视频帧

 帧,是视频的一个基本概念,表示一张画面,如上面的翻页动画书中的一页,就是一帧。一个视频就是由许许多多帧组成的。

帧率

帧率,即单位时间内帧的数量,单位为:帧/秒 或fps(frames per second)。如动画书中,一秒内包含多少张图片,图片越多,画面越顺滑,过渡越自然。

帧率的一般以下几个典型值:

  • 1)24/25 fps:1秒 24/25 帧,一般的电影帧率;

  • 2)30/60 fps:1秒 30/60 帧,游戏的帧率,30帧可以接受,60帧会感觉更加流畅逼真。

85 fps以上人眼基本无法察觉出来了,所以更高的帧率在视频里没有太大意义。

色彩空间

这里我们只讲常用到的两种色彩空间。

  • 1)RGB:RGB的颜色模式应该是我们最熟悉的一种,在现在的电子设备中应用广泛。通过R G B三种基础色,可以混合出所有的颜色;

  • 2)YUV:这里着重讲一下YUV,这种色彩空间并不是我们熟悉的。这是一种亮度色度分离的色彩格式。

早期的电视都是黑白的,即只有亮度值,即Y。有了彩色电视以后,加入了UV两种色度,形成现在的YUV,也叫YCbCr。

  • 1)Y:亮度,就是灰度值。除了表示亮度信号外,还含有较多的绿色通道量;

  • 2)U:蓝色通道与亮度的差值

  • 3)V:红色通道与亮度的差值

如下图,可以看到Y、V、U 3个分量的效果差值:

采用YUV有什么优势呢?

人眼对亮度敏感对色度不敏感,因此减少部分UV的数据量,人眼却无法感知出来,这样可以通过压缩UV的分辨率,在不影响观感的前提下,减小视频的体积

RGB和YUV的换算:

Y = 0.299R + 0.587G + 0.114B
U = -0.147R - 0.289G + 0.436B
V = 0.615R - 0.515G - 0.100B
——————————————————
R = Y + 1.14V
G = Y - 0.39U - 0.58V
B = Y + 2.03U

音频是什么?

基本知识

音频数据的承载方式最常用的是脉冲编码调制,即 PCM

在自然界中,声音是连续不断的,是一种模拟信号,那怎样才能把声音保存下来呢?

那就是把声音数字化,即转换为数字信号。

我们知道声音是一种波,有自己的振幅和频率,那么要保存声音,就要保存声音在各个时间点上的振幅。

数字信号并不能连续保存所有时间点的振幅,事实上,并不需要保存连续的信号,就可以还原到人耳可接受的声音。

根据奈奎斯特采样定理:为了不失真地恢复模拟信号,采样频率应该不小于模拟信号频谱中最高频率的2倍

根据以上分析,PCM的采集步骤分为以下步骤:

模拟信号 -> 采样 -> 量化 -> 编码 -> 数字信号

音频到底是什么?

音频这个专业业术语,人类能够听到的所有声音du都称之为音频,它可能包括噪音、 声音被录制下来以后dao,无论是说话声、歌声、乐器都可以通过数字音乐软件处理。

把它制作成CD,这时候所有的声音没有改变,因为CD本来就是音频文件的一种类型。

音频只是储存在计算机里的声音。 演讲和音乐,如果有计算机加上相应的音频卡 -- 就是我们经常说的声卡,我们可以把所有的声音录制下来,声音的声学特性,音的高低都可以用计算机硬盘文件的方式储存下来。反过来,我们也可以把储存下来的音频文件通过一定的音频程序播放,还原以前录下的声音。

采样率和采样位数

采样率,即采样的频率。

上面提到,采样率要大于原声波频率的2倍,人耳能听到的最高频率为20kHz,所以为了满足人耳的听觉要求,采样率至少为40kHz,通常为44.1kHz,更高的通常为48kHz。

注意:人耳听觉频率范围[20Hz,  20KHz]

采样位数

涉及到上面提到的振幅量化。波形振幅在模拟信号上也是连续的样本值,而在数字信号中,信号一般是不连续的,所以模拟信号量化以后,只能取一个近似的整数值,为了记录这些振幅值,采样器会采用一个固定的位数来记录这些振幅值,通常有8位、16位、32位

注意:位数越多,记录的值越准确,还原度越高。但是占用的硬盘空间越大。

音频编码

由于数字信号是由0,1组成的,因此,需要将幅度值转换为一系列0和1进行存储,也就是编码,最后得到的数据就是数字信号:一串0和1组成的数据

整个过程如下:

声道数

声道数,是指支持能不同发声(注意是不同声音)的音响的个数

  • 单声道:1个声道

  • 双声道:2个声道

  • 立体声道:默认为2个声道

  • 立体声道(4声道):4个声道

码率

码率,是指一个数据流中每秒钟能通过的信息量,单位bps(bit per second)。

码率 = 采样率 * 采样位数 * 声道数

音频格式

是指要在计算机内播放或是处理音频文件,也就是要对声音文件进行数、模转换,这个过程同样由采 样和量化构成,人耳所能听到的声音,最低的频率是从 20Hz 起一直到最高频率 20KHZ,20KHz 以上人耳是听不到 的,因此音频文件格式的最大带宽是 20KHZ,故而采样速率需要介于 40~50KHZ 之间,而且对每个样本需要更多的量化比特数。

音频数字化的标准是每个样本 16 位-96dB 的信噪比,采用线性脉冲编码调制 PCM,每一量化步长都 具有相等的长度。在音频文件的制作中,正是采用这一标准。

常见的音频格式有CD 格式、WAVE(*.WAV)、 AIFF、MP3、MIDI、 AAC、WMA、OggVorbis。


为什么要编码

这里的编码和上面音频中提到的编码不是同一个概念,而是指压缩编码

我们知道,在计算机的世界中,一切都是0和1组成的,音频和视频数据也不例外。

由于音视频的数据量庞大,如果按照裸流数据存储的话,那将需要耗费非常大的存储空间,也不利于传送。

而音视频中,其实包含了大量0和1的重复数据,因此可以通过一定的算法来压缩这些0和1的数据。

特别在视频中,由于画面是逐渐过渡的,因此整个视频中,包含了大量画面/像素的重复,这正好提供了非常大的压缩空间。

因此,编码可以大大减小音视频数据的大小,让音视频更容易存储和传送。

 那么,未经编码的原始音视频,数据量至底有多大?

以一个分辨率1920×1280,帧率30的视频为例:

共:1920×1280=2,073,600(Pixels 像素),每个像素点是24bit;

也就是:每幅图片2073600×24=49766400 bit,8 bit(位)=1 byte(字节);

所以:49766400bit=6220800byte≈6.22MB

这是一幅1920×1280图片的原始大小(6.22MB),再乘以帧率30。

也就是说:每秒视频的大小是186.6MB每分钟大约是11GB,一部90分钟的电影,约是1000GB。。。


视频编码

视频编码格式有很多,比如H26x系列MPEG系列的编码,这些编码格式都是为了适应时代发展而出现的。

  • H26x(1/2/3/4/5)系列由ITU(International Telecommunication Union)国际电讯联盟主导

  • MPEG(1/2/3/4)系列由MPEG(Moving Picture Experts Group, ISO旗下的组织)主导。

当然,他们也有联合制定的编码标准,那就是现在主流的编码格式H264,当然还有下一代更先进的压缩编码标准H265

视频编码知识比较专业,限于篇幅,我们简单介绍一下。

所谓视频编码方式就是指能够对数字视频进行压缩或者解压缩(视频解码)的程序或者设备。通常这种压缩属于有损数据压缩。也可以指通过过特定的压缩技术,将某个视频格式转换成另一种视频格式。常见的编码方式有:

1,H.26X系列 (由ITU[国际电传视讯联盟]主导)包括H.261、H.262、H.263、H.264、H.265。

  • 1) H.261:主要在老的视频会议和视频电话产品中使用。

  • 2) H.263:主要用在视频会议、视频电话和网络视频上。

  • 3) H.264:H.264/MPEG-4第十部分,或称AVC(Advanced Video Coding,高级视频编码),是一种视频压缩标准,一种被广泛使用的高精度视频的录制、压缩和发布格式。

  • 4) H.265:高效率视频编码(High Efficiency Video Coding,简称HEVC)是一种视频压缩标准,H.264/MPEG-4 AVC的继任者。HEVC被认为不仅提升图像质量,同时也能达到H.264/MPEG-4 AVC两倍之压缩率(等同于同样画面质量下比特率减少了50%),可支持4K分辨率甚至到超高画质电视,最高分辨率可达到8192×4320(8K分辨率),这是目前发展的趋势。直至2013年,Potplayer添加了对于H.265视频的解码,尚未有大众化编码软件出现。

2,MPEG系列(由ISO[国际标准组织机构]下属的MPEG[运动图象专家组]开发 )视频编码方面主要有:

  • 1) MPEG-1第二部分(MPEG-1第二部分主要使用在VCD上,有些在线视频也使用这种格式。该编解码器的质量大致上和原有的VHS录像带相当。)

  • 2) MPEG-2第二部分(MPEG-2第二部分等同于H.262,使用在DVD、SVCD和大多数数字视频广播系统和有线分布系统(cable distribution systems)中。)

  • 3) MPEG-4第二部分(MPEG-4第二部分标准可以使用在网络传输、广播和媒体存储上。比起MPEG-2和第一版的H.263,它的压缩性能有所提高。)

  • 4) MPEG-4第十部分(MPEG-4第十部分技术上和ITU-TH.264是相同的标准,有时候也被叫做“AVC”)最后这两个编码组织合作,诞生了H.264/AVC标准。ITU-T给这个标准命名为H.264,而ISO/IEC称它为MPEG-4 高级视频编码(Advanced Video Coding,AVC)。

3,其他系列:AMV · AVS · Bink · CineForm · Cinepak · Dirac · DV · Indeo · Video · Pixlet · RealVideo · RTVideo · SheerVideo · Smacker · Sorenson Video · Theora · VC-1 · VP3 · VP6 · VP7 · VP8 · VP9 · WMV。因为以上编码方式不常用,不再介绍。


音频编码

原始的PCM音频数据也是非常大的数据量,因此也需要对其进行压缩编码。

和视频编码一样,音频也有许多的编码格式,如:WAV、MP3、WMA、APE、FLAC等等,音乐发烧友应该对这些格式非常熟悉,特别是后两种无损压缩格式。

但是,我们今天的主角不是他们,而是另外一个叫AAC的压缩格式。

本节以AAC格式为例,直观的了解音频压缩格式。

AAC是新一代的音频有损压缩技术,一种高压缩比的音频压缩算法。

在MP4视频中的音频数据,大多数时候都是采用AAC压缩格式。

AAC格式主要分为两种:ADIF、ADTS

  • 1)ADIF:Audio Data Interchange Format。音频数据交换格式。

    这种格式的特征是可以确定的找到这个音频数据的开始,不需进行在音频数据流中间开始的解码,即它的解码必须在明确定义的开始处进行。这种格式常用在磁盘文件中。

    ADIF只有一个统一的头,所以必须得到所有的数据后解码

  • 2)ADTS:Audio Data Transport Stream。音频数据传输流。

    这种格式的特征是它是一个有同步字的比特流,解码可以在这个流中任何位置开始

    它的特征类似于mp3数据流格式。

ADTS可以在任意帧解码,它每一帧都有头信息。

ADIF只有一个统一的头,所以必须得到所有的数据后解码。

且这两种的header的格式也是不同的,目前一般编码后的都是ADTS格式的音频流。

  • ADIF数据格式

header | raw_data

  • ADTS 一帧 数据格式(中间部分,左右省略号为前后数据帧):


音视频容器

细心的读者可能已经发现,前面我们介绍的各种音视频的编码格式,没有一种是我们平时使用到的视频格式,比如:mp4、rmvb、avi、mkv、mov...

没错,这些我们熟悉的视频格式,其实是包裹了音视频编码数据的容器,用来把以特定编码标准编码的视频流和音频流混在一起,成为一个文件。

例如:mp4支持H264、H265等视频编码和AAC、MP3等音频编码。

mp4是目前最流行的视频格式,在移动端,一般将视频封装为mp4格式。

硬解码和软解码

在一些播放器中会看到,有硬解码软解码两种播放形式供选择,但是大部分时候并不能感觉出他们的区别,对于普通用户来说,只要能播放就行了。

那么他们内部究竟有什么区别呢?

在手机或者PC上,都会有CPU、GPU或者解码器等硬件。

通常,我们的计算都是在CPU上进行的,也就是我们软件的执行芯片,而GPU主要负责画面的显示(是一种硬件加速)。

  • 软解码

就是指利用CPU的计算能力来解码,通常如果CPU的能力不是很强的时候,一则解码速度会比较慢,二则手机可能出现发热现象。但是,由于使用统一的算法,兼容性会很好。

  • 硬解码:

指的是利用专门的解码芯片来加速解码。通常硬解码的解码速度会快很多,但是由于硬解码由各个厂家实现,质量参差不齐,非常容易出现兼容性问题


音视频是分开解释的:

音频是正常人耳能听到的,相应于正弦声波的任何频率。正常人耳的音频范围一般约为16Hz~16kHz。

 视频泛指将一系列静态影像以电信号方式加以捕捉,纪录,处理,储存,传送,与重现的各种技术。连续的图像变化每秒超过24帧(frame)画面以上时,根据视觉暂留原理,人眼无法辨别单幅的静态画面;看上去是平滑连续的视觉效果,这样连续的画面叫做视频。

音视频简单的说就是音频与视频

  • 音视频行业指的是从事音频与视频设备的销售安装调试等工作的行当。

  • 音频这个专业术语,人类能够听到的所有声音都可称之为音频

  • 同样视频这个专业术语,人类能够看到的所有图像都可称之为视频

  • 音频与视频大多是指被用电子手段所采集和还原出来的声音和图像

FFmpeg@音视频+流媒体技术交流群:3212001984

(2)音视频到底是什么相关推荐

  1. FFmpeg入门详解之2:音视频到底是什么

    视频是什么? 动画书 不知道大家小时候是否玩过一种动画小人书,连续翻动的时候,小人书的画面就会变成一个动画,类似现在的gif格式图片.请注意:翻动速度一定要够快. 本来是一本静态的小人书,通过翻动以后 ...

  2. 音视频的同步原理——老文章,比较清晰

    http://blog.csdn.net/beyond_cn/article/details/20310177 1.   音视频同步的原理 2.  音视频同步的较正方法 3.  音视频同步时遇到的问题 ...

  3. 腾讯云游戏多媒体解决方案:揭秘《QQ 炫舞》手游背后的音视频

    <QQ 炫舞手游>是腾讯游戏推出的音舞类游戏.据App Annie 数据显示, 自发布以来<QQ 炫舞手游>一直保持音舞类游戏排名第1,深受广大玩家欢迎.<QQ 炫舞手游 ...

  4. 音视频开发,到底开发个啥------从一部羞羞小电影说起

    突如其来的疫情让在线会议和在线教育一下子进入了大众的视野,原本默默耕耘的一些To D类公司,直接在风口飞了起来,一直飞到了纳斯达克,比如声网.随着而来的就是音视频开发领域的火爆,那音视频开发到底开发个 ...

  5. 2021 年音视频技术与发展

    2021 年音视频技术与发展 2021 年,音视频技术的应用场景已随处可见,从游戏场景「吃鸡」.电商场景直播连麦.教育场景授课答题,再到金融场景银行视频开户等都有身影.那么,回望今年音视频领域到底有哪 ...

  6. 【经验】对一个合格C++高级工程师(音视频方向)的要求

    1.C++高级工程师 经过查看招聘网站上对"C++高级工程师"这个职位的招聘要求,只总结了技术.能力要求,不涉及工作年限.学历 具体要求如下: 精通C++面向对象程序设计: 熟悉设 ...

  7. 从腾讯实时音视频发家史,看爆发中的 RTC 将何去何从

    作者 | 夕颜 头图 | 下载于视觉中国 出品 | AI 科技大本营(ID:rgznai100) 早在2015年左右,直播和短视频的兴起渗透进普通人的日常生活,人们信息消费的内容已经开始从文字向语音. ...

  8. 实时音视频聊天中超低延迟架构的思考与技术实践

    1.前言 从直播在线上抓娃娃,不断变化的是玩法的创新,始终不变的是对超低延迟的苛求.实时架构是超低延迟的基石,如何在信源编码.信道编码和实时传输整个链条来构建实时架构?在实时架构的基础之上,如果通过优 ...

  9. 详解音视频直播中的低延时

    高泽华,声网 Agora 音频工匠,先后在中磊电子.士兰微电子.虹软科技主导音频项目.任职 YY 期间负责语音音频技术工作.在音乐.语音编解码方面有超过十年的研发经验. 音视频实时通讯的应用场景已经随 ...

最新文章

  1. mysql每组随机一条_MySql分组后随机获取每组一条数据的操作
  2. freemarker模板文件中文本域(textarea)的高度自适应实现
  3. 等值连接_sql高阶教程:非等值自连接
  4. Python入门学习---第四天
  5. Spring Data Redis入门示例:基于RedisTemplate (三)
  6. 2018-2019年度总结
  7. mysql查询会话池_用户会话,数据控件和AM池
  8. android dialog 点击确定不消失,AlertDialog点击按钮不消失的实现方法
  9. C++学习之路 | PTA乙级—— 1011 A+B 和 C (15分)(精简)
  10. 【java笔记】Iterator迭代器 增强for
  11. Java移位运算符原来这么简单
  12. Power Query M语言概述
  13. 3个方法解决百度网盘限速(转)
  14. SpringCloud之熔断器Hystrix
  15. linux流量监控php_linux下的几个网络流量监控工具使用的图文教程
  16. [苹果开发者账号]06 转让开发者账号后,开发者年费自动续费问题
  17. C++操作Excel表格
  18. hadoop框架介绍
  19. OSError: [WinError -529697949] Windows Error 0xe06d7363
  20. vscode ubuntu 环境下ssh 远程连接 不稳定 重新打开

热门文章

  1. golang--2016gopher北京大会(1)
  2. 怎么将考勤的结果用于薪资核算?
  3. 华大单片机HC32L130/136驱动NB-IOT模块(MN316)
  4. python爬虫,人人网登录
  5. python 爬虫 验证码_人人网
  6. LCD1602A接线图
  7. android读取bin文件内容,Android的NFC读取IsoDep文件内容
  8. 浅析一个函数调用另一个函数的变量
  9. 别说国产蓝牙耳机降噪不好了,这一款我反正是入坑了!
  10. 2022CPA财务与成本管理-成本计算专题【完结】