[已解决] MediaPlayer.setVolume设置声音大小失效问题
2017-04-15 15:59
1441 查看
写一个很平常的音乐播放方法,发现声音很小,于是调用MediaPlayer.setVolume来设置声音,结果无效,代码如下:
查找到的解决方法是将setVolume方法放到play之后,如下:
再次测试发现声音已经变大,问题解决
查看setVolume源码的注释:
public void setVolume(float leftVolume, float rightVolume)
其中的两个参数分别是左右声道声音大小,取值范围为0~1
private static MediaPlayer m = null; public void play(Context context) { m = new MediaPlayer(); m = MediaPlayer.create(context, R.raw.myMusic); m.setAudioStreamType(AudioManager.STREAM_MUSIC); m.setVolume(1f, 1f); m.start(); m.setOnCompletionListener(new MediaPlayer.OnCompletionListener() { @Override public void onCompletion(MediaPlayer arg0) { m.release(); Log.d("MediaPlayer:", "release"); } });
查找到的解决方法是将setVolume方法放到play之后,如下:
m = new MediaPlayer(); m = MediaPlayer.create(context, R.raw.myMusic); m.setAudioStreamType(AudioManager.STREAM_MUSIC); m.start(); m.setVolume(1f, 1f);
再次测试发现声音已经变大,问题解决
查看setVolume源码的注释:
public void setVolume(float leftVolume, float rightVolume)
/** * Sets the volume on this player. * This API is recommended for balancing the output of audio streams * within an application. Unless you are writing an application to * control user settings, this API should be used in preference to * {@link AudioManager#setStreamVolume(int, int, int)} which sets the volume of ALL streams of * a particular type. Note that the passed volume values are raw scalars in range 0.0 to 1.0. * UI controls should be scaled logarithmically. * * @param leftVolume left volume scalar * @param rightVolume right volume scalar */
其中的两个参数分别是左右声道声音大小,取值范围为0~1
相关文章推荐
- Windows Media Player播放AVI视频文件时,只有声音,没有图像,问题解决
- Android MediaPlayer setVolume方法设置程序音量
- 解决Windows Media Player播放无声或声音过快问题
- 对于C#中的FileUpload解决文件上传大小限制的问题设置
- servlet 中response.setHeader设置response HTTP 头失效问题解决
- “SET 命令设置的环境变量在 FOR 循环中始终为空”问题的原因与解决方法
- 解决Windows 2003 中Windows Media Player 10 的修复问题
- 解决谷歌(Google Chrome)浏览器下CSS设置字体大小小于12px无法生效的问题
- 简单的Android音乐播放,解决incall类型不能通过音量按键控制声音大小的问题
- 解决.windows media player打不开MMS协议流媒体的问题
- 解决安装SP3后,Window Media Player 播放器不能播放的问题
- 解决谷歌(Google Chrome)浏览器下CSS设置字体大小小于12px无法生效的问题
- Windows Media Player播放文件时遇到问题的解决办法
- 解决谷歌(Google Chrome)浏览器下CSS设置字体大小小于12px无法生效的问题
- AlertDialog设置其大小为什么老不成功?问题解决。
- IE下 设置body{overflow:hidden;}失效 问题解决
- 解决qt字体大小设置问题
- 解决windows media player无法播放视频,下载解码器失败的问题!
- 解决谷歌(Google Chrome)浏览器下CSS设置字体大小小于12px无法生效的问题
- zt对于C#中的FileUpload解决文件上传大小限制的问题设置