音视频基础概念

Coding Alan 3年前 (2021-03-31) 2112次浏览 0个评论 扫描二维码

声波三要素:频率、振幅和波形。频率代表音阶的高低,振幅代表响度,波形代表音色。

音视频基础概念

采样、量化和编码

奈奎斯特定理(采样定理):按比声音最高频率高2倍以上的频率对声音进行采样(也称为AD转换)。人耳能听到的频率范围是20Hz~20kHz,所以采样频率一般为44.1kHz(1秒采样44100次)。

通常所说的音频的祼数据格式就是脉冲编码调制(Pulse Code Modulation, PCM)数据。描述 PCM 需用到的概念:量化格式(sampleFormat)、采样率(sampleRate)、声道数(channel)。

比特率(以 CD 音质为例,量化格式或称位深度为16比特、采样率为44100,声道数为2),CD的数据比特率

44100 * 16 * 2 = 1378.125kbps

1分钟内所占的存储空间:

1378.125 * 60 / 8 / 1024 = 10.09MB

分贝

N= 10 * lg(A1 / A0)

其中A0是基准量(或参考量), A1是被量度量

压缩编码的基本指标之一就是压缩比,压缩算法包括有损压缩和无损压缩。压缩编码算法,如PCM、WAV(多媒体开发的中间文件、保存音乐和音效素材)、AAC(128Kbit/s以下的音频编码,多用于视频中音频轨的编码)、MP3(高比特率下对兼容性有要求的音乐欣赏)、Ogg(比MP3更小的码率实现比MP3更好的音质,适用语音聊天的音频消息场景)等。压缩编码的原理是压缩掉冗余信号(耳听觉范围之外的音频信号以及被掩蔽掉的音频信号等),掩蔽掉的音频信号则主要是因为人耳的掩蔽效应,主要表现为频域掩蔽效应与时域掩蔽效应。

三原色光:红光(R)、绿光(G)、蓝光(B)。子像素表示方式

  • 浮点表示:取值范围为0.0~1.0,比如,在OpenGL ES中对每一个子像素点的表示使用的就是这种表达方式。
  • 整数表示:取值范围为0~255或者00~FF,8个比特表示一个子像素,32个比特表示一个像素,这就是类似于某些平台上表示图像格式的RGBA_8888数据格式。比如,Android平台上RGB_565的表示方法为16比特模式表示一个像素,R用5个比特来表示,G用6个比特来表示,B用5个比特来表示。

1280×720的RGBA_8888图像的大小:1280 * 720 * 4 / 1024 / 1024 = 3.516MB

YUV数据格式,其中“Y”表示明亮度(Luminance或Luma),也称灰阶值;而“U”和“V”表示的则是色度(Chrominance或Chroma)。Y的取值范围都是16~235, UV的取值范围都是16~240。YUV最常用的采样格式是4:2:0,即如果某一行是4:2:0(4Y-2U-0V),那么其下一行就是4:0:2(4Y-0U-2V)…对非压缩的8比特量化的视频来说,8×4的一张图片需要占用48字节的内存:

音视频基础概念

1280×720的视频帧,用YUV420P的格式来表示,数据量的大小:

(1280 * 720 * 1 + 1280 * 720 * 0.5) / 1024 / 1024 = 1.318MB

1.318MB * 24fps * 90min * 60s = 166.8GB

YUV转换到RGB的公式

音视频基础概念

音视频基础概念

视频压缩使用帧间编码技术可以去除时间上的冗余信息

  • 运动补偿
  • 运动表示
  • 运动估计

ISO标准:Motion JPEG即MPEG,主要版本:Mpeg1(用于VCD)、Mpeg2(用于DVD)、Mpeg4 AVC(当前大多流媒体使用)。

ITU-T标准:H.261、H.262、H.263、H.264

编码概念

  • IPB帧
    • I帧:帧内编码帧(intra picture)
    • P帧:前向预测编码帧(predictive-frame)
    • B帧:双向预测内插编码帧(bi-directional interpolated prediction frame)
    • H264中有一个帧称为IDR帧,IDR的英文全称instantaneous decoding refresh picture
  • PTS与DTS
    • DTS主要用于视频的解码,英文全称是Decoding Time Stamp
    • PTS主要用于在解码阶段进行视频的同步和输出,全称是Presentation Time Stamp
  • GOP(Group Of Picture)两个I帧之间形成的一组图片

通常I的压缩率是7(与JPG差不多), P是20, B可以达到50

音视频基础概念

https://github.com/zhanxiaokai

转码推荐值

https://support.video.ibm.com/hc/en-us/articles/207852117-Internet-connection-and-recommended-encoding-settings

QualityResolutionVideo BitrateAudio BitrateAudio Sample RateFrames Per SecondVideo Codech.264 ProfileKeyframe intervalAudio CodecAudio Channels
HD 7201280x7201,200 - 4,000 kbps128kbps48kHz25/30/60h.264Main1 SecondAAC-LCMono or Stereo
HD 10801920x10804,000-8,000 kbps192kbps48kHz25/30/60h.264Main or High1 SecondAAC-LCStereo
4K3840x21608,000-14,000 kbps192kbps48kHz25/30h.264High1 SecondAAC-LCStereo
喜欢 (0)
[]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址