Я просто хочу играть очень простое, прямое примечание путем предоставления моему компьютеру определенной частоты как целое число, и оттуда я могу выяснить, как заставить его играть примечание дольше или короче. Это должно не обязательно выйти из фактической звуковой карты - если это сгенерировано и произведено внутренним динамиком, это хорошо.
Я посмотрел на библиотеки midi, которые включал Java, и они - путь больше, чем, что я хочу сделать. Это просто должно быть очень простым.
Этот пример строит и играет равнотемперированную гамму.
Взгляните на JFugue - действительно легко делать некоторые базовые вещи, и возможности есть, если вы захотите расширить их позже.
Player player = new Player();
player.play("A C# E");
Насколько я знаю, без шаблонного кода на Java это невозможно сделать. Самый простой API, вероятно, предоставляется классом Applet (может использоваться и не-апплетами) в форме статического метода newAudioClip (URL-адрес). Однако это дает вам только возможность воспроизводить заранее определенные аудиоклипы, и у вас очень мало контроля над звуком. Если вам просто нужно воспроизвести звук из небольшого предопределенного набора клипов, этого может быть достаточно (у вас может быть набор wav-файлов, содержащих ваши заметки, и воспроизводить их таким образом, при желании AudioClip можно зациклить).
Помимо этого, API-интерфейсы как midi, так и дискретизированного аудио намного мощнее, но за гибкость приходится платить: вам потребуется значительно больше кода для их настройки.