Простой способ играть одну частоту в Java?

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

Я посмотрел на библиотеки midi, которые включал Java, и они - путь больше, чем, что я хочу сделать. Это просто должно быть очень простым.

10
задан nathas 7 June 2010 в 18:09
поделиться

3 ответа

Этот пример строит и играет равнотемперированную гамму.

3
ответ дан 4 December 2019 в 01:29
поделиться

Взгляните на JFugue - действительно легко делать некоторые базовые вещи, и возможности есть, если вы захотите расширить их позже.

Player player = new Player();
player.play("A C# E");
7
ответ дан 4 December 2019 в 01:29
поделиться

Насколько я знаю, без шаблонного кода на Java это невозможно сделать. Самый простой API, вероятно, предоставляется классом Applet (может использоваться и не-апплетами) в форме статического метода newAudioClip (URL-адрес). Однако это дает вам только возможность воспроизводить заранее определенные аудиоклипы, и у вас очень мало контроля над звуком. Если вам просто нужно воспроизвести звук из небольшого предопределенного набора клипов, этого может быть достаточно (у вас может быть набор wav-файлов, содержащих ваши заметки, и воспроизводить их таким образом, при желании AudioClip можно зациклить).

Помимо этого, API-интерфейсы как midi, так и дискретизированного аудио намного мощнее, но за гибкость приходится платить: вам потребуется значительно больше кода для их настройки.

0
ответ дан 4 December 2019 в 01:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: