159
Contenidos Objetivos Lenguajes de s´ ıntesis mediante software ıntesis en tiempo real Lenguajes para composici´ on musical Introducci´ on a Nyquist Compiladores de audio Pedro J. Morales UCLM 25 de junio de 2007 PJM Compiladores de audio

Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Compiladores de audio

Pedro J. MoralesUCLM

25 de junio de 2007

PJM Compiladores de audio

Page 2: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

1 Objetivos

2 Lenguajes de sıntesis mediante software

3 Sıntesis en tiempo real

4 Lenguajes para composicion musical

5 Introduccion a NyquistDiseno de NyquistBehavioral Abstraction

PJM Compiladores de audio

Page 3: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Objetivos

Conocer los fundamentos de los lenguajes de sıntesis mediantesoftware.

Conocer los fundamentos de la sıntesis en tiempo real.

Conocer los tipos de lenguajes para composicion musical.

Introduccion al lenguaje Nyquist.

PJM Compiladores de audio

Page 4: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Objetivos

Conocer los fundamentos de los lenguajes de sıntesis mediantesoftware.

Conocer los fundamentos de la sıntesis en tiempo real.

Conocer los tipos de lenguajes para composicion musical.

Introduccion al lenguaje Nyquist.

PJM Compiladores de audio

Page 5: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Objetivos

Conocer los fundamentos de los lenguajes de sıntesis mediantesoftware.

Conocer los fundamentos de la sıntesis en tiempo real.

Conocer los tipos de lenguajes para composicion musical.

Introduccion al lenguaje Nyquist.

PJM Compiladores de audio

Page 6: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Objetivos

Conocer los fundamentos de los lenguajes de sıntesis mediantesoftware.

Conocer los fundamentos de la sıntesis en tiempo real.

Conocer los tipos de lenguajes para composicion musical.

Introduccion al lenguaje Nyquist.

PJM Compiladores de audio

Page 7: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Valoracion de los lenguajes de sıntesis

Ventajas

Alto grado de control. Posible experimentacion de nuevosalgoritmos de sıntesis.

Los algoritmos pueden ser arbitrariamente complicados.

Precision. Especificacion de eventos con gran detalle.

Inconvenientes

El musico debe aprender el lenguaje.

Algoritmos complicados de sıntesis implican falta deinteraccion en tiempo real y falta de control gestual.

Para mantener la precision, hay que especificar enormes masasde datos.

PJM Compiladores de audio

Page 8: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Valoracion de los lenguajes de sıntesis

Ventajas

Alto grado de control. Posible experimentacion de nuevosalgoritmos de sıntesis.

Los algoritmos pueden ser arbitrariamente complicados.

Precision. Especificacion de eventos con gran detalle.

Inconvenientes

El musico debe aprender el lenguaje.

Algoritmos complicados de sıntesis implican falta deinteraccion en tiempo real y falta de control gestual.

Para mantener la precision, hay que especificar enormes masasde datos.

PJM Compiladores de audio

Page 9: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Valoracion de los lenguajes de sıntesis

Ventajas

Alto grado de control. Posible experimentacion de nuevosalgoritmos de sıntesis.

Los algoritmos pueden ser arbitrariamente complicados.

Precision. Especificacion de eventos con gran detalle.

Inconvenientes

El musico debe aprender el lenguaje.

Algoritmos complicados de sıntesis implican falta deinteraccion en tiempo real y falta de control gestual.

Para mantener la precision, hay que especificar enormes masasde datos.

PJM Compiladores de audio

Page 10: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Valoracion de los lenguajes de sıntesis

Ventajas

Alto grado de control. Posible experimentacion de nuevosalgoritmos de sıntesis.

Los algoritmos pueden ser arbitrariamente complicados.

Precision. Especificacion de eventos con gran detalle.

Inconvenientes

El musico debe aprender el lenguaje.

Algoritmos complicados de sıntesis implican falta deinteraccion en tiempo real y falta de control gestual.

Para mantener la precision, hay que especificar enormes masasde datos.

PJM Compiladores de audio

Page 11: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Valoracion de los lenguajes de sıntesis

Ventajas

Alto grado de control. Posible experimentacion de nuevosalgoritmos de sıntesis.

Los algoritmos pueden ser arbitrariamente complicados.

Precision. Especificacion de eventos con gran detalle.

Inconvenientes

El musico debe aprender el lenguaje.

Algoritmos complicados de sıntesis implican falta deinteraccion en tiempo real y falta de control gestual.

Para mantener la precision, hay que especificar enormes masasde datos.

PJM Compiladores de audio

Page 12: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Valoracion de los lenguajes de sıntesis

Ventajas

Alto grado de control. Posible experimentacion de nuevosalgoritmos de sıntesis.

Los algoritmos pueden ser arbitrariamente complicados.

Precision. Especificacion de eventos con gran detalle.

Inconvenientes

El musico debe aprender el lenguaje.

Algoritmos complicados de sıntesis implican falta deinteraccion en tiempo real y falta de control gestual.

Para mantener la precision, hay que especificar enormes masasde datos.

PJM Compiladores de audio

Page 13: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Valoracion de los lenguajes de sıntesis

En resumen . . .

Los lenguajes de sıntesis pueden ser completados conherramientas de control interactivo.

A veces, los lenguajes de sıntesis son la unica forma de realizaruna idea musical.

PJM Compiladores de audio

Page 14: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Valoracion de los lenguajes de sıntesis

En resumen . . .

Los lenguajes de sıntesis pueden ser completados conherramientas de control interactivo.

A veces, los lenguajes de sıntesis son la unica forma de realizaruna idea musical.

PJM Compiladores de audio

Page 15: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Unit Generator, UG

Es el concepto basico de los lenguajes de sıntesis. Creado porMax Mathews en 1960.

Definicion. Es un modulo de software que emite o controlasenales de audio o de control.

Los algoritmos de sıntesis se especifican mediante lainterconexion de UG’s.

Gran versatilidad: Cualquier UG se puede conectarvirtualmente a cualquier otro.

Ejemplos de UG’s

Generadores: osciladores, generadores de ruido, deenvolvente. . .

Modificadores: filtros retardos. . .

PJM Compiladores de audio

Page 16: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Unit Generator, UG

Es el concepto basico de los lenguajes de sıntesis. Creado porMax Mathews en 1960.

Definicion. Es un modulo de software que emite o controlasenales de audio o de control.

Los algoritmos de sıntesis se especifican mediante lainterconexion de UG’s.

Gran versatilidad: Cualquier UG se puede conectarvirtualmente a cualquier otro.

Ejemplos de UG’s

Generadores: osciladores, generadores de ruido, deenvolvente. . .

Modificadores: filtros retardos. . .

PJM Compiladores de audio

Page 17: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Unit Generator, UG

Es el concepto basico de los lenguajes de sıntesis. Creado porMax Mathews en 1960.

Definicion. Es un modulo de software que emite o controlasenales de audio o de control.

Los algoritmos de sıntesis se especifican mediante lainterconexion de UG’s.

Gran versatilidad: Cualquier UG se puede conectarvirtualmente a cualquier otro.

Ejemplos de UG’s

Generadores: osciladores, generadores de ruido, deenvolvente. . .

Modificadores: filtros retardos. . .

PJM Compiladores de audio

Page 18: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Unit Generator, UG

Es el concepto basico de los lenguajes de sıntesis. Creado porMax Mathews en 1960.

Definicion. Es un modulo de software que emite o controlasenales de audio o de control.

Los algoritmos de sıntesis se especifican mediante lainterconexion de UG’s.

Gran versatilidad: Cualquier UG se puede conectarvirtualmente a cualquier otro.

Ejemplos de UG’s

Generadores: osciladores, generadores de ruido, deenvolvente. . .

Modificadores: filtros retardos. . .

PJM Compiladores de audio

Page 19: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Unit Generator, UG

Es el concepto basico de los lenguajes de sıntesis. Creado porMax Mathews en 1960.

Definicion. Es un modulo de software que emite o controlasenales de audio o de control.

Los algoritmos de sıntesis se especifican mediante lainterconexion de UG’s.

Gran versatilidad: Cualquier UG se puede conectarvirtualmente a cualquier otro.

Ejemplos de UG’s

Generadores: osciladores, generadores de ruido, deenvolvente. . .

Modificadores: filtros retardos. . .

PJM Compiladores de audio

Page 20: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Unit Generator, UG

Es el concepto basico de los lenguajes de sıntesis. Creado porMax Mathews en 1960.

Definicion. Es un modulo de software que emite o controlasenales de audio o de control.

Los algoritmos de sıntesis se especifican mediante lainterconexion de UG’s.

Gran versatilidad: Cualquier UG se puede conectarvirtualmente a cualquier otro.

Ejemplos de UG’s

Generadores: osciladores, generadores de ruido, deenvolvente. . .

Modificadores: filtros retardos. . .

PJM Compiladores de audio

Page 21: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Score y Orchestra

Los lenguajes de sıntesis incluyen dos sublenguajes:

Lenguaje de score.

Lenguaje de orchestra

PJM Compiladores de audio

Page 22: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Score y Orchestra

Los lenguajes de sıntesis incluyen dos sublenguajes:

Lenguaje de score.

Lenguaje de orchestra

PJM Compiladores de audio

Page 23: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguaje de Score

