音轨允许将 PCM 音频缓冲区流式传输到音频硬件进行播放。write(byte[], int, int)
这是通过使用和方法之一将数据“推送”到音轨对象来实现的write(short[], int, int)
。
PCM 是脉冲编码调制,是 PCM 在电话呼叫期间将模拟语音调制为数字语音吗?以及要播放的硬件列表?只有扬声器还是更多?PCM 可以允许在 GSM 网络上播放音频吗?
音轨允许将 PCM 音频缓冲区流式传输到音频硬件进行播放。write(byte[], int, int)
这是通过使用和方法之一将数据“推送”到音轨对象来实现的write(short[], int, int)
。
PCM 是脉冲编码调制,是 PCM 在电话呼叫期间将模拟语音调制为数字语音吗?以及要播放的硬件列表?只有扬声器还是更多?PCM 可以允许在 GSM 网络上播放音频吗?
PCM是脉冲编码调制,是PCM在电话中将模拟语音调制为数字吗?
我不完全确定您在问什么,但通常手机中会有一个称为编解码器的硬件。编解码器控制内部扬声器、听筒、麦克风等 - 这是模拟音频信号将被采样为数字音频流(通常为 48 kHz 线性 PCM)的地方。
之后音频会发生什么在不同平台之间有所不同。例如,它可能被传递到应用各种滤波器(例如噪声抑制)的音频 DSP(数字信号处理器);从那里到负责压缩音频(通常使用 AMR)并将其传输到网络的调制解调器。
以及要播放的硬件列表?只有扬声器还是更多??
电话可以将音频路由到的任何设备。电话通常具有听筒、一个或多个扬声器、一个 3.5 毫米立体声插孔和一个能够同时提供语音 (SCO) 和媒体 (A2DP) 音频的蓝牙芯片。有些手机还支持通过 USB 和 WiFi 播放音频。
但是,应用程序不能直接控制路由。您能做的最好的事情就是向操作系统提示您希望将音频路由到哪里。
PCM 可以允许在 GSM 网络上播放音频吗?
不,这与音频的编码无关。Android 中根本没有任何 API 可以将音频注入到语音通话的上行链路中。