Recording Impulse Responses for Speaker Virtualization
Apr 19, 2022 at 6:01 AM Post #1,246 of 1,817
Nah, too much latency for that to be acceptable, in my opinion. I actually ended up buying a cheap 7.1 soundcard that can output via SPDIF and I use that whenever I want 7.1 surround. I've not yet tried the Hifi cable method with ASIO support but this is my first time hearing about it and it sounds like the best way to go. I'll give it a shot sometime this week.



Honestly, your own measurements look GREAT, I don't think you need to get the left and right any tighter in tolerance. That has a relatively minor affect on the results you hear because Impulcifer is automatically compensating for that variance so you don't hear it as being "off" balance. I've had plots that measure +/-7 dB on one side and it still sounded perfectly centered.




I don't even bother using Impulcifer's room correction - not because it isn't good, but because it's so easy to fix any EQ problems after the measurement is made. I load an EQ VST into EQ-APO (I use Pro-Q 3 but any will work), then I make the necessary corrections while listening to music through the BRIR I'm correcting - and by looking at APO's charts - and then when I am happy with the EQ I burn it to a new .wav file by opening the original in Audacity and applying that same EQ correction. Its MUCH easier to do this than it is for me to go through the whole 14-stage measurement mic process and the results are just as good, in my experience.



You can easily adjust the balance issue you mention here (slightly to the right) by processing the BRIR with the --channel_balance=-0.5 or whatever number you want. That parameter adjusts the right channel, so if the right is too loud you can use a minus number to bring it back down so that the left sounds equal, therefor centering the stereo image.

Have you tried using reverb management? If not then I HIGHLY recommend it, it works amazingly well and will definitely reduce the amount of reverb you hear.

Here's an example of what it looks like:
python research\reverberation-management\reverberation_management.py --file="data/my_hrir/69th-Ananda-10K.wav" --track_order=hesuvi --reverb=800

The number at the end is the target length of the resulting reverb tail in milliseconds. 800ms is a good starting point for small rooms, in my opinion.
thanks, i will try the channel balance you mentioned

Honestly i would try to fix the reverb from its root before cutting the frequencies, because my room is pretty empty so it causes so much reverb (never had this much reverb in a room in my life, seems like a damn underground parking) and because of that i think is almost impossible to cut it out with post processing without losing details, i will tru to put some duvets and then eventually cutting the remaining reverb
 
Last edited:
Apr 19, 2022 at 8:43 AM Post #1,248 of 1,817
When you guys say VBCABLE gives too much latency do you mean the audio is out of sync with the video and needs to be matched. Or can this effect the surround effect too in a negative way?
Audio not in sync with the video due to the time the pc has to process it with vbcable, affects everything if you're using vbcable (or whatever alternative software) to process it, it's like a stereo mix... there are two ways to "fix" it tho:

the 1st way is like @Brandon7s said, you have to use an audio card that already have 7.1, meaning that the processing to do the stereo-to-7.1 is directly processed by the chip inside the audio card (HARDWARE SIDE) that's the fastest way, but in this situation you're restricted to some audio cards

the 2nd way is like i did, using hifi cable that uses ASIO to process the stereo-to-7.1 (SOFTWARE SIDE), this case is NOT perfect, there's still some delay but is faster and the pros is that you can use whatever audio card you want; beware that with this method you should have a dac to manually control the audio gain because asio will completely disable the master audio control of windows

sometimes could be only a psicologic matter because people won't notice delay even with vbcable...
 
Last edited:
Apr 19, 2022 at 8:57 AM Post #1,249 of 1,817
Audio not in sync with the video due to the time the pc has to process it with vbcable, affects everything if you're using vbcable (or whatever alternative software) to process it, it's like a stereo mix... there are two ways to "fix" it tho:

the 1st way is like @Brandon7s said, you have to use an audio card that already have 7.1, meaning that the processing to do the stereo-to-7.1 is directly processed by the chip inside the audio card (HARDWARE SIDE) that's the fastest way, but in this situation you're restricted to some audio cards