Especifica la lista de notas con sus parametros:

Instrumento.Tiempo de inicio.Duracion.Parametros de sıntesis.

Define las formas de onda utilizadas por los algoritmos desıntesis.

PJM Compiladores de audio

Page 24: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguaje de Score

Especifica la lista de notas con sus parametros:

Instrumento.

Tiempo de inicio.Duracion.Parametros de sıntesis.

Define las formas de onda utilizadas por los algoritmos desıntesis.

PJM Compiladores de audio

Page 25: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguaje de Score

Especifica la lista de notas con sus parametros:

Instrumento.Tiempo de inicio.

Duracion.Parametros de sıntesis.

Define las formas de onda utilizadas por los algoritmos desıntesis.

PJM Compiladores de audio

Page 26: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguaje de Score

Especifica la lista de notas con sus parametros:

Instrumento.Tiempo de inicio.Duracion.

Parametros de sıntesis.

Define las formas de onda utilizadas por los algoritmos desıntesis.

PJM Compiladores de audio

Page 27: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguaje de Score

Especifica la lista de notas con sus parametros:

Instrumento.Tiempo de inicio.Duracion.Parametros de sıntesis.

Define las formas de onda utilizadas por los algoritmos desıntesis.

PJM Compiladores de audio

Page 28: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguaje de Score

Especifica la lista de notas con sus parametros:

Instrumento.Tiempo de inicio.Duracion.Parametros de sıntesis.

Define las formas de onda utilizadas por los algoritmos desıntesis.

PJM Compiladores de audio

Page 29: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguaje de Orchestra

Definen los algoritmos de sıntesis mediante la interconexion deUG’s.

Por ejemplo: se puede asignar la salida de un generador deenvolvente a una variable y utilizar esa variable en la lista deargumentos de entrada para un filtro.

PJM Compiladores de audio

Page 30: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguaje de Orchestra

Definen los algoritmos de sıntesis mediante la interconexion deUG’s.

Por ejemplo: se puede asignar la salida de un generador deenvolvente a una variable y utilizar esa variable en la lista deargumentos de entrada para un filtro.

PJM Compiladores de audio

Page 31: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Ejemplo de un algoritmo de sıntesis

LINEN

OSCIL

p7

p4

p8

p3

p5

p6

(k1)

(a1)

instr 113 ; SIMPLE OSC WITH ENVELOPE

k1 linen p4, p7, p3, p8

; amp attack dur release

a1 oscil k1, p5, p6

; freq wave

out a1

endin

PJM Compiladores de audio

Page 32: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Ejemplo de score

;Function 1 uses the GEN10 subroutine to compute a sine wave

;Function 2 uses the GEN10 subroutine to compute the first sixteen partials of a sawtooth wave

f1 0 4096 10 1

f2 0 4096 10 1 .5 .333 .25 .2 .166 .142 .125 .111 .1 .09 .083 .076 .071 .066 .062

;ins strt dur amp frq fn atk rel

;==================================================

i113 0 2 10000 440 1 1 1

i113 2.5 2 10000 220 2 .01 1.99

i113 5 4 10000 110 2 3.9 .1

i113 10 10 10000 138.6 2 9 1

i113 10 10 10000 329.6 1 5 5

i113 10 10 10000 440 1 1 9

PJM Compiladores de audio

Page 33: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Implementaciones de lenguajes tipo Music N

Music I, 1957

Desarrollado por Max Mathews en un IBM 704 (valvulas devacıo).

Una forma de onda (triangular). Monofonico.

Se puede especificar altura y duracion.

In a Silver Scale (Newman Guttman), primera composicionsintetizada.

PJM Compiladores de audio

Page 34: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Implementaciones de lenguajes tipo Music N

Music I, 1957

Desarrollado por Max Mathews en un IBM 704 (valvulas devacıo).

Una forma de onda (triangular). Monofonico.

Se puede especificar altura y duracion.

In a Silver Scale (Newman Guttman), primera composicionsintetizada.

PJM Compiladores de audio

Page 35: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Implementaciones de lenguajes tipo Music N

Music I, 1957

Desarrollado por Max Mathews en un IBM 704 (valvulas devacıo).

Una forma de onda (triangular). Monofonico.

Se puede especificar altura y duracion.

In a Silver Scale (Newman Guttman), primera composicionsintetizada.

PJM Compiladores de audio

Page 36: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Implementaciones de lenguajes tipo Music N

Music I, 1957

Desarrollado por Max Mathews en un IBM 704 (valvulas devacıo).

Una forma de onda (triangular). Monofonico.

Se puede especificar altura y duracion.

In a Silver Scale (Newman Guttman), primera composicionsintetizada.

PJM Compiladores de audio

Page 37: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Implementaciones de lenguajes tipo Music N

Music II, 1958

Desarrollado por Max Mathews en un IBM 7094 (transistores).

Dieciseis formas de onda. Polifonıa de cuatro voces.

Concierto de ’computer music’ en Nueva York. Panelmoderado por John Cage.

PJM Compiladores de audio

Page 38: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Implementaciones de lenguajes tipo Music N

Music II, 1958

Desarrollado por Max Mathews en un IBM 7094 (transistores).

Dieciseis formas de onda. Polifonıa de cuatro voces.

Concierto de ’computer music’ en Nueva York. Panelmoderado por John Cage.

PJM Compiladores de audio

Page 39: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Implementaciones de lenguajes tipo Music N

Music II, 1958

Desarrollado por Max Mathews en un IBM 7094 (transistores).

Dieciseis formas de onda. Polifonıa de cuatro voces.

Concierto de ’computer music’ en Nueva York. Panelmoderado por John Cage.

PJM Compiladores de audio

Page 40: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Implementaciones de lenguajes tipo Music N

Music III (1960), Music IV (1963)

Music III, desarrollado por Max Mathews y Miller en lenguajeensamblador.

Introduce el concepto de Unit Generator.

Music IV es Music III recodificado en un lenguaje de macrosAssembler (BEFAP)

PJM Compiladores de audio

Page 41: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Implementaciones de lenguajes tipo Music N

Music III (1960), Music IV (1963)

Music III, desarrollado por Max Mathews y Miller en lenguajeensamblador.

Introduce el concepto de Unit Generator.

Music IV es Music III recodificado en un lenguaje de macrosAssembler (BEFAP)

PJM Compiladores de audio

Page 42: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Implementaciones de lenguajes tipo Music N

Music III (1960), Music IV (1963)

Music III, desarrollado por Max Mathews y Miller en lenguajeensamblador.

Introduce el concepto de Unit Generator.

Music IV es Music III recodificado en un lenguaje de macrosAssembler (BEFAP)

PJM Compiladores de audio

Page 43: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Implementaciones de lenguajes tipo Music N

Music V, 1968

Music V, culminacion de los trabajos de Max Mathews.

Escrito en FORTRAN IV

Difundido entre las universidades de todo el mundo aprincipios de los 70.

Music IV y Music V originaron el desarrollo de otrosprogramas de sıntesis conocidos como lenguajes Music N.

Music 4BF, Music 360, Music 7, Music 11, Csound, MUS10,Cmusic, Common Lisp Music. . .

PJM Compiladores de audio

Page 44: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Implementaciones de lenguajes tipo Music N

Music V, 1968

Music V, culminacion de los trabajos de Max Mathews.

Escrito en FORTRAN IV

Difundido entre las universidades de todo el mundo aprincipios de los 70.

Music IV y Music V originaron el desarrollo de otrosprogramas de sıntesis conocidos como lenguajes Music N.

Music 4BF, Music 360, Music 7, Music 11, Csound, MUS10,Cmusic, Common Lisp Music. . .

PJM Compiladores de audio

Page 45: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Implementaciones de lenguajes tipo Music N

Music V, 1968

Music V, culminacion de los trabajos de Max Mathews.

Escrito en FORTRAN IV

Difundido entre las universidades de todo el mundo aprincipios de los 70.

Music IV y Music V originaron el desarrollo de otrosprogramas de sıntesis conocidos como lenguajes Music N.

Music 4BF, Music 360, Music 7, Music 11, Csound, MUS10,Cmusic, Common Lisp Music. . .

PJM Compiladores de audio

Page 46: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Implementaciones de lenguajes tipo Music N

Music V, 1968

Music V, culminacion de los trabajos de Max Mathews.

Escrito en FORTRAN IV

Difundido entre las universidades de todo el mundo aprincipios de los 70.

Music IV y Music V originaron el desarrollo de otrosprogramas de sıntesis conocidos como lenguajes Music N.

Music 4BF, Music 360, Music 7, Music 11, Csound, MUS10,Cmusic, Common Lisp Music. . .

PJM Compiladores de audio

Page 47: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Implementaciones de lenguajes tipo Music N

Music V, 1968

Music V, culminacion de los trabajos de Max Mathews.

Escrito en FORTRAN IV

Difundido entre las universidades de todo el mundo aprincipios de los 70.

Music IV y Music V originaron el desarrollo de otrosprogramas de sıntesis conocidos como lenguajes Music N.

Music 4BF, Music 360, Music 7, Music 11, Csound, MUS10,Cmusic, Common Lisp Music. . .

PJM Compiladores de audio

Page 48: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Sıntesis en tiempo real

