Recording Impulse Responses for Speaker Virtualization
Dec 1, 2019 at 3:46 PM Post #181 of 1,816
I've noticed this myself too. Also a note of interest here is that I've never had reliable and perfect channel balance with any of my speaker systems, they always tend to lean towards right side (unless I compensate for it), just like these demo recordings. So maybe it has something to do with asymmetrical head and ear shape which isn't problem with sounds that originate from the actual physical source but isn't ideal with phantom center.

@Joe Bloggs You can also find the impulse responses now in the speaker balance graphs experiment folder without running Impulcifer here: https://github.com/jaakkopasanen/Impulcifer/tree/master/research/speaker-balance-graphs
Which would be the final IRs applied to each channel after all the measurements and compensations (incl.headphone compensations)?

Going by your previous description perhaps you need to align the cross-ear impulses in time for channel pairs as well as aligning the direct-ear impulses.

OTOH I've also read of a weird case from one person where delaying one channel rather than any volume balance centred the image for him (we guessed one of eardrums must be further inside his head than the other or something)

Might want to ask others if they experience any of your weirdness when using your demo files.
 
HiBy Stay updated on HiBy at their facebook, website or email (icons below). Stay updated on HiBy at their sponsor profile on Head-Fi.
 
https://www.facebook.com/hibycom https://store.hiby.com/ service@hiby.com
Dec 2, 2019 at 12:44 PM Post #182 of 1,816
Which would be the final IRs applied to each channel after all the measurements and compensations (incl.headphone compensations)?

Going by your previous description perhaps you need to align the cross-ear impulses in time for channel pairs as well as aligning the direct-ear impulses.

OTOH I've also read of a weird case from one person where delaying one channel rather than any volume balance centred the image for him (we guessed one of eardrums must be further inside his head than the other or something)

Might want to ask others if they experience any of your weirdness when using your demo files.
responses.wav is the unprocessed one and hrir.wav is the one with all the processing including headphone compensation. I've updated the responses.wav in that folder, the old one had the harmonic components still in it and the new one has them cropped out.

I don't think there should be a need to adjust interaural time differences because the delays between right and left channel are always correct so the ITD should be exactly correct in the measurement. Another thing is that channel balancing corrects the issue (mostly) so I don't think this is about timing problems.

Other interesting notes here are that adjusting volume with volume2 causes changes in the channel balance. Or at least that's how I perceive it. It's subtle but definitely it's doing something, or at least I hear it doing something. I don't know if there is an actual effect or if I'm just imagining it. I'll do some measurments to (dis)prove this hypothesis. The second thing is that I did HRIR measurements for my friend on Sunday and the headphone level difference for him was between 1 and 2 dB. Also his left and right side FRs were a lot more similar than mine. So maybe it's simply my weird ears that are doing this.
 
Dec 2, 2019 at 1:00 PM Post #183 of 1,816
This could be of relevance? https://www.audioholics.com/room-ac...ons-human-adaptation/what-do-listeners-prefer



I've never found phanton centers to be convincing. Headphones is the closest I've gotten to it being bang on with synthetic HRTFs and some of the ooyh presets and now Impulcifer. When I listen to my real system I always use Pro Logic to mix it to surround. I don't really like the rear channels much, but it does a great job of extracting the center image and that's better for multiple positions/seats. I've tried ffdshow audio and AC3 filter to do the same thing with stereo sources for HRTF. It works to an extent - but the Dolby Surround processor isn't as good as on my AVR.
Very interesting article! Something that caught my eye is this:
For optimum stereo listening if your music tastes are as eclectic as mine, one really needs adjustable acoustics and, possibly, variable-directivity loudspeakers, but we know that won’t happen.
Now imagine if there was a way to change room acoustics and speakers on the fly somehow. Like by simulating the whole thing and then simply switching the simulation model when needed... :wink:
 
Dec 2, 2019 at 1:13 PM Post #184 of 1,816
Exactly! I don't get why anyone into loud speakers isn't jumping all over this. That's why I'm really excited at the potential of the reverb time adjustment that you might implement in future. I could deaden the virtual room for movies - and open it up for music. Currently I kind of do that with the near field/mid field/far field measurements I have but because it's very obvious where the sound is coming from it has been hard to watch a movie with the nearfield ones. Although in pitch black, without visual cues it works well and it works outstandingly well in VR movie headsets.

I had an hour long listening session with my nearfield HRIR with various YouTube acoustic/unplugged tracks. There's no real practical way I can sit so close to my real speakers in that position. I find the acoustic ones contain all the room information I need. Then I listened to some regular studio stuff off Deezer - where I switched to my 1.5m mid field recording because I like the reflections.

Finally dragged my beastly B&W 803s into my office - going to take a measurement with those tomorrow. 40kg each - to be simulated on earphone that weigh 5.4 grams. Crazy!
 
Dec 7, 2019 at 8:00 PM Post #185 of 1,816
Is the final result stored as a single convoltion file playable by JRiver or Foobar 2000?
 
Dec 8, 2019 at 2:10 AM Post #186 of 1,816
Is the final result stored as a single convoltion file playable by JRiver or Foobar 2000?
The final result is single WAV file with 14 tracks, one per each speaker ear pair. I don't know what JRiver or Foobar expect but I could add support for those if the current one doesn't work.
 
Dec 8, 2019 at 5:04 AM Post #187 of 1,816
The final result is single WAV file with 14 tracks, one per each speaker ear pair. I don't know what JRiver or Foobar expect but I could add support for those if the current one doesn't work.
On foobar, you can use matrix mixer (foo_dsp_mm) to generate 14 input channels for the gapless convolver (foo_dsp_convolver_0.4.7) then mix it back into stereo.

