删除android中wav文件中的静音

时间:2015-10-25 19:14:28

标签: android audio wav audiorecord

我正在编写一个记录wav文件的应用程序.Wav文件中的间隙(静音)被阈值删除。因为这经常导致最后一个音符和下一个音符之间的曲折。如果说话者长时间停顿,我怎样才能在两者之间添加一个恒定的静音。

        bufferSize = AudioRecord.getMinBufferSize(frequency, 
        channelConfiguration, audioEncoding); 

        AudioRecord audioRecord = new AudioRecord( MediaRecorder.AudioSource.MIC, frequency, 
                channelConfiguration, audioEncoding, bufferSize); 

        short[] buffer = new short[bufferSize];

        audioRecord.startRecording();

        while (started) {
            int bufferReadResult = audioRecord.read(buffer, 0,bufferSize);
            if(AudioRecord.ERROR_INVALID_OPERATION != bufferReadResult){
                  //check signal
                //put a threshold
                  int foundPeak=searchThreshold(buffer,threshold);
                    if (foundPeak>-1){ //found signal
                                            //record signal

                        Toast.makeText(getApplicationContext(), Integer.toString(count), Toast.LENGTH_SHORT).show();
                        byte[] byteBuffer =ShortToByte(buffer,bufferReadResult);

                    try {
                            os.write(byteBuffer);
                    } catch (IOException e) {
                            e.printStackTrace();
                    }
                    }else{//count the time
                        //don't save signal
                    }

0 个答案:

没有答案
相关问题