如何在java中重复音频文件

Posted

技术标签:

【中文标题】如何在java中重复音频文件【英文标题】:How to repeat audio file in java 【发布时间】:2014-12-25 00:50:32 【问题描述】:

如何让音频文件连续重复?现在音乐只播放一次,就这样。我试图让声音一遍又一遍地重复。我必须以其他方式获取音频文件还是有更简单的方式?

代码:

import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;

import sun.audio.AudioPlayer;
import sun.audio.Audiostream;

public class Sound 
    public static void music(String fileName) 
        try 
            InputStream in = new FileInputStream(new File(fileName));
            AudioStream audioStream = new AudioStream(in);
            AudioPlayer.player.start(audioStream);
         catch (IOException e) 
            e.printStackTrace();
        
    

我怎么称呼它:

// Plays the music.
public void music() 
    Sound.music("res/music/I Like Your Hat.wav");

【问题讨论】:

【参考方案1】:
    不要使用sun.* 包,这些是私有包,可能并不总是可用。查看this example,了解如何播放音频剪辑的一些想法。 看看ClipClip#loop

作为一个非常简单的例子......

AudioInputStream audioInputStream = AudioSystem.getAudioInputStream(...);
Clip clip = AudioSystem.getClip();
clip.open(audioInputStream);
clip.loop(Clip.LOOP_CONTINUOUSLY);
clip.start();

【讨论】:

@Thomas 很高兴它有帮助 感谢盲投,很高兴知道如何解决这个问题

以上是关于如何在java中重复音频文件的主要内容,如果未能解决你的问题,请参考以下文章

如何在xcode中播放音频文件[重复]

使用以下 java 中的代码修改文件中特定位置的音频文件的音高

如何在 C# 中分层两个音频文件?

如何在 Java 中循环播放音频文件?

如何在 Java 中创建带有一些修改的音频正弦波文件?

使用 java [重复] 确定给定一个字节 [] 记录的音频数据的频率