the 2nd way is like i did, using hifi cable that uses ASIO to process the stereo-to-7.1 (SOFTWARE SIDE), this case is NOT perfect, there's still some delay but is faster and the pros is that you can use whatever audio card you want; beware that with this method you should have a dac to manually control the audio gain because asio will completely disable the master audio control of windows

sometimes could be only a psicologic matter because people won't notice delay even with vbcable...
I have the delay with VBCABLE but compensate by setting the audio delay in my mpc hc player. Music and gaming I don’t notice any delay. VBCABLE is the only solution that works for me unless I buy a sound card. So if it’s just delay then I should be ok sticking with what’s working.
 
Apr 19, 2022 at 9:30 AM Post #1,250 of 1,817
I have the delay with VBCABLE but compensate by setting the audio delay in my mpc hc player. Music and gaming I don’t notice any delay. VBCABLE is the only solution that works for me unless I buy a sound card. So if it’s just delay then I should be ok sticking with what’s working.
if you're not hearing sound popping you're okay... why don't you try hi fi cable? you can swap back to vbcable in any time, is not invasive and you can have both installed
 
Apr 20, 2022 at 1:54 AM Post #1,251 of 1,817
Been dabbling with Impulcifer for a past couple weeks and even testing with my first few tries I am getting results far beyond all the artificial "3D" surround virtualizations I've ever tried. Awesome project!

Does anyone know how to load HRIRs into EQ-APO directly without Hesuvi? I am only interested in stereo so dont really use any features of Hesuvi. EQ-APO can load impulse response files using the "convolution with impulse" advanced filter but it seems to only convolve the left speaker. A couple free convolution VSTs I've tried do the same thing. I suspect I may be able to get around the issue by creating separate L/R HRIRs but Impulcifer gives an error in the processing command if you do not have at least FL AND FR.wav files it seems.
 
Apr 20, 2022 at 6:32 AM Post #1,253 of 1,817
Been dabbling with Impulcifer for a past couple weeks and even testing with my first few tries I am getting results far beyond all the artificial "3D" surround virtualizations I've ever tried. Awesome project!

Does anyone know how to load HRIRs into EQ-APO directly without Hesuvi? I am only interested in stereo so dont really use any features of Hesuvi. EQ-APO can load impulse response files using the "convolution with impulse" advanced filter but it seems to only convolve the left speaker. A couple free convolution VSTs I've tried do the same thing. I suspect I may be able to get around the issue by creating separate L/R HRIRs but Impulcifer gives an error in the processing command if you do not have at least FL AND FR.wav files it seems.
There’s a post by @musicreo a few pages back with a txt file for eqapo that might help you. Unfortunately when I try it I get no sound
 
Apr 20, 2022 at 2:25 PM Post #1,254 of 1,817
Does anyone know how to load HRIRs into EQ-APO directly without Hesuvi? I am only interested in stereo so dont really use any features of Hesuvi. EQ-APO can load impulse response files using the "convolution with impulse" advanced filter but it seems to only convolve the left speaker. A couple free convolution VSTs I've tried do the same thing. I suspect I may be able to get around the issue by creating separate L/R HRIRs but Impulcifer gives an error in the processing command if you do not have at least FL AND FR.wav files it seems.
If you're using the default post-count-per-page settings here then you can follow along with the conversation from @musicreo on page 71. I'm going to try this out myself when I have the time. Here's the main post explaining the process:
Just to clarify, HESUVI is only a gui for EQ-APO. You can use EQ-APO also without HESUVi. For example you can save code as txt file and load it in EQ-APO. This can look like this:

#Common preamp
Preamp: 0 dB
# L=Left ; R=Right C=Center; SUB=LFE; SL=Left Surround; RL=Right Surround, RL=Rear Left; RR=Rear Right
#Create virtual speaker channels
Copy: L0=L R1=L L1=R R0=R C0=C C1=C SUB0=SUB SUB1=SUB SL0=SL SR1=SL SL1=SR SR0=SR RL0=RL RR1=RL RL1=RR RR0=RR
#Mute Input Channels

Copy: L=0 R=0 C=0 SUB=0 RL=0 RR=0 SL=0 SR=0
#virtual channels that are filtered
Channel: L0 R1 L1 R0 C0 C1 SUB0 SUB1 SL0 SR1 SL1 SR0 RL0 RR1 RL1 RR0

