FFmpeg & 音视频

2016-09-24  本文已影响0人  yoosir

学习资料

雷霄骅 大神的 《基于 FFmpeg + SDL 的视频播放器的制作》课程的视频

最近接触了直播后,就一直不懂它的原理。所以,我想去了解它,先从音视频开始。我现在主要的学习的资料和方向是根据 雷霄骅 大神的博客来的。很遗憾的是 ,雷大神已经离开了我们,愿天堂没有疲惫。但是,雷大神的知识和博客将永远帮助着我们这些新手,衷心感谢 雷霄骅 大神。

什么是 FFmpeg 呢?

FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。它包括了目前领先的音/视频编码库libavcodec。 FFmpeg是在Linux下开发出来的,但它可以在包括Windows在内的大多数操作系统中编译。这个项目是由Fabrice Bellard发起的,现在由Michael Niedermayer主持。可以轻易地实现多种视频格式之间的相互转换,例如可以将摄录下的视频avi等转成现在视频网站所采用的flv格式。

音视频封装格式

音视频就是由图像和声音组成。平常,我们看到大多音视频封装格式就有 MP4、RMVB、TS、FLV、AVI等。下面举例。

视频编码:

视频编码是将视频像素数据(RGB,YUV等)压缩为视频码流,从而降低视频的数据量。 常见格式就有H.264,MPEG2,VC-1 等,分析工具:Elecard Stream Eye

H.264 格式
H.264格式图.png
H.264 压缩方法

音频编码:

音频编码是将音频采样数据(PCM等)压缩成为音频码流,从而降低音频的数据量。常见格式有AAC,MP3,AC-3

AAC 格式
AAC示例图.png
AAC 压缩方法

视频像素数据

视频像素数据作用
格式
特点
  //这里假定帧率为25HZ,取样精度8bit。
  3600*25*1920*1080*3 = 559.9GByte
YUV格式像素数据查看工具

YUV 格式

YUV格式介绍.png

Y的信息是 U、V信息的4倍。

音频采样数据

音频采样数据作用
特点
   // 这里假定采样率为44100Hz,采样精度为16bit.
   4*60*44100*2*2=42.3MByte
音频采样数据查看工具

PCM 格式

PCM格式介绍.png
上一篇 下一篇

猜你喜欢

热点阅读