For a wav file ordered in LL LR RL RR CL CR BLL BLR BRL BRR SLL SLR SRL SRR (where the last letter denotes the output channel and the preceding letters denote the surround channel) I've worked out the following separation and reconstitution matrices:

Separation
separation.PNG


Reconstitution
reconstitution.PNG


Of course, you'd want to put a resampler plugin in front of all this to make sure the convolver sees a constant sample rate.
 
Last edited:
HiBy Stay updated on HiBy at their facebook, website or email (icons below). Stay updated on HiBy at their sponsor profile on Head-Fi.
 
https://www.facebook.com/hibycom https://store.hiby.com/ service@hiby.com
Dec 8, 2019 at 5:17 AM Post #188 of 1,816
Or you can use the Convolver VST with resampler in front ( http://convolver.sourceforge.net/vst.html). Works also with direct show players.
There you have to create a txt file like this one:

Code:
48000 8 2 0
0 0 0 0 0 0 0 0
0 0
C:\Program Files\BinauralAudio\wav impulse responsefiles\48 Khz\7_1\Impulcifer\hrir.wav
0
0
0
C:\Program Files\BinauralAudio\wav impulse responsefiles\48 Khz\7_1\Impulcifer\hrir.wav
1
0
1
C:\Program Files\BinauralAudio\wav impulse responsefiles\48 Khz\7_1\Impulcifer\hrir.wav
2
1
0
C:\Program Files\BinauralAudio\wav impulse responsefiles\48 Khz\7_1\Impulcifer\hrir.wav
3
1
1
C:\Program Files\BinauralAudio\wav impulse responsefiles\48 Khz\7_1\Impulcifer\hrir.wav
4
2
0
C:\Program Files\BinauralAudio\wav impulse responsefiles\48 Khz\7_1\Impulcifer\hrir.wav
5
2
1
C:\Program Files\BinauralAudio\wav impulse responsefiles\48 Khz\7_1\Impulcifer\hrir.wav
6
3
0
C:\Program Files\BinauralAudio\wav impulse responsefiles\48 Khz\7_1\Impulcifer\hrir.wav
7
3
1
C:\Program Files\BinauralAudio\wav impulse responsefiles\48 Khz\7_1\Impulcifer\hrir.wav
8
4
0
C:\Program Files\BinauralAudio\wav impulse responsefiles\48 Khz\7_1\Impulcifer\hrir.wav
9
4
1
C:\Program Files\BinauralAudio\wav impulse responsefiles\48 Khz\7_1\Impulcifer\hrir.wav
10
5
0
C:\Program Files\BinauralAudio\wav impulse responsefiles\48 Khz\7_1\Impulcifer\hrir.wav
11
5
1
C:\Program Files\BinauralAudio\wav impulse responsefiles\48 Khz\7_1\Impulcifer\hrir.wav
12
6
0
C:\Program Files\BinauralAudio\wav impulse responsefiles\48 Khz\7_1\Impulcifer\hrir.wav
13
6
1
C:\Program Files\BinauralAudio\wav impulse responsefiles\48 Khz\7_1\Impulcifer\hrir.wav
14
7
0
C:\Program Files\BinauralAudio\wav impulse responsefiles\48 Khz\7_1\Impulcifer\hrir.wav
15
7
1
 
Dec 8, 2019 at 2:01 PM Post #190 of 1,816
Is there a way to combine the custom HTRF of Impulcifier with the head tracking of Redscape?
 
Dec 8, 2019 at 3:41 PM Post #192 of 1,816
HiBy Stay updated on HiBy at their facebook, website or email (icons below). Stay updated on HiBy at their sponsor profile on Head-Fi.
 
https://www.facebook.com/hibycom https://store.hiby.com/ service@hiby.com
Dec 8, 2019 at 5:22 PM Post #193 of 1,816
That's some seriously messed up channel order, where did you get it from?

The image is from the Hesuvi wiki "How-To Record Impulse Responses Digitally" https://sourceforge.net/p/hesuvi/wiki/How-To Record Impulse Responses Digitally/

Is there a reason why Hesuvi does not use the normal channel order (L/R/C/LFE/LS/RS/LB/RB)? It took me some time to figure out that the channel order is 1 2 9 10 13 14 5 4 3 12 11 16 15 6 but the image says it is 1 2 9 10 13 14 5 3 4 11 12 15 16 6
 
Dec 9, 2019 at 12:53 PM Post #194 of 1,816
Is it possible that the channel order in Hesuvi which is shown in this image is mixed up for all right speakers (first right ear (R-R) than left ear (R-L) seems to work for me and not R-L,R-R)? https://cdn-images-1.medium.com/max/800/1*whrx-d3gpnLBZ_Q1IuWIEg.png
HeSuVi indeed has odd track order and I don't know why. Impulcifer produces hesuvi.wav which has the impulse responses in the expected order. Here's what Impulcifer does in the code:

Code:
# Write multi-channel WAV file with HeSuVi track order
hrir.write_wav(
os.path.join(dir_path, 'hesuvi.wav'),
track_order=['FL-left', 'FL-right', 'SL-left', 'SL-right', 'BL-left', 'BL-right', 'FC-left', 'FR-right',
'FR-left', 'SR-right', 'SR-left', 'BR-right', 'BR-left', 'FC-right']
)

Based on that image the guide might have the order wrong. Impulcifer definitely has it right.
 
Last edited:
Dec 16, 2019 at 3:38 PM Post #195 of 1,816
I haven't found the answer but can you use impulcifer without having a fancy room and speakers? If I just buy the mics and record the sweeps? And then have those work in a virtual perfect room? I guess not because youre measuring the response of the speakers/room relative to your ears? I guess my best bet would find a friend or use a prepped room from a studio or even music store?
 

Users who are viewing this thread

Back
Top