2 poin oleh GN⁺ 2023-12-06 | 1 komentar | Bagikan ke WhatsApp

Judul ringkasan: Prinsip teknologi pengenalan musik Shazam

Apa itu Shazam?

  • Shazam adalah aplikasi untuk mengidentifikasi musik yang sedang diputar di sekitar.
  • Pengguna membuka aplikasi lalu merekam audio selama beberapa detik saat musik diputar untuk mencarinya di basis data.
  • Di masa lalu, layanan ini juga tersedia lewat nomor telepon, dan keterbatasan kualitas panggilan membuat pengenalan musik menjadi tugas yang sulit.

Mengapa pengenalan musik sulit?

  • Bagi orang yang tidak terbiasa dengan pemrosesan sinyal, pengenalan musik adalah masalah yang sulit karena kompleksitas sinyal audio.
  • Pendekatan brute force untuk mencari bagian tertentu dari lagu di seluruh trek sangat lambat, dan bentuk sinyal dapat berubah besar akibat noise latar belakang serta efek frekuensi.

Gambaran umum sistem

  • Shazam terbagi menjadi dua alur, yaitu pendaftaran musik dan pengenalan, dan keduanya memiliki tahap umum seperti menghitung spektrogram, mencari puncak dalam spektrogram, dan melakukan hashing pada puncak.
  • Alur pendaftaran menyimpan hash ke basis data, sedangkan alur pengenalan membandingkannya dengan hash di basis data untuk mengidentifikasi lagu yang sedang diputar.

Menghitung spektrogram

  • Untuk mendapatkan spektrogram audio, kita perlu memahami transformasi Fourier.
  • Transformasi Fourier memberi tahu frekuensi apa saja yang ada dalam audio, dan darinya dibuat spektrogram yang menunjukkan perubahan frekuensi dari waktu ke waktu.

Spektrogram

  • Untuk merepresentasikan frekuensi yang berubah terhadap waktu dengan lebih baik, lagu dibagi menjadi bagian-bagian kecil lalu diterapkan transformasi Fourier.
  • Spektrogram adalah grafik 3D dengan waktu (sumbu X), frekuensi (sumbu Y), dan intensitas (sumbu Z/warna).

Pembuatan sidik jari

  • Dengan mencari puncak yang mewakili frekuensi terbesar dalam spektrogram, sistem mengekstrak sidik jari unik dari audio.
  • Puncak-puncak ini mampu bertahan terhadap noise atau distorsi lain, sehingga cocok digunakan untuk membuat sidik jari.

Mencari puncak

  • Puncak pada spektrogram merepresentasikan frekuensi terkuat dalam sinyal, dan harus tersebar merata agar dapat digunakan dalam sidik jari audio.
  • Teknik maximum filter digunakan untuk menonjolkan puncak pada spektrogram dan menemukan posisinya.

Hashing

  • Hash dibuat dengan membentuk pasangan puncak dalam spektrogram, sehingga tingkat keunikannya meningkat.
  • Hash menyertakan frekuensi dari dua puncak dan selisih waktunya, lalu disimpan di basis data.

Pencocokan

  • Artikel ini menjelaskan proses menemukan sidik jari yang cocok dengan sampel audio tertentu di dalam koleksi sidik jari pada basis data.
  • Sistem mencari hash, lalu mengelompokkannya per lagu, kemudian memeriksa kecocokan hash untuk memilih trek dengan jumlah kecocokan terbanyak.

Kesimpulan

  • Shazam melalui proses seperti menghitung spektrogram, mengekstrak puncak, membuat pasangan hash, dan menyimpan sidik jari untuk mendaftarkan dan mengenali lagu.

Opini GN⁺

  • Hal terpenting dari artikel ini adalah bahwa artikel ini menjelaskan proses kompleks yang digunakan Shazam untuk mengenali musik dengan cara yang mudah dipahami.
  • Menarik dan memikat karena detail teknisnya dipecah langkah demi langkah sehingga bahkan insinyur perangkat lunak pemula pun bisa memahaminya.

1 komentar

 
GN⁺ 2023-12-06
Opini Hacker News
  • Pendekatan berbasis hash Shazam yang efisien

    Saat Shazam dirilis pada 2008, mengembangkan cara untuk mengubah lagu menjadi hash yang efisien secara komputasional adalah pendekatan yang cerdas. Jika layanan seperti ini diluncurkan hari ini, pendekatan R&D untuk melatih model mungkin akan menjadi pilihan default, tetapi itu bisa tidak efisien dan mahal. Karena jumlah lagu itu terbatas, pendekatan berbasis hash bisa memberikan performa yang jauh lebih baik.

  • Daya tarik Shazam yang tetap terasa seperti sihir

    Shazam adalah salah satu produk langka yang masih terasa seperti sihir bahkan setelah lebih dari 20 tahun, dan itu adalah sesuatu yang seharusnya dituju para teknolog.

  • Video Wall Street Journal yang menjelaskan cara kerja Shazam

    Ada video indah buatan Wall Street Journal yang menjelaskan bagaimana Shazam membuat sidik jari audio yang unik.

  • Penjelasan tentang Chromaprint dan AcoustID

    Chromaprint bekerja berdasarkan pola perubahan nada alih-alih nilai maksimum spektrum, dan digunakan dalam basis data terbuka berskala besar bernama AcoustID yang menghubungkan rekaman MusicBrainz dengan sidik jari audio. Meski tidak mendapat dukungan komersial sebesar Shazam, mengejutkan betapa banyak musik yang tetap tercakup di basis datanya.

  • Tulisan menarik tentang Shazam dan pemrosesan sinyal digital

    Ini adalah pengantar yang sangat bagus tentang cara kerja Shazam dan pemrosesan sinyal digital, wajib dibaca bagi siapa pun yang ingin memahami bagaimana pengenalan sidik jari audio bekerja.

  • Algoritme serupa yang juga bisa diterapkan ke media lain

    Ada algoritme aproksimasi serupa yang bisa diterapkan bukan hanya pada pengenalan sidik jari audio tetapi juga pada media lain, dan siapa pun yang ingin memahami hashing di dunia nyata sebaiknya mempelajari tulisan ini dengan perlahan.

  • Pentingnya situs web Every Noise At Once

    Every Noise At Once adalah situs luar biasa yang menerapkan pencocokan algoritmik pada klasifikasi genre musik dan subgenre bercabang yang diperkenalkan oleh penanda lagu baru. Situs ini berisiko berhenti beroperasi karena masalah hosting, yang akan menjadi kerugian besar bagi World Wide Web.

  • Intuitifnya proses pengenalan musik

    Sistem ini mengidentifikasi potongan melodi dan mencocokkannya secara berurutan dengan cara yang sangat mirip dengan proses persepsi kita, selaras dengan cara kita mengenali lagu setelah mendengar beberapa not.

  • Transformasi Fourier yang digunakan untuk pengenalan musik

    Ada penyebutan tentang transformasi Fourier yang sering digunakan untuk pengenalan musik, dan ini juga digunakan dalam versi open source bernama Echoprint, tetapi layanannya dihentikan setelah diakuisisi oleh Spotify.