在android中合并两个amr文件



我试图在android中合并两个amr文件根据这个答案:合并AMR音频文件在java或android我拒绝第二个文件的前6个字节,然后写入第一个amr文件…输出文件正在合并两个文件,但在连接第二时有噪声。这是我的代码:

soundFile.createNewFile();                  
                FileInputStream inputStream1 = new FileInputStream(soundFile.getAbsolutePath()+0);
                FileInputStream inputStream2 =  new FileInputStream(soundFile.getAbsolutePath()+1);
                FileOutputStream outputStream = new FileOutputStream(new File(soundFile.getAbsolutePath()+"w"));
                int temp = 0;
                inputStream2.read();
                inputStream2.read();
                inputStream2.read();
                inputStream2.read();
                inputStream2.read();
                inputStream2.read();
                while( (temp = inputStream2.read()) != -1 )
                {
                    outputStream.write(temp);
                }
                outputStream.close();
                inputStream2.close();
                inputStream2 = new FileInputStream(soundFile.getAbsolutePath()+"w");
                SequenceInputStream inputStream3 = new SequenceInputStream(inputStream1, inputStream2);
                outputStream = new FileOutputStream(soundFile);
                //FileWriter fileWriter = new FileWriter(soundFile, true);
                while( (temp = inputStream3.read()) != -1 )
                {
                    outputStream.write(temp);
                }
                outputStream.close();
                inputStream1.close();
                inputStream2.close();
                inputStream3.close();
                //fileWriter.close();
                //fileWriter.flush();

            } catch (IOException e) {
            }
这是我的第一个amr文件:http://www.filedropper.com/aaaa_2

这是第二个amr文件:www.filedropper.com/aaaa_3

,这是我的合并amr文件:www.filedropper.com/aaaa_4

有人能帮我吗?

您需要单独记录文件,然后可以将它们连接在一起。

使用RAW AMR格式。例如,将记录器设置设置为:

recorder.setOutputFormat(MediaRecorder.OutputFormat.AMR_NB);
recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);

一旦你有了在RAW AMR中生成的音频文件,你可以通过剥离你正在附加的文件的前6个字节来连接这些文件。

最新更新