User manual/es

From Psychosynth

Este documento constituye el manual de usuario de Psychosynth, que debe resolver las dudas en el uso de los programas que provee el paquete Psychosynth.

Si aún no tienes claro de qué va esto, pásate por la sección sobre.

Contents

Instalación

El método de instalación del software dependerá del sistema que estés utilizando. Puedes encontrar manuales actualizados de los distintos métodos de instalación en la sección de documentación.

Interfaz 3D

Psychosynth provee distintos programas que permiten manipular el sintetizador de forma visual o comunicarse entre sí. Por ahora existen dos interfaces, una gráfica en tres dimensiones y otra por línea de comandos.

Para ejecutar la interfaz 3D escribiremos el comando:

psynth3d

Una vez hecho esto debe aparecernos una ventana como esta:

Pantalla inicial del programa.

En la parte de abajo aparecen una serie de botones que nos permitirán desplegar distintas ventanas para controlar el programa. Por este orden, los botones son:

  • Selector de objetos: Permite elegir objetos para colocar en la mesa.
  • Grabadora de sonidos: Permite grabar en un fichero todo el sonido que se está generando.
  • Sesiones de red: Permite conectar el sintetizador con otros a través de la red.
  • Panel de información: Muestra distintos paneles que muestran información sobre el programa y alguna ayuda.
  • Salir: Para salir del programa.

En el centro de la pantalla veremos una especie de mesa redonda azul, que es dónde colocaremos objetos para crear y manipular el sonido, como veremos más adelante.

Veamos ahora como manejarnos en este entorno tridimensional.

La cámara

Lo primero que debemos hacer para encontrarnos a gusto en el programa es aprender a manipular la cámara.

Aunque en un principio pueda parecer que el entorno tridimensional representa únicamente un caramelo visual, lo cierto es que aporta de forma importante control sobre el sintetizador. En concreto, significa una forma intuitiva de ajustar el grado de control sobre los objetos: cuando el zoom está alejado podremos ver muchos objetos y mover objetos entre puntos distantes. En cambio cuando queremos modificar un parámetro de un objeto con precisión, nos vendrá bien hacer zoom para que los movimientos del raton representen distancias más cortas y especialmente se gane resolución en la modificación del parámetro.

Sobre los movimientos que podemos hacer sobre la cámara, destacamos:

  • Mover: Para mover la cámara basta con hacer click con el boton izquierdo del ratón sobre un punto de la mesa. De esta forma arrastraras todo el entorno con el ratón. También podemos centrar la cámara en un punto presionando la tecla shift mientras pulsamos con el boton izquierdo el punto de la mesa que queremos centrar.
  • Rotar: Podemos rotar la cámara en torno al punto en que estamos centrados moviendo el ratón mientras tenemos pulsando us botón izquierdo sin que esté seleccionado ningún objeto.
  • Zoom: Podemos hacer zoom sobre el punto que tenemos centrado, bien usando la rueda del ratón o bien pulsando el botón central del ratón mientras se mueve el ratón hacia adelante y hacia atrás.

Creando sonidos

Para crear sonidos lo que haremos será colocar objetos sobre la mesa. El punto central representa la salida de audio principal, que será normalmente nuestro altavoces.

Para colocar un objeto sobre la mesa haremos click sobre el primer botón de los que están en la parte de abajo. En ese momento aparecerá el selector de objetos, dónde aparecerán muchos botones, organizados por categorías, que nos permiten colocar los distintos objetos de síntesis. Ya que esta biblioteca de objetos está creciendo rápidamente en la actualidad aún no existe una documentación sobre qué hace cada elemento. Aún así, la naturaleza del programa le permitirá experimentar rapidamente con cada objeto obteniendo qué hace cada uno y cómo interactúan entre sí, aprendiendo sobre síntesis de audio de una forma muy rápida, intuitiva y divertida.

Cuando hagamos click sobre uno de los botones del selector aparecerá un circulo amarillo que seguirá el ratón, indicándonos dónde vamos a colocar el objeto. Cuando hagamos click en algun punto de la mesa aparecerá el objeto en ese sitio. Si, por ejemplo, ponemos un oscilador sinusoidal, automáticamente se conectará con el centro emitiendo un tono puro de 220 Hz, es decir un la en la tercera octava. La situación visualmente sería así:

