11 poin oleh GN⁺ 2026-03-19 | 1 komentar | Bagikan ke WhatsApp
  • Aplikasi open-source yang mengubah file musik pribadi menjadi format karaoke, dengan fitur pemisahan suara, sinkronisasi lirik, dan penilaian real-time
  • Menggunakan model UVR Karaoke atau Demucs untuk memisahkan vokal dan iringan, serta WhisperX untuk mentranskripsikan lirik otomatis per kata
  • Fitur penilaian pitch berbasis input mikrofon serta rating bintang dan riwayat per lagu untuk mengukur kemampuan bernyanyi seperti permainan
  • Mendukung berbagai interaksi seperti beberapa profil pengguna, pemutaran latar file video, latar dinamis berbasis GPU shader, dan kontrol gamepad
  • Berjalan di Linux, macOS, Windows dan memiliki arsitektur mandiri yang dapat dijalankan sebagai satu file eksekusi tanpa instalasi

Fitur utama

  • Fitur pemisahan vokal (Stem separation) menggunakan model UVR Karaoke atau Demucs untuk memisahkan suara dan iringan
    • Volume vokal panduan dapat disesuaikan
  • Fitur lirik per kata (Word-level lyrics) menggunakan WhisperX untuk menyelaraskan setiap kata dengan audio
    • Jika lirik yang sudah ada tersedia di LRCLIB, versi tersebut akan diprioritaskan
  • Fitur penilaian pitch (Pitch scoring) menghitung skor secara real-time saat bernyanyi melalui mikrofon
    • Progres dapat dilacak dengan rating bintang dan papan skor per lagu

Pengguna dan antarmuka

  • Fitur profil pemain (Player profiles) memungkinkan beberapa pengguna menyimpan riwayat skor masing-masing
    • Tidak ada kehilangan data saat berganti penyanyi
  • Fitur dukungan file video (Video file support) dapat memuat file .mp4 atau .mkv dan memutar video aslinya sebagai latar
    • Vokal dipisahkan secara otomatis dari audio
  • Latar dinamis (Dynamic backgrounds) menggunakan efek GPU shader (plasma, aurora, nebula, dll.), loop video Pixabay, atau video asli sebagai latar
  • Dukungan gamepad memungkinkan navigasi menu, pemilihan lagu, dan kontrol pemutaran dengan kontroler

Cara kerja

  • Pada tahap Separate, model UVR Karaoke atau Demucs memisahkan trek menjadi vokal dan iringan
    • Audio dari file video diekstrak secara otomatis
  • Pada tahap Transcribe, aplikasi mencari lirik tersinkron di LRCLIB, dan jika tidak ada, melakukan transkripsi per kata dengan WhisperX
  • Pada tahap Play, iringan diputar sambil menampilkan lirik yang disorot, skor pitch, latar dinamis, dan input gamepad

Platform dan distribusi

  • Dapat dijalankan di Linux(x86_64, aarch64), macOS(ARM, Intel), Windows(x86_64)
  • Mendukung akselerasi GPU melalui CUDA atau Metal, dan berjalan dengan CPU di lingkungan yang tidak didukung
  • ffmpeg, Python, PyTorch, model ML di-bootstrap otomatis saat pertama kali dijalankan, sehingga tidak memerlukan proses instalasi terpisah berkat arsitektur biner tunggal

Pemberitahuan pembaruan

  • Rilis baru dan kabar pembaruan dapat diterima melalui email, dan langganan bisa dibatalkan kapan saja jika tidak diinginkan

