AI mengubah rekaman menjadi not dalam tiga langkah. Audio diubah menjadi gambar yang menunjukkan frekuensinya. Model yang dilatih dengan ribuan rekaman membaca gambar itu dan memperkirakan not-notnya. Lalu not disejajarkan dengan ketukan dan diubah menjadi partitur serta MIDI. Hasilnya sekarang sudah jauh lebih baik karena langkah di tengah, yang paling sulit, dikerjakan oleh jaringan saraf yang belajar mengenali not dari contoh. Sebelumnya, langkah ini mengandalkan aturan yang ditulis satu per satu.
Gambaran singkat
Saat mentranskripsikan musik dengan telinga, kita mendengarkan satu nada, mencarinya pada alat musik, menentukan panjang bunyinya, lalu menuliskannya. Proses itu diulang sampai ribuan kali. AI mengerjakan tugas yang sama, tapi jauh lebih cepat dan bisa mengenali banyak not sekaligus. Suara diubah menjadi data yang bisa dianalisis, not dikenali di dalam data itu, lalu ditulis sebagai simbol yang kita baca. AI paling berperan saat mengenali not. Sebagian besar kemajuan dalam beberapa tahun terakhir terjadi di langkah ini.
Langkah pertama: mengubah suara menjadi gambar
Rekaman digital berisi deretan panjang angka yang menjelaskan bagaimana membran speaker harus bergerak. Ada puluhan ribu nilai setiap detik. Melodi tidak terlihat dari deretan angka itu. Jadi, perangkat lunak menjalankan transformasi untuk menghitung berapa besar energi pada setiap frekuensi setiap saat. Hasilnya disebut spektrogram, peta yang menunjukkan besar energi lewat warna. Waktu berjalan dari kiri ke kanan, frekuensi dari bawah ke atas, dan bagian yang terang menandai nada yang sedang berbunyi.
Gambarnya kurang lebih mirip dengan tampilan piano roll, dan lebih dekat dengan bentuk musik daripada gelombang audio mentah. Nada yang ditahan tampak sebagai garis mendatar. Akor tampak sebagai tumpukan garis. Pukulan drum tampak sebagai sapuan tegak singkat yang menyebar di banyak frekuensi. Setelah suara menjadi gambar seperti ini, langkah berikutnya lebih mudah dikerjakan. Model yang dilatih untuk membaca gambar kini punya pola yang bisa dikenali.
Langkah kedua: menemukan not
Membaca not dari spektrogram tidak sesederhana kelihatannya. Satu nada piano tidak menghasilkan satu garis bersih. Ada frekuensi dasar dan deretan nada atas di atasnya. Saat beberapa nada berbunyi bersamaan, nada-nada atasnya bertumpuk. Nada E rendah pada gitar punya sebagian nada atas yang sama dengan E satu oktaf di atasnya. Tantangan utama transkripsi adalah membedakan bagian terang yang menandai not yang benar-benar dimainkan dari harmonik milik not lain.
Sistem modern memakai jaringan saraf yang dilatih dengan kumpulan data besar berisi rekaman beserta data not yang cocok persis dengan rekaman itu. Untuk piano, alat musik yang bisa merekam audio sekaligus penekanan tuts secara presisi menghasilkan kumpulan data dari ribuan rekaman piano. Rekaman itu cocok persis dengan data not yang dimainkan. Jaringan mempelajari semuanya untuk membedakan not yang baru dimainkan dari nada atasnya, mengenali awal bunyi, dan memahami bagaimana bunyinya memudar. Biasanya, untuk setiap nada pada setiap potongan waktu, model memperkirakan apakah not mulai berbunyi, apakah masih berbunyi, dan seberapa keras bunyinya. Prediksi ini digabung menjadi daftar not. Setiap not punya nada, waktu mulai, waktu selesai, dan nilai velocity untuk kuat-lemahnya bunyi.
Aturan seperti “abaikan harmonik ketiga” tidak ditulis satu per satu dalam kode. Model mempelajari pola itu dari contoh. Karena itu, pendekatan yang sama bisa dipakai untuk alat musik lain saat data latihnya bertambah, dan hasilnya terus membaik tanpa perlu menulis ulang logikanya. Kami membahas lebih jauh mengapa sebagian sumber audio menghasilkan transkripsi yang lebih bersih dalam mengapa akurasi transkripsi AI berbeda-beda.
Langkah ketiga: menyusun not menjadi partitur
Daftar not dengan waktu yang presisi sudah cukup untuk membuat MIDI dan menampilkannya dalam piano roll. Tapi partitur juga membutuhkan tempo, pola ketukan dalam birama, dan not yang disesuaikan dengan nilai ritme yang bisa dikenali. Pada tempo 120 ketukan per menit, pemain tidak pernah memainkan not seperempat yang panjangnya tepat 500 milidetik. Perangkat lunak perlu menemukan ketukan dasarnya, menentukan letak garis birama, lalu membulatkan tiap not ke nilai terdekat yang masuk akal, seperti not seperempat atau seperdelapan. Proses ini disebut kuantisasi. Hasilnya menentukan apakah transkripsi enak dibaca atau justru penuh not sepertiga puluh dua yang tidak bisa dimainkan.
Perangkat lunak juga harus memilih cara penulisan yang biasa dibaca pemain: menentukan not mana yang dimainkan tangan kanan atau kiri, cara menuliskan nada dengan tanda kromatis, dan letak tanda istirahat. Hasilnya tersedia dalam format untuk kebutuhan yang berbeda. Satu transkripsi bisa menjadi PDF untuk dicetak, file MIDI untuk DAW, atau file MusicXML untuk dibuka di editor notasi. Kalau ritme atau pembagian tangan keliru, bagian penulisan inilah yang diperbaiki. Biasanya, kita cukup mengedit sebentar untuk memperbaiki kesalahan transkripsi, tanpa mengulang proses dari awal.
Yang sudah ditangani dengan baik dan yang masih sulit
AI paling terlatih untuk mentranskripsikan piano solo. Data latihnya paling banyak untuk piano, dan pola suaranya cukup teratur. Model yang baik bisa mengenali sebagian besar not dari rekaman yang jernih. Transkripsi satu alat musik yang memainkan akor, yang disebut transkripsi polifonik, sekarang juga sudah ditangani dengan baik. Untuk piano, penjelasannya ada dalam cara kerja transkripsi piano polifonik.
Ada beberapa kondisi yang menyulitkan transkripsi. Seluruh band yang direkam menjadi satu trek campuran sulit ditranskripsikan karena model harus memisahkan beberapa alat musik yang berbunyi bersamaan pada rentang frekuensi yang bertumpuk. Distorsi yang kuat, reverb yang padat, dan audio berkualitas rendah mengaburkan spektrogram dan menurunkan akurasi. Bagian yang sangat cepat dan not yang sangat pelan juga mudah terlewat. Hasilnya masih bisa dipakai sebagai draf awal yang cukup baik untuk diperiksa. Kita tetap perlu memeriksanya sebelum menganggapnya partitur yang sudah selesai. Kami membahas angka akurasinya dalam akurasi transkripsi musik dengan AI.
Mendapatkan hasil terbaik
Rekaman adalah hal yang paling bisa kita perbaiki, karena langkah pertama menentukan masukan untuk semua langkah berikutnya. Semakin bersih dan jelas sumbernya, semakin jelas gambarnya, dan semakin banyak not yang dikenali dengan benar oleh model. Pilih versi lagu yang paling jernih, tentukan alat musik yang terdengar agar alat transkripsi memakai model yang sesuai, lalu periksa drafnya sebentar. Di Songscription, unggah file atau tempel tautan. AI menjalankan ketiga langkah tadi dan menghasilkan piano roll serta notasi yang bisa diputar, diperlambat, ditransposisi, dan diedit di browser sebelum diekspor. AI mengerjakan tugas mendengarkan rekaman yang menguras tenaga, dan kita memeriksa hasilnya serta menentukan edit terakhir.
Pertanyaan yang sering diajukan
Bagaimana AI mentranskripsikan musik?
Secara garis besar, ada tiga langkah. Perangkat lunak lebih dulu mengubah audio menjadi spektrogram, gambar yang menunjukkan frekuensi apa saja yang berbunyi setiap saat. Lalu jaringan saraf membaca gambar itu. Jaringan ini dilatih dengan ribuan rekaman yang dipasangkan dengan data not yang sudah diketahui, untuk memperkirakan kapan not mulai berbunyi, nadanya, dan kapan bunyinya berakhir. Terakhir, not hasil prediksi disejajarkan dengan kisi ketukan lalu diubah menjadi MIDI dan notasi balok. Model mengenali pola yang dipelajari dari data, bukan mengikuti aturan yang ditulis satu per satu. Karena itu, hasilnya jauh membaik setelah tersedia kumpulan data besar dengan rekaman dan not yang selaras, serta jaringan saraf modern.
Apakah transkripsi musik dengan AI akurat?
Untuk rekaman satu alat musik yang jernih, hasilnya sekarang sudah sangat baik. Terutama pada piano solo, model biasanya berhasil mengenali sebagian besar not. Akurasinya turun kalau audionya lebih rumit, misalnya campuran suara seluruh band yang padat, rekaman ponsel yang berisik, reverb yang kuat, atau not cepat yang bertumpuk. Hasil yang realistis adalah draf awal yang sudah cukup baik untuk diperiksa dan diperbaiki, bukan partitur tanpa kesalahan yang tak perlu diperiksa lagi.
Bisakah AI membedakan alat musik saat mentranskripsikan musik?
Model sudah bisa mengenali not dari satu alat musik dengan baik, termasuk akor yang dimainkan pada satu piano atau gitar. Memisahkan beberapa alat musik yang bermain bersamaan dalam satu campuran audio lebih sulit. Mode Multi-Instrument di Songscription mengerjakannya dalam satu proses, meski memisahkan audio menjadi trek audio terpisah lebih dulu masih menghasilkan bagian tiap alat musik yang paling bersih. Kalau yang dibutuhkan lagunya, bukan bagian setiap alat musik, seluruh campuran audio juga bisa diringkas menjadi aransemen piano.
Untuk mencoba ketiga langkah ini pada rekaman sendiri, unggah rekaman lalu lihat not hasil transkripsinya yang bisa dibaca dan diedit.
