{"id":651,"date":"2006-08-10T10:33:20","date_gmt":"2006-08-10T07:33:20","guid":{"rendered":"https:\/\/yehar.com\/blog\/?p=651"},"modified":"2009-09-13T10:35:23","modified_gmt":"2009-09-13T07:35:23","slug":"impulse-response-measurements","status":"publish","type":"post","link":"https:\/\/yehar.com\/blog\/?p=651","title":{"rendered":"Impulse response measurements"},"content":{"rendered":"<p>2006\/08\/10<\/p>\n<p>To measure the impulse response of a noisy system, you don't want to just  send an impulse and see what comes out. Instead, you will play a signal  that has succifiently high energy (long instead of loud), record the outcome and deconvolve from it your original signal, giving you the impulse response.<\/p>\n<h2>Golay codes<\/h2>\n<p><img decoding=\"async\" src=\"http:\/\/www.student.oulu.fi\/%7Eoniemita\/dsp\/ir\/neloflat.gif\" alt=\"\" align=\"right\" \/> I measured these impulse responses from the home audio system of my  friend Mikko Nelo at his city flat (check the pic for an overview.  There might have been a subwoofer somewhere too, but I don't  remember...). Hehe, at least the bass is there. Miniature microphones  were plugged into my ears, a minidisc recorder operated as a pre-amp  and a laptop I borrowed from work as the player\/recorder. A lengthy  <a href=\"http:\/\/yehar.com\/blog\/wp-content\/uploads\/2009\/09\/golay.txt\">pair of Golay codes<\/a> was used as the measurement signal  because that way it was easy to deconvolve with existing tools.  The following measurements are in binaural stereo 44100Hz 16bit WAV:  <a href=\"http:\/\/yehar.com\/blog\/wp-content\/uploads\/2009\/09\/ir_left.wav\">ir_left.wav<\/a> (158kB),  <a href=\"http:\/\/yehar.com\/blog\/wp-content\/uploads\/2009\/09\/ir_right.wav\">ir_right.wav<\/a> (112kB),  <a href=\"http:\/\/yehar.com\/blog\/wp-content\/uploads\/2009\/09\/ir_mono.wav\">ir_mono.wav<\/a> (113kB). Here's a piece of music  unprocessed\/processed to demonstrate the use of the impulse responses:  <a href=\"http:\/\/yehar.com\/blog\/wp-content\/uploads\/2009\/09\/irtest.mp3\">irtest.mp3<\/a> (559kB). Headphones required!<\/p>\n<h2>Chirp signals<\/h2>\n<p>Any signal with a perfectly flat frequency content can be deconvolved by convolving with its reverse. Chirp signals (a.k.a. frequency sweeps)  made using IFFT can be perfectly flat in the periodic signal sense.  Here is such a 65536-sample chirp:  <a href=\"http:\/\/yehar.com\/blog\/wp-content\/uploads\/2009\/09\/chirp64k.wav\">chirp64k.wav<\/a> <strong>(WARNING: SOUNDS NASTY)<\/strong>. It can be used to analyze up to one second impulse responses. You must play the chirp signal in a loop a few times, record the result, deconvolve, and pick one of the middle  impulse responses. Using this method, I have made inverse filters for headphones, which can be used for example with the RealReverb plugin for WinAmp.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>2006\/08\/10 To measure the impulse response of a noisy system, you don&#8217;t want to just send an impulse and see what comes out. Instead, you will play a signal that has succifiently high energy (long instead of loud), record the outcome and deconvolve from it your original signal, giving you the impulse response. Golay codes &hellip; <a href=\"https:\/\/yehar.com\/blog\/?p=651\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Impulse response measurements&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":3564,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[],"_links":{"self":[{"href":"https:\/\/yehar.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/651"}],"collection":[{"href":"https:\/\/yehar.com\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/yehar.com\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/yehar.com\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/yehar.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=651"}],"version-history":[{"count":0,"href":"https:\/\/yehar.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/651\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/yehar.com\/blog\/index.php?rest_route=\/wp\/v2\/media\/3564"}],"wp:attachment":[{"href":"https:\/\/yehar.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=651"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/yehar.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=651"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/yehar.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=651"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}