0

私は自動コールレコーダーアプリを使用していますが、私はMediaRecorderクラスを使ってマネージドレコードボイスを使用していますが、ここでは受信ボイスが録音されず、スピーカーモードではありません。私にこれを手伝ってください。 (私はXiaomi Mi Max(アンドロイド7)を試していましたが、動作しませんでした)。自動コールレコーダーAndroid7(Xiaomi Mi Max)の音量が小さい

は私がそのコードを使用しますが、私はそれはあなたがあなたのプログラムのパラメータとして使用しているaudioSourceに依存だと思うソリューション

public void startRecorderSource(String mFileName, int audioSource, int  outputFormat) 
{ 
try 
{ 
    mRecorder = null; 
    mRecorder = new MediaRecorder(); 
    Log.e(TAG, "startRecorderSource: audio source "+audioSource); 
    Log.e(TAG, "startRecorderSource: output format "+outputFormat); 
    mRecorder.setAudioSource(audioSource); 
    mRecorder.setOutputFormat(outputFormat); 
    // mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_WB); 
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) { 
     mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB); 
     mRecorder.setAudioEncodingBitRate(12000); 
    } else { 
     mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AAC); 
     mRecorder.setAudioEncodingBitRate(64000); 
    } 
    mRecorder.setAudioSamplingRate(12000); 
    mRecorder.setOutputFile(mFileName); 
    mRecorder.prepare(); 
    mRecorder.start(); 
    am = (AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE); 
    am.setStreamVolume(AudioManager.STREAM_VOICE_CALL, 100, 0); 
    am.setMode(2); 
    Log.d(TAG, "startRecorder() :: successfully"); 
} catch (IOException e) { 
    e.printStackTrace(); 
} 
} 

答えて

0

を見つけることができませんでした。
MediaRecorder.AudioSource.VOICE_COMMUNICATIONは、VoIPなどの音声通信用に調整されたマイクオーディオソースを提供するため、お使いになることをお勧めします。

MediaRecorder.AudioSource.VOICE_CALLまでは、VOICE_CALLからのキャプチャは、CAPTURE_AUDIO_OUTPUTの許可が必要です。このアクセス許可はシステムコンポーネントで使用するために予約されており、サードパーティアプリケーションのでは利用できません。あなたは小米科技ミマックスを使用していると述べたようMediaRecorder.AudioSource | Android Developers

はまた、ミマックス上のマイクの配置は、それがイヤホンスピーカから通常モードでオーディオを録音することができない理由がある、デバイスの下部にあります。

関連する問題