Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/225.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 以PCM格式记录通话_Android_Sip_Record_Pcm - Fatal编程技术网

Android 以PCM格式记录通话

Android 以PCM格式记录通话,android,sip,record,pcm,Android,Sip,Record,Pcm,我正在尝试使用基于SIP的VoIP(我使用SipDemo作为模板)编写一个Android应用程序 我需要记录呼入和呼出的电话,并以PCM格式保存它们 private static final int RECORDER_SAMPLERATE = 44100; private static final int RECORDER_CHANNELS = AudioFormat.CHANNEL_IN_MONO; private static final int RECORDER_AUDIO_ENCODIN

我正在尝试使用基于SIP的VoIP(我使用SipDemo作为模板)编写一个Android应用程序

我需要记录呼入和呼出的电话,并以PCM格式保存它们

private static final int RECORDER_SAMPLERATE = 44100;
private static final int RECORDER_CHANNELS = AudioFormat.CHANNEL_IN_MONO;
private static final int RECORDER_AUDIO_ENCODING = AudioFormat.ENCODING_PCM_16BIT;
可能吗

这是一项针对来电的活动:

}

我需要什么样的电话录音源代码

提前谢谢

public class IncomingCallReceiver extends BroadcastReceiver {

@Override
public void onReceive(Context context, Intent intent) {
    SipAudioCall incomingCall = null;
    try {

        SipAudioCall.Listener listener = new SipAudioCall.Listener() {
            @Override
            public void onRinging(SipAudioCall call, SipProfile caller) {
                try {
                    call.answerCall(30);
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        };

        WalkieTalkieActivity wtActivity = (WalkieTalkieActivity) context;

        incomingCall = wtActivity.manager.takeAudioCall(intent, listener);
        incomingCall.answerCall(30);
        incomingCall.startAudio();
        incomingCall.setSpeakerMode(true);
        if(incomingCall.isMuted()) {
            incomingCall.toggleMute();
        }

        wtActivity.call = incomingCall;

        wtActivity.updateStatus(incomingCall);

    } catch (Exception e) {
        if (incomingCall != null) {
            incomingCall.close();
        }
    }
}