![](/style/images/tocco.png)
Davide Pisano'
Audio fingerprinting in WebAssembly per l'esecuzione in browser web = WebAssembly-based audio fingerprinting running in the browser.
Rel. Antonio Servetti. Politecnico di Torino, Corso di laurea magistrale in Ingegneria Informatica (Computer Engineering), 2023
Abstract: |
Negli ultimi anni, si è assistito a una trasformazione epocale nel paradigma di sviluppo delle applicazioni desktop, il quale si è mosso con determinazione verso un'architettura basata sul web. Questa transizione ha visto la sostituzione delle tradizionali applicazioni desktop Win32 o Java con soluzioni web, basate sul linguaggio di programmazione JavaScript e sulle varie soluzioni che vi ruotano attorno. Parallelamente, il campo delle applicazioni per dispositivi mobili ha abbracciato strumenti cross-platform con strumenti come React Native, consentendo la realizzazione di app eseguibili sia su dispositivi Android che iOS, condividendo la stessa codebase e riducendo i costi e i tempi di sviluppo: ancora una volta queste tecnologie sono basate su JavaScript. JavaScript è quindi passato dall’essere un linguaggio per pagine web ad un linguaggio “general purpose”. Questo ha reso necessaria l’introduzione di nuove features nel linguaggio, come ad esempio WebRTC e WebAudio. La prima è stata sviluppata per consentire la comunicazione in tempo reale tra browser senza la necessità di plugin o applicazioni esterne. È stata creata per facilitare la condivisione di audio, video e dati tra gli utenti, consentendo la creazione di applicazioni di videochiamata, chat, condivisione di file e molto altro direttamente nel browser. La seconda è una tecnologia che mira a fornire un framework per la manipolazione e la gestione dei contenuti audio all'interno del browser. Attraverso WebAudio, gli sviluppatori possono creare e modificare suoni, applicare effetti e creare esperienze audio interattive. L'avvento della pandemia da COVID-19 ha avuto un effetto catalizzatore sull'adozione di queste due tecnologie emergenti, le quali sono state prontamente adottate per facilitare la comunicazione e la gestione dei contenuti audio in ambito online. Nonostante questi notevoli progressi, si avverte ancora la necessità di un approccio più sofisticato ed efficiente per eseguire algoritmi complessi direttamente all'interno del browser. Ed è proprio in questa prospettiva che entra in gioco WebAssembly, una tecnologia che consente l'esecuzione di codice ad alte prestazioni, sviluppata appositamente per il web. La tesi si propone di indagare approfonditamente la possibilità di sfruttare le tecnologie web consolidate per realizzare un algoritmo di audio fingerprinting e matching, che possa operare direttamente nel browser. L'obiettivo primario di questo studio è quello di valutare l'effettiva fattibilità di questa realizzazione, tenendo conto sia delle limitazioni intrinseche che delle potenzialità delle tecnologie web esistenti. A tal fine, verrà condotta un'analisi dello stato dell'arte nel campo dell'audio fingerprinting, al fine di comprendere appieno le metodologie e le soluzioni esistenti. Inoltre, saranno esplorate le modalità di integrazione di tali tecniche in un ambiente web, valutando criticamente le prestazioni e le limitazioni che potrebbero emergere. I risultati ottenuti da questa ricerca promettono di fornire nuove prospettive per lo sviluppo di applicazioni audio avanzate basate sul web, aprendo le porte a possibili futuri sviluppi e applicazioni nell'ambito del riconoscimento audio in tempo reale all'interno del browser. |
---|---|
Relatori: | Antonio Servetti |
Anno accademico: | 2022/23 |
Tipo di pubblicazione: | Elettronica |
Numero di pagine: | 69 |
Informazioni aggiuntive: | Tesi secretata. Fulltext non presente |
Soggetti: | |
Corso di laurea: | Corso di laurea magistrale in Ingegneria Informatica (Computer Engineering) |
Classe di laurea: | Nuovo ordinamento > Laurea magistrale > LM-32 - INGEGNERIA INFORMATICA |
Aziende collaboratrici: | NON SPECIFICATO |
URI: | http://webthesis.biblio.polito.it/id/eprint/27831 |
![]() |
Modifica (riservato agli operatori) |