Hvordan musikkapper som Shazam og Soundhound er gode til å identifisere musikk

Siden det startet i 1999, har Shazam blitt brukt til å identifisere sanger mer enn femti milliarder ganger, og det teller ikke ID-er fra Soundhound, MusicID og andre lydgjenkjenningsapper.

Fra en brukers perspektiv er det enkelt: Start appen, trykk på en knapp og la telefonen lytte til sangen. Etter noen sekunder, selv med bakgrunnsstøy og forvrengning, vil appen fortelle deg hva sangen er. Det fungerer så raskt og så bra at det nesten føles som magi – men som med de fleste magiske ting i disse dager, er det stort sett drevet av algoritmer.

Hva er tanken bak disse applikasjonene?

Shazam, Soundhound og andre musikkidentifikasjonstjenester fungerer i utgangspunktet på samme måte: de har en enorm database med sanginformasjon, en algoritme som raskt kan trekke ut informasjon fra sangeksemplet ditt, og en app som lar deg samhandle med disse tingene.. Teknisk sett trenger du ikke engang en smarttelefon.

Shazam var opprinnelig brukbar på eldre mobiltelefoner ved ganske enkelt å spille inn en sang og sende den til tjenesten. Soundhound har faktisk gått noen skritt videre ved å la deg synge eller nynne inn i appen som samsvarer med en brukerinnsendt database med andre syngende/brummende opptak.

Hvordan fungerer de?

Enkelt sagt ser prosessen slik ut:

  1. Appens database har en enorm samling av sang-"fingeravtrykk", eller små biter av data om sangens unike lydmønstre.
  2. Når en bruker trykker på «Record»-knappen, lytter appen til musikken og lager et fingeravtrykk basert på de få sekundene med lyd den hører.
  3. Dette fingeravtrykket samsvarer med den eksisterende fingeravtrykkdatabasen. Hvis ti sekunders fingeravtrykk samsvarer med en del av en sang, får du resultatet for sangen (forhåpentligvis riktig). Hvis det ikke er det, får du en feilmelding.

Hvis du leter etter en forklaring på overflatenivå, er det alt du trenger å vite. Den virkelig interessante delen er hvordan du får det fingeravtrykket.

Sangens fingeravtrykk

Det hele starter med et spektrogram, som det i grafen over, hentet fra et dokument skrevet av en av grunnleggerne av Shazam, Avery Wang. Dette er i hovedsak en graf med tid på x-aksen (horisontal), frekvens på y-aksen (vertikal) og amplitude representert av forskjellige nivåer av fargeintensitet. Enhver sekvens av lyder kan konverteres til et spektrogram, og ethvert punkt på spektrogrammet kan tildeles et sett med koordinater. Akkurat sånn kan notater være tall.

Hvis alt de trengte å gjøre var å matche noen lyder til hverandre, kunne de stoppet her. Hvis du vil se gjennom en database fylt med millioner av sanger, har imidlertid et full detaljspektrogram for mange datapunkter til å se gjennom med noen form for hastighet.

Det store fremskrittet innen musikkgjenkjenning var erkjennelsen av at lyder kan identifiseres med bare noen få opplysninger: toppene, eller de høyeste delene. Å kvitte seg med de fleste lavenergidelene av en sang reduserer ikke bare størrelsen på spektrogrammet, men gjør det mindre sannsynlig at applikasjoner identifiserer konsekvent, kjedelig bakgrunnsstøy som en del av mållydene. Se for deg en bysilhuett – de mest identifiserbare delene er toppen av bygningene, ikke mellometasjene, og det er det du kan se langt unna.

Så hvert sekund av hver sang er kokt ned til noen av de mest intense datapunktene; alt på byens skyline er fjernet bortsett fra toppen. Men det er fortsatt ikke effektivt nok til å være søkbart umiddelbart, så neste trinn er hash denne sekvensen av topper. Hashing tar ganske enkelt et sett med innganger, kjører dem gjennom en algoritme og tildeler dem en heltallsutgang. I dette tilfellet genereres hashen ved å ta to av høyintensitetstoppene, måle tiden mellom dem og legge til deres to frekvenser.

Resultatet er en rekke tall, enkelt lagret og søkbart. Når en datamaskin leser denne hashen, vil den gjenkjenne at den representerer frekvens og tidsavstand. Når alle toppene i sangen er identifisert og hashe, er transformasjonen fullført: sangen har nå et unikt 32-bits nummer som fungerer som ID i databasen. Enda viktigere er at hvert sekund av sangen er representert av tallene.

Når telefonen din lytter til musikk, går den gjennom akkurat denne prosessen: den filtrerer bort alle unntatt de høyeste punktene, river dem i filler og lager et fingeravtrykk for de få sekundene den er tatt opp. Når dette er fullført, trenger telefonen bare å se hvor de tilsvarende nummerstrengene vises i databasen, slik at den kan matche de oppdagede frekvensene og timingen til riktig sang og returnere den til deg i løpet av sekunder.

musikk og mer

Denne teknologien har vært mest brukt for musikkgjenkjenning, men lydgjenkjenningsapplikasjoner kan også fungere med filmer, reklamefilmer, TV-serier, fuglesang og mye mer. Shazam og Soundhound er de mest kjente, men nå kan du også spørre google hvilken sang som spilles og få et nøyaktig svar.

Og hvis du lurer på: "Er disse selskapene klar over sangene de spør?" Svaret er ja". Musikkidentifikasjonsstatistikk har vært i stand til å forutsi suksessen til sanger og artister med et ganske høyt nivå av nøyaktighet, og store plateselskaper som Warner har leid inn apper som Shazam for å hjelpe med å finne kommende artister. Så hvis du vil støtte en artist, kan du gjøre din del og søke etter sangen deres! Du kan hjelpe dem å ta av.

Index
  1. Hva er tanken bak disse applikasjonene?
  2. Hvordan fungerer de?
  3. Sangens fingeravtrykk
  4. musikk og mer

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

Go up