当前位置 : 主页 > 手机开发 > android >

android – 用于调用的背景音乐

来源:互联网 收集:自由互联 发布时间:2021-06-11
我想开发一个为呼叫播放背景音乐的应用程序,并且仅对呼叫者和听者可听见.有没有任何已经可用的应用程序,是否有可能在 Android? 有些移动平台确实在平台级支持此功能(例如,我已经
我想开发一个为呼叫播放背景音乐的应用程序,并且仅对呼叫者和听者可听见.有没有任何已经可用的应用程序,是否有可能在 Android? 有些移动平台确实在平台级支持此功能(例如,我已经使用Qualcomm APQ8064对其进行了测试,我已经相应地配置了硬件编解码器路由,并且它可以工作).但是Android没有让你将它作为应用程序开发人员使用的API,所以在非root用户手机上你根本没有任何东西可以做.为什么没有API – 或者是否会有未来的版本Android – 我不知道.某些市场可能存在法律问题,或者可能只是因为它被认为是一个半模糊的特征,他们看不到很大的需求,只有相对较少的平台支持.

另一件需要考虑的事情是,你真的想在通话期间在后台播放音乐吗?音频将是8 kHz单声道(如果你正在进行宽带通话,则为16 kHz单声道),它将会是AMR编码与语音信号的其余部分一起编码(AMR是用于编码语音的低比特率编解码器).换句话说,通过语音呼叫上行链路播放的任何音乐听起来都非常非常糟糕.

更新:对于你有root权限的基于APQ8064的手机,程序将是这样的(我不记得我头顶的确切语法):

audioManager.setParameters("incall_music_enabled=true");

// Execute the following using e.g. Runtime.exec()
amix 'SLIMBUS_4_RX Audio Mixer MultiMedia2' 1
aplay -Dhw:0,1 mono_8khz_data.pcm

// When you want to stop music playback, stop the aplay process, and then do
audioManager.setParameters("incall_music_enabled=false");
网友评论