# Channel: LL LR RL RR CL CR LFEL LFER SLL SLR SRL SRR BLL BLR BRL BRR
#Folder of Convolution files complete folder name or if files in config "\...."

Convolution: C:\Program Files\EqualizerAPO\config\conVT\210110-A7-M21-FC3-T500(L-R-C-LFE-LS-RS-LB-RB).wav
#Corrections
Channel: C1
#Preamp: 0 db
Filter 1: ON PK Fc 126.5 Hz Gain -1.30 dB Q 3.523
Channel: R0
Preamp: -1db

#RR->LL
Filter 1: ON PK Fc 71.00 Hz Gain -9.00 dB Q 11.519

Copy: L=L0+L1+C0+2*SUB0+SL0+SL1+RL0+RL1 R=R1+R0+C1+2*SUB1+SR1+SR0+RR1+RR0


This way you can even apply filter settings on every (virtual) channel which is not possible with HESUVI. Also that way it would be possible to use internally more than 7.1 channels.

By the way, I gave Hi-fi ASIO Bridge Virtual Cable a try and it works very well on my system. The latency is FAAAR better than using the "listen to this device" feature built into Windows. I'll probably continue to use the separate soundcard I bought just for 7.1 access, but if I didn't have that then I'd use the Hifi VC method in a heartbeat.
 
Apr 20, 2022 at 2:58 PM Post #1,255 of 1,817
If you're using the default post-count-per-page settings here then you can follow along with the conversation from @musicreo on page 71. I'm going to try this out myself when I have the time. Here's the main post explaining the process:
Yep, thanks for pointing out that code from @musicreo, that did the trick. I just deleted the channels I wasnt using.

Another thing I have been experimenting with are tactile transducers. Does anyone know if it is possible to have two simultaneous hardware outputs, one wet (HRIR convolved) and one dry to send to the transducer? I used voicemeeter banana to achieve this testing on plain unprocessed audio and the results are VERY convincing if you want to make your listening more speaker-like. I am using the Clark Synthesis transducer, and IMO these are ideal for audio because unlike other "buttkicker" type transducers, these are intended to be run full-range. So what you end up feeling through body are the visceral hits from bass notes but also all the subtleties from every other frequency just as you would from a speaker with moving air. In essence, you are "listening" as much with your body as your ears. I think this is an important aspect of what makes a speaker sound like a speaker and often gets overlooked. Unfortunately I cant figure out a way for Voicemeeter to work with EQ-APO and have an unprocessed output together with a APO processed output.
 
Apr 20, 2022 at 3:21 PM Post #1,256 of 1,817
Yep, thanks for pointing out that code from @musicreo, that did the trick. I just deleted the channels I wasnt using.

Another thing I have been experimenting with are tactile transducers. Does anyone know if it is possible to have two simultaneous hardware outputs, one wet (HRIR convolved) and one dry to send to the transducer? I used voicemeeter banana to achieve this testing on plain unprocessed audio and the results are VERY convincing if you want to make your listening more speaker-like. I am using the Clark Synthesis transducer, and IMO these are ideal for audio because unlike other "buttkicker" type transducers, these are intended to be run full-range. So what you end up feeling through body are the visceral hits from bass notes but also all the subtleties from every other frequency just as you would from a speaker with moving air. In essence, you are "listening" as much with your body as your ears. I think this is an important aspect of what makes a speaker sound like a speaker and often gets overlooked. Unfortunately I cant figure out a way for Voicemeeter to work with EQ-APO and have an unprocessed output together with a APO processed output.
That is a fascinating idea and I'm interested in trying it myself. I'm not experienced enough in using EQ-APO to setup the signal chain as you describe, but setting up a parallel signal chain that does not run through convolution should certainly be possible within APO itself, then it'd just be a matter of routing the dry signal to a separate output from the HRIR-processed signal.
 
Last edited:
Apr 20, 2022 at 8:44 PM Post #1,257 of 1,817
If you're using the default post-count-per-page settings here then you can follow along with the conversation from @musicreo on page 71. I'm going to try this out myself when I have the time. Here's the main post explaining the process:


