Zenelejátszók vezérlése offline és online forrásokból származó metaadatok felhasználásával

OData támogatás
Konzulens:
Simon Gábor
Automatizálási és Alkalmazott Informatikai Tanszék

Manapság általánossá vált a különböző online zenei platformok használata, ezzel együtt azonban a zenekedvelők gyűjteményében továbbra is megtalálhatók offline tárolt és használt zenei fájlok. A különböző formátumok, hiányos metaadatok és a megosztott tárolási mód további akadályokat állít egy felhasználó teljes gyűjteményének egységes kezelése és az erre épülő szolgáltatások nyújtása elé.

A szakdolgozatom elkészítése során a célom egy olyan alkalmazás létrehozása volt, amely segíthet ezen problémák áthidalásában. Az implementálni kívánt szolgáltatások közül a hangsúlyt a zenelejátszók vezérlése kapta, ezt online és offline eszközzel is megvalósítottam. Emellett megismertem és felhasználtam olyan technológiákat, mint az ujjlenyomat-létrehozás zenei fájlokhoz és a metaadataik kinyerése, kezelése és frissítése online adatbázisból.

A kliensoldali szoftver fejlesztését .NET alapon végeztem, a WPF grafikus megjelenítő könyvtár felhasználásával. A metaadatok kezeléséhez a TagLib# szolgáltatást, frissítésükhöz a MusicBrainz webes API-ját kezelő MetaBrainz könyvtárat választottam. Az egyes zenei fájlokat egyértelműen azonosító ujjlenyomat generáláshoz a Chromaprint algoritmust és az ezt megvalósító AcoustID.NET könyvtárat vettem igénybe. Az adatok perzisztálása során az SQLite adatbáziskezelő modult használtam. A kezelt zenelejátszók terén a Spotify szolgáltatásra és a Foobar2000 programra esett a választás, de fontos szempont volt az újabb lejátszókkal való bővíthetőség.

A szakdolgozat első részében bemutatom az érintett technológiákat és azok fontosságát. Kitérek a zenei ujjlenyomat generálására és felhasználására, valamint az egyes online zenelejátszók és médiatárházak vizsgálatára. Ezután ismertetem az alkalmazás tervezését, a figyelembe vett célokat, a felhasznált tervezési mintákat és a programstruktúrát. Végül bemutatom az egyes funkciók megvalósítását és elemzem a továbbfejlesztési lehetőségeket.

Letölthető fájlok

A témához tartozó fájlokat csak bejelentkezett felhasználók tölthetik le.