Metodologi
Bagaimana VocalTone mengubah rekaman menjadi angka — dan di mana batasannya. Versi metodologi 1.0.0.
1. Persiapan sinyal
Rekaman Anda didekode di browser, digabung menjadi mono dan di-resample ke WAV 22,05 kHz 16-bit. Server memvalidasi ulang format, durasi (1,5 dtk – 5 menit), level dan clipping.
Pemrosesan suara bawaan browser (peredam noise, penguat otomatis, pembatal gema) dimatikan saat merekam karena mengubah hasil pengukuran warna suara.
2. Pelacakan nada
Frekuensi fundamental dilacak setiap 10 ms dengan algoritma autokorelasi Praat (Boersma, 1993) antara 60 dan 1200 Hz, mencakup bass hingga sopran. Bagian bersuara yang lebih pendek dari 50 ms dibuang.
Not dipisahkan saat nada yang dihaluskan bergeser lebih dari 80 sen dan bertahan selama 80 ms, sehingga vibrato tidak memecah not. Wilayah nada memakai median setiap not, bukan frame tunggal, sehingga gangguan dan glide tidak membesar-besarkannya.
3. Kestabilan dan vibrato
Di dalam setiap not yang ditahan (≥ 0,3 dtk, tepi dipangkas) nada dipisah menjadi tren lambat (rata-rata bergerak 250 ms) dan residu cepat. Pergeseran adalah sebaran tren lambat; spektrum residu dicari puncak vibrato 3,5–8,5 Hz, dan energi non-vibrato yang tersisa dilaporkan sebagai fluktuasi tidak teratur.
Vibrato hanya dinyatakan ada bila lebarnya mencapai 45 sen. Ambang ini dipilih dari 17 penyanyi profesional (VocalSet): mendeteksi 84% rekaman bervibrato dan salah menandai 8% rekaman nada lurus (ambang 12 sen salah menandai 76%). Skor kestabilan memetakan gabungan deviasi dari 5 sen (100) hingga 50 sen (0); nada panjang lurus penyanyi profesional bermedian 88.
4. Pengukuran kualitas suara
HNR (rasio harmonik-noise, metode korelasi silang), CPPS (smoothed cepstral peak prominence; Hillenbrand & Houde, 1996), jitter dan shimmer lokal dihitung dengan Praat hanya pada segmen bersuara. H1–H2 diukur dari spektrum pada f0 dan 2·f0 dan ditandai tidak andal di atas ~350 Hz.
Keseimbangan spektral memakai spektrum rata-rata jangka panjang dari frame bersuara: alpha ratio (1–5 kHz vs 0,05–1 kHz), indeks Hammarberg dan singing power ratio (puncak 2–4 kHz vs 0–2 kHz; Omori dkk., 1996).
5. Estimasi kualitas suara
Kedesahan, kejernihan, kecerahan dan resonansi adalah ESTIMASI yang dikalibrasi pada 17 penyanyi profesional (label teknik VocalSet). Setiap fitur akustik melewati kurva logistik yang berpusat di antara median kelas, sehingga sekitar 40 = nada lurus profesional dan 60+ = nada desah profesional yang disengaja, tanpa mentok untuk suara amatir.
Kedesahan memakai HNR, CPPS dan H1–H2 (jitter dan shimmer tidak dipakai karena menandai vibrato yang sehat sebagai desah). Kebulatan dan ketipisan belum punya data berlabel di mana pun yang kami temukan; keduanya tetap heuristik transparan dari komponen yang sudah dikalibrasi dan diberi label demikian. Mikrofon, ruangan, vokal dan nada tetap memengaruhi semuanya, jadi bandingkan rekaman dalam kondisi serupa.
6. Akurasi nada
Akurasi nada hanya dihitung jika ada nada target. Not yang dinyanyikan diselaraskan dengan target secara berurutan (dynamic programming yang toleran terhadap not terlewat atau tambahan), atau berdasarkan jendela waktu jika waktunya diberikan.
Setiap not mendapat 100 dalam ±10 sen, turun linear ke 0 pada ±100 sen. 'Tepat' berarti dalam ±25 sen.
7. Skor keseluruhan
Skor keseluruhan menggabungkan kestabilan nada (30%), akurasi nada terhadap nada target (35%) atau, tanpa target, intonasi tanpa referensi (25%), kejernihan (20%) dan resonansi (15%). Kendali nada diberi bobot terbesar karena pada 575 penyanyi asli yang dinilai pendengar terlatih (SingMOS-Pro), kestabilan (ρ +0,27) dan intonasi (ρ −0,21) paling sejalan dengan penilaian manusia, sedangkan kejernihan tidak.
Skalanya ditambatkan pada penyanyi profesional: 85 = penyanyi profesional pada umumnya di VocalSet, 70–95 = rentang profesional (persentil 10–90). Nilai A berarti setara profesional. Kecocokan dengan penilaian kualitas manusia masih sedang (ρ ≈ 0,26), sehingga skor keseluruhan tetap estimasi dan bukan pengganti guru vokal.
Validasi pada penyanyi asli
VocalSet (Wilkins dkk., 2018; CC BY 4.0): 2.313 rekaman dari 17 penyanyi profesional dengan label teknik. Daya pembeda, diukur dengan AUC (0,5 = acak, 1 = sempurna): kedesahan 0,87 (sebelum kalibrasi 0,69), kejernihan 0,86 (sebelumnya 0,75), kecerahan 0,81 (sebelumnya 0,79). Vibrato: 84% terdeteksi, 8% salah deteksi (sebelumnya 76%).
SingMOS-Pro (Tang dkk., 2025; CC BY 4.0): 575 rekaman penyanyi asli, masing-masing dinilai minimal lima penilai terlatih. Korelasi Spearman dengan skor kualitas manusia: keseluruhan +0,26 pada dataset yang tidak dipakai untuk penyetelan, kestabilan +0,27, deviasi intonasi −0,21.
Belum tervalidasi: kebulatan/ketipisan (belum ada data berlabel) dan skor keseluruhan sebagai penilaian artistik untuk pemula (semua penyanyi kalibrasi adalah profesional atau semi-profesional). Skrip benchmark: vocaltone-ai/benchmarks/.
Keterbatasan
Mikrofon konsumen, gema ruangan dan noise latar memengaruhi HNR, CPPS dan ukuran spektral. Jitter dan shimmer meningkat karena vibrato. Suara sangat tinggi (di atas ~500 Hz) membuat ukuran selubung spektral kurang andal, sehingga tingkat keyakinan yang dilaporkan diturunkan.
VocalTone adalah alat latihan dan pemantauan mandiri. VocalTone tidak mendiagnosis gangguan suara.
Referensi
- Boersma, P. (1993). Accurate short-term analysis of the fundamental frequency and the harmonics-to-noise ratio of a sampled sound. IFA Proceedings 17.
- Hillenbrand, J., & Houde, R. A. (1996). Acoustic correlates of breathy vocal quality. JSHR 39(2).
- Omori, K., et al. (1996). Singing power ratio: quantitative evaluation of singing voice quality. Journal of Voice 10(3).
- Hammarberg, B., et al. (1980). Perceptual and acoustic correlates of abnormal voice qualities. Acta Oto-Laryngologica 90.
- Sundberg, J. (1987). The Science of the Singing Voice. Northern Illinois University Press.
- Wilkins, J., et al. (2018). VocalSet: A singing voice dataset. ISMIR.
- Tang, Y., et al. (2025). SingMOS-Pro: A comprehensive benchmark for singing quality assessment. arXiv:2510.01812.
- Jadoul, Y., Thompson, B., & de Boer, B. (2018). Introducing Parselmouth: A Python interface to Praat. Journal of Phonetics 71.