Jak fungují aplikace pro identifikaci hudby jako Shazam?

Aplikace sloužící k rozpoznávání hudby se mohou zdát jako zázrak, nicméně skrývají v sobě sofistikované algoritmy schopné bleskurychle nalézt jakoukoli skladbu. Podívejme se, jak to vlastně funguje.

Princip rozpoznávání hudby

Asi každý z nás zažil situaci, kdy v restauraci, kavárně nebo obchodě zaslechl v reproduktorech skvělou píseň. Ať už se jedná o skladbu známou či neznámou, často se instinktivně sáhne po mobilním telefonu, spustí se aplikace jako Shazam a telefon se namíří k reproduktoru. Aplikace během pár vteřin identifikuje skladbu, interpreta a dokonce nabídne možnost streamování.

Tyto aplikace jsou rychlé, neuvěřitelně přesné a umí rozpoznat i ty nejméně známé skladby. Ve zkratce, pracují na principu izolování skladby z nahrávky a vyhledání jejího záznamu v rozsáhlé databázi. Technologie, která se za tímto procesem skrývá, je poměrně složitá a fascinující.

Je překvapivé, že aplikace Shazam, tak jak ji známe, byla poprvé uvedena na trh už v roce 2002. A již tehdy byl systém stejně přesný a rychlý jako dnes. To vše díky unikátnímu algoritmu, který změnil hudební průmysl.

Nejde jen o text

Na první pohled se může zdát, že aplikace na rozpoznávání hudby jako Shazam fungují jednoduše. Možná si myslíte, že jen poslouchají text skladby, podobně jako hlasový asistent, a hledají ho v databázi textů. Tímto způsobem vám pak řeknou, o jakou skladbu jde.

Avšak většina aplikací na rozpoznávání hudby dokáže identifikovat i instrumentální skladby, nebo dokonce cover verze. Je to proto, že místo textu analyzují „otisky prstů“, které jsou jedinečné pro každou skladbu v rozsáhlých databázích.

Technologie otisků prstů

Pravděpodobně máte zařízení, které lze odemknout pomocí otisku prstu. Jde o uspořádání malých čárek na prstu, které jsou pro každého jedinečné. Podobně, když namíříte mikrofon na zdroj hudby a nahrajete krátký klip, tento klip se přemění na datové vzorce, které Shazam nebo jiná aplikace může porovnat s obsahem své databáze.

Na první pohled by se mohlo zdát, že tato metoda má několik nedostatků. Při poslechu hudby na veřejných místech je často slyšet šum na pozadí, a zkreslení způsobené reproduktory může způsobit, že skladby nejsou identifikovatelné, nebo může vést k nepřesným výsledkům. Navíc, i krátký zvukový záznam obsahuje velké množství dat, což může zpomalit vyhledávání těchto vzorců v databázi obsahující miliony skladeb.

V rozhovoru pro Scientific American v roce 2003 Avery Li-Chun Wang, hlavní datový vědec a spoluzakladatel Shazamu, vysvětluje, jak jejich algoritmus tyto problémy řeší. Informace ze zvukového záznamu lze vizualizovat pomocí 3D grafu, který se nazývá spektrogram. Ten znázorňuje změnu frekvencí v čase. Dále zohledňuje i amplitudu, což je hlasitost zvuku. To se ve spektrogramu projeví intenzitou barvy.

Stejně jako lidské ucho nevnímá zvuky, které nejsou v určité frekvenci, tak i Shazam, namísto vyhodnocování celé skladby, se zaměřuje pouze na „vrcholy“, tedy na části s nejvyšším energetickým obsahem. Otisky prstů tak zachycují pouze body s nejvyšší frekvencí v daném časovém úseku a poté místa s maximální amplitudou v daných frekvencích.

Ve studii pro Kolumbijskou univerzitu Wang uvedl, že díky této metodě se jim daří odstranit většinu zbytečných částí zvukového záznamu, jako je hluk v pozadí, a eliminovat zkreslení. Tím se velikost „otisků“ sníží na minimum, a proto je identifikace skladby v obrovské databázi otázkou pouhých milisekund.

Dopad aplikace Shazam

Kromě toho, že jsou aplikace pro identifikaci hudby užitečné pro běžné posluchače, mají i velký vliv na hudební svět.

Rádiové stanice a streamovací služby často využívají data o tom, co lidé nejčastěji „shazamují“, aby zjistily, jaké skladby veřejnost poslouchá. To je užitečné, protože to odhaluje chytlavost a potenciální popularitu skladby, bez ohledu na interpreta. Když pomocí aplikace identifikujete skladbu, okamžitě vidíte, kolik lidí se ji také pokusilo identifikovat.

Od vzestupu Shazamu se objevila řada konkurentů. Například Soundhound tvrdí, že dokáže identifikovat skladbu i tím, že ji zazpíváte nebo zabroukáte, avšak s různými výsledky. Existuje také identifikátor skladeb integrovaný s hlasovými asistenty, jako je Google Assistant, který funguje na podobném principu jako Shazam.