Di suatu tempat di rantai antara input analog kartu suara dan sampel yang Anda rencanakan, pasti ada filter lowpass. Kemungkinan ada filter anti-aliasing analog sebelum ADC; selain itu, kemungkinan ada satu atau lebih filter lowpass yang diterapkan selama proses resampling baik pada kartu atau dalam tumpukan driver audio sistem operasi (menghasilkan aliran sampel pada laju sampel yang Anda minta).
Seperti yang Anda perhatikan, filter lowpass sering memiliki respons impuls yang menyerupai a tulusfungsi. Ketika Anda menggairahkan sistem linear dengan impuls, output yang dihasilkan hanyalah salinan dari respons impuls sistem (karena teorema konvolusi ). Jadi, fakta bahwa sinyal yang diamati terlihat seperti atulusfungsi diharapkan. Itu tidak terdengar seperti ini mengejutkanmu juga.
Namun : Anda tidak mengamati perilaku nonkausa. Jika sudah, maka Anda harus segera lari ke kantor paten setempat. Sistem non-sebab tidak dapat direalisasikan di dunia nyata. Ingat definisi: agar respons suatu sistem menjadi nonkausa, outputnya harus memimpin input tepat waktu. Dengan kata lain, filter akan mulai mengeluarkan responsnya terhadap input sebelum Anda memasukkan input. Jelas, itu tidak akan terjadi.
Jadi ada apa dengan pra-dering? Sederhana: lonjakan besar di tengah sesuai dengan pusat respons impuls filter. Namun, lonjakan itu tidak sesuait = 0, waktu impuls dimasukkan ke dalam filter. Pertimbangkan contoh MATLAB berikut:
% generate a 250th order lowpass filter
b = fir1(250, 0.5);
% plot its impulse response
plot(0:250, b); grid on;
Plot yang dihasilkan terlihat seperti ini:
Seperti yang Anda lihat, puncak dalam plot bukan pada indeks sampel nol. Filter memiliki keterlambatan keseluruhan dari 125 sampel (memang, semua filter FIR fase-linear memiliki penundaan massalN2 sampel, dimana Nadalah urutan filter), dan dering sebelum dan sesudah dipusatkan tentang penundaan itu. Jadi, ketika Anda memasukkan impuls, awalnya Anda hanya melihat sedikit respons. Ketika impuls masuk melalui keran filter, dering meningkat hingga puncaknya di pusat respons impuls, kemudian turun kembali ke nol.
Bawaannya: Tidak ada perilaku non-sebab dalam contoh yang Anda berikan. Dimungkinkan untuk mensimulasikan filter nonkausa dalam praktiknya dengan menambahkan cukup banyak penundaan, mirip dengan penundaan yang ditunjukkan dalam respons impuls filter lowpass di atas.