Psychosynth emitiendo un tono puro.

A lo largo de la conexión entre dos objetos veremos la onda que se está emitiendo a través de ella en tiempo real, de color verde si es una señal sonora y en color amarillo si es una señal de control.

Modificando el sonido

Los objetos se conectan entre sí automáticamente. Dos objetos se conectarán entre sí simpre que tengan una salida y una entrada compatible y que esos puertos de salida y entrada no estén ya usados en otra conexión más corta. De esta forma podemos modificar la topología de nuestro sintetizador de forma muy rápida e intuitiva, basta con mover los objetos que queremos conectar más cerca.

Para mover un objeto pinchamos sobre el con el botón izquierdo del ratón y lo arrastramos por la mesa.

Por otro lado, cada objeto tiene una serie de parámetros. Por ejemplo, un oscilador como el que colocamos antes tiene dos parámetros la frecuencia y la amplitud o volúmen.

La frecuencia es en este caso el parámetro principal del objeto y podemos ver su valor relativo en el indicador que rodea al objeto por su parte derecha. Para modificar el parámetro principal basta con, teniendo el objeto seleccionado, mover el ratón alrededor del mismo mientras mantenemos pulsado el botón derecho del ratón, con lo que rotaremos el objeto.

El otro parámetro -en éste caso la amplitud- aparece representado en el deslizador que existe al otro lado del objeto. Para modificarlo haremos click sobre el punto que aparece a la izquierda del objeto y lo moveremos a lo largo del deslizador.

A menudo existen otros parámetros que no están representado directamente el objeto, a veces porque no son muy importantes y otras veces porque aún no hemos decidido cómo representarlos visualmente. Por ejemplo, el parámetro principal de un sampler es la velocidad de reproducción y el secundario la amplitud, pero también podemos manipular el tempo -es decir, variar la velocidad de reproducción sin cambiar su tonalidad- y el pitch -hacer que se reproduzca en una tonalidad distinta sin variar la velocidad a la que se reproduce. Para obtener un listado de todos los parámetros de un objeto, pudiendo ver y modificar su valor numéricamente, debemos pulsar la tecla e con lo que se mostrará una ventana con todos los parámetros.

Un ejemplo de como se vería esta ventana, esta vez sobre una escena más compleja:

Screenshot-psychosynth3d-2.png

Para quitar un objeto de la mesa pulsarelos la tecla suprimir.

También podemos seleccionar multiples objetos a la vez, lo cual es muy interesante si queremos bien modificar el parámetro principal de todos ellos a la vez o bien borrarlos todos a la vez o tal vez moverlos todos la vez. Para ello, mantendremos pulsada la tecla shift mientras seleccionamos los objetos. Para deseleccionar un objeto del grupo pulsaremos la tecla control mientras hacemos click en el objeto.

Por último, también podemos callar temporalmente una conexión haciendo click sobre ella. Entonces se pondrá de color negro y no se actualizarán más los objetos que cuelguen de esa conexión en la jerarquía desde el centro, hasta que no hagamos de nuevo click en esa conexión.

Grabando el sonido

Para grabar el sonido de una sesión no hay más que hacer click sobre el botón rojo que aparece el segundo en el menú de abajo. Aparecerá una ventana en la que aparece el nombre del fichero en el que se guardará el sonido y un botón start.

Ventana de grabación.

Podemos modificar el nombre del fichero a crear, dónde podemos incluir cualquier ruta relativa al directorio de trabajo actual. Para empezar a grabar el sonido hacemos click en start y cuando hayamos acabado hacemos click en stop.

Sesiones en red

Para conectar varios sintetizadores entre sí debemos establecer un ordenador de servidor y otro o varios harán de clientes. Durante la sesión en red todos los eventos se sincronizarán entre los sintetizadores de la sesión, sin embargo por ahora desconocerán los eventos ocurridos antes de realizarse la conexión. Por ello, se recomienda tener la mesa vacía antes de que se conecten todos los equipos.

