Contenidos

1 Introducción al Linux
 1.1 Un poco de historia
 1.2 Portabilidad
 1.3 Distribuciones
 1.4 El kernel
 1.5 Las aplicaciones
 1.6 Multitarea
 1.7 Multiusuario
 1.8 X Window
 1.9 El Shell
 1.10 Accediendo al sistema
 1.11 El sistema de ficheros
 1.12 El comando man
 1.13 Algunos comandos básicos para movernos por el sistema de ficheros
 1.14 Lanzando el sistema X-Window
 1.15 ¿Background o foreground?
 1.16 Abortando un proceso
 1.17 Editando ficheros ASCII
 1.18 Transferencia de ficheros con el exterior
2 OSS y ALSA
 2.1 OSS (Open Sound System)
 2.2 Los ficheros de dispositivos de audio
 2.3 OSS está actualmente “deprecated”
 2.4 ALSA (Advanced Linux Sound Architecture)
 2.5 Las ventajas de ALSA frente a OSS
 2.6 OK. ALSA mola. ¿Cómo se instala?
3 Grabación y reproducción de audio
 3.1 El Teorema del Muestreo
 3.2 La frecuencia de muestreo
 3.3 El modelo de cuantificación
 3.4 La precisión de las muestras
 3.5 El número de canales
 3.6 La aplicación ¨arecord¨
 3.7 La aplicación ¨aplay¨
 3.8 ¿Cómo infuye la frecuencia de muestreo en la calidad del audio?
 3.9 ¿Cómo influye el modelo de cuantificación en la calidad del audio?
 3.10 ¿Cómo influye la precisión de las muestras en la calidad del audio?
 3.11 La aplicación ¨alsamixer¨
4 Formatos de audio
 4.1 Algoritmos de codificación
  4.1.1 PCM (Pulse Code Modulation)
  4.1.2 DPCM (Differential Pulse Code Modulation)
  4.1.3 ADPCM (Adaptive Differential Pulse Code Modulation)
  4.1.4 LPC (Linear Predictive Coder)
  4.1.5 1.5 CELP (Code Excited Linear Prediction)
  4.1.6 PAC (Perceptual Audio Coding)
 4.2 Audio codecs
  4.2.1 G.7xx
  4.2.2 Speex
  4.2.3 ATRAC (Adaptive TRansform Acoustic Coding)
  4.2.4 MPEG (Motion Pictures Experts Group) Audio
  4.2.5 Dolby Digital (AC-3)
  4.2.6 DTS (Digital Theatre System) Coherent Acoustics
  4.2.7 WMA (Windows Media Audio)
  4.2.8 Vorbis
  4.2.9 FLAC (Free Lossless Audio Codec)
 4.3 Streaming de audio
  4.3.1 ASF (Active Straming Format)
  4.3.2 QuickTime
  4.3.3 RealAudio
  4.3.4 SHOUTcast
  4.3.5 Icecast
 4.4 Formatos de audio
  4.4.1 RAW (”.raw”)
  4.4.2 Sun AU (”.au”)
  4.4.3 Creative VOC (”.voc”)
  4.4.4 Amiga IFF (”.iff”)
  4.4.5 Macintosh AIFF (”.aif” — ”.aiff”)
  4.4.6 Microsoft WAVE (”.wav”)
  4.4.7 MPEG MP3 (”.mp3”)
  4.4.8 Windows WMA (”.wma”)
  4.4.9 OGG (”.ogg”)
 4.5 Y ahora qué, ... después de tanto rollo
5 Volumen de una señal de audio
 5.1 El clipping
 5.2 ¿Cómo evitar el clipping?
 5.3 Programación en Java
  5.3.1 Estructura de un programa escrito en Java
  5.3.2 Compilación y ejecución de un programa escrito en Java
 5.4 La entrada y la salida estándar
 5.5 El programa VolMeter
  5.5.1 Entradas
  5.5.2 Controles
  5.5.3 Salidas
  5.5.4 VolMeter.java
 5.6 Sobre la compilación
  5.6.1 Compilación de VolMeter
 5.7 Ejemplos de utilización
6 Espectro de una señal de audio
 6.1 ¿Para qué sirve el espectro de una señal de audio?
 6.2 La Transformada de Fourier Discreta
 6.3 Relación entre la frecuencia de muestreo y la ventana de análisis
 6.4 Minimizando la distorsión provocada por la duración limitada de la ventana de análisis
 6.5 El programa RTASA
  6.5.1 Entradas
  6.5.2 Controles
  6.5.3 Salidas
  6.5.4 RTASA.java
  6.5.5 ElasticityControl.java
  6.5.6 FFT.java
  6.5.7 Window.java
  6.5.8 YScale.java
 6.6 Sobre la compilación
  6.6.1 Compilación de RTASA
 6.7 Ejemplos de utilización
7 Usando la Red
 7.1 Programación en C
  7.1.1 Estructura de un programa escrito en C
  7.1.2 Los ficheros “cabecera”
  7.1.3 Compilación y ejecución de un programa escrito en C
 7.2 La entrada y la salida estándar
 7.3 Sockets UDP y TCP
 7.4 La aplicación send
  7.4.1 send.c
 7.5 La aplicación receive
  7.5.1 receive.c
 7.6 La aplicación delay
  7.6.1 delay.c
 7.7 Sobre la compilación
  7.7.1 Compilación de send
  7.7.2 Compilación de receive
 7.8 Ejemplos de utilización
8 Edición, procesamiento y mezcla de audio
 8.1 Audacity
 8.2 Grabación multipista
 8.3 Inténtelo usted mismo
9 Modulación de señales
 9.1 El modulador de señales
 9.2 El espectro de una señal de audio
 9.3 Operaciones en el dominio del tiempo y de la frecuencia
 9.4 Modulación = desplazamiento en la frecuencia del espectro
 9.5 Usando threads para hacer el programa interactivo
 9.6 Control de los parámetros mediante un programa externo
 9.7 Clientes y servidores
 9.8 La interacción entre los clientes y el servidor
 9.9 El código de modulator.c
 9.10 El código de FreqControl.java
 9.11 El código de dc.c
 9.12 Sobre la compilación
  9.12.1 Compilación de dc
  9.12.2 Compilación de modulator
  9.12.3 Compilación de FreqControl
 9.13 Ejemplos de utilización