Hola Camilo,
Gracias por hacer el post de tu proyecto a esta lista. Ojalá varios de
nosotros podamos ayudarte.
Debo confesar que Camilo Barraza me estuvo haciendo un demo personal de
su proyecto que se puede resumir en los siguiente (por favor me corriges
si me equivoco en algo).
Sistema para enseñar a tocar acordión en un principio basado en las
especificaciones de la Roland FR-18: [1], archivos MIDI, visualización
de notas en la acordión y manipulación de parámetros MIDI.
Las características son:
- Por medio de MIDI, capturar valores de notas (midi_note_number), con
midi_note_on y midi_note_offs, además de midi_key_velocity.
- Estos valores se obtienen al manipular los registros y botones de la
acordeón y son visualizados en una interfaz gráfica que ilustra y
representa las acciones del intérprete.
- En el programa con la interfaz gráfica hay funciones adicionales como
la posibilidad de cargar un archivo MIDI con una canción para ser tocada
entre el computador y el intérprete. Esto ofrece la posibilidad de
aprender canciones pero igualmente, en un principio se puede pensar que
hay archivos con diferentes niveles de destreza que ayudan a que la
persona aprenda a tocar el instrumento.
- El programa ofrece la posibilidad de cambiar la tonalidad del archivo
MIDI y el Tempo, en este momento. Puede haber mas posibilidades.
- Este programa esta escrito en Java (JRE).
En mi forma de ver el programa es bastante funcional pero como se
menciona en el post original, hay algún problema al acceder los
soundfonts, el sintetizador de windoze o, algún driver que demora el
gatillo de la nota MIDI al sintetizador. Si no estoy mal, el programa
esta accediendo ASIO como interfaz a los sintetizadores.
Varias preguntas surgen al respecto (mis disculpas por mi poco
conocimiento de audio [y demás] en Windoze).
- ¿ Como se puede mejorar la latencia entre JRE en Windoze y el
sintetizador?.
- ¿ Habrá necesidad de usar un Java diferente?.
- ¿ Existe una aplicación en Windoze similar a Jack?.
- ¿ Habrá alguien que haya trabajado aplicaciones de MIDI con JDK o JRE?.
Tiendo a pensar que no es un problema de latencia de MIDI en Java. MIDI
en general es muy rápido. De pronto es un problema de configuración en
de audio y MIDI en Windoze.
En el link que nos envía Camilo sugieren cambiar de versión de JRE.
También hablan de instalar el "soundbank.gm". Debería estar en un folder en:
':\Program Files\jre1.6.0_07\lib\audio'.
En mi experiencia al trabajar con MIDI, existen algunos parámetros que
siempre hay que tener en cuenta. Sobre todo el canal. Siempre hay que
tratar de usar el canal "1" o "10" pra estar tranquilo. Algunos
fabricantes como Yamaha utilizan el "0" y esto da para confusiones. Los
canales MIDI son mas como canales televisión y no como canales de audio.
Así pués,
Trata de usar un solo canal MIDI ('1' or ejemplo) y evita el modo de
OMNI en MIDI. Evita también todo lo referente a MIDI system exclusive.
Si alguien sabe de un secuenciador básico en Java con código abierto,
agradeceríamos la sugerencia.
La siguiente página jsresources.org [2], tiene varias sugerencias que se
pueden ensayar.
Lo de los schedulers (asignadores de tareas), en MIDI y Audio es algo
que hay que tener muy en cuenta.
Suerte!,
--* Juan
[1] http://www.roland.com/products/en/FR-18_diatonic/
[2] http://www.jsresources.org/faq_midi.html
On 05/25/2012 03:20 PM, camilo barraza wrote:
Hola,
Actualmente estoy trabajando en un proyecto, en el cual necesito
realizar una grabación con un instrumento midi utilizando java. Mi
programa reconoce el dispositivo pero en el momento de tocar alguna nota
obtengo mucha latencia con el sonido.
http://stackoverflow.com/questions/9057870/java-midi-latency en este
link se ve un poco de mi código. ¿Alguien conoce sobre algún proyecto
similar?
gracias
_______________________________________________
Expyezp mailing list
[email protected]
http://lists.slow.tk/listinfo.cgi/expyezp-slow.tk
Archivo de mensajes:
http://lists.slow.tk/pipermail/expyezp-slow.tk/