Как воспроизвести несколько экземпляров Clip? - PullRequest
0 голосов
/ 25 января 2012

Я просмотрел эту ссылку на звук Java и сделал воспроизведение клипа.

URL url = new URL("http://www.chiptape.com/chiptape/sounds/medium/Taito_Carousel.wav");
AudioInputStream ais = AudioSystem.getAudioInputStream(url);
clip = AudioSystem.getClip();

clip.open(ais);
clip.loop(0); //This lets the clip play fully before closing immediately

Когда я играю один раз, он работает просто отлично, но когда я хочучтобы воспроизвести тот же клип снова с clip.open(ais), он не воспроизводится.Есть идеи?

1 Ответ

0 голосов
/ 08 февраля 2012

javax.sound.sampled. Клип не самый простой.

Но этот учебник - хорошее начало:

Когда вы будете готовы начать воспроизведение, просто вызовите метод запуска. Чтобы остановить или приостановить клип, вызовите метод stop, а для возобновления воспроизведения снова запустите start. Клип запоминает позицию носителя, где он остановил воспроизведение, поэтому нет необходимости в явных методах паузы и возобновления. Если вы не хотите, чтобы он возобновлялся с того места, на котором остановился, вы можете «перемотать» клип в начало (или в любую другую позицию, если на то пошло), используя методы позиционирования кадра или микросекунды, упомянутые выше.

Как говорит Эндрю, если вы опубликуете пример кода, это поможет людям ответить на вопросы. Но я предполагаю, что вам также нужна дополнительная справочная информация, поэтому я даю вышеупомянутые ссылки, о которых должен знать каждый, кто имеет дело с Java Sound.

Удачи!

...