首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于录制呼叫的媒体录制器有时无法录制对方语音

用于录制呼叫的媒体录制器有时无法录制对方语音
EN

Stack Overflow用户
提问于 2017-08-25 20:00:58
回答 1查看 3.3K关注 0票数 13

在我的应用程序中,有一个录制语音呼叫的功能,它工作得很好。但在(三星s7、s8 )上测试时,效果并不好。该应用程序只能记录呼叫者的语音,而不能记录来自另一端的语音。以下是我的代码检查,请提出解决方案

代码语言:javascript
复制
MediaRecd = new MediaRecorder();
            MediaRecd.setAudioSource(MediaRecorder.AudioSource.VOICE_CALL
            );

            MediaRecd.setAudioChannels(ConstantVariables.audioChannels);//monoRecording

   MediaRecd.setAudioEncodingBitRate(64);
            MediaRecd.setAudioSamplingRate(44100);


            MediaRecd.setOutputFormat(output_formats[pos]);//.mp3
            MediaRecd.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);//I already try with all possible CAMCORDER , MIC , Default etc etc but none was working
            MediaRecd.setOutputFile(Currentfilename);

            try {
                MediaRecd.prepare();
                MediaRecd.start();


            } catch (Exception e) {
                MediaRecd.reset();
                MediaRecd.release();
                MediaRecd = null;

            }

请帮帮忙

EN

回答 1

Stack Overflow用户

发布于 2017-09-04 15:14:42

AudioSource.VOICE_CALL在一些安卓设备上不起作用,所以用下面的代码代替VOICE_CALL

先试试MediaRecorder.AudioSource.CAMCORDER

代码语言:javascript
复制
 MediaRecd = new MediaRecorder();
        MediaRecd.setAudioSource(MediaRecorder.AudioSource.CAMCORDER
        );

如果上述方法不起作用,则使用MediaRecorder.AudioSource.MIC

代码语言:javascript
复制
MediaRecd = new MediaRecorder();
        MediaRecd.setAudioSource(MediaRecorder.AudioSource.MIC
        );
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45880954

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档