第10章 android绚丽的多媒体技术.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第10章 绚丽的多媒体技术 多媒体——无论是声音、图像抑或是视频——可以使你的应用更加绚丽多彩。如今的手机设备至少含有一个麦克风——我们可以通过它录制个性铃音。至少含有一个摄像头——我们可以通过它拍摄图片或者录制视频。Android提供了一系列的多媒体API供开发者使用,甚至包括了文件输出格式和编码格式的控制。在本章中,读者将学会使用利用麦克风和摄像头开发精彩的多媒体应用。 10.1 简单处理音频 音频的处理是Android开发的一个大课题。在本节中将带领大家学习一些在开发中常用的API,以及必须要了解的一些基础知识。但本书篇幅有限,更多的知识需要读者自己去深入了解,只有知其然更知其所以然才能开发出更优秀,更高效的应用。 10.1.1 使用MediaRecoder录制音频 在大多数的开发中,开发者使用MediaRecorder录制声音文件。因为它使用非常方便,简单而又安全,可以满足大部分开发需求。要使用MediaRecorder对象需要如下几个步骤: (1)实例化一个MediaRecorder对象 (2)设置采集设备 (3)设置录制格式 (4)设置文件输出格式 (5)设置目标文件 (6)准备录制 (7)开始录制 (8)停止录制 (9)释放资源 接下来将为大家详细讲解每个步骤的功能: 1.实例化一个MediaRecorder对象 通过new MediaRecorder()方法获得一个MediaRecorder对象,以便对其进行设置和操作。方法如下: MediaRecorder mediaRecorder = new MediaRecorder(); 2.设置音频采集设备 要进行音频的录制必须要使用硬件设备。而在手机开发中一般会使用麦克风作为音频的录制设备(事实上,目前Android只支持使用它),设置方法如下: setAudioSource(MediaRecorder.AudioSource.MIC); 这里的参数显而易见是指麦克风了。 3.设置音频录制格式 这里所指的格式是指录制时的编码格式,从麦克风录制的数据我们称之为裸数据,是未经压缩或任何处理的数据。但很多时候这样的数据不能很好的满足我们的开发需求,因为这真的太大了。所以,一般在开发时我们需要将捕获的数据进行压缩。 Android的MediaRecorder对象支持的压缩方法是AMR_NB格式。这也是目前非常流行的一种压缩格式。方法如下: setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB); 4.设置文件输出格式 这里所指的格式就是是大家平常所熟知的MP3、MP4、3GP等等了。这里就不需笔者花费过多的笔墨了吧。MediaRecorder对象支持的输出格式包括:RAW_AMR、MPEG_4、THREE_GPP。使用方法如下: setOutputFormat(MediaRecorder. OutputFormat.MPEG_4); 5.设置目标文件 各类参数设置完毕后我们必须告诉MediaRecorder对象,其录制的音频文件要保存在哪里。这个时候就需要使用设置目标文件的方法。方法如下: setOutputFile(String path); 括号里的参数可以使一个文件的有效对象,或者是一个文件的有效路径。 6.准备录制 现在,准备工作做的已经差不多了。接下来要做的就是告诉MediaRecorder对象,我们已经设置完成,需要它准备录制了。这个时候需要调用: Prepare(); 7.开始录制 这个时候MediaRecorder对象已经是准备就绪状态,我们需要调用start()方法通知它开始录制。一旦调用,MediaRecorder对象就会开始工作,向文件中写入音频数据。方法很简单: Start(); 调用了该方法后,MediaRecorder对象进入开始状态,已经在采集数据并按照之前设置的参数向文件中写入数据了。 8.停止录制 当需要停止音频的录制时,只要简单的调用stop()方法就可以停止MediaRecorder对象。方法如下: Stop(); 9.释放资源 当需要停止音频的录制后,其实MediaRecorder对象依然占用着资源,要保证系统安全高效地运行,我们需要及时释放该对象占用的资源。方法为: Release(); 调用了该方法后,MediaRecorder对象将释放资源,至此一次完整的音频录制结束。 10.1.2 通过实例学习使用MediaRecoder录制音频 同样的,在本节通过一个实例学习使用MediaRecorder类。因为是学习使用音频录制,这里就不提出效果图了。简单的介绍一下程序,程序本身只有两个按钮,开始按钮——按下后开始录制音频,停止按钮——按下后结束录音。若程

文档评论(0)

qbjzmxj5904 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档