在我的应用程序中,我试图将播放音频剪辑时的音量设置为最大级别,但它似乎没有任何影响。我必须手动将音量调到最大。这是我的代码:
MediaPlayer mp = new MediaPlayer();
mp.setVolume(1, 1);
int origionalVolume = mAudioManager.getStreamVolume(AudioManager.STREAM_MUSIC);
mAudioManager.setStreamVolume(AudioManager.STREAM_MUSIC, mAudioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC), 0);
用这个
它是总体积
AudioManager mgr = (AudioManager) appContext.getSystemService(Context.AUDIO_SERVICE);
int valuess = 9;//range(0-15)
mgr.setStreamVolume(AudioManager.STREAM_MUSIC, valuess, 0);
当前歌曲正在播放时用于左右...
AudioTrack m = (AudioTrack) appContext.getSystemService(Context.AUDIO_SERVICE);
m.setStereoVolume(leftVolume, rightVolume);
这个对我有用。
使用 AudioManager,您可以控制媒体播放器的音量。
AudioManager audioManager = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
audioManager.setStreamVolume(AudioManager.STREAM_MUSIC, 20, 0);
也来自 MediaPlayer
public void setVolume (float leftVolume, float rightVolume)
例如,您可以将此方法用作,
int maxVolume = 100;
float log1=(float)(Math.log(maxVolume-currVolume)/Math.log(maxVolume));
mp.setVolume(1-log1);