24/24 / known-key smoke test

Bago: mas matibay na key detection para sa mga major at minor na mix

Hinigpitan ng Mixanalytic ang key detection matapos makakita ang mga user ng maling key sa dalawang kanta. Ikinukumpara na nito ngayon ang mga major at minor key profile at binibigyan ng score ang bawat nangungunang kandidato.

Bago: mas matibay na key detection para sa mga major at minor na mix - Mixanalytic blog
Mas kapaki-pakinabang ang key detection kapag kaya nitong paghiwalayin ang C major at A minor. Isa pa ring musical na tantiya ang resulta, pero ang tantiya ay nagmumula na ngayon sa mas matibay na harmonic na ebidensya.

Ano ang nagbago

Inilabas sa update na ito

  • Ikinukumpara na ngayon ng harmonic analysis ang mga major at minor key profile.
  • Maaari nang direktang ibalik ang mga minor key sa resulta ng pagsusuri.
  • May kasama na ngayong mode, score, at confidence ang mga nangungunang kandidato para sa pag-debug ng mga dikit na resulta.
  • May benchmark script na maaaring sumubok sa mga file na kilala ang key bago i-ship ang mga susunod na pagbabago sa key detection.

Sapat na tiyak ang feedback para maayos

Nagustuhan ng isang user ang analyzer pero itinuro niya ang isang totoong problema: dalawang kanta ang lumabas na mali ang key. Ganitong uri ng reklamo ang dapat aksyunan. Kung mali ang key sa Harmonic section, ang natitirang musical na payo ay nagsisimula sa alanganing pundasyon.

Masyadong magaspang ang lumang paraan. Tinitingnan nito ang pinakamalakas na chroma pitch class at itinuturing iyon bilang root ng key. Puwedeng gumana iyon sa simpleng materyal, pero hindi nito napapansin ang halatang pagkakaibang musikal: pareho ang mga pitch class ng C major at A minor pero hindi sila parang iisang key.

Ano ang nagbago sa analyzer

Ikinukumpara na ngayon ng aktibong harmonic analyzer ang resulta ng chroma sa mga major at minor key profile. Ginagamit pa rin nito ang audio na ebidensya mula sa track, pero mas mahusay na tanong ang itinatanong nito: aling key at mode ang pinakamahusay na nagpapaliwanag sa buong pattern ng pitch class?

  • Hiwalay na binibigyan ng score ang mga major at minor profile.
  • Tumutulong ang suporta ng root at fifth para basagin ang mga dikit na tabla.
  • Maaari na ngayong magbalik ang resulta ng mga minor key gaya ng Am.
  • Kasama na sa mga nangungunang kandidato ang key, mode, score, at confidence sa halip na simpleng listahan ng string.

Hindi nito ginagawang perpektong musicologist ang key detection. Puwedeng mag-modulate ang mga kanta, manghiram ng chords, manatili sa isang mode, o iwasan ang malinaw na tonic. Ginagawa lang ng pagbabagong ito na hindi gaanong simplistiko ang default na tantiya at mas madaling i-debug.

Paano namin ito sinubukan bago i-ship

Nagdagdag kami ng nakatutok na unit coverage sa key detector at sa output ng Harmonic analysis. Nagdagdag din kami ng maliit na benchmark script para sa mga audio file na kilala ang key, para masuri ang mga susunod na pag-tune laban sa isang folder o CSV sa halip na isang manual na upload sa bawat pagkakataon.

Para sa unang smoke test, gumawa kami ng malilinis na major at minor na progression sa lahat ng 12 root. Ibinalik ng internal detector ang inaasahang key sa 24 sa 24 na kontroladong kaso. Patunay iyan na kaya ng bagong lohika ang batayang paghahati ng major/minor. Hindi nito pinapatunayan na lutas na ang bawat totoong kanta.

Bakit hindi na lang ilipat ang lahat sa isang mabigat na external engine ngayon?

Tiningnan namin ang mga open-source na tool sa key detection. May malakas na key extractor ang Essentia at nakakonekta ito bilang opsyonal na backend path para sa kontroladong pagsubok. Hindi pa ito bahagi ng default na web dependency set dahil kailangang manatiling sinasadya at pinag-iisipan ang production licensing, packaging, at runtime cost.

Nananatiling maliit at nasusuri ang default na path. Iyan ang tamang tradeoff para sa release na ito: ayusin ang malinaw na uri ng bug, panatilihing madaling i-debug ang output, at mag-iwan ng puwang para i-benchmark ang mas malalakas na engine gamit ang totoong mga kanta bago sila gawing operational.

Ano ang aasahan sa resulta

Dapat mas mahusay na ngayon ang Harmonic section sa paghihiwalay ng magkakaugnay na major at minor key. Kung malinaw na nasa A minor ang kanta mo, hindi na kailangang gawin itong C ng analyzer dahil lang nagpapatong ang mga pitch class.

Kapag mukhang mali pa rin ang resulta, ang pinakamahusay na bug report ay ang mismong kanta o report kasama ang inaasahang key. Sa ganoon, maikukumpara namin ang na-detect na key, mga nangungunang kandidato, chroma na ebidensya, at anumang musical na edge case sa halip na manghula mula sa alaala.

FAQ

Ginagarantiya ba nito ang tamang key para sa bawat kanta?

Hindi. Pinapahusay nito ang default na tantiya, lalo na sa kalabuan ng major laban sa minor, pero ang totoong mga kanta ay puwedeng magpalit ng key o umiwas sa iisang matatag na tonic.

Na-verify ba ninyo ang dalawang iniulat na kanta?

Hindi. Hindi available ang mismong mga file habang ginagawa ang ayos na ito, kaya na-verify namin ang detector sa kontroladong audio na kilala ang key at nagdagdag kami ng benchmark path para sa totoong mga kantang may label.

Gagamitin ba ng Mixanalytic ang Essentia para sa key detection?

Posible. Handa na para sa pagsubok ang opsyonal na backend path, pero pinapanatili ng default na release ang internal detector hanggang sa mabigyang-katwiran ng licensing, packaging, at mga resulta ng benchmark sa totoong kanta ang paglipat.