音视频开发基础

数据压缩分类:
1:有损(Lossy):解压后的数据不能被完全恢复,会丢失一部分信息,压缩比越小,丢失的信息越多;压缩比高(10:1-20:1),利用人视觉特性,如MPEG-2、H.264/AVC、AVS;
2:无损(Lossless):解压后的数据可以完全恢复;压缩比低(2:1-3:1)如WinZip、JPEG-LS;
编解码器:
1:编码器(Encoder):压缩信号的设备或程序;
2:解码器(Decoder):解压缩信号的设备或程序;
3:编解码器(Codec):编解码器对;
声音:
声波的三要素:频率:音阶的高低、振幅:响度、波形:音色;

麦克风如何采集声音:
麦克风里面有一层碳膜,声音是一种纵波,会压缩空气也会压缩这层膜,碳膜在受到挤压时会发出震动,在碳膜下方是电极,碳膜震动会接触电极,接触时间的长短和频率与声波的振幅和频率有关,这样就完成了 声信号到电信号的转换,之后在经过放大电路处理,就可以实施采样量化处理;

数字音频:将模拟信号数字化
1:采样:在时间轴上对信号进行数字化,根据奈斯特定理(采样定理):按比声音最高频率高2倍以上的频率对声音进行采样,(人耳能听到的频率范围20Hz-20kHz),所以采样率一般为44.1KHz(1s采样44100次),这样使得声音达到20KHz也能被数字化;
1.1
音频的裸数据格式:脉冲编码调制数据(Pulse code modulation,pcm)
描述一段pcm数据一般需要几个概念:
量化格式(sampleFormat)、采样率(sampleRate)、声道数(channel);
1.2
对于声音格式还有一个概念描述它的大小, 比特率:即1s时间内的比特数量,用来衡量音频数据单位时间内的容量大小;
一段音频:量化=16比特<2字节>,采样率=44100,声道=2;
1s的比特率=44100*16*2=1378.125kbps;
1m声音的大小= 1378.125*60/8/1024=10.09MB;

2:量化:在振幅轴上对信号进行数字化;
3:编码:按照一定的格式存储 采样量化后的数字数据,比如顺序存储和压缩存储;
(压缩比通常小于1,>1就没必要压缩)
3.1声音压缩算法:PCM、WAV、AAC、MP3、Ogg等;

图像:
1:如果要显示一张图片,就要把这幅图像的每一个像素点的RGB通道分别对应在手机屏幕位置上的子像素点;
2:凡是渲染到屏幕上的东西,都要转换成RGB的表示形式;
图像的数值表示方式:
1:RGB
浮点表示:取之范围为0-1.0之间,如 在opengl es中对每一个子像素点的表示使用的就是这样;
整数表示:取值范围0-255或00-ff,8个比特表示一个子像素,32个比特表示一个像素;
2:YUV
与RGB相比,它最大的优势在于只需要占用极少的频宽(RGB要求三个独立的视频信号同时传输);
Y:明亮度(Luma)也称灰阶值,“亮度”是透过RGB输入信号来建立的,方法是将RGB信号的特定部分叠在一起;
U、V:表示色度(Chroma),作用时描述影像的色彩及饱和度,用于指定像素的颜色,"色度"则定义了颜色的两个方面 色调和饱和度,分别用Cr和Cb来表示.其中Cr反映了RGB输入信号红色部分与RGB信号亮度值之间的差异;
Cb反映的则是RGB输入信号蓝色部分与RGB信号亮度值之间的差异;

YUV和RGB的转化

视频的编解码方式:
主要压缩了什么?
空间冗余:图像相邻像素之间有较强的相关性;
时间冗余:视频序列的相邻图像之间内容相似;
编码冗余:不同像素值出现的概率不同;
视觉冗余:人视觉系统对细节不敏感;
知识冗余:规律性的结构可由先验知识和背景知识得到;

1: 去除时间的冗余:帧间编码技术
运动补偿:通过先前的局部图像来预测,补偿当前的局部图像,它是减少帧序列冗余的有效方法;
运动表示:不同区域的图像需要使用不同的运动矢量来描述运动信息;
运动估计:运动估计是从视频序列中抽取运动信息的一整套技术;

2:去除空间冗余:帧内编码技术
2.1:Motion JPEG:MPEG,适用于动态视频的压缩算法,目前主要包括版本:Mpeg1(用于VCD)、Mpeg2(用于DVD)、Mpeg4 AVC(流媒体);
2.2:H264系列:H264创造了多参考帧、多块类型、整数变换、帧内预测等,使用了分像素运动矢量(1/4、1/8)和新一代的环路滤波器;





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值