Android 通话录音代码流程

news/2024/11/29 3:40:40/

通话录音:

     从界面开始找代码,最后转了几个函数名,并转到多媒体录音模块
 start_ record
  voiceRecordClicked  --- CallButtonFragment.java
  |-------

    com/android/incallui/CallButtonPresenter.java
    public void voiceRecordClicked() {
        TelecomAdapter.getInstance().startVoiceRecording();
    }

 |----
     packages/apps/Dialer/InCallUI/src/com/android/incallui/TelecomAdapter.java
      void startVoiceRecording() {
        if (mInCallService != null) {
            mInCallService.startVoiceRecording();
        } else {

            Log.e(this, "error startVoiceRecording, mInCallService is null");
        }
    }

  |---- packages/services/Telecomm/src/com/android/server/telecom/InCallAdapter.java
    public void startVoiceRecording() 
    PhoneRecorderHandler.getInstance().startVoiceRecord(activeCall,
       |----import com.mediatek.telecom.recording.PhoneRecorderHandler
       |------./Telecomm/src/com/mediatek/telecom/recording/PhoneRecorderHandler.java

       public void startVoiceRecord(Call activeCall, final int customValue) {
                     mPhoneRecorder.startRecord();
        private IPhoneRecorder mPhoneRecorder;

        mRecordHandler = new RecordHandler(mWorkerThread.getLooper());

|----  
    ./Telecomm/src/com/mediatek/telecom/recording/PhoneRecorder.java
     public void startRecord() {

       startRecording(MediaRecorder.O
        |---./Telecomm/src/com/mediatek/telecom/recording/Recorder.java

          private MediaRecorder mRecorder;   转化为多媒体里的录音模块

          startRecording(int outputfileformat

           mRecorder = new MediaRecorder();

           mRecorder.setAudioSource(MediaRecorder.AudioSource.VOICE_CALL);
           mRecorder.start();

|-----AudioFlinger::RecordThread::RecordTrack::RecordTrack(

    |------AudioFlinger::RecordThread::RecordTrack::start

|-----frameworks/av/media/libmedia/AudioRecord.cpp

     |---- status_t AudioRecord::start(AudioSystem::sync_event_t

     |----sp<IAudioRecord> AudioFlinger::openRecord(

     |-----audio_module_handle_t AudioFlinger::loadHwModule_l(const char *name)


http://www.ppmy.cn/news/429209.html

相关文章

android来电录音软件,通话录音软件来电录音

想要一款高质量的录音神器吗&#xff1f;想要自己的通话不被别人窃取吗&#xff1f;赶紧下载通话录音软件来电录音app体验吧&#xff01;它是一款非常实用的电话录音服务软件&#xff0c;用户可以使用软件更好的进行各种智能录音&#xff0c;并且软件操作简单便捷&#xff0c;感…

android电话录音没有声音,Android通话录音未录制来电语音(示例代码)

我正在使用自动呼叫记录器应用程序,我能够使用MediaRecorder.AudioSource.VOICE_CALL在android 6下方录制语音呼叫,从android 6无法使用VOICE_CALL录制语音呼叫。我设法使用MediaRecorder.AudioSource.MIC进行录音,但这里传入的声音没有录制,我想在正常模式下录制语音通话,…

通话录音_隐私条款

通话录音尊重并保护所有使用服务用户的个人隐私权。为了给您提供更准确、更有个性化的服务&#xff0c;通话录音会按照本隐私权政策的规定使用和披露您的个人信息。但通话录音将以高度的勤勉、审慎义务对待这些信息。除本隐私权政策另有规定外&#xff0c;在未征得您事先许可的…

STM32任务通知

目录 什么是任务通知&#xff1f; 任务通知值的更新方式 任务通知的优势和劣势 任务通知的优势 任务通知的劣势 任务通知相关 API 函数 2. 等待通知 实操 1. 模拟二值信号量 2. 模拟计数型信号量 3. 模拟事件标志组 4. 模拟邮箱 什么是任务通知&#xff1f; FreeR…

使用ACR及MIUI自带通话录音实现通话录音读取及上传

虽然在Android5.0之前在AudioRecord开放给第三方的初始化方法中VOICE_CALL音频源是可以使用的&#xff0c;但是在厂商的适配过程中很多还是不能用&#xff0c;因此在低版本中一直是通过AudioRecord读取MIC录音源实现。 很多厂商在做系统优化时&#xff0c;使用MIC仍然无法通话…

Android 通话录音功能

通话录音功能因为涉及隐私问题&#xff0c;Android 6.0上就移除官方的通话录音接口&#xff0c;只能通过其他方式去获取调用。 录音时需要设置音频类型&#xff0c;系统中定义以下几种 &#xff08;MediaRecorder.AudioSource&#xff09; CAMCORDER 录音来源于同方向的相机麦…

android实现通话录音获取上传实现过程记录。

项目里提了一个需求&#xff0c;需要通话录音功能(录制双方的声音)&#xff0c;并上传到后台。(软件是内部人员工作使用不涉及个人隐私) 首先想到的肯定是用APP来进行录音&#xff0c;可控性比较高&#xff0c;测试了android自带的MediaRecorder与AudioRecord结果发现都只能录…

uniapp 移动端通话录音上传

记录一下近半个月的一个项目解决思路 需求是这样的 1&#xff0c;通话双向录音 2&#xff0c;监听移动端通话状态 3&#xff0c;挂断后上传通话录音到后端进行统计 先说下第一点 通话双向录音&#xff0c;这个在android 6之前还有办法实现&#xff0c;但是现在基本都是单向的&a…