Android 多媒体应用——MediaPlayer音频播放

来源:互联网 发布:普查数据库 英语 编辑:程序博客网 时间:2024/05/16 14:49

   这个之前有写过博客《 Android中的MediaPlayer——音乐播放器实践 》学习MediaPlayer的,并且做了一个小型的音乐播放器,但是这个音乐播放器有很多逻辑上的错误,直到现在也一直没有修正。今天系统的学习了一下MediaPlayer,下面总结一下。
   MediaPlayer可以播放视频和音频。
   

MediaPlayer播放音频

  在《 Android中的MediaPlayer——音乐播放器实践 》文章中已经讲解了MediaPlayer的基本使用,但是仅仅是从String Path中获得音频资源,这里我们补充学习下MediaPlayer不同途径获得音频资源的方式:
(一)、 播放应用的资源文件。
1. 调用MediaPlayer对象的create(Context context, int resid)方法,获得应用中的音频资源。
2. 调用MediaPlayer对象的start(), pause(), stop()等方法进行播放操作。
(二)、播放应用原始资源文件。
   这个资源就是指在assets目录下的资源。
1. 通过Context的getAssets()方法获取AssetManager。
2. 调用AssetManager对象的openFd(String fileName)方法获得AssetFileDescriptor对象。
3. 调用AssetFileDescriptor对象的getFileDescriptor(), getStartOffset(),getLength()方法获得音频的FileDescriptor,开始位置,音频长度等。
4. 创建一个MediaPalyer对象,通过setDataSource(FileDescriptor fd, long offset, long length)方法装载音频文件。
5. 调用prepare()准备音频文件
6. 调用start(), pause(), stop()等方法进行播放操作。
(三)、播放外部存储上的资源文件。
1. 调用MediaPLayer的setDataSource(String path)加载文件的路径。
2. 调用prepare()准备音频文件。
3. 调用start(), pause(), stop()等方法进行播放操作。
(四)、 播放来自网络的资源文件。
1. 根据音频文件位置创建Uri对象。
2. 创建MediaPlayer对象。
3. MediaPlayer对象调用setDataSource()方法加载网络音频文件。
4. 调用prepare()准备音频文件。
5. 调用start(), pause(), stop()等方法进行播放操作。
  
  这就是MediaPlayer播放不同来源音频的方式,MediaPlayer还可以对音频的均衡,重低音等特效进行调整。这些特效都是通过AudioEffect子类完成的。使用方法都是差不多的,创建子类的实例,调用isAvailable()方法,查看是否可用,若可用则调用setEnabled()方法启动相应效果。

0 0
原创粉丝点击