generador de sonidos sintetizados daniel acevedo olivares francisco barros peralta universidad...
TRANSCRIPT
Generador de sonidosSintetizados
Daniel Acevedo OlivaresFrancisco Barros Peralta
Universidad Técnica Federico Santa Maria
¿Porqué generar sonidos en el computador?
• Bajo Costo.• Limitado sólo por la imaginación (...y tiempo de desarrollo).• Entretenido.• Tecnología no prohibitiva.
• Personalización de sonidos.• Aplicaciones especializadas.• Interfaz amigable.
¿Qué ofrece nuestro Sintetizador JAVA?
INTRODUCCION
Problemáticas
• Acordar la forma de generar las ondas.
• Latencia de la Máquina Virtual.
• Uso de plug-ins.
• Investigación por parte de desarrolladores a entender el modelamiento del sonido y de la forma que éste se genera y maneja en JAVA.
Sistemas Existentes
Proyecciones de nuestro desarrollo
• Vocoder, reconocimiento de voz.
• Reproducción, samples, mensajes.
• Emulación de fuentes análogas: voz, instrumentos.
Referencias
• Biblioteca JSyn (externa).
• Biblioteca javax.sound.*– Mixer.– Line (dataline).– Port.
Caso de Uso
• Título: Generar un Sonido con amplitud modulada por un LFO.
• Descripción: Usuario desea generar una onda sinusoidal, modulada en amplitud por otra onda de menor frecuencia.
• Actor: Usuario.
• Prioridad: Normal.
• PreCondiciones: Instalar biblioteca JSyn.
Caso de Uso-- Flujo --
• Flujo: 1) Usuario ejecuta la aplicación “Sintetizador”.
2) Usuario enfoca la ventana.
3) Seleccionar tipo de onda= Sinusoidal, en Oscilador Principal.
4) Presiona botón ON del LFO.
5) Presionar tecla del computador que simule una tecla de piano virtual (según gráfico).
Variantes
• Variante 1:3.1) Usuario no selecciona el tipo de onda.3.2) Tipo de onda generada no corresponde al esperado.
• Variante 2:4.1) Usuario no presiona botón ON.4.2) Amplitud no está modulada.
• Variante 3:5.1) Usuario presiona una tecla no válida.5.2) No se genera sonido.
Tarjeta CRC1
Clase SintePanel
Responsabilidades Colaboradores- Generación GUI.- Controlar ejecución de sonidos.- Enlazar o linkear los controles del panel con los ajustes internos.- Ajustar la afinación del sistema.
• Clase SignalManager.• Clase Notas Clase.• Keyboard
Tarjeta CRC2
Clase SignalManager
Responsabilidades Colaboradores
- Generación sonidos.- Realiza conexiones entre módulos internos.- Realiza procesamiento del sonido.
• Biblioteca Jsyn.• Clase SintePanel
Diagrama de clases
Diagrama Bloques General
LFO
Control Envolvente Amplitud
Osciladores principales
Filtro Pasa Bajos
Control Filtro Envolvente
Filtro Envolvente
Salida
Diagrama de Clases
FIN
https://alumnos.elo.utfsm.cl/~fbarros/
Sitio WEB:
Preguntas, comentarios, sugerencias?