安卓系统中的音频增强

4
我想知道如何在安卓应用程序上增加音量。同时,我想知道是否有可能创建一个服务,自动增加其他应用程序的音量?
我有一部Galaxy Mini手机,它的音量并不是很大。我通常会听一些广播应用程序,比如ESPN和MLB At Bat 应用程序,但它们的音量可能特别低,难以听清。
最近,我安装了一个MP3播放器应用程序,它有一个很好的音量增强功能。所以我想知道如何实现这个功能,是否可以创建一个应用程序来提高手机的音量,让其他应用程序也能受益。
其实,我的兴趣完全是个人的,因为开发这样一个应用程序只是一种爱好,我的主要兴趣是能够听到我喜欢的游戏:)
有人能指点我如何做到这一点吗?
谢谢。Decio
1个回答

5
如果您使用 SoundPool (请查询,网上有很多帮助),则可以在一定程度上控制此问题。
    public static void playSound(int index, float speed) 
{       
         float streamVolume = mAudioManager.getStreamVolume(AudioManager.STREAM_MUSIC); 
         streamVolume = streamVolume / mAudioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC);
         mSoundPool.play(mSoundPoolMap.get(index), streamVolume, streamVolume, 1, 0, speed); 
}

然而,这仍然只会在设备的最大音量输出(0.0-1.0之间)下播放原始声音。因此,它不会放大声音的实际数据(它不会比您设备的音量更响)。如果您要使用已包含在应用程序中的音频文件,则不会有问题,因为您可以在编辑器中放大声音,然后将其添加到项目中。但是,放大流媒体音频则更加困难。Android SDK带有低音增强功能,但没有通用放大器(据我所知)。要做到这一点,您要么必须编写自己的代码,要么找到已经完成此任务的其他人并使用他们的代码。这不是一个简单的任务。如果您没有很多先前的编程经验或编程知识,则可能需要花费相当多的精力来理解所有需要发生的事情,或者需要做些什么才能使这种情况发生。如果您感觉自己能够应对挑战,那么这是一个很好的起点。

http://www.developer.com/java/other/article.php/1572251/Java-Sound-Getting-Started-Part-1-Playback.htm

本教程将教授您基础知识,并让您对所学内容有一个坚实的理解。它不会完全覆盖您所寻找的内容,但它将为您理解如何处理原始音频、编辑和播放它的概念提供一个良好的起点。


谢谢你们所有人的帮助。今天我不在城里,但一回来就会看一下这个。至于我提到的音频增强,我是指免费且正在开发中的MyMusicOn应用程序。它只能为歌曲和音频文件增加音量,所以我才想知道流媒体方面的情况。 - decio
非常抱歉回复晚了。我还没有时间测试这个,但一定会的。再次感谢您的帮助! - decio

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接