2012-09-21 33 views
3

我想知道如何提高Android應用程序的音量。Android上的音量提升

另外,是否有可能創建一個服務,自動提升其他應用程序的音量?

解釋什麼是我想要做的:

我有一個銀河迷你手機,它的音量是不是真的那麼響亮。我通常會聽ESPN等廣播應用程序,以及來自mlb At Bat應用程序的遊戲廣播,但它們可能會變得特別低並且難以聽到。

最近我安裝了一個MP3播放器的應用程序,音量提升效果很好。所以我想知道如何做到這一點,以及是否有可能創建一個能夠增加手機音量的應用程序,以便其他應用程序可以從中受益。 真的,我的興趣完全是個人的,因爲開發一個應用程序,這將是一種愛好,我的主要興趣是能夠聽到我愛的遊戲:)

任何人都可以指出我如何實現這一目標?

在此先感謝 此致敬禮。 Decio

回答

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

它會教你的基礎知識,並給你做了什麼了堅實的想法。它不會涵蓋你正在尋找的東西,但它會給你一個理解如何處理原始音頻,編輯和回放原理的好地方。

+0

感謝您的所有幫助。我今天不在城裏,但我一回來就會經歷這個。至於我提到的音頻提升,我指的是應用程序MyMusicOn,它是免費的,正在開發中。它只會增加歌曲和音頻文件的音量,因此我想知道流媒體的問題。 – decio

+0

它可以做到。祝你好運:) – WIllJBD

+0

對不起,很長一段時間回來。我還沒有時間來測試這個,但肯定會。再次感謝您的幫助! – decio