By the way, I gave Hi-fi ASIO Bridge Virtual Cable a try and it works very well on my system. The latency is FAAAR better than using the "listen to this device" feature built into Windows. I'll probably continue to use the separate soundcard I bought just for 7.1 access, but if I didn't have that then I'd use the Hifi VC method in a heartbeat.
i use the topping d10s with its asio drivers that let me set the buffer even at 64 (hi fi asio minimum is 512), so i get even less latency
 
Apr 20, 2022 at 8:48 PM Post #1,258 of 1,817
Yep, thanks for pointing out that code from @musicreo, that did the trick. I just deleted the channels I wasnt using.

Another thing I have been experimenting with are tactile transducers. Does anyone know if it is possible to have two simultaneous hardware outputs, one wet (HRIR convolved) and one dry to send to the transducer? I used voicemeeter banana to achieve this testing on plain unprocessed audio and the results are VERY convincing if you want to make your listening more speaker-like. I am using the Clark Synthesis transducer, and IMO these are ideal for audio because unlike other "buttkicker" type transducers, these are intended to be run full-range. So what you end up feeling through body are the visceral hits from bass notes but also all the subtleties from every other frequency just as you would from a speaker with moving air. In essence, you are "listening" as much with your body as your ears. I think this is an important aspect of what makes a speaker sound like a speaker and often gets overlooked. Unfortunately I cant figure out a way for Voicemeeter to work with EQ-APO and have an unprocessed output together with a APO processed output.
oh WOW i want to do that!!!

I was planning to buy a subwoofer to feel the bass vibration when using headphones but your way is intriguing me even more... can you explain better how you set up this experiment?
 
Apr 20, 2022 at 9:34 PM Post #1,259 of 1,817
oh WOW i want to do that!!!

I was planning to buy a subwoofer to feel the bass vibration when using headphones but your way is intriguing me even more... can you explain better how you set up this experiment?
The tactile transducer is essentially a speaker without the speaker cone that you bolt onto the frame of your listening seat and is powered by a speaker amp. Your seat then becomes the cone and vibrates as you would expect a cone to. The one I use (clark synthesis) is designed to run full-range but you could easily set up a filter if you only wanted the lower end of the spectrum. Personally I think running it full-range increases the immersion even more.

It is a great alternative to a subwoofer since the vibrations are felt directly as opposed to traveling through the air. You also don't have to worry about room modes or disturbing your neighbors when cranking it up. Granted, it is not silent since your chair will act as a speaker of sorts but fortunately it's not terribly loud since a chair is heavy and dense, which is the opposite of what makes a good speaker cone!

To hook it up, you would need a parallel output to send to the transducer. Ideally this would not be processed by HRIR or anything else (other than possibly a low pass filter and EQ) hence my original question. This works great with regular headphone listening but I have not been able to figure out how to use HRIR convolution on one output while also having a parallel dry output for the transducer.
 
Apr 20, 2022 at 11:42 PM Post #1,260 of 1,817
The tactile transducer is essentially a speaker without the speaker cone that you bolt onto the frame of your listening seat and is powered by a speaker amp. Your seat then becomes the cone and vibrates as you would expect a cone to. The one I use (clark synthesis) is designed to run full-range but you could easily set up a filter if you only wanted the lower end of the spectrum. Personally I think running it full-range increases the immersion even more.

It is a great alternative to a subwoofer since the vibrations are felt directly as opposed to traveling through the air. You also don't have to worry about room modes or disturbing your neighbors when cranking it up. Granted, it is not silent since your chair will act as a speaker of sorts but fortunately it's not terribly loud since a chair is heavy and dense, which is the opposite of what makes a good speaker cone!

To hook it up, you would need a parallel output to send to the transducer. Ideally this would not be processed by HRIR or anything else (other than possibly a low pass filter and EQ) hence my original question. This works great with regular headphone listening but I have not been able to figure out how to use HRIR convolution on one output while also having a parallel dry output for the transducer.
does he need only one line? i have the spdif out in my card so i should be able to try and see if he does the process before the hrir takes process

510mUWC6pOS._AC_SL1007_.jpg


what if i setup two of these trasducers in one output, maybe woth a splitter?
 

Users who are viewing this thread

Back
Top