【问题标题】:merge two amr files in android在android中合并两个amr文件
【发布时间】:2015-09-01 08:28:40
【问题描述】:

我正在尝试在 android 中合并两个 amr 文件 根据这个答案: Merge AMR audio file in java or 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

any1 可以帮助我吗?

谢谢我的英语...

【问题讨论】:

    标签: android merge amr


    【解决方案1】:

    您需要单独录制文件,然后才能将它们合并在一起。

    使用 RAW AMR 格式。即将记录器设置设置为:

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

    在 RAW AMR 中生成音频文件后,您可以通过剥离要附加的文件的前 6 个字节来加入这些文件。以二进制模式打开音频文件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-06-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多