Android音频视频播放实践与Mediaplayer优化

0 下载量 186 浏览量 更新于2024-07-15 收藏 192KB PDF 举报
在安卓第十六天的笔记中,主要讨论了Android应用程序中音频与视频播放的相关内容。首先,对于资源内的音乐播放,通常将音乐文件存储在`res/raw`目录下,通过`MediaPlayer.create()`方法可以直接加载并播放。例如,`player1()`函数演示了如何从资源中播放名为`gm.mp3`的音乐,创建一个新的`MediaPlayer`实例后即可调用`start()`方法播放。 为了播放SD卡或其他外部存储位置的音乐,可以使用`player2()`函数,它首先获取到音乐文件的实际路径,然后将其转换为`Uri`,再通过`MediaPlayer.create()`方法设置为播放数据源。然而,这种方法每次都会创建新的`MediaPlayer`实例,不便于管理多个音频的播放状态。 针对这个问题,笔记提到了更灵活的`MediaPlayer.setDataSource()`方法,通过这个方法可以动态地指定音频文件路径进行播放。这种方式更适合在需要控制多个音频播放或共享播放状态的情景。在代码示例中,`onCreate()`方法中预先初始化一个`mediaPlayer`对象,然后在`player()`函数中,使用`reset()`清除前一次的播放状态,再通过`setDataSource()`方法加载指定的音频文件路径,如`"/mnt/sdcard/man.mp3"`,然后调用`start()`启动播放。 此外,还提及了一些音频处理技术,如AcousticEchoCanceler(回声抑制)、AutomaticGainControl(自动增益控制)、NoiseSuppressor(噪音抑制)、BassBoost(重低音增强)、Equalizer(均衡器)和PresetReverb(预设混响),这些都是Android音频播放时可能用到的功能,用于优化音频质量和用户体验。这些功能可以通过`MediaPlayer`对象的相应方法进行设置和调整。 总结来说,本笔记重点介绍了在Android开发中如何处理应用内资源和外部文件的音频播放,以及如何使用`MediaPlayer`类进行音频管理和高级音频处理技术的应用。这有助于开发者更好地理解和管理音频播放逻辑,提升应用程序的多媒体体验。