LABORATORIO PER L'ELABORAZIONE MULTIMEDIALE Canale unico

Docente coordinatore e verbalizzante: MICHELE SCARPINITI

Obiettivi formativi

L’obiettivo del corso è quello di fornire agli studenti gli elementi base delle moderne tecniche utilizzate per l’elaborazione multimediale. In particolare viene insegnato, attraverso l’uso di software di simulazione ad alto livello e di sistemi hardware real-time, la generazione, l’elaborazione e l’archiviazione del segnale con contenuto informativo di tipo multimediale. Particolare enfasi sarà rivolta all’elaborazione in tempo reale del segnale audio.

SPECIFICI
• Conoscenza e capacità di comprensione: conoscere i problemi, le metodologie e le applicazioni dell’elaborazione multimediale.
• Capacità di applicare conoscenze e comprensione: essere in grado di sviluppare in autonomia applicazioni di elaborazione multimediale.
• Autonomia di giudizio: sviluppare adeguate capacità critiche attraverso la frequenza di esercitazioni pratiche di sviluppo di algoritmi particolarmente problematici.
• Abilità comunicative: esercitare la capacità di esporre in modo critico gli argomenti appresi durante il corso.
• Capacità di apprendimento: lo studio individuale allenerà adeguatamente la capacità di studio autonomo e indipendente.

Risultati di apprendimento attesi

L’obiettivo del corso è quello di fornire gli elementi base delle moderne tecniche utilizzate per l’elaborazione multimediale, con particolare enfasi al segnale audio. In particolare viene insegnato, attraverso l’uso di software di simulazione ad alto livello, la generazione, l’elaborazione e l’archiviazione del segnale con contenuto informativo di tipo audio/visivo. Lo studente acquisisce dimestichezza con la programmazione in MATLAB e in C/C++ (attraverso l'utilizzo di librerie di multimediale quali PortAudio, PortMIDI e libsndfile) al fine di sviluppare applicazioni non banali in grado di lavorare in tempo reale. Verranno anche esaminate alcune architetture hardware real-time quali Arduino e Raspberry Pi. L’attività di laboratorio, inoltre, migliora la comprensione dello studente su concetti già noti da altri corsi.

Prerequisiti

Conoscenze di base di Elaborazione Numerica dei Segnali e di Fondamenti di Informatica.

Programma dell’insegnamento

In sintesi il programma di massima del corso riguarda le moderne tecniche di elaborazione del segnale multimediale con particolare enfasi all'elaborazione in tempo reale. L’obiettivo del corso è quello di fornire gli elementi base delle moderne tecniche utilizzate per l’elaborazione multimediale. Il corso prevede 12 lezioni, il cui contenuto è riassunto di seguito.

1. I formati audio e i tipi di elaborazione del segnale multimediale [5 ore]
2. Elaborazione di tipo offline e primi algoritmi [5 ore]
3. Elaborazione di tipo online: il concetto di buffer lineare e circolare [5 ore]
4. Il progetto di filtri per l’audio [5 ore]
5. Gli effetti audio [5 ore]
6. Applicazioni: cancellatore adattativo di rumore, sottrazione spettrale, restauro del segnale audio, separazione di sorgenti [5 ore]
7. L’audio in tempo reale. Gestione delle schede audio [5 ore]
8. Gli oggetti di sistema per l’audio [5 ore]
9. Il protocollo MIDI e il suo utilizzo [5 ore]
10. I plugin audio e la loro implementazione [5 ore]
11: Simulink per l’audio [5 ore]
12. PortAudio: una libreria C++ per lo streaming audio [5 ore]

Testi di riferimento

1. Michele Scarpiniti, MATLAB per l'Audio, Versione 1.4, pp. 1-462, ISBN: 979-8709410411, Self-published, Amazon KDP, Febbraio 2021. (Disponibile su AMAZON)
2. Michele Scarpiniti, Antonio Salini, Introduzione all'audio real-time: Basi teoriche e prime applicazioni, Edizione 2021, pp. 1-358, ISBN: 979-8516660337, Self-published, Amazon KDP, Giugno 2021. (Disponibile su AMAZON)
3. Materiale integrativo (lucidi del corso, articoli) sono disponibili sul seguente sito web http://michelescarpiniti.site.uniroma1.it/didattica/labemm

Bibliografia

1. T. A. Davis, "MATLAB Primer", 8-th edition, CRC Press, 2010.
2. A. D. Poularikas, "Signals and Systems Primer with MATLAB", CRC Press, 2006.
3. U. Zolzer (Ed.), "DAFX: Digital Audio Effects". Wiley, 2011.
4. R. Boulanger, V. Lazzarini (Eds.), "The Audio Programming Book", The MIT Press,2011.
5. V. Lazzarini, "Computer Music Instruments: Foundations, Design and Development", Springer, 2017.
6. V. Lazzarini, "Computer Music Instruments II: Realtime and Object-Oriented Audio", Springer, 2019.
7. G. Bradsky, A. Kaehler, "Learning OpenCV - Computer Vision with the OpenCV Library", O'Reilly, 2008.

Modalità di svolgimento

Il corso è svolto tramite lezioni frontali durante le quali vengono svolte esercitazioni pratiche sull'implementazione di applicazioni audio in tempo reale.

Frequenza

La frequenza del corso è facoltativa ma comunque è fortemente consigliata dato che si svolgeranno implementazioni non facilmente eseguibili in autonomia.

Modalità di esame

Svolgimento di un progetto con consegna della relazione e relativo software.
Per superare l'esame occorre conseguire un voto non inferiore a 18/30. Lo studente deve dimostrare di aver acquisito una conoscenza sufficiente delle tecniche di elaborazione del segnale multimediale e di essere in grado di svolgere un progetto in autonomia.
Nella valutazione dell'esame la determinazione del voto finale tiene conto dei seguenti elementi:
1) Qualità tecnica del progetto : 70%
2) Discussione del progetto : 30%

Esempi di domande

Sviluppo di un'applicazione real-time o plugin per l'elaborazione del segnale audio.

  • Anno accademico2024/2025
  • Corso di studio a cui afferisce l’insegnamentoIngegneria delle Comunicazioni
  • Codice insegnamento1032247
  • Anno e semestre2º anno - 2º semestre
  • TipologiaAttività formative affini ed integrative
  • AmbitoAttività formative affini o integrative
  • SSDING-IND/31
  • Presenza obbligatoriaNo
  • Linguaita
  • CFU6 CFU
  • Durata complessiva60 ore
  • Distribuzione delle ore36 classroom hours, 24 laboratory hours