首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用不同的AudioFormat连接两个wav文件

用不同的AudioFormat连接两个wav文件
EN

Stack Overflow用户
提问于 2021-06-29 22:08:39
回答 1查看 91关注 0票数 0

我有一个方法应该连接两个.wav声音文件。如果我有两个具有相同AudioFormat的文件,就可以正常工作。但是如果我使用两种不同格式的文件,其中一个文件听起来会非常糟糕。因此,我需要用以下格式连接两个.wav文件:

  • PCM_SIGNED 24000.0 Hz,16位,单片,2字节/帧,小端;
  • PCM_SIGNED 44100.0 Hz,16位,立体声,4字节/帧,小端;

该方法的代码:

代码语言:javascript
复制
private static void concatenateTwoWaves(String fileName1, String fileName2) {
        String wavFile1 = fileName1 + ".wav";
        String wavFile2 = fileName2 + ".wav";

        try {
            AudioInputStream clip1 = AudioSystem.getAudioInputStream(new File(wavFile1));
            AudioInputStream clip2 = AudioSystem.getAudioInputStream(new File(wavFile2));

            AudioInputStream appendedFiles =
                    new AudioInputStream(
                            new SequenceInputStream(clip1, clip2),
                            clip1.getFormat(),
                            clip1.getFrameLength() + clip2.getFrameLength());

            AudioSystem.write(appendedFiles,
                    AudioFileFormat.Type.WAVE,
                    new File("output.wav"));
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-07-01 16:02:02

这两种格式中的一种必须首先转换为另一种。Oracle提供了专门讨论此主题的以下教程,并提供了示例:使用文件和格式转换器

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68186221

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档