Android中实现听筒中播放声音
2014-07-29 09:39
369 查看
先前的AnyChat SDK for Android不能实现从听筒中播放声音,AnyChat团队经过研究后,找到了解决方案,在现有的SDK基础上面做如下两点修改:
一、修改AnyChat SDK中AnyChatAudioHelper文件
将
mAudioTrack = new AudioTrack(AudioManager.STREAM_MUSIC, samplerate, channel, samplebit, mMinPlayBufSize, AudioTrack.MODE_STREAM);
复制代码
改成
mAudioTrack=new AudioTrack(AudioManager.STREAM_VOICE_CALL, samplerate, channel, samplebit, mMinPlayBufSize, AudioTrack.MODE_STREAM);
复制代码
二、上层在需要切换的地方采用以下方式调用代码
切换到听筒:
AudioManager audioManager = (AudioManager)mActivity.getSystemService(Context.AUDIO_SERVICE); audioManager.setMode(AudioManager.MODE_IN_CALL);
复制代码
切换到扬声器:
AudioManager audioManager = (AudioManager)mActivity.getSystemService(Context.AUDIO_SERVICE); audioManager.setMode(AudioManager.MODE_NORMAL);
复制代码
(注意要添加权限:android:name="android.permission.MODIFY_AUDIO_SETTINGS")
一、修改AnyChat SDK中AnyChatAudioHelper文件
将
mAudioTrack = new AudioTrack(AudioManager.STREAM_MUSIC, samplerate, channel, samplebit, mMinPlayBufSize, AudioTrack.MODE_STREAM);
复制代码
改成
mAudioTrack=new AudioTrack(AudioManager.STREAM_VOICE_CALL, samplerate, channel, samplebit, mMinPlayBufSize, AudioTrack.MODE_STREAM);
复制代码
二、上层在需要切换的地方采用以下方式调用代码
切换到听筒:
AudioManager audioManager = (AudioManager)mActivity.getSystemService(Context.AUDIO_SERVICE); audioManager.setMode(AudioManager.MODE_IN_CALL);
复制代码
切换到扬声器:
AudioManager audioManager = (AudioManager)mActivity.getSystemService(Context.AUDIO_SERVICE); audioManager.setMode(AudioManager.MODE_NORMAL);
复制代码
(注意要添加权限:android:name="android.permission.MODIFY_AUDIO_SETTINGS")
相关文章推荐
- Android 4.3实现类似iOS在音乐播放过程中如果有来电则音乐声音渐小铃声渐大的效果
- Android平台Unity所有声音从听筒播放
- Android 4.3实现类似iOS在音乐播放过程中如果有来电则音乐声音渐小铃声渐大的效果(二)
- Android 简单异步处理类------实现声音的录制及播放
- Android 4.3实现类似iOS在音乐播放过程中如果有来电则音乐声音渐小铃声渐大的效果
- Android 4.3实现类似iOS在音乐播放过程中如果有来电则音乐声音渐小铃声渐大的效果
- Android实现直接播放麦克风采集到的声音
- 实现Android播放声音资源的一个简单的工具类
- 几种C#实现播放声音的方法 DirectX、SoundPlayer等
- 在C#中利用DirectX实现声音播放
- 在C#中利用DirectX实现声音播放
- android SoundPool api 翻译(正在进行) 播放游戏声音
- Android平台游戏声音播放实践
- 几种C#实现播放声音的方法 DirectX、SoundPlayer等
- 【Android游戏开发二十二】(图文详解)游戏中灵活实现动画播放!简述J2me的游戏类库与Android游戏开发!
- Android平台游戏声音播放实践
- Android播放ogg声音文件
- Javascript实现的鼠标经过时播放声音
- 使用C#实现通过网络发送和播放麦克风的声音
- 在C#中利用DirectX实现声音播放