繁体   English   中英

android录音音量变化

[英]android recording volume change

现在,我正在开发一个Android应用程序来录制语音。 我通过使用以下代码来做到这一点。

m_recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
    m_recorder.setOutputFormat(OutputFormat.THREE_GPP);

    m_recorder.setAudioEncoder(AudioEncoder.AMR_NB);
 // m_recorder.setAudioEncoder(MediaRecorder.getAudioSourceMax());
    m_recorder.setAudioEncodingBitRate(128);
    m_recorder.setAudioSamplingRate(44100);

    m_recorder.setOutputFile(Environment.getExternalStorageDirectory() + "/audio.3gp");
        try {
            m_recorder.prepare();
            m_recorder.start();
        } 

但是问题是我的声音太小了,我在网上搜索了解决方法,我得到的只是

“在录制时无法执行此操作-但在播放时,可以在MediaPlayer上使用setVolume(float,float)方法。”

但是我必须将录制的片段上传到服务器上,那么有什么办法可以将低音量的声音片段转换为高音量的片段?

我使用以下代码记录和保存文件,它对我有用:

                    recorder = new MediaRecorder();
                    FileOutputStream fos = openFileOutput(fileNameStr,
                            MODE_PRIVATE);

                    recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
                    recorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
                    recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
                    recorder.setOutputFile(fos.getFD());
                    recorder.prepare();
                    recorder.start();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM