Curso 2015-16

Procesado de Audio en Tiempo Real

Titulación: Código: Tipo:
Grado en Ingeniería Informática 21492 Optativa
Grado en Ingeniería Telemática 21768 Optativa
Grado en Ingeniería en Sistemas Audiovisuales 21623 Obligatoria 4º curso

 

Créditos ECTS: 4 Dedicación: 100 horas Trimestre:

 

Departamento: Dpto. de Tecnologías de la Información y las Comunicaciones
Coordinador: Sergi Jordà
Profesorado:

Sergi Jordà, Angel Faraldo, Daniel Gómez

Idioma:

Inglés (material y clases)

Horario:
Campus: Campus de la Comunicación - Poblenou

 

Presentación de la assignatura

La asignatura "Procesamiento de Audio en Tiempo Real" es obligatoria en el 4º curso del grado en Ingeniería de Sistemas Audiovisuales. Esta asignatura puede ser entendida como la continuación de "Señales y Sistemas" (asignatura común a los tres grados, impartida durante los dos primeros trimestres del segundo curso) y de "Procesamiento de Sonido y Música", asignatura de 3º curso del grado en Ingeniería de sistemas Audiovisuales.

La asignatura en relación a los postgrados y másters del departamento

Esta asignatura constituye también una excelente introducción para varias asignaturas de máster en Tecnologías del Sonido y la Música (SMC), ya que cubre conceptos, herramientas y tecnologías, que en dichos másters se dan por conocidos, o se ven muy rápidamente, y que hasta ahora no tenían cabida en los anterior cursos del grado de ingeniería.

Procesamiento de Audio en Tiempo Real (4º curso AV) - >

Objetivos de aprendizaje

Características diferenciales de la generación y procesado de audio, y de la interacción en tiempo real. Herramientas y lenguajes de programación para el procesamiento y la generación de audio en tiempo real.

 

Prerequisitos

Señales y Sistemas (2º curso COM) - > Procesamiento de Sonido y Música (3º curso AV) - > Procesamiento de Audio en Tiempo Real (4º curso AV)

Señales y Sistemas (8, COM, 2º curso, 1 y 2 t)
Números Complejos. Análisis de Fourier. Transformadas de Fourier discretas y continuas. Algoritmo de la Transformada Rápida de Fourier. Muestreo de Señales analógicas. Sistemas lineales. Filtrado de señal. Análisis y modelado del ruido.

Procesamiento de Sonido y Música (AV, 3º curso, 1 º t)
Análisis, transforma y síntesis digital de sonido. Representaciones temporales y frecuenciales de señal musicales. Transformada de Fourier en tiempo corto. Modelado espectral de señal musicales. Modelado sinusoidal más residual de señal musicales. Extracción de atributos perceptuales de las señales de sonido y música. Aplicaciones musicales basadas en el Procesado de audio.

Los estudiantes que cursen esta asignatura tendrán por tanto un conocimiento previo de los fundamentos informáticos de las tecnologías de musicales y de audio, de las técnicas de análisis y síntesis espectrales, así como de diferentes algoritmos para la generación y el procesamiento de señales de audio. Los estudiantes deberán tener también un conocimiento suficiente del inglés, ya que muy bien toda la documentación existente se encuentra en este idioma.

 

Competencias

Competencias transversales

Competencias específicas

Instrumentales

1. Capacidad de análisis y síntesis, abstracción y sistematización.

2. Resolución de problemas.

3. Capacidad de comprender información avanzada en lengua inglesa.

4. Capacidad de comunicarse con propiedad de forma oral y escrita en catalán, castellano o inglés, tanto ante audiencias expertas como inexpertas.

5. Capacidad de comprender y analizar los problemas tecnológicos ligados a la generación ya la modificación de contenidos en tiempo real.

Interpersonales

6. Trabajo en equipo.

7. Capacidad de crítica y autocrítica.

8. Exposición de los resultados obtenidos.

Sistémicas

9. Capacidad para integrar conocimientos y metodologías en la práctica.

10. Capacidad para trabajar autónomamente en la resolución de problemas.

11. Preocupación por la calidad.
  1. Entender las diferencias y matices del término “tiempo-real” en los diferentes ámbitos en los que se aplica (p.ej. computación, sistemas operativos, generación y procesado, interacción).
  2. Entender y saber utilizar y distinguir los conceptos de ciclo de control, latencia, granularitad (rate) de entrada y de salida y “jitter”, en aplicaciones a tiempo real.
  3. Conocer los protocolos MIDI y OSC.
  4. Conocer la historia, los principios básicos y las posibilidades de la síntesis y el procesado de sonido.
  5. Conocer algunos de las técnicas básicas de síntesis y de procesado de sonido, cómo han ido evolucionando a lo largo del tiempo, qué posibilidades aportan, y cómo se pueden programar.
  6. Entender las técnicas básicas del procesado espectral, y sus posibilidades
  7. Aprender un lenguaje de programación como por ejemplo Pure Data, para la generación y procesado de audio en tiempo real.

 

Evaluación

Para cursar con éxito la asignatura es necesario superar el nivel mínimo requerido a cada una de las competencias a desarrollar en la asignatura. Dado que la mayoría de las competencias se trabajan y evalúan de forma presencial y continua (en el aula) a lo largo de la asignatura, la asistencia a clase se considera imprescindible. También es clave para aprovechar la asignatura que el alumno mantenga una actitud activa. Esto significa que tiene que ser crítico con los aspectos tratados, haciendo sus propias reflexiones y manteniendo en todo momento interés y curiosidad sobre el material presentado.

La asignatura se supera teniendo un mínimo de 5 puntos como nota final. Esta nota final se calculará según las actividades y porcentajes que se muestran en la primera tabla. Dado que la asignatura se centra sobre todo en el proyecto, se reserva la posibilidad de no realizar examen final en el caso de los estudiantes que hayan asistido y participado activamente a las clases, y que hayan realizado las otras tareas con corrección. En este caso, los pesos de cada una de las actividades pasarían a ser los de la segunda tabla.

Peso de cada una de las activitades en la nota final (con examen)

Prácticas obligatorias           40%

Exposición proyecto            10%

Proyecto final                     20%
Examen final                       30%

 

Peso de cada una de las actividades en la nota final (sin examen)

 Prácticas obligatorias             60%

 Exposición proyecto               10%

 Proyecte final                        30%

 

La tabla siguiente sintetiza toda esta información

ActividadPrácticas y ejerciciosPresentación proyecto (WIP)Proyecto finalExamen

Valor de la evaluación (el primer valor corresponde con examen, el segundo sin)

 

40% [60%]

 10% [10%]  20% [30%]  30% [0]

Criterio de evaluación

Para aprobar estas prácticas hay que entregarlas acabadas según las consignas que se darán a las sesiones prácticas y de seminario Para aprobar la presentación es necesario obtener una nota superior o igual a 5. Se valorará los contenidos y la forma de la presentación oral, así como el documento que la acompañe Para aprobar el trabajo final es necesario obtener una nota superior o igual a 5 Para aprobar el examen es necesario obtener una nota superior o igual a 5
Requisitos mínimos para aprobar la asignatura (evaluación ordinaria) Asistencia y participación activa en las sesiones. Entrega de las prácticas acabadas. En caso contrario, el estudiante tendrá que realizar un examen final Es condición indispensable aprobar este trabajo (>=5) para poder hacer media. En caso contrario, el estudiante tendrá que realizar un examen final Es condición indispensable aprobar el trabajo (>=5) para poder hacer media En caso de realizar el examen, es condición indispensable obtener una nota superior o igual a 4 en el examen para poder hacer media
Requisitos mínimos para optar a la recuperación No recuperable No recuperable   Para presentarse a recuperación es necesario haber presentado todas las prácticas del cursoE n caso de no haber entregado alguna de las actividadesel alumno no podrá utilizar el período de recuperación
Activitades de recuperación     Corrección del trabajo presentado o elaboración de un nuevo trabajo Examen teórico
Requisitos mínimos para aprobar la asignatura (recuperación)     Aprobar el trabajo con una calificación mínima de 5 sobre 10 Aprobar el examen teórico con una calificación mínima de 5 sobre 10

 

 

 

Contenidos

La asignatura está organizada en un bloque teórico y un bloque práctico. A continuación se detallan los contenidos de cada unos de estos bloques.

Bloque Teórico

Introducción al tiempo real, arquitecturas de tiempo real y aspectos técnicos básicos: Que es y que no es el tiempo real. Órdenes de magnitud temporales y perceptuales, según los medios y los tipos de estímulo. El ciclo de control en detalle. Latencia. Granularitad de entrada y de salida. Jitter y estabilidad temporal. Modelos síncronos vs. asíncronos. Sistemas single-threated vs. multe-threaded. Métodos de captura de datos basados en “polling” vs. interrupciones. El tiempo real en la síntesis y el procesado de audio. Buffering.

Introducción a la síntesis de audio: Osciladores y formas de ola. Modulación y osciladores de baja frecuencia (*LFO). *Envelopants. Filtros. Waveshaping.

Protocolos musicales de control y sus aplicaciones: Control vs. audio. El protocolo MIDI. El protocolo Open Sound Control (OSC).

El Sampler y wavetable: Historia del sampler. Audio en memoria vs. audio en disco llevar. Pitch Shifting y looping.

Efectos de procesado basados en el tiempo: Live sampling. Delay lines. Feedback y comb filtering. Síntesis Karplus-*Strong. Líneas de retraso variables (flanger y chorus).

Procesado espectral: Introducción al procesado espectral. Aplicaciones básicas: ecualización, convolución, pitch-shifting, time-stretching… Análisis, clasificación y otras aplicaciones avanzadas. 

Bloque Práctico

Programación musical en tiempo real con un lenguaje del tipo visual data flow, como por ejemplo Pure Data

  1. Lenguajes de programación “data flow”. Programación basada en eventos. Flujo de control vs. flujo de audio. Scheduling, sincronía y gestión de threads. Objetos de entrada GUI. Encapsulación.
  2. Entrada de datos. Comunicación MIDI y OSC. Técnicas de filtrage de datos. Ejercicios básicos de control de flujo.
  3. Introducción a la síntesis de audio. Modulación y síntesis subtractiva.
  4. Procesado de audio. “Live electronics”. Efectos basados en el tiempo. Retrasos.
  5. Procesado espectral y análisis avanzado de audio. Extracción de pitch y seguidores de envolventes. Análisis y procesado espectral.


Software empleado en las prácticas

Se utilizará el software Pure Data. Este software es open-source y multe-plataforma, por el que las prácticas podrán ser realizadas bajo Linux, Windows o MacOSX. Esta decisión se ha tomado en el entendido que a los estudiantes no se los tendría que exigir la realización de prácticas usando software propietario o de pago, pues esto obligaría que sólo pudieran trabajar en los ordenadores de la universidad (que paga licencias para estos programas), con la consiguiente restricción en en cuanto a posibilidades de trabajar cómodamente en las prácticas.

 

Metodología

Esta asignatura combina sesiones magistrales de explicación del profesor, con el trabajo individual y en grupo realizado por los alumnos en sesiones de grupo media o pequeño. En particular, el trabajo se ha organizado de la forma siguiente:

Sesiones magistrales de presentación: las realizan los profesores en la clase de teoría, abordándose en cada una de ellas un tema de la asignatura. Se espera de los alumnos que participen realizando preguntas y comentarios.

Sesiones de seminario y prácticas sobre ordenador: Son sesiones en grupos reducidos (2 grupos de seminarios/prácticas), donde los alumnos trabajan individualmente o en grupos, dependiendo de las actividades planteadas por los profesores. Las actividades planteadas en los seminarios son de carácter diverso de forma que permitan practicar, revisar y discutir activamente las cuestiones trabajadas a las clases magistrales que formarán parte de la evaluación continuada. Para preparar los seminarios, los alumnos tendrán que haber realizar el trabajo previo requerido. Los estudiantes tendrán que llevar a cabo y entregar varios ejercicios obligatorios a lo largo del curso (con una duración media de dos semanas cada una). Estas actividades se realizarán en grupos de dos o tres alumnos.

Proyecto práctico final: Después de las prácticas obligatorias, los estudiantes tendrán que realizar un pequeño proyecto práctico, empleando los conocimientos y las herramientas estudiadas durante el curso. Esta actividad se realizará en grupos de dos o tres alumnos. Este proyecto se entregará una vez acabadas las clases, en el periodo de exámenes, pero previamente, en la última semana de clases, los estudiantes tendrán que presentar oralmente el proyecto en clase, ante todos los compañeros, a modo de "Work in Progress" (WIP). Si esta presentación y el tema del proyecto se consideraran satisfactorios, y los estudiantes hubieran entregado también satisfactoriamente todos los ejercicios, éstos no tendrán que realizar el examen final.

Examen final: Evaluación escrita que podrá combinar preguntas de tipos test, temas teóricos a desarrollar, así como pequeños problemas de programación. Dado que esta es una asignatura con un peso práctico importante, los estudiantes que hayan satisfecho todas las otras tareas podrán quedar liberados de examen (a criterio del profesor, según lo establecido anteriormente).

Dedicación de los estudiantes
La asignatura tiene 4 créditos ECTS que se corresponden a 100 horas de trabajo del alumno, de las cuales 36 son presenciales. Estas 36 horas están divididas en sesiones magistrales (18 horas), y sesiones de prácticas y de seminarios de grupo mediano (18 horas). Las siguientes mesas detallan este aspecto, junto con la dedicación estimada de los estudiantes fuera de clase, para cada uno de los bloques evaluables.

 

 Horas en el aulaHoras fuera del aula
Bloques de contenidosGrupo grandeGrupo mediano  

 Preparación Práctica 1

 

4

 

8

 Preparación Práctica 2   4   8
 Preparación Práctica 3   4   8
 Sesiones magistrales 14      
 Proyecto final 4 6   32

 Examen

 

 

 

8

Total:

18

18

 

64

Total: 100

 

 

 

Recursos

Bibliografía y Recursos on-line