En los anos 70 los computadores no eran suficientementerapidos para realizar la sıntesis en tiempo real.

Se construyeron sintetizadores digitales que realizaban loscalculos de cada muestra en la duracion de un periodo demuestreo.

Otra opcion consistıa en controlar por medios digitalessintetizadores de tecnologıa analogica.

Surgieron varios lenguajes de programacion dedicados a unhardware especıfico.

MIDI. Es un protocolo normalizado que permite controlardigitalmente instrumentos musicales, independientemente deque sean analogicos o digitales.

PJM Compiladores de audio

Page 49: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Sıntesis en tiempo real

En los anos 70 los computadores no eran suficientementerapidos para realizar la sıntesis en tiempo real.

Se construyeron sintetizadores digitales que realizaban loscalculos de cada muestra en la duracion de un periodo demuestreo.

Otra opcion consistıa en controlar por medios digitalessintetizadores de tecnologıa analogica.

Surgieron varios lenguajes de programacion dedicados a unhardware especıfico.

MIDI. Es un protocolo normalizado que permite controlardigitalmente instrumentos musicales, independientemente deque sean analogicos o digitales.

PJM Compiladores de audio

Page 50: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Sıntesis en tiempo real

En los anos 70 los computadores no eran suficientementerapidos para realizar la sıntesis en tiempo real.

Se construyeron sintetizadores digitales que realizaban loscalculos de cada muestra en la duracion de un periodo demuestreo.

Otra opcion consistıa en controlar por medios digitalessintetizadores de tecnologıa analogica.

Surgieron varios lenguajes de programacion dedicados a unhardware especıfico.

MIDI. Es un protocolo normalizado que permite controlardigitalmente instrumentos musicales, independientemente deque sean analogicos o digitales.

PJM Compiladores de audio

Page 51: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Sıntesis en tiempo real

En los anos 70 los computadores no eran suficientementerapidos para realizar la sıntesis en tiempo real.

Se construyeron sintetizadores digitales que realizaban loscalculos de cada muestra en la duracion de un periodo demuestreo.

Otra opcion consistıa en controlar por medios digitalessintetizadores de tecnologıa analogica.

Surgieron varios lenguajes de programacion dedicados a unhardware especıfico.

MIDI. Es un protocolo normalizado que permite controlardigitalmente instrumentos musicales, independientemente deque sean analogicos o digitales.

PJM Compiladores de audio

Page 52: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Sıntesis en tiempo real

En los anos 70 los computadores no eran suficientementerapidos para realizar la sıntesis en tiempo real.

Se construyeron sintetizadores digitales que realizaban loscalculos de cada muestra en la duracion de un periodo demuestreo.

Otra opcion consistıa en controlar por medios digitalessintetizadores de tecnologıa analogica.

Surgieron varios lenguajes de programacion dedicados a unhardware especıfico.

MIDI. Es un protocolo normalizado que permite controlardigitalmente instrumentos musicales, independientemente deque sean analogicos o digitales.

PJM Compiladores de audio

Page 53: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Hardware de funcion fija y de funcion variable

Funcion fija. La arquitectura del hardware de sıntesis es fija.

Funcion variable. El usuario puede configurar la arquitectura.

El software para los sintetizadores de funcion fija es massimple.

La mayor parte de los productos MIDI estan basados en elconcepto de funcion fija.

Los sintetizadores de arquitectura variable son mas versatiles.

Se han desarrollado dos clases de control:

Lenguajes MIDI para control de sintetizadores fijos.Lenguajes para sintetizadores de arquitectura variable.

PJM Compiladores de audio

Page 54: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Hardware de funcion fija y de funcion variable

Funcion fija. La arquitectura del hardware de sıntesis es fija.

Funcion variable. El usuario puede configurar la arquitectura.

El software para los sintetizadores de funcion fija es massimple.

La mayor parte de los productos MIDI estan basados en elconcepto de funcion fija.

Los sintetizadores de arquitectura variable son mas versatiles.

Se han desarrollado dos clases de control:

Lenguajes MIDI para control de sintetizadores fijos.Lenguajes para sintetizadores de arquitectura variable.

PJM Compiladores de audio

Page 55: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Hardware de funcion fija y de funcion variable

Funcion fija. La arquitectura del hardware de sıntesis es fija.

Funcion variable. El usuario puede configurar la arquitectura.

El software para los sintetizadores de funcion fija es massimple.

La mayor parte de los productos MIDI estan basados en elconcepto de funcion fija.

Los sintetizadores de arquitectura variable son mas versatiles.

Se han desarrollado dos clases de control:

Lenguajes MIDI para control de sintetizadores fijos.Lenguajes para sintetizadores de arquitectura variable.

PJM Compiladores de audio

Page 56: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Hardware de funcion fija y de funcion variable

Funcion fija. La arquitectura del hardware de sıntesis es fija.

Funcion variable. El usuario puede configurar la arquitectura.

El software para los sintetizadores de funcion fija es massimple.

La mayor parte de los productos MIDI estan basados en elconcepto de funcion fija.

Los sintetizadores de arquitectura variable son mas versatiles.

Se han desarrollado dos clases de control:

Lenguajes MIDI para control de sintetizadores fijos.Lenguajes para sintetizadores de arquitectura variable.

PJM Compiladores de audio

Page 57: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Hardware de funcion fija y de funcion variable

Funcion fija. La arquitectura del hardware de sıntesis es fija.

Funcion variable. El usuario puede configurar la arquitectura.

El software para los sintetizadores de funcion fija es massimple.

La mayor parte de los productos MIDI estan basados en elconcepto de funcion fija.

Los sintetizadores de arquitectura variable son mas versatiles.

Se han desarrollado dos clases de control:

Lenguajes MIDI para control de sintetizadores fijos.Lenguajes para sintetizadores de arquitectura variable.

PJM Compiladores de audio

Page 58: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Hardware de funcion fija y de funcion variable

Funcion fija. La arquitectura del hardware de sıntesis es fija.

Funcion variable. El usuario puede configurar la arquitectura.

El software para los sintetizadores de funcion fija es massimple.

La mayor parte de los productos MIDI estan basados en elconcepto de funcion fija.

Los sintetizadores de arquitectura variable son mas versatiles.

Se han desarrollado dos clases de control:

Lenguajes MIDI para control de sintetizadores fijos.Lenguajes para sintetizadores de arquitectura variable.

PJM Compiladores de audio

Page 59: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Hardware de funcion fija y de funcion variable

Funcion fija. La arquitectura del hardware de sıntesis es fija.

Funcion variable. El usuario puede configurar la arquitectura.

El software para los sintetizadores de funcion fija es massimple.

La mayor parte de los productos MIDI estan basados en elconcepto de funcion fija.

Los sintetizadores de arquitectura variable son mas versatiles.

Se han desarrollado dos clases de control:

Lenguajes MIDI para control de sintetizadores fijos.

Lenguajes para sintetizadores de arquitectura variable.

PJM Compiladores de audio

Page 60: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Hardware de funcion fija y de funcion variable

Funcion fija. La arquitectura del hardware de sıntesis es fija.

Funcion variable. El usuario puede configurar la arquitectura.

El software para los sintetizadores de funcion fija es massimple.

La mayor parte de los productos MIDI estan basados en elconcepto de funcion fija.

Los sintetizadores de arquitectura variable son mas versatiles.

Se han desarrollado dos clases de control:

Lenguajes MIDI para control de sintetizadores fijos.Lenguajes para sintetizadores de arquitectura variable.

PJM Compiladores de audio

Page 61: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Control MIDI de un grupo de sintetizadores

Sun

INTERFAZ MIDI

PJM Compiladores de audio

Page 62: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguajes MIDI

Los sintetizadores comerciales tienen un microprocesador quecontrola todo el proceso de sıntesis.

El software interno transforma los gestos interpretados en losdispositivos de entrada (teclado, potenciometros. . . ) encomandos para el sintetizador.

El sintetizador tambien se puede cotrolar mediante mensajesrecibidos a traves de los puertos MIDI.

Los mensajes MIDI pueden ser ejecutados por programasescritos en cualquier lenguaje de programacion: C++, Java,Lisp. . .

Los lenguajes MIDI tienen la posibilidad de crear programasde ejecucion interactiva (ej: acompanamiento automatico).

PJM Compiladores de audio

Page 63: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguajes MIDI

Los sintetizadores comerciales tienen un microprocesador quecontrola todo el proceso de sıntesis.

El software interno transforma los gestos interpretados en losdispositivos de entrada (teclado, potenciometros. . . ) encomandos para el sintetizador.

El sintetizador tambien se puede cotrolar mediante mensajesrecibidos a traves de los puertos MIDI.

Los mensajes MIDI pueden ser ejecutados por programasescritos en cualquier lenguaje de programacion: C++, Java,Lisp. . .

Los lenguajes MIDI tienen la posibilidad de crear programasde ejecucion interactiva (ej: acompanamiento automatico).

PJM Compiladores de audio

Page 64: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguajes MIDI

Los sintetizadores comerciales tienen un microprocesador quecontrola todo el proceso de sıntesis.

El software interno transforma los gestos interpretados en losdispositivos de entrada (teclado, potenciometros. . . ) encomandos para el sintetizador.

El sintetizador tambien se puede cotrolar mediante mensajesrecibidos a traves de los puertos MIDI.

