stringtranslate.com

sonido

Csound es un lenguaje de programación informática de dominio específico para programación de audio. Se llama Csound porque está escrito en C , a diferencia de algunos de sus predecesores.

Es un software gratuito , disponible bajo LGPL-2.1 o posterior .

Csound fue escrito originalmente en el MIT por Barry Vercoe en 1985, basándose en su sistema anterior llamado Music 11, que a su vez siguió el modelo MUSIC-N iniciado por Max Mathews en los Laboratorios Bell. Su desarrollo continuó durante las décadas de 1990 y 2000, dirigido por John Fitch en la Universidad de Bath. El primer lanzamiento documentado de la versión 5 es la versión 5.01 el 18 de marzo de 2006. Muchos desarrolladores han contribuido a ella, en particular Istvan Varga, Gabriel Maldonado, Robin Whittle, Richard Karpen, Iain McCurdy, Michael Gogins, Matt Ingalls, Steven Yi, Richard Boulanger. , Víctor Lazzarini y Joachim Heintz.

Desarrollado durante muchos años, actualmente cuenta con cerca de 1700 unidades generadoras . Uno de sus mayores puntos fuertes es que es completamente modular y extensible por el usuario. Csound está estrechamente relacionado con el lenguaje subyacente de las extensiones de audio estructurado para MPEG-4 , SAOL .

Código de sonido

Csound toma como entrada dos archivos de texto con formato especial . La orquesta describe la naturaleza de los instrumentos y la partitura describe notas y otros parámetros a lo largo de una línea de tiempo. Csound procesa las instrucciones de estos archivos y genera un archivo de audio o una transmisión de audio en tiempo real como salida.

Los archivos de orquesta y partitura se pueden unificar en un único archivo estructurado utilizando etiquetas de lenguaje de marcado (un archivo CSD con extensión de nombre de archivo .csd). Aquí hay un ejemplo muy simple de un archivo de datos Csound unificado que produce un archivo de onda que contiene un tono de onda sinusoidal de un segundo de 1 kHz a una frecuencia de muestreo de 96 kHz:

<Csintetizador de sonido>  <OpcionesCs> csound -W -d -o tono.wav </CsOptions>  <CsInstrumentos> sr = 96000 ; Frecuencia de muestreo. coronas = 9600 ; Controlar la velocidad de la señal. ksmps = 10 ; Muestras por señal de control. nchnls = 1 ; Número de canales de salida.                 instr 1 a 1 oscil p4 , p5 , 1 ; Oscilador: p4 y p5 son los argumentos de la puntuación, 1 es el número de la tabla. sale un 1 ; Producción. finalizando </CsInstruments>             <PuntuaciónCs> f 1 0 8192 10 1 ; Tabla que contiene una onda sinusoidal. El generador incorporado 10 produce una suma de sinusoides, aquí sólo una. yo 1 0 1 20000 1000 ; Reproduzca un segundo de un kHz con una amplitud de 20000. e </CsScore>              </Csintetizador de sonido>

Al igual que con muchos otros lenguajes de programación, la escritura de programas largos en Csound se puede facilitar utilizando un entorno integrado para editar, obtener vistas previas, probar y depurar . El que ahora tiene soporte oficial es CsoundQt y tiene muchas características, como inserción automática de código, navegador de documentación integrado, widgets integrados para controlar gráficamente los parámetros en tiempo real, además de un botón para reproducir el código.

Sonido 5

La versión 5.01 se lanzó el 18 de marzo de 2006, 20 años después del primer lanzamiento de csound. Csound 5 está disponible en código binario y fuente para Linux, Microsoft Windows y Mac OS X desde el proyecto SourceForge Csound. [3] Se ha mejorado y ampliado mucho en comparación con el software original y se ha convertido efectivamente en una biblioteca de software con una API . Para ello se han desarrollado diversos frontales . Además de la API C básica , también existen Python , Java , Lisp , Tcl y C++ entre otros enlaces, como uno de Haskell que permite controlar Csound desde un entorno puramente funcional.