Con el tercer botón del menu inferior abrimos la ventana para el manejo de las sesiones de red, que tiene dos pestañas, client y server.

Primero, en el ordenador que queramos tener de servidor, nos dirigimos a la pestaña server. Ahí podemos modificar el puerto en el que escucha, aunque normalmente usaremos el puerto por defecto. Cuando le demos a start el servidor estará dispuesto para recibir conexiones y en el reacuadro que hay en la ventana aparecerá el mensaje Server listening. En ese mismo recuadro se nos notificará cuando alguien se conecta o desconecta y eventos de esa índole.

El resto de ordenadores tendrán que usar la pestaña Client. Allí deben introducir la dirección IP del ordenador servidor en dónde dice Remote host y el puerto en Remote port. También podemos modificar el puerto en el que escuchará el cliente en el puerto Local port. Una vez estemos preparados utilizaremos el botón start. Debe aparecer primer un mensaje que ponga Connecting... y cuando la conexión se haya relizado con éxito veremos el mensaje Connection accepted o algún mensaje de error en caso contrario.

Screenshot-psychosynth3d-4.png

Editando las opciones

El programa tiene diversas opciones que podemos editar. Para ello, haremos click en el botón que es una caja de herramientas en el menú inferior.

A continuación sigue una descripción de las opciones que encontraremos en cada categoría:

Audio

Aquí podremos modificar las opciones sobre la generación del sonido. Algunas de estas son:

Sample rate: El número de muestras de audio que se generarán por segundo. Cuanto más alto sea éste valor mayor calidad pero mayor necesidad de computación, se recomienda dejar el valor por defecto. Notar también que la mayoría de tarjetas de sonido sólo admiten algunos valores determinados.

Buffer size: Es el número de samples que se computará en un bloque dijo. Influye directamente sobre la latencia, que puede calcularse como:

latencia = buffer_size / sample_rate segundos 

Casi todas las tarjetas de sonido necesitan que este número sea potencia de dos. Notar que número muy bajos causarán un mayor consumo de CPU y potencialmente buffer underruns que causarán molestos clicks en situaciones de mucha carga, mientras que valores muy altos harán que los parámetros que cambiemos tarden en transpasarse al sistema de generación de audio.

Channels: El número de canales de audio. Por defecto se usa sonido estéreo.

Output: Permite elegir el sistema de salida. Las ventajas de uno y otro dependen de la plataforma en la que estemos y del uso que se le vaya a dar al programa. Normalmente según el sistema de salida que elijamos tendremos disponibles algunas opciones específicas de éste, como el dispositivo de salida.

Video

En esta sección podemos modificar opciones relativas a la pantalla de vídeo del entorno tridimensional. En concreto:

width y height: El ancho y alto de la ventana en píxeles.

fullscreen: Marcaremos esta opción cuando queramos ejecutar el programa en pantalla completa.

Notar que el botón apply no funciona en sistemas con GLX debido a problemas en la versión de la biblioteca Ogre.

FPS: La tasa de actualización de la pantalla en muestras por segundo. Cuanto más alta más CPU consumirá y cuanto más baja más "a golpes" irá la animación.

Paths

Aquí podemos configurar las rutas dónde el programa busca distintas cosas. Por ahora sólo podemos cambiar dónde se buscan los samples, es decir, los ficheros de audio que podremos encontrar en la sección samples del selector de objetos.

Una vez hayamos terminado de modificar la lista de rutas de búsqueda hagamos click en refresh para que se actualice la lista de samples que hay en el selector de objetos.

Notar que el programa sólo encontrará los samples que estén en formato wav, au, aiff u ogg.

Interfáz por linea de comandos

También existe una versión del sintetizador que funciona por linea de comandos. En esa versión no podremos modificar el entorno directamente, pero lo podemos utilizar como servidor de una sesión de red, utilizando la opción --server o como cliente de una sesión de red, utilizando --client.

En ambos casos podremos escuchar también todo el sonido que se está generando, por lo que es un sintetizador real, sólo que el estado de la escena no puede visualizarse y sus parámetros sólo pueden modificarse a través de la red.

Para obtener información completa de las opciones disponibles usa --help.