Los mensajes MIDI pueden ser ejecutados por programasescritos en cualquier lenguaje de programacion: C++, Java,Lisp. . .

Los lenguajes MIDI tienen la posibilidad de crear programasde ejecucion interactiva (ej: acompanamiento automatico).

PJM Compiladores de audio

Page 65: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguajes MIDI

Los sintetizadores comerciales tienen un microprocesador quecontrola todo el proceso de sıntesis.

El software interno transforma los gestos interpretados en losdispositivos de entrada (teclado, potenciometros. . . ) encomandos para el sintetizador.

El sintetizador tambien se puede cotrolar mediante mensajesrecibidos a traves de los puertos MIDI.

Los mensajes MIDI pueden ser ejecutados por programasescritos en cualquier lenguaje de programacion: C++, Java,Lisp. . .

Los lenguajes MIDI tienen la posibilidad de crear programasde ejecucion interactiva (ej: acompanamiento automatico).

PJM Compiladores de audio

Page 66: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguajes MIDI

Los sintetizadores comerciales tienen un microprocesador quecontrola todo el proceso de sıntesis.

El software interno transforma los gestos interpretados en losdispositivos de entrada (teclado, potenciometros. . . ) encomandos para el sintetizador.

El sintetizador tambien se puede cotrolar mediante mensajesrecibidos a traves de los puertos MIDI.

Los mensajes MIDI pueden ser ejecutados por programasescritos en cualquier lenguaje de programacion: C++, Java,Lisp. . .

Los lenguajes MIDI tienen la posibilidad de crear programasde ejecucion interactiva (ej: acompanamiento automatico).

PJM Compiladores de audio

Page 67: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguajes para DSP’s de arquitectura variable

Tienen la funcion de configurar el algoritmo de sıntesis. . .

y de transmitir los comandos de control de la ejecucion.

Se han desarrollado para sintetizadores especıficos.

Ejemplos:

4CED, 1980, C. Abbott, lenguaje C, IRCAM.FMX and Cleo, 1982, C. Abbott, lenguaje C, Lucasfilm.Music 5600, 1989, para IBM PS/2 con Motorola DSP 56001,ensamblador 56000, Universidad de Texas.

PJM Compiladores de audio

Page 68: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguajes para DSP’s de arquitectura variable

Tienen la funcion de configurar el algoritmo de sıntesis. . .

y de transmitir los comandos de control de la ejecucion.

Se han desarrollado para sintetizadores especıficos.

Ejemplos:

4CED, 1980, C. Abbott, lenguaje C, IRCAM.FMX and Cleo, 1982, C. Abbott, lenguaje C, Lucasfilm.Music 5600, 1989, para IBM PS/2 con Motorola DSP 56001,ensamblador 56000, Universidad de Texas.

PJM Compiladores de audio

Page 69: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguajes para DSP’s de arquitectura variable

Tienen la funcion de configurar el algoritmo de sıntesis. . .

y de transmitir los comandos de control de la ejecucion.

Se han desarrollado para sintetizadores especıficos.

Ejemplos:

4CED, 1980, C. Abbott, lenguaje C, IRCAM.FMX and Cleo, 1982, C. Abbott, lenguaje C, Lucasfilm.Music 5600, 1989, para IBM PS/2 con Motorola DSP 56001,ensamblador 56000, Universidad de Texas.

PJM Compiladores de audio

Page 70: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguajes para DSP’s de arquitectura variable

Tienen la funcion de configurar el algoritmo de sıntesis. . .

y de transmitir los comandos de control de la ejecucion.

Se han desarrollado para sintetizadores especıficos.

Ejemplos:

4CED, 1980, C. Abbott, lenguaje C, IRCAM.FMX and Cleo, 1982, C. Abbott, lenguaje C, Lucasfilm.Music 5600, 1989, para IBM PS/2 con Motorola DSP 56001,ensamblador 56000, Universidad de Texas.

PJM Compiladores de audio

Page 71: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguajes para DSP’s de arquitectura variable

Tienen la funcion de configurar el algoritmo de sıntesis. . .

y de transmitir los comandos de control de la ejecucion.

Se han desarrollado para sintetizadores especıficos.

Ejemplos:

4CED, 1980, C. Abbott, lenguaje C, IRCAM.

FMX and Cleo, 1982, C. Abbott, lenguaje C, Lucasfilm.Music 5600, 1989, para IBM PS/2 con Motorola DSP 56001,ensamblador 56000, Universidad de Texas.

PJM Compiladores de audio

Page 72: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguajes para DSP’s de arquitectura variable

Tienen la funcion de configurar el algoritmo de sıntesis. . .

y de transmitir los comandos de control de la ejecucion.

Se han desarrollado para sintetizadores especıficos.

Ejemplos:

4CED, 1980, C. Abbott, lenguaje C, IRCAM.FMX and Cleo, 1982, C. Abbott, lenguaje C, Lucasfilm.

Music 5600, 1989, para IBM PS/2 con Motorola DSP 56001,ensamblador 56000, Universidad de Texas.

PJM Compiladores de audio

Page 73: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguajes para DSP’s de arquitectura variable

Tienen la funcion de configurar el algoritmo de sıntesis. . .

y de transmitir los comandos de control de la ejecucion.

Se han desarrollado para sintetizadores especıficos.

Ejemplos:

4CED, 1980, C. Abbott, lenguaje C, IRCAM.FMX and Cleo, 1982, C. Abbott, lenguaje C, Lucasfilm.Music 5600, 1989, para IBM PS/2 con Motorola DSP 56001,ensamblador 56000, Universidad de Texas.

PJM Compiladores de audio

Page 74: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguajes para composicion musical

Tipos de lenguajes para composicion

Descripcion de partituras. Para codificar partituraspreviamente compuestas.

Procedurales. Generan eventos musicales especificados por unalgoritmo.

PJM Compiladores de audio

Page 75: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguajes para composicion musical

Tipos de lenguajes para composicion

Descripcion de partituras. Para codificar partituraspreviamente compuestas.

Procedurales. Generan eventos musicales especificados por unalgoritmo.

PJM Compiladores de audio

Page 76: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguajes de codificacion de partituras

Suelen tener una correspondencia directa con las estructurasde la notacion tradicional: compases, ritmo, escalas,alteraciones, ligaduras. . .

Algunos pueden exportar:

Listas de notas para lenguajes de sıntesis.Ficheros estandar MIDI para secuenciadores.Ficheros para editores de partituras (LilyPond. . . )

El protocolo MIDI impone severas restricciones a la expresionmusical.

La partitura es una descripcion incompleta de la ejecucionmusical. La ejecucion directa a partir de la partitura tiene unacalidad ’mecanica’.

PJM Compiladores de audio

Page 77: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguajes de codificacion de partituras

Suelen tener una correspondencia directa con las estructurasde la notacion tradicional: compases, ritmo, escalas,alteraciones, ligaduras. . .

Algunos pueden exportar:

Listas de notas para lenguajes de sıntesis.Ficheros estandar MIDI para secuenciadores.Ficheros para editores de partituras (LilyPond. . . )

El protocolo MIDI impone severas restricciones a la expresionmusical.

La partitura es una descripcion incompleta de la ejecucionmusical. La ejecucion directa a partir de la partitura tiene unacalidad ’mecanica’.

PJM Compiladores de audio

Page 78: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguajes de codificacion de partituras

Suelen tener una correspondencia directa con las estructurasde la notacion tradicional: compases, ritmo, escalas,alteraciones, ligaduras. . .

Algunos pueden exportar:

Listas de notas para lenguajes de sıntesis.

Ficheros estandar MIDI para secuenciadores.Ficheros para editores de partituras (LilyPond. . . )

El protocolo MIDI impone severas restricciones a la expresionmusical.

La partitura es una descripcion incompleta de la ejecucionmusical. La ejecucion directa a partir de la partitura tiene unacalidad ’mecanica’.

PJM Compiladores de audio

Page 79: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguajes de codificacion de partituras

Suelen tener una correspondencia directa con las estructurasde la notacion tradicional: compases, ritmo, escalas,alteraciones, ligaduras. . .

Algunos pueden exportar:

Listas de notas para lenguajes de sıntesis.Ficheros estandar MIDI para secuenciadores.

Ficheros para editores de partituras (LilyPond. . . )

El protocolo MIDI impone severas restricciones a la expresionmusical.

La partitura es una descripcion incompleta de la ejecucionmusical. La ejecucion directa a partir de la partitura tiene unacalidad ’mecanica’.

PJM Compiladores de audio

Page 80: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguajes de codificacion de partituras

Suelen tener una correspondencia directa con las estructurasde la notacion tradicional: compases, ritmo, escalas,alteraciones, ligaduras. . .

Algunos pueden exportar:

Listas de notas para lenguajes de sıntesis.Ficheros estandar MIDI para secuenciadores.Ficheros para editores de partituras (LilyPond. . . )

El protocolo MIDI impone severas restricciones a la expresionmusical.

La partitura es una descripcion incompleta de la ejecucionmusical. La ejecucion directa a partir de la partitura tiene unacalidad ’mecanica’.

PJM Compiladores de audio

Page 81: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguajes de codificacion de partituras

Suelen tener una correspondencia directa con las estructurasde la notacion tradicional: compases, ritmo, escalas,alteraciones, ligaduras. . .

