现在的位置: 首页 > 综合 > 正文

android Ringdroid源码分析之一大体结构篇

2018年01月26日 ⁄ 综合 ⁄ 共 1257字 ⁄ 字号 评论关闭


大家好,我是西电移动开发小团队DHL的负责人,团队最近在做基于anroid平台的手机铃音制作软件。暑假实习的时候接触ringdroid源代码,因为那是个开源的项目,很多人修改,觉得很强大。可以实现对MP3音乐文件的截取,显示波形,设为铃声通知等功能,还有分配给自己通讯录的上的联系人等功能。很是强大,不过我们要做的功能比这个还要复杂,要实现,淡入淡出,变音调,将唱歌的人的声音自定义,比如变成老人,小孩等的声音。为了完成这个项目,我研究了RINGDROID源代码,还有各种音频格式的文件的格式,比如MP3,WAV。作为团队的负责人,还要为团队的产品UI,交互,协调各方面的资源。这是一系列的博文,伴随着这个项目的结束,因为团队之前做的基于android的手机照片处理软件在anroid market上下载量不错,坚定了我们开发这款软件的信息。下面我来说说我研究ringdroid源码的大致结构。

由上面看到有两个包,一个是进行具体处理的多个ACTIVITY,另一个是各种音频文件分析的JAVA文件。下面我说一下自己研究的理解的每一个JAVA文件的作用。首先是RingdroidSelectActivity,这个Activity主要是用来选择SD卡中的音频文件,并且分析音频文件的头文件信息,将歌手名,专辑等信息显示出来。点击某个音乐文件后,就会进入那个铃音编辑的ACTIVITY,RingdroidEditActivity也是这个软件的核心Activity,在这个界面会显示显示音频的波形,你可以快进,可以拖动显示起始时间,和结束时间,可以放大缩小波形。当你编辑完之后,点保存按钮,就会弹出FileSaveDialog这个对话框,你可以选择保存mp3文件为铃声,通知,警告声,提示声。当你保存完之后就会进入AfterSaveAction这个Activity,这个activity主要是用来问你是不是要设为默认的铃声,还是要把他分给你的联系人。但你点击分配给自己的联系人的时候,就会弹出chooseContact这个对话框,你可以搜索自己的联系人,把你觉得不错的人,把铃声分配给他。WaveformView这个Activity主要是用来显示波形的,具体怎么实现,看的一知半解,具体还会仔细研究。SongMetadataReader这个activity主要是用来读取音频文件的信息。

下面的com.ringdroid.soundfile包里的文件主要是对各种格式的音频文件的格式分析,比头文件,RingDroid真的很强大,各种格式的音频文件都能够支持。

以上是我对Ringdroid源码的结构的大致分析,算是抛砖引玉,之后回详细分析每一个类的作用,希望大家能够和我一起探讨,希望在做软件的过程中,能够和大家成为朋友,共同合作,把市面上可能最强大的手机铃音制作软件做出来。

博主联系方式:QQ:851959715TEL13484674647。团队邮箱:dhl.xidian2010@gmail.com,欢迎各位联系。

 

 

 

 


抱歉!评论已关闭.