我正在创建一个使用示波器进行音频录制的应用程序。我使用以下代码进行了音频记录,现在我添加了oscilloscopse,如图所示。我的要求是根据用户的语音,示波器的波形应为曲折形。我已经尝试了很长时间,但是我找不到解决方案。我没有实现示波器的任何想法。请帮助我该怎么做,并提供一些示例代码片段。谢谢。

录音代码:

    recorder = new AudioRecord(MediaRecorder.AudioSource.MIC,RECORDER_SAMPLERATE, RECORDER_CHANNELS,RECORDER_AUDIO_ENCODING, bufferSize);

    recorder.startRecording();
...

    byte data[] = new byte[bufferSize];
    String filename = getTempFilename();
    FileOutputStream outputstream = null;
    try {
        outputstream = new FileOutputStream(filename, true);
    } catch (FileNotFoundException e) {
        Log.e("Error @ writeAudioDataToFile() - 1 ", e.getMessage());
    }

    int read = 0;

    if (null != outputstream) {
        while (isRecording) {
            read = recorder.read(data, 0, bufferSize);

            if (AudioRecord.ERROR_INVALID_OPERATION != read) {
                try {
                    outputstream.write(data);
                } catch (IOException e) {
                    Log.e("Error @ writeAudioDataToFile() - 2 ",e.getMessage());
                }
            }
        }

        try {
            outputstream.close();
        } catch (IOException e) {
            Log.e("Error @ writeAudioDataToFile() - 3 ", e.getMessage());
        }
    }

最佳答案

确实没有一个简单的答案,这肯定会需要您做一些工作来处理它。以下是一些应该可以帮助您入门的链接:

http://code.google.com/p/musicg/

http://codeidol.com/java/swing/Audio/Build-an-Audio-Waveform-Display/

10-06 13:46