Algunos pueden exportar:

Listas de notas para lenguajes de sıntesis.Ficheros estandar MIDI para secuenciadores.Ficheros para editores de partituras (LilyPond. . . )

El protocolo MIDI impone severas restricciones a la expresionmusical.

La partitura es una descripcion incompleta de la ejecucionmusical. La ejecucion directa a partir de la partitura tiene unacalidad ’mecanica’.

PJM Compiladores de audio

Page 82: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguajes de codificacion de partituras

Suelen tener una correspondencia directa con las estructurasde la notacion tradicional: compases, ritmo, escalas,alteraciones, ligaduras. . .

Algunos pueden exportar:

Listas de notas para lenguajes de sıntesis.Ficheros estandar MIDI para secuenciadores.Ficheros para editores de partituras (LilyPond. . . )

El protocolo MIDI impone severas restricciones a la expresionmusical.

La partitura es una descripcion incompleta de la ejecucionmusical. La ejecucion directa a partir de la partitura tiene unacalidad ’mecanica’.

PJM Compiladores de audio

Page 83: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguajes procedurales de composicion

Van mas alla de la representacion tradicional mediantepartituras.

Tienen posibilidades unicas en Computer Music como:

Afinaciones alternativas.Control tımbrico.Localizacion espacial.Interaccion con el ejecutante.La composicion se especifica mediante algoritmos.

PJM Compiladores de audio

Page 84: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguajes procedurales de composicion

Van mas alla de la representacion tradicional mediantepartituras.

Tienen posibilidades unicas en Computer Music como:

Afinaciones alternativas.Control tımbrico.Localizacion espacial.Interaccion con el ejecutante.La composicion se especifica mediante algoritmos.

PJM Compiladores de audio

Page 85: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguajes procedurales de composicion

Van mas alla de la representacion tradicional mediantepartituras.

Tienen posibilidades unicas en Computer Music como:

Afinaciones alternativas.

Control tımbrico.Localizacion espacial.Interaccion con el ejecutante.La composicion se especifica mediante algoritmos.

PJM Compiladores de audio

Page 86: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguajes procedurales de composicion

Van mas alla de la representacion tradicional mediantepartituras.

Tienen posibilidades unicas en Computer Music como:

Afinaciones alternativas.Control tımbrico.

Localizacion espacial.Interaccion con el ejecutante.La composicion se especifica mediante algoritmos.

PJM Compiladores de audio

Page 87: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguajes procedurales de composicion

Van mas alla de la representacion tradicional mediantepartituras.

Tienen posibilidades unicas en Computer Music como:

Afinaciones alternativas.Control tımbrico.Localizacion espacial.

Interaccion con el ejecutante.La composicion se especifica mediante algoritmos.

PJM Compiladores de audio

Page 88: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguajes procedurales de composicion

Van mas alla de la representacion tradicional mediantepartituras.

Tienen posibilidades unicas en Computer Music como:

Afinaciones alternativas.Control tımbrico.Localizacion espacial.Interaccion con el ejecutante.

La composicion se especifica mediante algoritmos.

PJM Compiladores de audio

Page 89: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguajes procedurales de composicion

Van mas alla de la representacion tradicional mediantepartituras.

Tienen posibilidades unicas en Computer Music como:

Afinaciones alternativas.Control tımbrico.Localizacion espacial.Interaccion con el ejecutante.La composicion se especifica mediante algoritmos.

PJM Compiladores de audio

Page 90: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Ventajas de los lenguajes procedurales

La estructura logica de la composicion es explıcita.

Alto grado de consistencia formal.

El compositor puede extender el control a procedimientosmanuales.

PJM Compiladores de audio

Page 91: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Ventajas de los lenguajes procedurales

La estructura logica de la composicion es explıcita.

Alto grado de consistencia formal.

El compositor puede extender el control a procedimientosmanuales.

PJM Compiladores de audio

Page 92: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Ventajas de los lenguajes procedurales

La estructura logica de la composicion es explıcita.

Alto grado de consistencia formal.

El compositor puede extender el control a procedimientosmanuales.

PJM Compiladores de audio

Page 93: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguajes musicales embebidos en lenguajes generales deprogramacion

Cualquier lenguaje de proposito general (C, Java, Lisp. . . )puede ser extendido por un conjunto de procedimientosrelacionados entre sı llamados librerıas, lenguaje embebido,toolkit o microworld.

Esta implementacion tiene la ventaja de su portabilidad ycuenta con todas las facilidades del lenguaje original como:

Aritmetica en coma flotante.Manejo de ficheros.Entrada/salida.Manejo de ventanas.

PJM Compiladores de audio

Page 94: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguajes musicales embebidos en lenguajes generales deprogramacion

Cualquier lenguaje de proposito general (C, Java, Lisp. . . )puede ser extendido por un conjunto de procedimientosrelacionados entre sı llamados librerıas, lenguaje embebido,toolkit o microworld.

Esta implementacion tiene la ventaja de su portabilidad ycuenta con todas las facilidades del lenguaje original como:

Aritmetica en coma flotante.Manejo de ficheros.Entrada/salida.Manejo de ventanas.

PJM Compiladores de audio

Page 95: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguajes musicales embebidos en lenguajes generales deprogramacion

Cualquier lenguaje de proposito general (C, Java, Lisp. . . )puede ser extendido por un conjunto de procedimientosrelacionados entre sı llamados librerıas, lenguaje embebido,toolkit o microworld.

Esta implementacion tiene la ventaja de su portabilidad ycuenta con todas las facilidades del lenguaje original como:

Aritmetica en coma flotante.

Manejo de ficheros.Entrada/salida.Manejo de ventanas.

PJM Compiladores de audio

Page 96: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguajes musicales embebidos en lenguajes generales deprogramacion

Cualquier lenguaje de proposito general (C, Java, Lisp. . . )puede ser extendido por un conjunto de procedimientosrelacionados entre sı llamados librerıas, lenguaje embebido,toolkit o microworld.

Esta implementacion tiene la ventaja de su portabilidad ycuenta con todas las facilidades del lenguaje original como:

Aritmetica en coma flotante.Manejo de ficheros.

Entrada/salida.Manejo de ventanas.

PJM Compiladores de audio

Page 97: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguajes musicales embebidos en lenguajes generales deprogramacion

Cualquier lenguaje de proposito general (C, Java, Lisp. . . )puede ser extendido por un conjunto de procedimientosrelacionados entre sı llamados librerıas, lenguaje embebido,toolkit o microworld.

Esta implementacion tiene la ventaja de su portabilidad ycuenta con todas las facilidades del lenguaje original como:

Aritmetica en coma flotante.Manejo de ficheros.Entrada/salida.

Manejo de ventanas.

PJM Compiladores de audio

Page 98: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Lenguajes musicales embebidos en lenguajes generales deprogramacion

Cualquier lenguaje de proposito general (C, Java, Lisp. . . )puede ser extendido por un conjunto de procedimientosrelacionados entre sı llamados librerıas, lenguaje embebido,toolkit o microworld.

Esta implementacion tiene la ventaja de su portabilidad ycuenta con todas las facilidades del lenguaje original como:

Aritmetica en coma flotante.Manejo de ficheros.Entrada/salida.Manejo de ventanas.

PJM Compiladores de audio

Page 99: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

¿Que es Nyquist?

Nyquist es un lenguaje para composicion y sıntesis de sonido.

Esta basado en XLisp.

Promueve un estilo de programacion funcional.

Introduce el tiempo en la semantica del lenguaje.

PJM Compiladores de audio

Page 100: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

¿Que es Nyquist?

Nyquist es un lenguaje para composicion y sıntesis de sonido.

Esta basado en XLisp.

Promueve un estilo de programacion funcional.

Introduce el tiempo en la semantica del lenguaje.

PJM Compiladores de audio

Page 101: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

¿Que es Nyquist?

Nyquist es un lenguaje para composicion y sıntesis de sonido.

Esta basado en XLisp.

Promueve un estilo de programacion funcional.

Introduce el tiempo en la semantica del lenguaje.

PJM Compiladores de audio

Page 102: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

¿Que es Nyquist?

Nyquist es un lenguaje para composicion y sıntesis de sonido.

Esta basado en XLisp.

Promueve un estilo de programacion funcional.

Introduce el tiempo en la semantica del lenguaje.

PJM Compiladores de audio

Page 103: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Diseno de Nyquist

La base de Nyquist es un interprete de XLisp ampliado con:

un nuevo tipo de datos: el sonido.

un nucleo de primitivas para DSP en C.

una semantica extendida y un estilo de programacion.

PJM Compiladores de audio

Page 104: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Diseno de Nyquist

La base de Nyquist es un interprete de XLisp ampliado con:

un nuevo tipo de datos: el sonido.

un nucleo de primitivas para DSP en C.

una semantica extendida y un estilo de programacion.

PJM Compiladores de audio

Page 105: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Diseno de Nyquist

La base de Nyquist es un interprete de XLisp ampliado con:

un nuevo tipo de datos: el sonido.

un nucleo de primitivas para DSP en C.

una semantica extendida y un estilo de programacion.

PJM Compiladores de audio

Page 106: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Eficiencia en Nyquist

Nyquist es un lenguaje interpretado.