1 komentar

 
GN⁺ 2026-03-19
Komentar Hacker News
  • Baru saja mengunduh source-nya, membangun, lalu menjalankannya, dan kaget karena saat pertama kali dijalankan aplikasi langsung mulai mengunduh binary dari internet
    Meskipun FFMpeg dan Python sudah terpasang, aplikasi tetap mencoba memasang yang baru
    Eksekusi gagal karena aplikasi mencari Python yang terpasang di folder lib. Cukup mengejutkan kesalahan mendasar seperti ini masuk ke kode rilis
    Selain itu, saat menjalankan skrip build dari tarball, aplikasi malah mencoba memasang container Docker, yang bikin bingung. Membangun aplikasi desktop pakai Docker terasa tidak masuk akal

    • Banyak aplikasi menyertakan runtime Python mereka sendiri. Blender, Houdini, Bitwig, Krita, dan lainnya juga begitu
      Krita memakai Python sistem saat build, tetapi hasil akhirnya tetap menyertakan Python sendiri
      Meski begitu, untuk aplikasi ini rasanya akan lebih baik jika dibundel daripada diunduh
      Dari sisi keamanan, npm atau pip juga punya risiko serupa, jadi ini bukan pengecualian total
    • Jawaban untuk pertanyaan “kenapa dibuat seperti ini?” mungkin adalah “di komputer saya jalan
    • Ekosistem instalasi Python memang sangat kacau. Tiap OS punya jalur dan cara instalasi berbeda, ditambah Conda dan berbagai package manager lain bercampur aduk
      Jadi saya bisa memahami kenapa pengembang ingin membuat satu lingkungan tunggal yang bisa diandalkan aplikasinya
    • Belakangan makin banyak aplikasi seperti ini yang mencoba melakukan instalasi tanpa izin ke sistem
      Baru-baru ini saya juga menjalankan aplikasi Python yang tiba-tiba mencoba memasang Node/NPM, dan itu cukup mengejutkan
      Komputer saya adalah ruang kerja saya, jadi menurut saya aplikasi yang memasang sesuatu sesuka hati adalah risiko serangan rantai pasok sekaligus tindakan yang tidak sopan terhadap pengguna
    • Ini pada akhirnya mungkin awal dari perdebatan tanpa akhir seperti static linking vs dynamic linking, vim vs emacs
  • Nightingale yang saya buat adalah aplikasi yang, setelah Anda menentukan folder musik, akan secara otomatis mengubah lagu menjadi track karaoke
    Aplikasi ini menyediakan pemisahan vokal, sinkronisasi lirik, skor pitch, dukungan gamepad, akselerasi GPU, dan lainnya
    Semua pemrosesan dilakukan secara lokal, tanpa akun, langganan, maupun telemetri
    Saat pertama kali dijalankan, aplikasi akan otomatis menyiapkan model ML dan lingkungan Python yang dibutuhkan
    Ditulis dengan Rust dan engine Bevy, serta merupakan proyek open source sepenuhnya

    • Dulu saya pernah belajar pemrosesan sinyal, dan saat itu pemisahan track sulit dilakukan
      Sekarang menarik melihat masalah ini dipecahkan dengan jaringan saraf seperti Demucs
      Saya penasaran apakah pendekatan matematis murni masih bisa bersaing
    • Saya menguji B.E.D - Walk Away, tetapi sinkronisasi lirik mulai meleset setelah 30 detik
      Dibutuhkan fitur skip maju-mundur saat pemutaran, dan akan bagus jika ada penanganan tanda baca serta fitur edit hasil
      Meski begitu, terima kasih sudah merilisnya sebagai FOSS
    • Proyek yang sangat keren. Di ranah FOSS hampir tidak ada aplikasi karaoke, jadi ini kemajuan besar
      Saya penasaran dengan spesifikasi minimum CUDA dan apakah ada rencana dukungan akselerasi iGPU AMD/Intel
      Saya berharap keluarga saya bisa mencobanya
    • Saya penasaran apa bedanya dengan UltraSinger. Adakah yang tahu perbandingan kualitasnya?
    • Saya ingin tahu apakah WhisperX juga menangani lirik bahasa Mandarin (hanzi) dengan baik
    • Saya menguji lagu berbahasa Jepang, tetapi penyelarasan lirik sama sekali tidak bekerja
      Di kode, kata-kata dipisahkan dengan line_text.split(), tetapi bahasa Jepang tidak memakai spasi, jadi ini tidak akan berfungsi
      Sepertinya perlu memakai penganalisis morfologi seperti fugashi
  • Ini mengingatkan saya pada pemutar media Nightingale lama berbasis Firefox
    Dulu dikembangkan sebagai alternatif iTunes/Winamp, tetapi sudah lebih dari 10 tahun tidak aktif
    Jejak lamanya masih bisa dilihat di getnightingale.com

    • Kalau tidak salah itu adalah proyek penerus Songbird
  • Saya pernah membuat proyek pelacakan pitch yang mirip di masa lalu
    Saya penasaran apakah garis pitch di aplikasi ini berfungsi untuk menunjukkan tinggi nada berikutnya

    • Saat ini baru ada fitur skor pitch sederhana, dan prediksi tinggi nada berikutnya belum diimplementasikan
      Saya anggap itu sebagai usulan fitur yang bagus
  • Menjalankannya secara lokal, open source, dan proyek yang lahir dari semangat murni, ini benar-benar menyentuh
    Berita seperti ini memulihkan rasa kemanusiaan

  • Dari riwayat commit terlihat kecepatan pengembangannya sangat tinggi
    Sepertinya memanfaatkan pengembangan berbantuan AI
    Berlawanan dengan anggapan bahwa “AI akan menggantikan pengembang”, saya justru merasa AI telah meningkatkan kelayakan proyek kecil seperti ini

    • Perangkat lunak serupa juga sudah ada di era Windows 95. Bahkan Pentium 2 pun bisa menjalankannya
  • Awalnya saya tidak paham persis apa yang dilakukan aplikasi ini, saya kira liriknya yang dihapus
    Saya mencoba beberapa lagu, tetapi vokalnya masih tetap terdengar. Saya tidak tahu bagaimana mengatur penghapusan vokal

    • Anda bisa menyesuaikan level guide dengan tombol + / - di keyboard
      Lihat panduan kontrol
  • Proyek yang benar-benar keren.
    Saya penasaran apakah lagu bisa diproses di satu perangkat lalu diputar di perangkat lain, atau apakah aplikasi ini bisa berjalan dalam mode server/client

  • Sebagai musisi, saya sering berpikir akan sangat berguna jika ada aplikasi yang menampilkan lirik sambil mengikutinya saat tampil bersama band
    Saat ini saya menaruh ponsel di stand mikrofon, tetapi posisinya cepat hilang

    • Betul, sinkronisasi real-time seperti ini bahkan sering meleset di Spotify