数字音视频基础

数字音视频基础

音视频构成:文件名,图像,声音,字幕
播放一个视频文件的流程:
数字音视频基础
文章图片

三原色
  • 由于人类肉眼有三种不同颜色的感光体,因此所见的色彩空间通常可以由三种基本色表达,这三种颜色被称为 三原色
  • 叠加型:红色、绿色、蓝色。
  • 消减型:品红色、黄色、青色。
色彩空间
  • R、G、B(红、绿、蓝)
  • Y、U、V (Y为亮色,U、V为色差)
其中 Y表示明亮度(Lumina nce或Luma),也就是灰阶值;
UV表示的是色度,作用是描述影响色彩及饱和度,用于指定像素的颜色
yuv rgb 互转 公式 及算法
采样格式(YUV分量不同)
数字视频的采样格式有:
- 4:4:4 –色差分量没有下采样
- 4:2:2 – 色差分量进行水平下采样没有垂直下采样
- 4:1:1 – 色差分量进行了4:1的水平下采样没有垂直下采样
- 4:2:0 – 色彩分量分别进行2:1的水平和垂直下采样
视频动画原理
  • 帧:视频的一个画面
  • 帧率:单位时间内,从图像序列中所能获取的完整图片的数量,单位是fps(帧/秒)
  • 视频分辨率:图像大小(横向zongxiang)
  • 采样率:将模拟信号转换成数字信号时的采样频率,也就是单位时间内采样的多少点,一个采样点数据有多少个比特。单位Hz
  • 码率:单位时间内传输的数据位数,通常以kbps或Mbps为单位
  • 时间戳
视频采集
  • Windows视频采集技术
    • Directshow
    • VFW(Video for Windows)
  • Directshow
    • 基于com实现,提供了一系列视频数据操作接口
    • 重要接口ISampleGrabberCB
      STDMETHODIMP BufferCB(double dbISampleTime,byte *pBuffer,long IBufferSize);
视频压缩
  • 摄像头原始数据
    YUV,RGB
  • 按照ITU601的建议,传输1秒钟的PAL制式信号的原始数据量为:
    720*576*16*25/8 = 20736000 byte = 20MB/s
    1GB硬盘存:1GB/20MB = 51s的节目
  • 结论:要使数字电视信号适合于实际存储和传输,必须压缩数据。
  • 前提:压缩后图像质量要满足视觉要求;
视频编码数据
将视频像素数据(RGB,YUV等)压缩成为视频码流,从而降低视频的数据量
常见视频编码格式:
数字音视频基础
文章图片

音频编码数据
将音频采样数据(PCM等)压缩成为音频码流,从而降低音频的数据量
常见音频编码格式:
数字音视频基础
文章图片

视频像素数据
保存了屏幕上每个像素点的像素值。 常见的像素数据格式有RGB24, RGB32, YUV420P,YUV422P,
YUV444P等。压缩编码中一般使用的是YUV格式的像素数据,最为常 见的格式为YUV420P。
音频采样数据
保存了音频中每个采样点的值。 音频采样数据体积很大,一般情况下一首4分钟的PCM格式的 歌曲体积为:
4*60*44100*2*2=42.3MByte PS:这里假定采样率为44100Hz,采样精度为16bit。
视频压缩标准发展史
视频压缩标准发展历史(一)
国际视频压缩标准
视频编码与压缩技术发展史
封装格式
【数字音视频基础】数字音视频基础
文章图片

  • 封装格式
    TS,AVI,MKV,Mpeg,MOV,M2T等等,不同的封装方式就像是不同的盒子,高清视频要用它装起来才能呈现给观众。
    • 录音(PCM) —> 音频数据压缩(aac) —> 封装(mp4,mkv,flv…)
    • 录像(YUV420) —> 视频数据压缩(h264) —> 封装(mp4,mkv,flv…)
  • 文件播放
    • 本地(网络)视频 —— 解协议(http,rtmp,file) —— 解封装(mp4,mlv,avi,wmv,…) —— 视频解码(h264,h263,h265…) —— 图像数据到显卡
    • 音频解码(aac,g729,g711…) —— 声音数据至声卡
流媒体传输:rtp,rtmp
  • 视频采集(YUV420) ——> 视频压缩(H264/H265 NALU) ——> 缓冲区 ——> RTP/RTMP传输(rtp包) ——> 网络传输(UDP,IP包) ——> INTERNET ——>UDP,IP解包 ——>RTP解包(NALU)——> 缓冲区 ——> H264/H265视频解码(YUV420) ——> 视频播放(YUV)
常用工具简介
  • 音视频相关知识学习博客:雷霄华
  • 视频采集:DirectShow(api)
  • 视频剪辑: 格式工厂,会声会影
  • 视频播放器: potplayer,vlc,ffplay;
  • 视频编解码工具: ffpmeg + api

    推荐阅读