在我的应用中,我正在尝试将音频剪辑播放到最高级别时设置音量,但它似乎没有任何影响。我必须手动将音量调节到最高水平。这是我的代码:
MediaPlayer mp = new MediaPlayer();
mp.setVolume(1, 1);
答案 0 :(得分:9)
int origionalVolume = mAudioManager.getStreamVolume(AudioManager.STREAM_MUSIC);
mAudioManager.setStreamVolume(AudioManager.STREAM_MUSIC, mAudioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC), 0);
答案 1 :(得分:4)
使用此
总容量
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);
它对我有用。
答案 2 :(得分:1)
使用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);