2013-05-16 37 views
2

當音頻在背景中播放時(在我的相同應用程序中),我不得不將視頻靜音。 但是,當我嘗試在videoview.onPrepared回調中設置mediaplayer的音量時,它對靜音視頻沒有任何影響。Android MediaPlayer.setVolume(0,0)不會屏蔽視頻的聲音

//muteVolume is a boolean that is true if a background audio is playing, otherwise false 

videoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() 
      { 
       @Override 
       public void onPrepared(MediaPlayer mediaPlayer) 
       { 
        float volumeValue = ((muteVolume) ? 0.f : 1.f); 
        mediaPlayer.setVolume(volumeValue,volumeValue); 
        videoView.setZOrderOnTop(false); 
        videoView.start(); 
       } 
      }); 

這適用於三星GT平板電腦,而它不適用於某些Android設備。

我無法在我的應用程序中設置流的音量,因爲在我的應用程序本身中,我需要在背景中以完整音量播放音頻。

也有一些應用(VPLAYER),其能夠靜音在相同的裝置,其中,上述代碼是不工作

視頻是否有任何其他的方式來設置視頻,使得體積視頻靜音,另一個音頻在後臺播放? 或我錯過了什麼?

回答

1

我使用setVolume(0,0)之後我叫開始,它靜音我...

+0

我試過了。它不起作用。 –

0

如果音頻已經玩此代碼只會工作和videoView被準備(如你正在VideoView的onPrepared偵聽器中的更改)。但是,從您的問題的語言看來,您正試圖在背景中調用音頻時對正在播放的視頻進行靜音(即反過來)。如果是這種情況,請創建一個將音量設置爲零的方法,並在音頻開始播放時調用該方法。 PS:因爲你說的是​​在三星GT平板電腦上工作,所以我覺得我的觀察可能也不正確。您能否更清楚地明確何時會出現這種要求?