<para>En primer lugar, al tratar de ejecutar &arts-builder;, también se debe estar ejecutando el servidor de sonido (&artsd;). Normalmente, si utiliza &kde; 2.1, esto se hace automáticamente. Sino, puede configurar en &kcontrol; que el servidor de sonido se inicie de forma automática en <menuchoice><guilabel>Sonidos y multimedia</guilabel><guilabel>Sistema de sonido</guilabel></menuchoice>. </para>
<para>Al ejecutar &arts;, siempre se ejecutan pequeños módulos. &arts-builder; es una herramienta para la creación de nuevas estructuras de pequeños módulos conectados. Lo único que debe hacer es colocar los módulos en la rejilla. Para hacerlo, elíjalos en el menú <guimenu>Módulos</guimenu>, y después pulse en cualquier lugar del espacio verde y gris. </para>
<para>Los módulos tienen normalmente puertos (por los que fluyen las señales de audio hacia adentro o hacia afuera). Para conectar dos puertos, pinche en el primero, que provocará que se ponga de color naranja, y después pinche en el segundo. Sólo puede conectar un puerto de entrada (en la parte superior de un módulo) con un puerto de salida (en la parte inferior de un módulo). Si desea asignar un valor fijo a un puerto (o desconectarlo), hágalo mediante una doble pulsación del ratón sobre el mismo. </para>
<para>Necesita un módulo Synth_AMAN_PLAY para oír la salida que está creando. Así que cree un módulo Synth_AMAN_PLAY seleccionando <menuchoice><guimenu>Módulos</guimenu> <guisubmenu>Síntesis</guisubmenu> <guisubmenu>Synth_AMAN_PLAY</guisubmenu></menuchoice> y pulsando en un espacio vacío del módulo. Póngalo por debajo más o menos de la quinta línea, ya que añadiremos alguna otra cosa por encima. </para>
<para>El módulo tendrá un parámetro <parameter>title</parameter> (el puerto situado más a la izquierda), y <parameter>autoRestoreID</parameter> (al lado del puerto situado más a la izquierda) para su localización. Para rellenarlos, haga una doble pulsación en esos puertos, seleccione un valor constante y teclee <userinput>tutorial</userinput> en la casilla de edición. Pulse <guibutton>Aceptar</guibutton> para aplicar los cambios. </para>
<para>Seleccione <menuchoice><guimenu>Archivo</guimenu><guimenuitem>Ejecutar estructura</guimenuitem> </menuchoice>. No oirá absolutamente nada. El módulo de reproducción necesita la entrada de información. Cuando ya haya escuchado un poco el silencio, pinche en <guibutton>Aceptar</guibutton> y vaya al paso 2. </para>
<para>Cree un módulo Synth_WAVE_SIN (desde <menuchoice> <guimenu>Módulos</guimenu> <guimenuitem>Síntesis</guimenuitem> <guimenuitem>Formas de onda</guimenuitem></menuchoice>) y colóquelo encima del módulo Synth_AMAN_PLAY (deje una línea en blanco en el medio). </para>
<para>Como ve, se produce una salida, pero requiere un <guilabel>pos</guilabel> como entrada. En primer lugar enviemos la salida a los altavoces. Pinche en el puerto <guilabel>out</guilabel> de Synth_WAVE_SIN y después en el puerto <guilabel>left</guilabel> de Synth_AMAN_PLAY. Voila, se han conectado los dos módulos. </para>
<para>Los osciloscopios de &arts; no requieren una frecuencia como entrada, pero sí una posición en la onda. La posición debe estar entre 0 y 1, lo que coloca al objeto estándar Synth_WAVE_SIN en el rango 0..2*pi. Para generar valores oscilantes a partir de una frecuencia, se utilizan los módulos Synth_FREQUENCY. </para>
<para>Cree un módulo Synth_FREQUENCY (desde <menuchoice> <guimenu>Módulos</guimenu> <guimenu>Síntesis</guimenu> <guimenu>Oscilación y modulación</guimenu> </menuchoice>) y conecte su salida «pos» a la entrada «pos» del módulo Synth_WAVE_SIN. Dele al puerto de frecuencia del generador de frecuencias un valor constante de 440. </para>
<para>Seleccione <menuchoice><guimenu>Archivo</guimenu><guimenuitem>Ejecutar estructura</guimenuitem></menuchoice>. Escuchará una onda sinusoidal de 440 Hz en uno de sus altavoces. Cuando ya la haya escuchado, pinche en <guibutton>Aceptar</guibutton> y vaya al paso 3. </para>
<para>De acuerdo, sería mejor escuchar la onda en ambos altavoces. Conecte también el puerto derecho de Synth_PLAY al valor de salida de Synth_WAVE_SIN. </para>
<para>Cree un objeto Synth_SEQUENCE (desde <menuchoice><guimenu>Módulos</guimenu> <guisubmenu>Síntesis</guisubmenu><guisubmenu>Midi + Secuenciado</guisubmenu></menuchoice>). Debería estar en la parte superior de la pantalla. Si necesita más espacio, puede mover los otros módulos seleccionándolos (para seleccionar varios módulos utilice la tecla &Shift;) y arrastrándolos a otro lugar. </para>
<para>Ahora conecte la salida de frecuencia de Synth_SEQUENCE a la entrada de frecuencia del módulo Synth_FREQUENCY. Después especifique un valor constante de 0,13 como velocidad de la secuencia (la velocidad es el puerto más a la izquierda). </para>
<para>Ahora vaya al puerto más a la derecha (secuencia) de Synth_SEQUENCE e introduzca como valor constante <userinput>A-3;C-4;E-4;C-4;</userinput> esto especifica una secuencia. Hay más información en el capítulo Referencia de los módulos. </para>
<para>Synth_SEQUENCE realmente <emphasis>necesita</emphasis> una secuencia y la velocidad. Sin eso es probable que se produzcan errores. </para>
<para>Seleccione <menuchoice><guimenu>Archivo</guimenu><guimenuitem>Ejecutar estructura</guimenuitem></menuchoice>. Escuchará la reproducción de una bonita secuencia. Cuando ya la haya disfrutado, pulse <guibutton>Aceptar</guibutton> y vaya al paso 4. </para>
<para>Cree un módulo Synth_PSCALE (en <menuchoice><guimenu>Módulos</guimenu> <guisubmenu>Síntesis</guisubmenu> <guisubmenu>Envoltorios</guisubmenu> </menuchoice>). Desconecte el valor de salida de la onda sinusoidal mediante una doble pulsación del ratón y eligiendo <guilabel>no conectado</guilabel>. Conecte: </para>
<para>Cómo funciona: el módulo Synth_SEQUENCE proporciona información adicional sobre la posición de la nota que se está reproduciendo en ese momento, de tal forma que 0 significa que acaba de comenzar y 1 que ha finalizado. El módulo Synth_PSCALE escala el transmisión de sonido que pasa por él desde un volumen 0 (silencio) hasta 1 (volumen original) y nuevamente a 0 (silencio), de acuerdo con la posición. La posición en la que se produce el pico de audio se puede dar como pos. 0,1 significa que después de que se haya reproducido el 10% de la nota, el volumen alcanzará el máximo, y comenzará a descender en ese punto. </para>
<para>Seleccione <menuchoice><guimenu>Archivo</guimenu><guimenuitem>Ejecutar estructura</guimenuitem></menuchoice>. Escuchará la reproducción de una bonita secuencia. Cuando ya la haya disfrutado, pulse <guibutton>Aceptar</guibutton> y vaya al paso 5. </para>
<para>Empiece ejecutando la estructura. Como esperaba, no escuchará nada, ... no todavía. </para>
<para>Vuelva a la estructura que contiene el módulo Synth_WAVE_SIN y reemplace el módulo Synth_AMAN_PLAY por un Synth_BUS_UPLINK, y déle el nombre 'audio' (o 'pepe' si lo desea). Para borrar módulos selecciónelos y escoja en el menú <menuchoice><guimenu>Editar</guimenu> <guimenuitem>Eliminar</guimenuitem></menuchoice> (o pulse la tecla <keycap>Supr</keycap>). </para>
<para>Pulse <menuchoice><guimenu>Archivo</guimenu><guilabel>Ejecutar estructura</guilabel></menuchoice>. Escuchará la secuencia con notas escaladas, transportadas a través el bus. </para>
<para>Si desea averiguar por qué algo como ésto puede llegar a ser útil, pulse <guibutton>Aceptar</guibutton> (en el &arts-builder; que esté ejecutando el bloque Synth_SEQUENCE, puede dejar los otros que se estén ejecutando) y vaya al paso 6. </para>
<para>Elija <menuchoice><guimenu>Archivo</guimenu><guimenuitem>Renombrar</guimenuitem> </menuchoice> estructura del menú de artsbuilder que contiene el bloque Synth_SEQUENCE, y llámelo tutorial. Pulse <guibutton>Aceptar</guibutton>. </para>
<para>Inicie otro &arts-builder; y elija <menuchoice><guimenu>Archivo</guimenu><guimenuitem>Cargar</guimenuitem> </menuchoice>, y cargue el tutorial de nuevo. </para>
<para>Ahora puede seleccionar <menuchoice><guimenu>Archivo</guimenu><guimenuitem>Ejecutar estructura</guimenuitem></menuchoice> en ambos &arts-builder;s obteniendo esa estructura. Escuchará dos veces la misma cosa. Dependiendo del momento en el que empiece sonará mejor o peor. </para>
<para>Otra cosa que puede ser útil hacer en este momento es: inicie &noatun;, y reproduzca algún <literal role="extension">mp3</literal>. Inicie &artscontrol;. Vaya a <menuchoice><guimenu>Ver</guimenu><guimenuitem>Ver gestor de audio</guimenuitem></menuchoice>. Lo que verá será &noatun; y su estructura de reproducción «tutorial» reproduciendo algo. Lo mejor que puede hacer es: doble pulsación en &noatun;. Obtendrá una lista de los buses disponibles. ¿Lo ve? Puede asignar &noatun; para enviar la salida a través de el bus de audio que su estructura de reproducción proporciona. </para>
<para>Finalmente, ahora debería ser capaz de transformar su onda sinusoidal en un instrumento real. Ésto sólo tiene sentido si tiene algo que le ayude a enviar eventos &MIDI; a &arts;. Describiré aquí como puede usar algún teclado externo, pero un bus midi enterado de la secuencia como &brahms; funcionará mejor. </para>
<para>En primer lugar, limpie su escritorio de tal modo que solo tenga un &arts-builder; con la estructura de onda sinusoidal corriendo (no ejecutándose). Entonces, vaya tres veces a <menuchoice><guimenu>Puertos</guimenu><guisubmenu>Crear señal de audio de entrada</guisubmenu></menuchoice>, y tres veces a <menuchoice><guimenu>Puertos</guimenu> <guisubmenu>Crear señal de audio de salida</guisubmenu></menuchoice>. Coloque los puertos en algún sitio. </para>
<para>Vaya a <menuchoice><guimenu>Puertos</guimenu><guilabel>Cambiar posiciones/nombres</guilabel></menuchoice> y renombre los puertos a frecuencia, velocidad, pulsado, izquierdo, derecho y hecho. </para>
<para>Finalmente, puede borrar el módulo Synth_SEQUENCE, y conectar el puerto de entrada frecuencia de la estructura al puerto frecuencia de Synth_FREQUENCY. Pero..., ¿qué hacemos con pos?</para> <para>No existe esto, porque no hay algoritmo en el mundo que le permita predecir cuando el usuario va a soltar la nota que acaba de pulsar en el teclado midi. Por lo que es mejor tener un parámetro 'pulsado' en su lugar que indique si el usuario aún mantiene la tecla pulsada. (pulsado = 1: la tecla aún está pulsada, pulsado = 0: tecla suelta). </para>
<para>Ésto significa que el objeto Synth_PSCALE también debe ser sustituído. Introduzca un Synth_ENVELOPE_ADSR en su lugar (desde <menuchoice><guimenu>Módulos</guimenu><guisubmenu>Síntesis</guisubmenu> <guisubmenu>Envoltorios</guisubmenu></menuchoice>). Conecte: </para>
<para>Establezca los parámetros ataque a 0.1; desintegrar a 0.2, mantener a 0.7, liberar a 0.1. </para>
<para>Otra cosa en la que deberá pensar es que la estructura instrumental debería saber de alguna forma cuándo está preparada para reproducir y limpiar, ya que de otra forma podría no parar nunca aunque se haya liberado la nota. Afortunadamente, el envoltorio ADSR sabe cuándo se debe parar, escalando la señal a cero un momento después de que se haya liberado la nota. </para>
<para>Esto se indica asignando 1 a la salida. Por tanto, conecte ésto a la salida de la estructura. La estructura se eliminará tan pronto como suba a 1. </para>
<para>Renombre su estructura como tutorial_de_instrumentos (desde <menuchoice><guimenu> Archivo</guimenu><guimenuitem>Renombrar estructura</guimenuitem></menuchoice>) Entonces, guárdela usando guardar como (el nombre predeterminado debería ser ahora tutorial_de_instrumentos).</para><para>Inicie artscontrol y vaya a <menuchoice><guimenu>Ver</guimenu><guimenuitem>Administrador midi</guimenuitem></menuchoice>, y escoja <menuchoice><guimenu>Añadir</guimenu><guimenuitem>Salida midi de síntesis de aRTs</guimenuitem></menuchoice>. Finalmente, debería ser capaz de seleccionar su instrumento (tutorial) aquí. </para>
<para>Abra una terminal y teclee <userinput><command>midisend</command></userinput> . Verá cómo <command>midisend</command> y el instrumento se escuchan ahora en el administrador &MIDI; de &arts;. Después de seleccionar ambos y pulsar <guibutton>conectar</guibutton>, habremos terminado. Tome su teclado y empiece a reproducir (por supuesto debe estar conectado a su ordenador). </para>
<para>Intente usar otros elementos diferentes de una onda SIN. Cuando introduce una onda TRI, podrá pensar que el sonido no es demasiado bueno. Pero intente enlazar un filtro SHELVE_CUTOFF después de la onda TRI para cortar las frecuencias superiores a una dada (intente algo como 1.000 Hz, o mejor, dos veces la frecuencia de entrada, o la frecuencia de entrada+200Hz o algo así). </para>
<para>Intente posprocesar la señal después de que salga del bus el enlace descendente. Puede, por ejemplo, mezclar una versión retrasada de la señal con la original para obtener un efecto de eco. </para>
<para>Intente utilizar la configuración de la velocidad (es la fuerza con la que se pulsará la nota, podríamos decir que es el volumen). El efecto especial se produce siempre que no sólo se modifique el volumen de la señal resultante, sino también el sonido del instrumento (por ejemplo, el corte de frecuencia). </para>
<para>Si ha creado algo realmente bueno, por favor, considere la opción de enviarlo a la página web de &arts;. O para inclusiones en la siguiente versión. </para>
<para>&arts-builder; viene con bastantes ejemplos, que pueden ser abiertos a través de <menuchoice><guimenu>Archivo</guimenu><guimenuitem>Abrir Ejemplo...</guimenuitem></menuchoice> Algunos de ellos están en la carpeta, y otros (que por alguna razón no funcionan en la versión actual) están abandonados en la carpeta todo. </para>
<para>Los ejemplos están divididos en varias categorías: </para>
<para>Ejemplos autónomos ilustrando cómo usar cada uno de los los módulos built-in de arts (llamados <filename>example_*.arts</filename>). Éstos envían normalmente alguna salida a la tarjeta de sonido. </para>
<para>Instrumentos creados desde módulos de arts de niveles más bajos (llamados <filename>instrument_*.arts</filename>). Éstos siguen una convención estándar para los puertos de entrada y salida, por lo que pueden ser usados por el administrador &MIDI; en &artscontrol;. </para>
<para>Genera un tono de onda sinusoidal a 440Hz en el canal izquierdo y un tono de onda sinusoidal a 880Hz en el canal derecho y lo envía a la salida de la tarjeta de sonido. Se referencia en la documentación de &arts;. </para>
<para>Genera un tono dual al producir ondas sinusoidales a 697 y 1.209 Hz, escalándolas por 0.5 y añadiéndolas juntas. Éste es el tono DMTF para el dígito «1» en un teclado de teléfono. </para>
<para>Utiliza un desplazamiento automático para moldear una onda sinusoidal de 400 Hz desplazándola entre los altavoces izquierdo y derecho a una tasa de 2 Hz. </para>
<para>Enlaces descendentes a un bus llamado «Bus» y enlaces ascendentes al bus «salida_tarjeta_sonido» con los canales izquierdo y derecho reservados. </para>
<para>Enlaces descendentes a un bus llamado «Retraso», enlaces ascendentes al canal derecho con un retardo de 0,5 segundos, y el canal derecho sin cambios. Puede utilizar &artscontrol; para conectar el efecto a un reproductor de sonido y observar el resultado. </para>
<para>Ésto usa Synth_CAPTURE_WAV para guardar una onda sinusoidal a 400Hz en un archivo wav. Ejecute el módulo durante unos segundos y luego examine el archivo creado en <filename class="directory">/tmp</filename>. Puede reproducir el archivo con un reproductor como <application>kaiman</application>. </para>
<para>Usa el módulo Data para generar un flujo constante de valor «3» y lo envía a un módulo de depuración para mostrarlo periódicamente. También contiene un módulo Nil, ilustrando cómo puede usarse para no hacer nada. </para>
<para>Conecta el efecto freeverb desde un bus de enlace descendente a un bus enlace de salida. Puede usar artscontrol para conectar el efecto a un reproductor de sonido y observar el resultado. </para>
<para>Esta estructura combina los dos canales de un bus en otro, lo pasa a través del filtro Moog VCF, y lo envía fuera a través del bus salida_tarjeta_sonido. </para>
<para>La estructura pasa el canal izquierdo de los datos de la tarjeta de sonido a través del efecto modificador del tono. Ajuste el parámetro velocidad para variar el efecto. </para>
<para>La estructura pasa un generador de ruido blanco a través de un filtro RC y la da salida a través de la tarjeta de sonido. Observando la pantalla FFT scope en artscontrol puede ver cómo cambia respecto a una onda de ruido sin filtro. </para>
<para>Esta estructura pasa un ruido blanco a través del filtro de descenso de corte y lo da salida a través de la tarjeta de sonido. Observando la pantalla FFT scope en artscontrol puede ver cómo cambia respecto a una onda de ruido sin filtro. </para>
<para>Este ejemplo mezcla ondas sinusoidales de 440 y 880 Hz usando un fundido cruzado. Ajuste el valor del porcentaje de entrada del fundido cruzado desde -1 a 1 para controlar la mezcla de las dos señales. </para>
<para>Ilustra el módulo reproducción de onda. Necesitará introducir la ruta completa a un archivo <literal role="extension">.wav</literal> en el parámetro de nombre de archivo. </para>
<para>Muestra el módulo de añadido múltiple, que acepta cualquier número de entradas. Suma tres módulos de datos que producen de entrada 1, 2 y 3, y muestra el resultado 6. </para>