ffmpeg入门(一)

前言

我也是通过雷神才入门的,首先感谢雷神的无私奉献,希望未来能向雷神这样的好哥哥靠拢,下面是雷神的博客,讲解很到尾,在此记录自己的学习过程。

雷霄骅 (Lei Xiaohua)
[email protected]
http://blog.csdn.net/leixiaohua1020

ffmpeg能做什么

从我目前接触和了解到的,ffmpeg可以对我们常见的许多的多媒体格式的数据进行封装,解封转,编码,解码。
封装和解码的概念和意义接下来我会介绍,其实一句话总结就是ffmpeg对多媒体数据有强大处理能力。

ffmpeg解码流程

  • 1.先对音视频解封装
  • 2.对解封转得到的数据流进行解码
  • 3.解码后得到的数据就是可以显示或者可以播放的数据了

下面会解释什么是封装,解封装,什么是编码,解码。

从后往前了解

计算机是怎么显示图片

计算机要显示一张图片,就需要这个图片每一个像素的数据,每一个像素的数据怎么描述呢? 我们知道,红色,绿色,蓝色可以组成任意一个颜色,电视机的使用三原色也是利用这个原理。

现在我们可以引出,计算机在显示屏上显示数据的方式可以是使用RGB数据,(R 红色 G 绿色 B蓝色)这种数据的储存有很多方式,这里我们介绍RGB24,还有其他的RGB32等其他的格式
当然还有一种区别于RGB格式的YUV格式

RGB24

一个像素用24个bit == 3个字节来表示,R, G, B分量分别用8个bit来表示。
b.存储示意(注意RGB24格式按BGR的方式存储)
image

  • R = color & 0x000000FF,
  • G = color & 0x0000FF00,
  • B = color & 0x00FF0000

YUV

在 YUV空间中,每一个颜色有一个亮度信号 Y,和两个色度信号 U 和V。亮度信号是强度的感觉,它和色度信号断开,这样的话强度就可以在不影响颜色的情况下改变。
YUV使用RGB的信息,但它从全彩色图像中产生一个黑白图像,然后提取出三个主要的颜色变成两个额外的信号来描述颜色。把这三个信号组合回来就可以产生一个全彩色图像。
Y 通道描述Luma 信号,它与亮度信号有一点点不同,值的范围介于亮和暗之间。 Luma 是黑白电视可以看到的信号。U (Cb) 和 V (Cr)通道从红 (U) 和蓝 (V) 中提取亮度值来减少颜色信息量。这些值可以从新组合来决定红,绿和蓝的混合信号。

一个RGB24格式的像素点总共占用了24个字节,一张图片如果有10000个像素点的话,这张图片的大小就有30M的大小了,假如是视频的话,一个视频如果一秒钟60帧,一个60秒钟的视频就有30 * 60 * 60,也就是108个G的大小,可能我的计算方法有问题,但是我们至少可以知道,如果我们通过存像素点的方式去存一张图片或者视频是非常的耗费磁盘的,所以我们需要压缩图片或者压缩视频,这里就得谈到ffmpeg的编码了。

图像编码的意义

  • 图像编码也称图像压缩,是指在满足一定质量(信噪比的要求或主观评价得分)的条件下,以较少比特数表示图像或图像中所包含信息的技术。----来自百度百科
  • 通过这种编码我们就可以把一张图片的压缩得很小,等我们想显示这张图片的时候,我们再解码,然后使用解码后的数据显示图片。

视频编码的意义

  • 所谓视频编码方式就是指通过特定的压缩技术,将某个视频格式的文件转换成另一种视频格式文件的方式。视频流传输中最为重要的编解码标准有国际电联的H.261、H.263、H.264,运动静止图像专家组的M-JPEG和国际标准化组织运动图像专家组的MPEG系列标准,此外在互联网上被广泛应用的还有Real-Networks的RealVideo、微软公司的WMV以及Apple公司的QuickTime等。----来自百度百科
  • 视频编码和图像编码是有差异的,因为视频的每一帧前后有关联,所以可以利用这前后的关联进行编码,深入了解可以自行查询资料。

音视频封装的意义

数据的压缩我们通过编码搞定的,我们平时所看到的视频既有图像也有声音,声音和图像其实是两种截然不同的数据,我们一个视频文件里面其实就包含了这两种数据,将两种数据以某种规则放在一起的过程其实就是封装,视频不同的格式,比如说MP4,AVI等其实就是视频的封装格式不一样。有的封装格式中可以支持多个音频数据和一个视频数据,所以一部电影可以切换多种语言也就是这个原因。

小结

  • 关于多媒体数据的处理首先我们了解了计算机在显示一张图片时使用的多媒体数据是什么(RGB或者YUV),但是这种数据太大了,如果要存起来我们需要进行编码,比如编码成PNG格式的图片,对于一个视频也有它的编码格式,比如H.261,当视频和音频结合在一个文件中就需要封装来管理视频数据和音频数据的关系。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章