Windows bukan OS waktu nyata, jadi Anda tidak memiliki kemampuan pemrosesan waktu nyata yang sebenarnya di Windows.
Dengan Windows Vista, Microsoft menawarkan API baru yang antara lain menargetkan kinerja yang ketat, di mana Aliran Mode Eksklusif menjanjikan kinerja yang mendekati waktu nyata. Ini dicapai dengan beberapa hal kuat yang bekerja bersama, termasuk jalur pendek dan eksklusif ke perangkat keras audio dari komponen mode pengguna, penjadwalan multimedia tertentu. Izinkan saya mengutip Wiki tentang ini:
Untuk profesional audio, driver port WaveRT baru telah diperkenalkan yang berusaha untuk mencapai kinerja real-time dengan menggunakan penjadwal kelas multimedia dan mendukung aplikasi audio yang mengurangi latensi stream audio. Akibatnya, aplikasi mode pengguna dapat sepenuhnya mengatur aliran audio tanpa eksekusi kode apa pun di kernel selama runtime. WaveRT memungkinkan aplikasi mode pengguna akses langsung ke buffer perangkat keras audio internal dan penghitung posisi sampel (data dalam memori yang dipetakan ke mesin DMA perangkat keras audio). Ini memungkinkan aplikasi untuk menyurvei posisi saat ini di jendela memori DMA yang diakses perangkat keras. WaveRT juga mendukung gagasan acara pemberitahuan jam yang dihasilkan perangkat keras, mirip dengan ASIO API, sehingga aplikasi tidak perlu polling untuk posisi saat ini jika mereka tidak mau. Namun WaveRT hanya bekerja dengan PCI, PCI Express atau perangkat audio onboard; itu tidak bekerja dengan antarmuka USB atau FireWire yang lebih luas di industri audio profesional.
Mode operasi baru ini membuka peluang menarik untuk pemrosesan audio latensi rendah, seperti dilaporkan oleh pengguna yang bahagia :
Saya mendapatkan audio solid solid rock yang sempurna dengan buffer 2ms + latensi 0,5ms, dibandingkan dengan audio semi-stabil di buffer 4ms (+ latensi keluaran 5ms), dengan ASIO.
Bergantung pada apakah perkiraan waktu nyata ini baik untuk Anda, Windows mungkin masih merupakan lingkungan yang baik untuk tugas yang disebutkan.
Apakah ini mungkin atau tidak tergantung pada persyaratan latensi Anda, yaitu penundaan total antara input dan output. Titik awal yang baik dapat menyiapkan stasiun kerja audio digital menggunakan perangkat lunak perekaman seperti ProTools, Sonar, Ableton, Cubase dll. Ini bekerja dengan perangkat I / O (semacam) yang murah dan dilengkapi dengan driver yang dioptimalkan dengan latensi rendah. Beberapa di antaranya memiliki "plug in" antarmuka yang memungkinkan Anda untuk loop dalam pemrosesan sinyal Anda sendiri. Format populer adalah VST dari Steinberg yang didukung oleh banyak host. Dulu terbuka dan gratis tetapi mungkin memerlukan lisensi sekarang.
Http://www.kvraudio.com/wiki/ ini adalah sumber yang bagus untuk hal semacam itu.
Jika Anda ingin memproses di Matlab, Anda mungkin harus menulis driver sendiri. Saya telah melihat hal itu dilakukan dengan DLL dan juga antarmuka JAVA asli. Anda juga dapat meretas sesuatu bersama dengan audioplayer () dan audiorecorder () tetapi ini mungkin memerlukan latensi yang cukup tinggi untuk menangani interupsi Windows dan melakukan hal-hal lain. Intinya, Anda menyiapkan kontrol GUI dengan panggilan balik yang dipicu waktu. Dalam panggilan kembali Anda membaca semua input yang tersedia, memprosesnya, mendorongnya ke dalam output dan berharap yang terbaik.
Secara umum itu membantu untuk menjaga kotak Windows sebagai "bersih" mungkin, yaitu tidak ada koneksi jaringan (saat Anda memproses audio), tidak ada perangkat lunak anti-virus dan hanya menjalankan minimum mutlak item start up, perangkat lunak & layanan.
sumber