La mayor parte de las funciones de sıntesis estanimplementadas en Lisp y se encuentran en el archivo\runtime\nyquist.lspLa mayor parte del tiempo de computo se consume en losbucles de DSP.

Las funciones de DSP estan programadas en C. Son muyeficientes.

Los algoritmos de sıntesis se programan en Lisp combinandolas primitivas basicas en C.

PJM Compiladores de audio

Page 107: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Eficiencia en Nyquist

Nyquist es un lenguaje interpretado.

La mayor parte de las funciones de sıntesis estanimplementadas en Lisp y se encuentran en el archivo\runtime\nyquist.lsp

La mayor parte del tiempo de computo se consume en losbucles de DSP.

Las funciones de DSP estan programadas en C. Son muyeficientes.

Los algoritmos de sıntesis se programan en Lisp combinandolas primitivas basicas en C.

PJM Compiladores de audio

Page 108: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Eficiencia en Nyquist

Nyquist es un lenguaje interpretado.

La mayor parte de las funciones de sıntesis estanimplementadas en Lisp y se encuentran en el archivo\runtime\nyquist.lspLa mayor parte del tiempo de computo se consume en losbucles de DSP.

Las funciones de DSP estan programadas en C. Son muyeficientes.

Los algoritmos de sıntesis se programan en Lisp combinandolas primitivas basicas en C.

PJM Compiladores de audio

Page 109: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Eficiencia en Nyquist

Nyquist es un lenguaje interpretado.

La mayor parte de las funciones de sıntesis estanimplementadas en Lisp y se encuentran en el archivo\runtime\nyquist.lspLa mayor parte del tiempo de computo se consume en losbucles de DSP.

Las funciones de DSP estan programadas en C. Son muyeficientes.

Los algoritmos de sıntesis se programan en Lisp combinandolas primitivas basicas en C.

PJM Compiladores de audio

Page 110: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Eficiencia en Nyquist

Nyquist es un lenguaje interpretado.

La mayor parte de las funciones de sıntesis estanimplementadas en Lisp y se encuentran en el archivo\runtime\nyquist.lspLa mayor parte del tiempo de computo se consume en losbucles de DSP.

Las funciones de DSP estan programadas en C. Son muyeficientes.

Los algoritmos de sıntesis se programan en Lisp combinandolas primitivas basicas en C.

PJM Compiladores de audio

Page 111: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Ampliacion de Nyquist

A veces es necesario ampliar Nyquist con nuevas rutinas paraDSP.

Los algoritmos para DSP se pueden programar en XLisp (pocoeficiente).

O en C (eficiente).

El procedimiento para ampliar Nyquist con nuevas funcionesde sıntesis en C es:

1 Especificar el algoritmo en una estructura de datos en Lisp ysalvarla en un archivo con la extension .alg

2 Trasladar la descripcion a codigo C. Se obtienen dos ficherosde extensiones .c y .h

3 Volver a compilar el interprete enlazando los nuevos archivos.4 Mas detalles en el Appendix I del manual de Nyquist.

PJM Compiladores de audio

Page 112: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Ampliacion de Nyquist

A veces es necesario ampliar Nyquist con nuevas rutinas paraDSP.

Los algoritmos para DSP se pueden programar en XLisp (pocoeficiente).

O en C (eficiente).

El procedimiento para ampliar Nyquist con nuevas funcionesde sıntesis en C es:

1 Especificar el algoritmo en una estructura de datos en Lisp ysalvarla en un archivo con la extension .alg

2 Trasladar la descripcion a codigo C. Se obtienen dos ficherosde extensiones .c y .h

3 Volver a compilar el interprete enlazando los nuevos archivos.4 Mas detalles en el Appendix I del manual de Nyquist.

PJM Compiladores de audio

Page 113: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Ampliacion de Nyquist

A veces es necesario ampliar Nyquist con nuevas rutinas paraDSP.

Los algoritmos para DSP se pueden programar en XLisp (pocoeficiente).

O en C (eficiente).

El procedimiento para ampliar Nyquist con nuevas funcionesde sıntesis en C es:

1 Especificar el algoritmo en una estructura de datos en Lisp ysalvarla en un archivo con la extension .alg

2 Trasladar la descripcion a codigo C. Se obtienen dos ficherosde extensiones .c y .h

3 Volver a compilar el interprete enlazando los nuevos archivos.4 Mas detalles en el Appendix I del manual de Nyquist.

PJM Compiladores de audio

Page 114: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Ampliacion de Nyquist

A veces es necesario ampliar Nyquist con nuevas rutinas paraDSP.

Los algoritmos para DSP se pueden programar en XLisp (pocoeficiente).

O en C (eficiente).

El procedimiento para ampliar Nyquist con nuevas funcionesde sıntesis en C es:

1 Especificar el algoritmo en una estructura de datos en Lisp ysalvarla en un archivo con la extension .alg

2 Trasladar la descripcion a codigo C. Se obtienen dos ficherosde extensiones .c y .h

3 Volver a compilar el interprete enlazando los nuevos archivos.4 Mas detalles en el Appendix I del manual de Nyquist.

PJM Compiladores de audio

Page 115: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Ampliacion de Nyquist

A veces es necesario ampliar Nyquist con nuevas rutinas paraDSP.

Los algoritmos para DSP se pueden programar en XLisp (pocoeficiente).

O en C (eficiente).

El procedimiento para ampliar Nyquist con nuevas funcionesde sıntesis en C es:

1 Especificar el algoritmo en una estructura de datos en Lisp ysalvarla en un archivo con la extension .alg

2 Trasladar la descripcion a codigo C. Se obtienen dos ficherosde extensiones .c y .h

3 Volver a compilar el interprete enlazando los nuevos archivos.4 Mas detalles en el Appendix I del manual de Nyquist.

PJM Compiladores de audio

Page 116: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Ampliacion de Nyquist

A veces es necesario ampliar Nyquist con nuevas rutinas paraDSP.

Los algoritmos para DSP se pueden programar en XLisp (pocoeficiente).

O en C (eficiente).

El procedimiento para ampliar Nyquist con nuevas funcionesde sıntesis en C es:

1 Especificar el algoritmo en una estructura de datos en Lisp ysalvarla en un archivo con la extension .alg

2 Trasladar la descripcion a codigo C. Se obtienen dos ficherosde extensiones .c y .h

3 Volver a compilar el interprete enlazando los nuevos archivos.4 Mas detalles en el Appendix I del manual de Nyquist.

PJM Compiladores de audio

Page 117: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Ampliacion de Nyquist

A veces es necesario ampliar Nyquist con nuevas rutinas paraDSP.

Los algoritmos para DSP se pueden programar en XLisp (pocoeficiente).

O en C (eficiente).

El procedimiento para ampliar Nyquist con nuevas funcionesde sıntesis en C es:

1 Especificar el algoritmo en una estructura de datos en Lisp ysalvarla en un archivo con la extension .alg

2 Trasladar la descripcion a codigo C. Se obtienen dos ficherosde extensiones .c y .h

3 Volver a compilar el interprete enlazando los nuevos archivos.

4 Mas detalles en el Appendix I del manual de Nyquist.

PJM Compiladores de audio

Page 118: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Ampliacion de Nyquist

A veces es necesario ampliar Nyquist con nuevas rutinas paraDSP.

Los algoritmos para DSP se pueden programar en XLisp (pocoeficiente).

O en C (eficiente).

El procedimiento para ampliar Nyquist con nuevas funcionesde sıntesis en C es:

1 Especificar el algoritmo en una estructura de datos en Lisp ysalvarla en un archivo con la extension .alg

2 Trasladar la descripcion a codigo C. Se obtienen dos ficherosde extensiones .c y .h

3 Volver a compilar el interprete enlazando los nuevos archivos.4 Mas detalles en el Appendix I del manual de Nyquist.

PJM Compiladores de audio

Page 119: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Ejemplo de programacion en Nyquist

atk

dur

rel

nyq−linenamp

hz−to−step

osc

frq

wave

pitch

dur

; *table* y *tri-table*, tablas predefinidas

; envolvente

(defun nyq-linen (amp atk dur rel)

(pwl atk amp (- dur rel) amp dur))

; algoritmo de sintesis

(defun nyq-ejemplo (dur amp frq wave atk rel)

(mult (nyq-linen amp atk dur rel)

(osc (hz-to-step frq) dur wave)))

PJM Compiladores de audio

Page 120: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Score en Nyquist

; score

(setf score-ejemplo

; start stretch instr dur amp frq wave atk rel

(timed-seq ’(

(0 1 (nyq-ejemplo 2.0 1.0 440.0 *table* 1.0 1.0))

(2.5 1 (nyq-ejemplo 2.0 1.0 220.0 *tri-table* 0.01 1.99))

(5 1 (nyq-ejemplo 4.0 1.0 110.0 *tri-table* 3.9 0.1))

(10 1 (nyq-ejemplo 10 1.0 138.6 *tri-table* 9.0 1.0))

(10 1 (nyq-ejemplo 10 1.0 329.6 *table* 5.0 5.0))

(10 1 (nyq-ejemplo 10 1.0 440.0 *table* 1.0 9.0)))))

ejemplo.mp3

PJM Compiladores de audio

Page 121: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Behavioral Abstraction en Nyquist

En Music V las notas tienen un tiempo de comienzo y unaduracion.

