ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

《Android 音视频开发》笔记 - 音视频基础知识

2021-05-26 14:04:19  阅读:291  来源: 互联网

标签:声道 MPEG 码率 编码 音频 音视频 基础知识 Android 刷新率


视频编码

MPEG系列(Moving Picture Experts Group,运动图像专家组)

  • MPEG1:VCD用
  • MPEG2:DVD用,但DVD音频没有采用MPEG
  • MPEG4:DVDRIP使用的是它的变种,DivX、XviD
  • MPEG4 AVC
  • 还有音频编码方面的, MPEG Audio Layer 1/2、MPEG Audio Layer 3(mp3)、MPEG-2 AAC、MPEG-4 AAC等。

H.26X系列

  • H.261、H.262、H.263、H.263+、H.263++、H.264、H.265

音频编码

AAC

    一种专为声音数据设计的文件压缩格式;
    在感觉声音质量没有明显降低的情况下,可使文件更加小巧。
    优点:相对于MP3,AAC格式的音质更佳,文件更小;
    缺点:AAC属于有损压缩格式,与APE、FLAC等无损压缩格式相比音质存在差距。

MP3

    Moving Picture Experts Group Audio Layer III ,动态影像专家压缩标准音频层面3
    一种音频压缩技术;
    被用来大幅降低音频数据量;
    利用MP3技术,将音乐以1:10甚至1:12的压缩率,压缩成容量小的文件,重放的音质与最初的不压缩音频相比没有明显下降;
    利用人耳对高频声音信号不敏感的特性,将时域波形信号转换成频域信号,并划分多个频段,对不同的频段使用不同的压缩率,对高频信号使用大压缩率(甚至忽略信号),对低频信号使用小压缩率,保证信号不失真;相当于抛弃了人耳基本听不到的高频声音,只保留能听到的低频部分。

AC3

    Audio Coding Version 3
    有损音频编码格式
    广泛应用于5.1声道
    应用于激光唱片和DVD:384 - 448 kb/s的码率
    应用于电影院:640 kb/s的码率

    5个全频域声道 + 1个超低音声道组成,被称为5.1声道;
    5个全频域声道:左前、中央、右前、左后、右后
    超低音声道:提供一些额外的低音信息,使一些场景(如爆炸、撞击等)的声音更好。

名词术语

帧率 Frame Rate

    是用于测量显示帧数的量度。
    测量单位:每秒显示帧数(frames per second, fps)或赫兹( Hz )
    每秒显示帧数fps或帧率表示图像处理器处理场时每秒能更新的次数。
    高频率可以得到更流畅、更逼真的动画。30fps就是可以接受的,但是将性能提升至60fps则可以明显提升交互感和逼真感,但是超过75fps就不容易察觉有明显的流畅度提升。
    如果帧率超过屏幕刷新率,则只会浪费图象处理能力,因为监视器不能以这么快的速度更新,这样超过刷新率的帧率就浪费掉了。

从网上找了个查看屏幕刷新帧率的地址:https://www.testufo.com/
来自博文:手机刷新率测试网站

刷新率

    指屏幕每秒画面被刷新的次数;
    刷新率分垂直刷新率水平刷新率,一般提到的刷新率通常指垂直刷新率。
    垂直刷新率表示屏幕上图象每秒重绘多少次,也就是每秒屏幕刷新的次数,以赫兹Hz为单位。
    刷新率越高,图象越稳定,越自然清晰,对眼睛的影响越小;
    刷新率越低,图象闪烁和抖动得就越厉害,眼睛疲劳得就越快。
    一般来说,如能达到80Hz以上的刷新率,就可以完全消除图象闪烁和抖动感,眼睛也不太容易疲劳。

码率

    码率也就是比特率,比特率的单位是单位时间播放连续的媒体(如压缩后的音频或者视频)的比特数量。
    比特率越高,带宽消耗得越多。
    比特(bit)就是2进制里面最小的单位,0 / 1
    文件大小(b) = 码率(b/s) * 时长(s)
     计算示例:
          假设码率为800kbps,1s会产生多大的文件呢?
          800kbps * 1s = 800kb = 100kB = 0.1MB
          以该方式换算的话:1MB = 1000kB = 8000kb

分辨率

    视频成像产品所形成的图象大小或尺寸

编码格式

    编码的目的是压缩数据量,采用编码算法压缩冗余数据。
    MPEG ( MPEG-2 、MPEG-4)
    H.26X ( H.263、H.264、H.265 )

