软件开发技术基础_第1页
软件开发技术基础_第2页
软件开发技术基础_第3页
软件开发技术基础_第4页
软件开发技术基础_第5页
已阅读5页,还剩72页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

软件开发技术基础,顾刚计算机教学实验中心,第6章多媒体编程技术讲课4学时实验2学时,(Multimedia)就是文字、图形、图像、声音、动画、视频等多种媒体信息的集合,多媒体定义,指利用计算机技术将各种媒体以数字化的方式集成在一起,并能够对它们进行加工处理的技术。,多媒体技术,指在WINDOWS环境下,编写程序对多媒体信息进行播放和处理的技术。,多媒体编程技术,数字声音编程,1.声音的特性,2.声音信号的数字化,3.数字音频的处理,1.声音的特性,声波:当物体在空气中振动时,便会产生连续的波,声音:大脑对声波的感知就是声音(Sound),幅度(Amplitude):指声音的大小、强弱程度,频率(Frequency):指信号每秒钟变化的次数,声波可以看成在时间上和幅度上都是连续变化的模拟信号,时间t,幅度a,1.声音的特性,高保真声音的频率范围为1020000Hz,它的带宽约为20kHz话音人的发音器官发出的声音频率大约是803400Hz频率小于20Hz的信号称为亚音信号高于20kHz的信号称为超音频信号(Supersonic),或称超声波(Ultrasonic)信号频率范围为20Hz20kHz的信号称为音频信号在多媒体技术中,处理的声音信号主要是音频信号,它包括音乐、话音、风声、雨声、鸟叫声、机器声等.,1.声音的特性,带宽声音信号的频率范围称为带宽,2.声音信号数字化,模拟信号:指在时间和幅度上都连续的信号,采样,量化,编码,声音的模拟信号,声音的数字信号,数字信号:把时间和幅度都用离散的数字表示的信号,采样(sampling),采样在某些特定的时刻对这种模拟信号进行测量叫做采样(Sampling),得到的信号称为离散时间信号,如何采样使声音信号不失真?,量化(measuring),量化将信号幅度取值的数目加以限定,由有限个数值来表示信号。或者对幅值加以进似的过程,得到的信号就称为离散幅度信号,例:假设输入电压的范围是0.00.7V,而它的取值仅限定在0,0.l,0.2,0.7V共8个值。如果采样得到的幅度值是0.123V,则近似取值为0.1V,如果采样得到的幅度值是0.271V,它的取值就近似为0.3V。,举例说明,数字信号,声音信息的数字化实际上就是采样和量化,模拟信号,数字信号,采样频率,根据奈奎斯特理论(Nyqusttheory):如果采样频率不低于信号最高频率的两倍,就能把以数字表达的声音还原成原来的声音对于话音信号,最高频率为3400Hz,采样频率为8000Hz,能以数字声音还原原来的声音对于一般音频信号,最高频率为20kHz,采样频率为40kHz以上时,就能无失真地还原出原来的声音采样频率越高,得到的数据占用的存储空间越大,采样频率:指单位时间内的采样次数,采样精度,采样精度:指存放采样点幅值的二进制位数,采样精度(Samplingprecision),也叫样本位数或位深度,用每个声音样本的位数(bit或b)表示位数越少,声音的质量越低,需要的存储空间越少采样频率和采样精度是数字声音质量的两项重要指标声道数是数字声音的第三项指标,声音的采样和量化,数据率指还原1秒钟的声音所需传输的数据位数,也是数字化1秒钟的声音的所需传输的数据位数。未经压缩的数字声音的数据率为数据率(b/s)=采样频率(Hz)样本精度(bit)声道数由于播放设备、传输线路和网络传输速度的限制,需要对声音数据进行压缩。压缩后的数据率变小,但质量也会降低,数据率,1分钟的双声道声音文件的数据量为:8(bit)8kHz2(声道数)60(秒)/8(bit/Byte)=960kB,计算声音文件的数据量,模拟声音信号的波形成采样得到的离散时间信号,再量化得到的数字信号,采样的3个常用频率分别:11.025kHz对应AM广播声音22.05kHz对应FM广播声音44.1kHz对应CD高保真声音,不同质量的声音的性能指标,编码(coding),将采集到的物理量转换为在计算机中表示的代码的过程称为编码,数据编码举例:设量化值为20、30、40、.、170(间隔10),有16种不同的数据,相当于16种符号,在计算机中可以用4位二进制数表示,如用0000表示20,0001表示30,0010表示40,.,1111表示170编码方法:自然码编码、哈夫曼编码、算术编码非压缩编码、压缩编码,文件格式是数据在存储器中的存放形式。相同的数据,可以有不同的存放形式,所以也就有多种文件格式。WAV是Windows采用的波形声音文件存储格式,主要用于自然声的保存与回放,其特点是声音层次丰富,还原性好,表现力强。如果使用足够高的采样频率和采样精度,可以获得极好的音质,但文件的数据量比较大。该格式的文件可以被几乎所有的多媒体软件使用,易于编辑。,声音文件的存储格式,MP3是MPEG(MovingPictureExpertGroup运动图像专家组)第三层压缩文件格式,提供8kb/s到128kb/s的数据率和高达96:1的压缩比,有较好的音质。主要应用于因特网上的声音传输。常见的MP3音乐就使用了该压缩标准,是MP3播放器的主要格式RM、RA是RealNetworks公司制定的声音文件格式,有较高的压缩比,可以采用流媒体的方式在网络上实时播放,主要使用RealNetworks公司的播放器播放,文件格式,使用MCI播放音频,WindowsMCI(MediaControlInterface)是Windows提供的控制多媒体设备的高层、通用的命令接口。它提供一组与设备无关的函数和命令,可有效地控制多媒体设备。Windows采用两种MCI接口与MCI设备通信:一是使用命令消息接口函数,直接控制MCI设备;二是使用命令字符串接口函数,基于文本接口或命令脚本来控制MCI设备。,命令字符串接口函数说明,MCIERRORmciSendString(LPCTSTRlpszCommand,LPTSTRlpszReturnString,UINTcchReturn,HANDLEhwndCallback)各参数含义如下:lpszCommand指向MCI命令字符串/打开01.wave波形文件命令字符串openc:music01.wave/播放mysound设备,从位置1000到2000命令字符串playmysoundfrom1000to2000notifylpszReturnString指向接受返回信息的缓冲区cchReturn缓冲区大小hwndCallback回调窗口句柄,使用命令字符串接口函数播放声音文件,#include#include#includeusingnamespacestd;#pragmacomment(lib,winmm)voidmain()charszReturn256;MCIERRORerrorCode=mciSendString(playd:周冰倩_真的好想你.mp3,szReturn,sizeof(szReturn),NULL);playd:邓丽君_甜蜜蜜_wav.wavinti=0;for(;)coutNowplayingti+”Resource”在弹出的对话框中选择Bitmap,然后单击【Import】按钮,导入一幅BMP位图。位图的ID号使用IDB_BITMAP1修改视图类的定义(头文件)开始处,加入3个变量定义:/定义CBitmap类对象以及位图的高度和宽度变量CBitmapm_Bitmap;intm_nHeight;intm_nWidth;,【例6-5】显示一张位图文件(BMP),【例6-5】显示一张位图文件(BMP),修改视图类的构造函数/载入位图资源,读位图信息m_Bitmap.LoadBitmap(IDB_BITMAP1);BITMAPBM;m_Bitmap.GetBitmap(编译连接运行,BMP图像文件处理,可以通过读入BMP图像文件数据,对图像进行一系列的处理,如旋转、缩小、放大等,视频信息(电视、电影、动画片等)实际上指时间上连续的图像编写程序让简单位图图像运动起来例如:下面图像,位图动画,编程步骤,建立单文档MFC程序框架,工程名称move_car在资源视图中,进入菜单编辑,增加两个菜单选项“显示小车”,其ID分别为ID_SHOW_CAR“运动小车”,其ID分别为ID_MOVE_CAR在文档类中增加如下成员变量CRectm_rectCarBody;CRectm_rectWheel2;修改文档类的构造函数m_rectCarBody=CRect(0,0,0,0);m_rectWheel0=CRect(0,0,0,0);m_rectWheel1=CRect(0,0,0,0);,修改视图类的OnDraw()函数CBrushbrushNew,*pbrushOld;CBrushbrushNew1;CPenpenNew,*ppenOld;brushNew.CreateSolidBrush(RGB(255,0,0);penNew.CreatePen(PS_SOLID,2,RGB(0,255,0);pbrushOld=pDC-SelectObject(,用类向导在视图类中建立菜单ID_SHOW_CAR命令消息映射及修改相应的函数OnShowCar()CMove_carDoc*pDoc=GetDocument();ASSERT_VALID(pDoc);pDoc-m_rectCarBody=CRect(0,100,90,130);pDoc-m_rectWheel0=CRect(16,130,35,150);pDoc-m_rectWheel1=CRect(61,130,80,150);Invalidate();/pDoc-m_rectCarBody,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论