En Nyquist la orchestra y el score estan unificados.

En Nyquist se pueden especificar expresiones anidadas.

Es necesario considerar los tiempos de comienzo y duracionescomo transformaciones mas que como valores fijos.

PJM Compiladores de audio

Page 122: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Behavioral Abstraction en Nyquist

En Music V las notas tienen un tiempo de comienzo y unaduracion.

En Nyquist la orchestra y el score estan unificados.

En Nyquist se pueden especificar expresiones anidadas.

Es necesario considerar los tiempos de comienzo y duracionescomo transformaciones mas que como valores fijos.

PJM Compiladores de audio

Page 123: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Behavioral Abstraction en Nyquist

En Music V las notas tienen un tiempo de comienzo y unaduracion.

En Nyquist la orchestra y el score estan unificados.

En Nyquist se pueden especificar expresiones anidadas.

Es necesario considerar los tiempos de comienzo y duracionescomo transformaciones mas que como valores fijos.

PJM Compiladores de audio

Page 124: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Behavioral Abstraction en Nyquist

En Music V las notas tienen un tiempo de comienzo y unaduracion.

En Nyquist la orchestra y el score estan unificados.

En Nyquist se pueden especificar expresiones anidadas.

Es necesario considerar los tiempos de comienzo y duracionescomo transformaciones mas que como valores fijos.

PJM Compiladores de audio

Page 125: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Behavioral Abstraction en Nyquist

Un violinista alarga una nota prolongando el tiempo duranteel cual tira del arco.

Si la nota es un tremolo, aumentara el numero de golpes dearco.

El comportamiento (behavior) es distinto en cada caso.

El comportamiento (behavior) depende del contexto.

El alargamiento de una nota es un tipo de transformacion.

La forma de realizar la transformacion depende del contexto.

PJM Compiladores de audio

Page 126: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Behavioral Abstraction en Nyquist

Un violinista alarga una nota prolongando el tiempo duranteel cual tira del arco.

Si la nota es un tremolo, aumentara el numero de golpes dearco.

El comportamiento (behavior) es distinto en cada caso.

El comportamiento (behavior) depende del contexto.

El alargamiento de una nota es un tipo de transformacion.

La forma de realizar la transformacion depende del contexto.

PJM Compiladores de audio

Page 127: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Behavioral Abstraction en Nyquist

Un violinista alarga una nota prolongando el tiempo duranteel cual tira del arco.

Si la nota es un tremolo, aumentara el numero de golpes dearco.

El comportamiento (behavior) es distinto en cada caso.

El comportamiento (behavior) depende del contexto.

El alargamiento de una nota es un tipo de transformacion.

La forma de realizar la transformacion depende del contexto.

PJM Compiladores de audio

Page 128: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Behavioral Abstraction en Nyquist

Un violinista alarga una nota prolongando el tiempo duranteel cual tira del arco.

Si la nota es un tremolo, aumentara el numero de golpes dearco.

El comportamiento (behavior) es distinto en cada caso.

El comportamiento (behavior) depende del contexto.

El alargamiento de una nota es un tipo de transformacion.

La forma de realizar la transformacion depende del contexto.

PJM Compiladores de audio

Page 129: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Behavioral Abstraction en Nyquist

Un violinista alarga una nota prolongando el tiempo duranteel cual tira del arco.

Si la nota es un tremolo, aumentara el numero de golpes dearco.

El comportamiento (behavior) es distinto en cada caso.

El comportamiento (behavior) depende del contexto.

El alargamiento de una nota es un tipo de transformacion.

La forma de realizar la transformacion depende del contexto.

PJM Compiladores de audio

Page 130: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Behavioral Abstraction en Nyquist

Un violinista alarga una nota prolongando el tiempo duranteel cual tira del arco.

Si la nota es un tremolo, aumentara el numero de golpes dearco.

El comportamiento (behavior) es distinto en cada caso.

El comportamiento (behavior) depende del contexto.

El alargamiento de una nota es un tipo de transformacion.

La forma de realizar la transformacion depende del contexto.

PJM Compiladores de audio

Page 131: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Behavioral Abstraction en Nyquist

Definicion

El behavior describe como generar sonido en un determinadocontexto de transformacion.

El contexto en Nyquist refleja el efecto acumulativo detransformaciones anidadas sobre parametros del entornocomo:

Tiempo actual.Factor de estrechamiento.Transposicion.Nivel dinamico global.

PJM Compiladores de audio

Page 132: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Behavioral Abstraction en Nyquist

Definicion

El behavior describe como generar sonido en un determinadocontexto de transformacion.

El contexto en Nyquist refleja el efecto acumulativo detransformaciones anidadas sobre parametros del entornocomo:

Tiempo actual.Factor de estrechamiento.Transposicion.Nivel dinamico global.

PJM Compiladores de audio

Page 133: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Behavioral Abstraction en Nyquist

Definicion

El behavior describe como generar sonido en un determinadocontexto de transformacion.

El contexto en Nyquist refleja el efecto acumulativo detransformaciones anidadas sobre parametros del entornocomo:

Tiempo actual.

Factor de estrechamiento.Transposicion.Nivel dinamico global.

PJM Compiladores de audio

Page 134: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Behavioral Abstraction en Nyquist

Definicion

El behavior describe como generar sonido en un determinadocontexto de transformacion.

El contexto en Nyquist refleja el efecto acumulativo detransformaciones anidadas sobre parametros del entornocomo:

Tiempo actual.Factor de estrechamiento.

Transposicion.Nivel dinamico global.

PJM Compiladores de audio

Page 135: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Behavioral Abstraction en Nyquist

Definicion

El behavior describe como generar sonido en un determinadocontexto de transformacion.

El contexto en Nyquist refleja el efecto acumulativo detransformaciones anidadas sobre parametros del entornocomo:

Tiempo actual.Factor de estrechamiento.Transposicion.

Nivel dinamico global.

PJM Compiladores de audio

Page 136: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Behavioral Abstraction en Nyquist

Definicion

El behavior describe como generar sonido en un determinadocontexto de transformacion.

El contexto en Nyquist refleja el efecto acumulativo detransformaciones anidadas sobre parametros del entornocomo:

Tiempo actual.Factor de estrechamiento.Transposicion.Nivel dinamico global.

PJM Compiladores de audio

Page 137: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Behavioral Abstraction en Nyquist

Definicion

Behavioral abstraction es la posibilidad de que las funcionesadapten su conducta de acuerdo con el entorno de tranformacion.

PJM Compiladores de audio

Page 138: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

El entorno de transformacion

*warp* funcion que transforma el tiempo de partitura entiempo global.

*loud* Dinamica global (en dB).

*transpose* Transposicion en semitonos.

*sustain* Factor de separacion o solapamiento entre notassucesivas.

*start* Tiempo de inicio.

*stop* Tiempo final.

*control-srate* Frecuencia de muestreo para senales decontrol.

*sound-srate* Frecuencia de muestreo para senales deaudio.

PJM Compiladores de audio

Page 139: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

El entorno de transformacion

*warp* funcion que transforma el tiempo de partitura entiempo global.

*loud* Dinamica global (en dB).

*transpose* Transposicion en semitonos.

*sustain* Factor de separacion o solapamiento entre notassucesivas.

*start* Tiempo de inicio.

*stop* Tiempo final.

*control-srate* Frecuencia de muestreo para senales decontrol.

*sound-srate* Frecuencia de muestreo para senales deaudio.

PJM Compiladores de audio

Page 140: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

El entorno de transformacion

*warp* funcion que transforma el tiempo de partitura entiempo global.

*loud* Dinamica global (en dB).

*transpose* Transposicion en semitonos.

*sustain* Factor de separacion o solapamiento entre notassucesivas.

*start* Tiempo de inicio.

*stop* Tiempo final.

*control-srate* Frecuencia de muestreo para senales decontrol.

*sound-srate* Frecuencia de muestreo para senales deaudio.

PJM Compiladores de audio

Page 141: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

El entorno de transformacion

*warp* funcion que transforma el tiempo de partitura entiempo global.

*loud* Dinamica global (en dB).

*transpose* Transposicion en semitonos.

*sustain* Factor de separacion o solapamiento entre notassucesivas.

*start* Tiempo de inicio.

*stop* Tiempo final.

*control-srate* Frecuencia de muestreo para senales decontrol.

*sound-srate* Frecuencia de muestreo para senales deaudio.

PJM Compiladores de audio

Page 142: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

El entorno de transformacion

*warp* funcion que transforma el tiempo de partitura entiempo global.

*loud* Dinamica global (en dB).

*transpose* Transposicion en semitonos.

*sustain* Factor de separacion o solapamiento entre notassucesivas.

*start* Tiempo de inicio.

*stop* Tiempo final.

*control-srate* Frecuencia de muestreo para senales decontrol.

*sound-srate* Frecuencia de muestreo para senales deaudio.

PJM Compiladores de audio

Page 143: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

El entorno de transformacion

*warp* funcion que transforma el tiempo de partitura entiempo global.

*loud* Dinamica global (en dB).

*transpose* Transposicion en semitonos.

*sustain* Factor de separacion o solapamiento entre notassucesivas.

*start* Tiempo de inicio.

*stop* Tiempo final.

*control-srate* Frecuencia de muestreo para senales decontrol.

