Como o Shazam reconhece a música com precisão?
Você já se perguntou como o Shazam 'ouve' a música que você está tocando e a identifica com tanta precisão? Bem, você não está sozinho.
A tecnologia que alimenta o serviço de reconhecimento de música é um mistério para muitos, especialmente desde que o serviço foi lançado anos antes dos smartphones e do aprendizado de máquina se tornarem uma coisa.
Neste artigo, veremos como o Shazam funciona e como ele pode reconhecer a música com precisão.
O que é Shazam?
Shazam é um aplicativo de reconhecimento de música popular que você pode usar para encontrar informações sobre uma nova música que você adora, mas não sabe o título ou o nome do artista.
Digamos que você esteja em uma cafeteria ou andando em uma lanchonete da esquina e ouça uma nova música que gostaria de ter em sua biblioteca de música. O Shazam ajuda você a encontrar a música com facilidade. Tudo que você precisa fazer é gravar alguns segundos da música no aplicativo.
O aplicativo Shazam usa tecnologia sofisticada de reconhecimento de áudio para identificar a música que você ouve em questão de segundos para que você possa descobrir o nome do artista e da faixa, assistir a vídeos e até mesmo comprar ou transmitir a música em seu dispositivo.
Download: Shazam para iOS | Android (grátis)
Como funciona o Shazam?
O Shazam usa uma tecnologia proprietária desenvolvida por Avery Lin-Chun Wang, o cofundador do aplicativo e cientista-chefe de dados, para identificar correspondências para as músicas consultadas em sua plataforma. A tecnologia cria impressões digitais para gravações de áudio, que é o ingrediente secreto por trás das incríveis habilidades de reconhecimento do Shazam.
O Shazam cria e armazena impressões digitais de áudio que consistem em coleções de dados numéricos para cada mais de 15 bilhões de músicas. Quando um usuário “shazam” uma música, o Shazam rapidamente cria uma impressão digital de áudio do som recebido do smartphone ou microfone do PC.
Depois de criar a impressão digital de áudio para a gravação, o Shazam carrega a impressão digital de áudio (não o áudio) para seu servidor, onde executa uma pesquisa de banco de dados por correspondências. Se uma correspondência for encontrada, ele retorna as informações da música com opções de onde transmitir ou comprar, junto com as informações de identificação.
O que é uma impressão digital de áudio?
Uma impressão digital de áudio é um resumo digital condensado de sinais de áudio. Eles são usados para identificar uma amostra de áudio ou para localizar itens semelhantes em um banco de dados de áudio.
A tecnologia de impressão digital de áudio do Shazam pode combinar peças não rotuladas de conteúdo de áudio com correspondências em seu banco de dados de áudio. O Shazam identifica o título da música que você gravou (um conteúdo de áudio sem rótulo) combinando a impressão digital da música com a impressão digital das músicas em seu banco de dados.
O Shazam cria impressões digitais exclusivas para músicas em seu banco de dados usando certos pontos de dados identificados com a ajuda de um espectrograma.
O que é um espectrograma?
Um espectrograma é um gráfico tridimensional usado como representação do som. O espectrograma mostra a mudança nas frequências ao longo de um período, ao mesmo tempo que leva em consideração a amplitude ou o volume. A foto abaixo é um exemplo de leitura de espectrograma.
Em uma entrevista de 2003 com a Scientific American , Avery Wang revelou que o algoritmo Shazam usa pontos do espectrograma que representam notas com a energia mais alta para gerar impressões digitais de áudio.
Ao ignorar a maioria das informações em uma música e se concentrar apenas nas poucas notas definidoras, o Shazam pode pesquisar seu banco de dados e fornecer correspondências precisas para consultas de músicas em uma velocidade incrível.
Como o Shazam consegue identificar músicas em lugares barulhentos?
O Shazam usa gravações de músicas livres de ruído de fundo e distorção para criar impressões digitais para seu banco de dados. Quando você grava uma música com o aplicativo em um local barulhento, ele cria uma impressão digital de áudio de sua gravação, identificando as notas com maior energia na gravação.
Em seguida, ele procura em seu banco de dados uma correspondência para as impressões digitais de áudio de sua gravação, desde que o nível de ruído de fundo não seja alto o suficiente para distorcer os dados usados para criar a impressão digital de áudio.
Momentos em que o Shazam não pode ajudá-lo a identificar uma música
O Shazam é ótimo em combinar músicas, até mesmo músicas obscuras que você acha que ele pode não ter em seu banco de dados. Mas há momentos em que o Shazam não consegue identificar uma trilha?
Gravação distorcida
Quando você faz o shazam de uma música em um lugar onde o nível de ruído de fundo é muito alto, o ruído distorce os dados no espectrograma. Por causa disso, a impressão digital de áudio de sua gravação será diferente daquela da música original.
Quando isso acontece, o Shazam retorna o diálogo Música não conhecida porque não consegue encontrar uma correspondência para a impressão digital de áudio.
Música ao vivo
O Shazam deixa a desejar em sua habilidade de identificar música de apresentações ao vivo. Isso ocorre porque o áudio que você grava em apresentações ao vivo geralmente difere da versão original da música que o Shazam usa para criar impressões digitais de áudio.
A única maneira de o Shazam identificar uma música durante uma apresentação ao vivo é se a banda for habilidosa o suficiente para executá-la exatamente como foi gravada. Boa sorte com a banda tentando fazer isso ...
Sua Gravação de Voz
“Será que eu poderia fazer o Shazam reconhecer uma música que eu estava cantando se eu fosse realmente um bom cantor?”
Resumindo, não.
O algoritmo Shazam só pode identificar músicas pré-gravadas. Para que o Shazam identifique uma música que você está cantando, você precisa ter os mesmos vocais com os instrumentais no tempo exato da gravação original da música.
Seu zumbido
O Shazam não consegue identificar correspondências para zumbidos porque seu algoritmo usa frequências e amplitudes exatas para criar impressões digitais de áudio para as músicas em seu banco de dados.
Quando você cantarola uma música, o Shazam cria uma impressão digital para ela. Mas, como um zumbido é apenas uma tentativa de ressintetizar uma música, o algoritmo não corresponderá à gravação.
O Shazam é o único aplicativo de identificação de música?
Shazam foi o primeiro serviço de identificação de música e atualmente é o aplicativo de identificação de música mais usado. No entanto, existem outros aplicativos que você pode usar para identificar uma música tocando ao seu redor. Alguns podem até identificar uma música que você está cantando ou cantarolando.
Três das alternativas mais populares do Shazam são SoundHound, Musixmatch Lyrics e Genius. O Musixmatch e o Genius ajudam principalmente a identificar as letras das músicas que tocam ao seu redor, enquanto o SoundHound é o concorrente mais próximo do Shazam.
Você pode usar o aplicativo SoundHound para fazer praticamente tudo o que o Shazam faz. Sua principal vantagem sobre o Shazam é que ele tem a funcionalidade adicional de identificar as músicas que você canta ou cantarola.
Crédito da imagem: Sulastri Sulastri / Shutterstock.com