封装格式

    把编码后的音视频数据以一定格式封装到一个容器,封装格式有:MKV、AVI、TS等

画质与码率

    码率越大,画质越好,视频越流畅??错误!
    视频质量和码率、编码算法都有关系

DTS 与 PTS

    DTS:
        Decode Time Stamp,主要用于标示读入内存中的比特流在什么时候送入解码器中进行解码。
    PTS:
        Presentation Time Stamp,主要用于度量解码后的视频帧什么时候被显示出来。

YUV 与 RGB

    颜色空间模型YUV 与 RGB
    YUV
        是被欧洲电视系统所采用的一种颜色编码方法(属于PAL),是PAL和SECAM模拟彩色电视制式采用的颜色空间模型;
        Y:亮度
        UV:色差,U和V是构成颜色的两个分量

    RGB
        是一种颜色空间模型,通过对红R、绿G、蓝B 3个颜色通道的变化以及他们相互之间的叠加来得到各式各样的颜色,RGB即代表红绿蓝3个通道的颜色

视频帧和音频帧

视频帧:I P B帧

    I帧:关键帧,可以理解为这一帧画面的完整保留,解码时只需要本帧数据就可以完成(因为包含完整画面)
    P帧:这一帧和之前的一个关键帧(或P帧)的差别,解码时需要用之前缓存的画面叠加上本帧定义的差别生成最终画面(也就是差别帧,P帧没有完整画面数据,只有与前一帧的画面差别的数据)
    B帧:双向差别帧,也就是B帧记录的是本帧和前后帧等差别,要解码B帧,不仅要得到之前的缓存画面,还要解码之后的画面,通过前后画面数据与本帧数据的叠加取得最终的画面。B帧压缩率高,但是解码时CPU会比较吃力。

    可以简单理解为,1帧就是编码后的一幅图像。

音频帧:

    PCM:未经编码的音频数据,它根本就不需要帧的概念,根据采样率和采样精度就可以播放。
        数据量大小(b/s) = 采样率(Hz) X 采样位数bit X 声道数

        比如采样率为44.1kHz,采样精度为16位的音频,单声道,1s的数据量大小为:
        44.1 * 1000 * 16 * 1 = 705600 b = 88200 B = 88.2kB = 0.0882 MB

    ARM:它规定每20ms的音频为1帧,每一帧音频都是独立的,有可能采用不同的编码算法以及不同的编码参数。

    MP3:帧比较复杂一些,包含了更多的信息,比如采样率、比特率等各种参数。音频数据帧个数由文件大小和帧长决定,每一帧的长度可能不固定,也可能固定,有比特率决定,每一帧又分为帧头和数据实体两部分,帧头记录了MP3的比特率、采样率、版本等信息,每一帧之间相互独立。

量化精度

    可以将模拟信号分成多少个等级,量化精度越高,音乐的声压振幅越接近原音乐。
    量化精度的单位为bit(比特),CD标准的量化精度为16bit,DVD标准的量化精度为24bit。
    可以理解为一个采样点用多少bit表示(8/16/24/32bit)

采样率

    指每秒音频采样点个数(如:44100Hz),采样率的单位是:Hz赫兹

声道

    指声音在录制或播放时在不同空间位置采集或者回放的相互独立的音频信号,所以声道数也就是声音录制时的音源数量或回放时相应的扬声器数量。

    常见声道:单声道、立体声道、4声道、5.1声道、7.1声道等
    单声道:设置一个扬声器
    立体声道:把单声道一个扬声器扩展为左右对称的两个扬声器。声音在录制过程中被分配到两个独立的声道,从而达到很好地声音定位效果。
    4声道:4声道环绕规定了4个发音点,分别是前左、前右、后左、后右,听众则被包围在中间。同时还建议增加一个低音音箱,以加强对低频信号的回放效果(4.1声道音箱系统)
    5.1声道:来源于4.1声道;5个全频域声道 + 1个超低音声道组成;5个全频域声道(左前、中央、右前、左后、右后);超低音声道(提供一些额外的低音信息)
5.1声道,来自百度图片

    7.1声道:在5.1声道系统的基础上增加了中左、中右两个发音点
7.1声道,来自百度图片

参考:

    《Android 音视频开发》何俊林
     手机刷新率测试网站

标签:声道,MPEG,码率,编码,音频,音视频,基础知识,Android,刷新率
来源: https://blog.csdn.net/yan13507001470/article/details/117285474

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有