*sound-srate* Frecuencia de muestreo para senales deaudio.

PJM Compiladores de audio

Page 144: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

El entorno de transformacion

*warp* funcion que transforma el tiempo de partitura entiempo global.

*loud* Dinamica global (en dB).

*transpose* Transposicion en semitonos.

*sustain* Factor de separacion o solapamiento entre notassucesivas.

*start* Tiempo de inicio.

*stop* Tiempo final.

*control-srate* Frecuencia de muestreo para senales decontrol.

*sound-srate* Frecuencia de muestreo para senales deaudio.

PJM Compiladores de audio

Page 145: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

El entorno de transformacion

*warp* funcion que transforma el tiempo de partitura entiempo global.

*loud* Dinamica global (en dB).

*transpose* Transposicion en semitonos.

*sustain* Factor de separacion o solapamiento entre notassucesivas.

*start* Tiempo de inicio.

*stop* Tiempo final.

*control-srate* Frecuencia de muestreo para senales decontrol.

*sound-srate* Frecuencia de muestreo para senales deaudio.

PJM Compiladores de audio

Page 146: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Behavioral Abstraction en Nyquist

Ejemplo:

(play (seq (note c4 q) (note d4 i)))

*warp* toma el valor del tiempo inicial.

Se evalua (note c4 q). Se devuelve un sonido.

El sonido termina en tiempo 1.0 (La duracion de q es 1.0).

*warp* desplaza el valor del tiempo 1.0 segundos.

Se evalua (note d4 i) con el nuevo tiempo de inicio.

El segundo sonido se suma al primero para formar un sonidocompuesto cuya duracion es 1.5.

*warp* se restaura a su valor inicial.

PJM Compiladores de audio

Page 147: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Behavioral Abstraction en Nyquist

Ejemplo:

(play (seq (note c4 q) (note d4 i)))

*warp* toma el valor del tiempo inicial.

Se evalua (note c4 q). Se devuelve un sonido.

El sonido termina en tiempo 1.0 (La duracion de q es 1.0).

*warp* desplaza el valor del tiempo 1.0 segundos.

Se evalua (note d4 i) con el nuevo tiempo de inicio.

El segundo sonido se suma al primero para formar un sonidocompuesto cuya duracion es 1.5.

*warp* se restaura a su valor inicial.

PJM Compiladores de audio

Page 148: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Behavioral Abstraction en Nyquist

Ejemplo:

(play (seq (note c4 q) (note d4 i)))

*warp* toma el valor del tiempo inicial.

Se evalua (note c4 q). Se devuelve un sonido.

El sonido termina en tiempo 1.0 (La duracion de q es 1.0).

*warp* desplaza el valor del tiempo 1.0 segundos.

Se evalua (note d4 i) con el nuevo tiempo de inicio.

El segundo sonido se suma al primero para formar un sonidocompuesto cuya duracion es 1.5.

*warp* se restaura a su valor inicial.

PJM Compiladores de audio

Page 149: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Behavioral Abstraction en Nyquist

Ejemplo:

(play (seq (note c4 q) (note d4 i)))

*warp* toma el valor del tiempo inicial.

Se evalua (note c4 q). Se devuelve un sonido.

El sonido termina en tiempo 1.0 (La duracion de q es 1.0).

*warp* desplaza el valor del tiempo 1.0 segundos.

Se evalua (note d4 i) con el nuevo tiempo de inicio.

El segundo sonido se suma al primero para formar un sonidocompuesto cuya duracion es 1.5.

*warp* se restaura a su valor inicial.

PJM Compiladores de audio

Page 150: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Behavioral Abstraction en Nyquist

Ejemplo:

(play (seq (note c4 q) (note d4 i)))

*warp* toma el valor del tiempo inicial.

Se evalua (note c4 q). Se devuelve un sonido.

El sonido termina en tiempo 1.0 (La duracion de q es 1.0).

*warp* desplaza el valor del tiempo 1.0 segundos.

Se evalua (note d4 i) con el nuevo tiempo de inicio.

El segundo sonido se suma al primero para formar un sonidocompuesto cuya duracion es 1.5.

*warp* se restaura a su valor inicial.

PJM Compiladores de audio

Page 151: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Behavioral Abstraction en Nyquist

Ejemplo:

(play (seq (note c4 q) (note d4 i)))

*warp* toma el valor del tiempo inicial.

Se evalua (note c4 q). Se devuelve un sonido.

El sonido termina en tiempo 1.0 (La duracion de q es 1.0).

*warp* desplaza el valor del tiempo 1.0 segundos.

Se evalua (note d4 i) con el nuevo tiempo de inicio.

El segundo sonido se suma al primero para formar un sonidocompuesto cuya duracion es 1.5.

*warp* se restaura a su valor inicial.

PJM Compiladores de audio

Page 152: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Behavioral Abstraction en Nyquist

Ejemplo:

(play (seq (note c4 q) (note d4 i)))

*warp* toma el valor del tiempo inicial.

Se evalua (note c4 q). Se devuelve un sonido.

El sonido termina en tiempo 1.0 (La duracion de q es 1.0).

*warp* desplaza el valor del tiempo 1.0 segundos.

Se evalua (note d4 i) con el nuevo tiempo de inicio.

El segundo sonido se suma al primero para formar un sonidocompuesto cuya duracion es 1.5.

*warp* se restaura a su valor inicial.

PJM Compiladores de audio

Page 153: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Resumen

La sıntesis mediante software permite un alto grado de controlsobre el sonido.

Nyquist es un lenguaje para composicion y sıntesis que:

Representa una evolucion sobre los lenguajes Music NPromociona un estilo de programacion funcional.El sonido es un tipo de datos.Las transformaciones temporales forman parte de la semanticadel lenguaje.Incluye Behavioral Abstraction. Los algoritmos de generacionde sonido adaptan su comportamiento en funcion del contexto.

PJM Compiladores de audio

Page 154: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Resumen

La sıntesis mediante software permite un alto grado de controlsobre el sonido.

Nyquist es un lenguaje para composicion y sıntesis que:

Representa una evolucion sobre los lenguajes Music NPromociona un estilo de programacion funcional.El sonido es un tipo de datos.Las transformaciones temporales forman parte de la semanticadel lenguaje.Incluye Behavioral Abstraction. Los algoritmos de generacionde sonido adaptan su comportamiento en funcion del contexto.

PJM Compiladores de audio

Page 155: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Resumen

La sıntesis mediante software permite un alto grado de controlsobre el sonido.

Nyquist es un lenguaje para composicion y sıntesis que:

Representa una evolucion sobre los lenguajes Music N

Promociona un estilo de programacion funcional.El sonido es un tipo de datos.Las transformaciones temporales forman parte de la semanticadel lenguaje.Incluye Behavioral Abstraction. Los algoritmos de generacionde sonido adaptan su comportamiento en funcion del contexto.

PJM Compiladores de audio

Page 156: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Resumen

La sıntesis mediante software permite un alto grado de controlsobre el sonido.

Nyquist es un lenguaje para composicion y sıntesis que:

Representa una evolucion sobre los lenguajes Music NPromociona un estilo de programacion funcional.

El sonido es un tipo de datos.Las transformaciones temporales forman parte de la semanticadel lenguaje.Incluye Behavioral Abstraction. Los algoritmos de generacionde sonido adaptan su comportamiento en funcion del contexto.

PJM Compiladores de audio

Page 157: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Resumen

La sıntesis mediante software permite un alto grado de controlsobre el sonido.

Nyquist es un lenguaje para composicion y sıntesis que:

Representa una evolucion sobre los lenguajes Music NPromociona un estilo de programacion funcional.El sonido es un tipo de datos.

Las transformaciones temporales forman parte de la semanticadel lenguaje.Incluye Behavioral Abstraction. Los algoritmos de generacionde sonido adaptan su comportamiento en funcion del contexto.

PJM Compiladores de audio

Page 158: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Resumen

La sıntesis mediante software permite un alto grado de controlsobre el sonido.

Nyquist es un lenguaje para composicion y sıntesis que:

Representa una evolucion sobre los lenguajes Music NPromociona un estilo de programacion funcional.El sonido es un tipo de datos.Las transformaciones temporales forman parte de la semanticadel lenguaje.

Incluye Behavioral Abstraction. Los algoritmos de generacionde sonido adaptan su comportamiento en funcion del contexto.

PJM Compiladores de audio

Page 159: Compiladores de audio - dsi.uclm.es › personal › luisrruiz › curso › tema3.pdf · algoritmos de s´ıntesis. Los algoritmos pueden ser arbitrariamente complicados. Precisi´on

ContenidosObjetivos

Lenguajes de sıntesis mediante softwareSıntesis en tiempo real

Lenguajes para composicion musicalIntroduccion a Nyquist

Diseno de NyquistBehavioral Abstraction

Resumen

La sıntesis mediante software permite un alto grado de controlsobre el sonido.

Nyquist es un lenguaje para composicion y sıntesis que:

Representa una evolucion sobre los lenguajes Music NPromociona un estilo de programacion funcional.El sonido es un tipo de datos.Las transformaciones temporales forman parte de la semanticadel lenguaje.Incluye Behavioral Abstraction. Los algoritmos de generacionde sonido adaptan su comportamiento en funcion del contexto.

PJM Compiladores de audio