El uso de complementos permite capacidades adicionales sin modificaciones en el código de Csound, ya que existe la posibilidad de escribir códigos de operación definidos por el usuario como extensiones del lenguaje original. Se admiten LADSPA y DSSI , pero se ha eliminado la compatibilidad con VST .

En la década de 1990 se añadió la interpretación en tiempo real a través de MIDI . Otra adición fue la compatibilidad con widgets FLTK (componentes de interfaz gráfica con controles deslizantes, perillas, etc.) para controlar el audio en tiempo real y la integración de interfaces gráficas personalizadas escritas en Python.

Sonido 6

Csound 6 ha estado en desarrollo desde que se debatieron sus características en la Conferencia Csound celebrada en 2011 en Hannover. Csound 6 se lanzó en julio de 2013 y ahora está disponible en GitHub . [4] Csound 6 también está disponible para Android . Las principales características nuevas de Csound 6 incluyen:

El desarrollo de Csound 6 estuvo dirigido por John Fitch , Steven Yi y Victor Lazzarini .

Sonido para presentaciones en vivo

Actualmente, solo se pueden generar eventos de notas o partituras de Csound en tiempo real (a diferencia de los instrumentos, que solo se pueden definir en el momento de la compilación, cuando se inicia csound por primera vez; en Csound 6 se eliminó esta limitación). El conjunto de procesadores de sonido se define y compila en el momento de la carga, pero los objetos de procesamiento individuales se pueden generar o destruir en tiempo real, el audio de entrada se procesa en tiempo real y la salida se puede generar también en tiempo real. Los eventos de nota se pueden activar en función de las comunicaciones OSC dentro de una instancia de instrumento, generados por MIDI o ingresados ​​en la entrada estándar (escribiendo en una terminal o enviando declaraciones textuales desde otro programa). El uso de Csound 5 como herramienta de interpretación en vivo se puede ampliar con una variedad de software de terceros. La hoja de eventos en vivo dentro de CsoundQt se puede utilizar para modificar la partitura en tiempo real. Además, se pueden utilizar interfaces con otros lenguajes de programación para crear scripts de Csound. En la Conferencia de audio de Linux de 2012 se presentó un artículo que detalla el uso de Csound con Qt o Pure Data en síntesis musical en tiempo real [5]. El proyecto Ounk intenta integrar Python con Csound, mientras que CsoundAC proporciona una forma de realizar composición algorítmica desde Python usando Suena como backend. Csound for Live de Audivation empaqueta varios códigos de operación en contenedores Max/MSP adecuados para su uso en Ableton Live . [6] [7] Csound también está disponible para sistemas móviles (iOS, Android). [8]

Una computadora portátil por niño (OLPC)

Csound5 fue elegido como sistema de desarrollo de audio/música para el proyecto OLPC en la plataforma portátil XO-1 . [9]

Ver también

Referencias

  1. ^ Dr. Richard Boulanger - Tres décadas con Csound: las raíces, el nacimiento y los primeros años
  2. ^ "Lanzamientos · csound/csound". github.com . Consultado el 11 de febrero de 2023 .
  3. ^ "Csound | FuenteForge.net".
  4. ^ "Csound | GitHub.com".
  5. ^ Joaquín Heintz. "Csound como aplicación en tiempo real" (PDF) . Instituto de Música Nueva.
  6. ^ Peter Kirn (15 de octubre de 2011). "Wiki de Csound For Live". Crear música digital.
  7. ^ Synthhead (15 de octubre de 2011). "Csound For Live disponible el 17 de octubre en la wiki". Sintopia.
  8. ^ S. Yi y V. Lazzarini. "Csound para Android" (PDF) .
  9. ^ "Csound en la wiki de OLPC" . Consultado el 23 de noviembre de 2010 .

Otras lecturas

enlaces externos