Pertanyaan saya adalah: Model matematika apa dari suara polifonik yang memungkinkan perubahan (yaitu perubahan nada) dari not musik individual dalam rekaman audio multi-suara-dalam-saluran tunggal dari alat musik akustik polifonik? Dengan 'mengubah catatan dalam audio polifonik', maksud saya melakukan sesuatu seperti mengedit suara dengan apa yang disebut fitur ' Akses Catatan Langsung ' dalam perangkat lunak Melodyne dari celeony.
Menurut wikipedia , apa yang Melodyne gunakan untuk memodelkan sinyal audio dari melodi satu baris yang dimainkan pada alat musik akustik (dan dengan demikian rumit secara timbal) adalah sesuatu seperti yang dijelaskan oleh Henning Thielemann dalam makalahnya yang berjudul ' Melawan fase dan waktu dalam suara monofonik ' Namun, Saya tidak dapat menemukan referensi ke model sinyal audio dari alat musik polifonik; menurut sebuah wawancara di Youtube Peter Neubacker (ditranskripsikan di bawah), fitur Melodyne untuk berurusan dengan pengeditan audio polifonik membutuhkan pendekatan yang tidak seperti yang dijelaskan oleh Thielemann.
Satu petunjuk dari klip youtube lain adalah bahwa model Neubacker bekerja lebih baik dengan rekaman audio dari satu JENIS instrumen saja (yaitu hanya piano, hanya gitar, hanya string, hanya angin, dll). Petunjuk lain adalah klip lain yang menunjukkan kemampuan untuk tidak hanya menggeser nada not tetapi juga waktu (mulai dan berakhir) itu.
Di bawah ini adalah transkrip video youtube yang menyebutkan bahwa 'materi polifonik membutuhkan pendekatan yang berbeda' (jika Anda tidak punya waktu untuk menontonnya mulai pukul 22:00).
Pertanyaannya, darimana Melodyne muncul: bagaimana saya bisa mendapatkan suara dari bentuk 3 dimensi seperti ini [memberi isyarat dengan batu di tangan]? Dengan cara apa, suara kemudian dapat dibebaskan dari ketergantungannya pada waktu terus menerus? Patung ini sebenarnya yang muncul dari ini ... Ini adalah sepotong plastik .... Ini berasal langsung dari data musik. Objek ini adalah [memetik catatan pada kecapi] catatan ini. Paling baik divisualisasikan seperti ini, dari kiri ke kanan. Waktu berjalan dalam arah ini [menunjuk kiri ke kanan]. Dan itu adalah amplitudo [memberi isyarat besar dan kecil dengan ibu jari yang menentang]. Jika saya mengubahnya, itu ... mewakili timbre dari suara ini pada setiap contoh yang diberikan. Anda dapat melihat dengan sangat jelas di sini sebuah struktur [menunjuk ke bagian melintang di bagian bawah patung] yang agak segitiga; itu karena dalam suara ini,
Karena Melodyne belum ada dan saya hanya bereksperimen dengan terjemahan suara ke dalam bentuk ini, saya bekerja selama hampir satu tahun dengan suara yang satu ini. ... Saya tahu suara ini dari dalam dan luar dan dengan hati. Ini juga memberikan ilustrasi yang bagus tentang suara lokal. Saya bisa, tidak hanya memutar ulang suara [mengklik mouse], tetapi saya juga bisa memasukkan suara dari titik mana pun, dan bergerak melewatinya dengan pelan atau secepat yang saya mau. Saya bahkan bisa berlama-lama dalam suara, atau bergerak maju dan mundur, jadi jika saya memeriksa satu tempat di sini ... berkelilinglah. ... Sepuluh tahun yang lalu itu baru.
Baru-baru ini dna (akses catatan langsung) telah ditambahkan. Dengan itu, saya juga dapat mengedit musik polifonik. Dengan kata lain, saya dapat mengedit catatan yang terdengar secara bersamaan, seperti misalnya rekaman gitar. Jika sekarang saya memainkan akor kecil [memilih Poli -> Catatan Terpisah di layar], kita lihat di sini 3 catatan yang baru saja saya mainkan sebagai entitas terpisah. Mari kita dengarkan lagi [komputer memainkan akord minor]. Dan sekarang, seolah-olah dengan menggerakkan jari saya ke fret yang lebih tinggi, saya dapat menaikkan nada ini [menyeret catatan di layar ke atas; komputer memainkan kunci utama]. Untuk audio yang terbagi, saya dapat mengisolasi catatan ini, dan dapat memindahkannya ke atas atau ke bawah sesuka hati, ke nada apa pun yang saya inginkan.
Mengapa tidak ada yang bisa sebelumnya mengisolasi nada individu dalam bahan yang kompleks dengan cara ini? Sejujurnya aku tidak tahu. Dalam sains, kecenderungan alami adalah memulai dengan sesuatu yang sederhana, misalnya gelombang sinus, atau catatan individu, dan menganalisisnya terlebih dahulu, hanya untuk menemukan ketika bahan menjadi lebih kompleks, atau harus diperlakukan secara keseluruhan, bahwa sistem tidak bekerja Pendekatan saya berbeda. Saya benar-benar mulai dengan sinyal yang kompleks, dan hanya ketika saya ingin memeriksa sesuatu secara detail saya kembali ke yang lebih sederhana, tetapi pertama-tama, saya harus memiliki kesan keseluruhan tentang apa yang sebenarnya terjadi dalam kenyataan.
Apakah rahasianya mungkin terletak pada gulungan ini? Heheh, ini sebenarnya gulungan toilet. Pertanyaan yang awalnya diajukan oleh batu adalah bagaimana saya bisa menerjemahkan suara yang diberikan ke dalam bentuk tiga dimensi. Di sini, saya telah mengatur nilai sampling individu suara, ditunjukkan di sini oleh satu dua tiga dan seterusnya, dalam spiral. Dan ternyata, bahwa jika Anda menyisipkan di antara titik-titik [memberi isyarat melintasi spiral], sebuah lanskap muncul yang juga mewakili masing-masing bagian melintang dalam bunyi [memberi isyarat melintang bagian dari patung].
Berapa umur gulungan? 12 tahun. Jadi ide itu adalah sumber dari Melodyne, dari semua yang kita lihat hari ini ...? Ya, tetapi cara melipat suara ini tidak lagi berguna untuk bahan polifonik, yang membutuhkan pendekatan yang berbeda.
Jawaban:
TL; DR? Google Cendekia untuk pemisahan parsial harmonis .
Titik awal yang baik adalah teknik pemodelan sinusoidal yang memisahkan sinyal menjadi komponen sinus + noise (deterministic dan stochastic). Komponen deterministik, terdiri dari sinus, dapat disintesis ulang dengan meyakinkan:
http://mtg.upf.edu/files/projectsweb/sms-piano-original.wav
http://mtg.upf.edu/files/projectsweb/sms-piano-deterministic.wav
Sinus dikurangi dari sinyal dan bagian bising / stokastik tetap.
http://mtg.upf.edu/files/projectsweb/sms-piano-stochastic.wav
Bagian stokastik disintesis dengan menempatkan noise melalui beberapa filter pembentuk noise. Beberapa yang lain telah memperluas ini ke model transien sinus + noise + yang membantu menjaga fitur stokastik transien dalam peregangan waktu.
https://ccrma.stanford.edu/~jos/sasp/Sines_Noise_Modeling.html
http://mtg.upf.edu/technologies/sms
Setelah Anda memiliki parameter sinusoidal suatu sinyal, dimungkinkan untuk memisahkan sinus dari catatan yang tumpang tindih dengan mencari rasio harmonik dan pengelompokan berdasarkan onset, dll. Pelacakan parsial menghasilkan banyak hasil di Google Cendekia.
http://recherche.ircam.fr/equipes/analyse-synthese/lagrange/research/papers/lagrangeIcassp05.pdf
http://dream.cs.bath.ac.uk/software/sndan/mqan.html
Hidden Markov Models , polinomial , dan Macaulay-Quatieri adalah beberapa metode. Saya bingung tentang memisahkan stokastik sisa menjadi dua catatan. Saya tidak tahu bagaimana Melodyne mengatasi ini.
sumber
Pendekatan yang digunakan dalam melodyne membutuhkan 2 operasi domain frekuensi terpisah. Pertama, teknik transkripsi polifonik digunakan untuk mengelompokkan komponen frekuensi (dari transformasi frekuensi standar) audio polifonik menjadi aktivasi nada. Dengan kata lain, kelompok himpunan bagian harmonik menurut aktivasi catatan yang paling mungkin. Lihat respons saya terhadap pos "Inversi akor polifonik terbalik" di forum ini untuk referensi dan model matematika.
Operasi kedua adalah bahwa pergeseran pitch domain frekuensi dari himpunan bagian harmonik diekstraksi di atas. Saya tidak yakin tetapi saya hampir menjamin bahwa Melodyne menggunakan pendekatan fase vocoder untuk mencapai hal ini. Anda juga dapat melakukan peregangan waktu menggunakan teknik ini . Kami menggunakan teknik yang mirip dengan ini di Riffstation dan mereka bekerja dengan sangat baik.
sumber
Satu kemungkinan mungkin analisis / sintesis ulang menggunakan pendekatan pencocokan pola statistik. Jika Anda tahu atau dapat secara wajar menebak campuran instrumen yang terlibat dan memiliki templat (termasuk transien awal, spektrum plus evolusi spektral, dll.) Untuk bunyi instrumen untuk semua not yang diharapkan, Anda dapat mencoba pencocokan statistik dari sejumlah besar akord sehat kombinasi menggunakan pola suara templat untuk memperkirakan kombinasi polifonik yang paling mungkin. Ini kemungkinan besar akan menjadi pencarian yang sangat intensif secara komputasi untuk global minimum, di mana berbagai teknik pencarian mirip "AI" mungkin berguna. Anda kemudian dapat mengambil berbagai probabilitas akor individu dan kemudian menggunakan teori keputusan untuk memilih urutan polifonik yang paling mungkin dalam waktu.
Kemudian ambil nota yang diperkirakan dan sintesis ulang pada pitch dan durasi kunci yang Anda pilih.
sumber