IPB

Welcome Guest ( Log In | Register )

6 Pages V  « < 4 5 6  
Reply to this topicStart new topic
foo_convolve - Impulse response convolver, 'Mother of all effects' plugin
zappa
post Jun 19 2010, 11:43
Post #126





Group: Members
Posts: 3
Joined: 18-June 10
Member No.: 81615



QUOTE (lvqcl @ Jun 18 2010, 19:10) *
I always add resampler DSP just before convolver.


That is what I wanted to avoid!

I know there are different resampling plugins for Foobar2000 (SOX for instance). I briefly considered just having one convolving filter in 24/192 or 24/96 with SOX-resampling prior to foo_convolve.dll in the DSP-chain.

But ultimately my goal would be to have the convolved files streamed to the client without sample rate conversion. Which, as I said, would require filter files (and beforehand - acoustic measurement) in up to 4 different resolutions (16/44.1, 16/48, 24/96 and 24/192). I have a few FLAC files in 24 bit / 192 kHz, and lots in 24/96...

The reason is, I believe each resampling process potentially harms the signal. That is not just my personal opinion, but what many listening tests have shown... Plus, I have heard that resamplers have the biggest problems with material of a resolution which equals the one chosen as output resolution. Which would mean the worst performance on my HD material. I'd want to avoid that!

Granted, the most practical solution would be to first resample and then apply one high resolution filter file. Which is possible with the existing plugins. The audiophile approach is the more complex one, with multiple filters - one for each resolution. I hope to inspire someone to help make the latter possible...


Cheers, Martin
Go to the top of the page
+Quote Post
j_b
post Jul 19 2010, 19:06
Post #127





Group: Members
Posts: 33
Joined: 19-September 07
From: Santo, TX
Member No.: 47182



Martin,
Iím in the process of ripping my LP library and I noticed that some of my older LPs could benefit from a little EQ. So, having the need and not wanting to wait for someone else to do it, I wrote it my self: A convolver plugin that chooses the impulse file based on a track tag and the current sample rate.

It took me a couple days because I am just learning the Foobar API and I donít know C++. Most of the time was spent combing through example source code looking for bits that did what I needed. However, cutting and pasting invariably resulted in the compiler barfing or Foobar crashing. I donít know the secret incantations to make C++ do what I want. I ended up writing the whole thing is C, bypassing most of the Foobar API. As a result, the plugin probably breaks a lot of rules and restrictions the API is meant to enforce. It works for me, though, and thatís all I want.

Please donít ask me for a copy. What I did is experimental, just for me, and not release quality. Iím posting this to spur further development of foo_convolve to make it choose impulse files based on playing trackís tags and the current sample rate. On the other hand, if someone would point me to example code that can read the cached tags and read arbitrary audio files from the context of a DSP plugin, I could proceed and eventually produce something that could be shared.

Go to the top of the page
+Quote Post
odyssey
post Jul 19 2010, 19:35
Post #128





Group: Members
Posts: 2296
Joined: 18-May 03
From: Denmark
Member No.: 6695



QUOTE (j_b @ Jul 19 2010, 19:06) *
I wrote it my self: A convolver plugin that chooses the impulse file based on a track tag and the current sample rate.

w00t.gif wub.gif I had wet dreams about such feature in the convolver component!
QUOTE (j_b @ Jul 19 2010, 19:06) *
Please donít ask me for a copy. What I did is experimental, just for me, and not release quality. Iím posting this to spur further development of foo_convolve to make it choose impulse files based on playing trackís tags and the current sample rate. On the other hand, if someone would point me to example code that can read the cached tags and read arbitrary audio files from the context of a DSP plugin, I could proceed and eventually produce something that could be shared.

Please do! I love you blush.gif


--------------------
Can't wait for a HD-AAC encoder :P
Go to the top of the page
+Quote Post
tnkz15153
post Sep 10 2010, 05:28
Post #129





Group: Members
Posts: 1
Joined: 10-September 10
Member No.: 83749



Hello Garf ,
I hope you open the source code to the public.
Purpose:
・The recompile for the latest version.
・I want to remodel it to four channel output simultaneously.

(I am sorry by poor English. )
Go to the top of the page
+Quote Post
kode54
post Sep 10 2010, 06:15
Post #130





Group: Admin
Posts: 4576
Joined: 15-December 02
Member No.: 4082



QUOTE (tnkz15153 @ Sep 9 2010, 21:28) *
Hello Garf ,
I hope you open the source code to the public.

Not likely to happen, because:
QUOTE (tnkz15153 @ Sep 9 2010, 21:28) *
・The recompile for the latest version.

The version on the official components site already works with the latest foobar2000. Also, it requires a closed source commercial library to do the convolving.
QUOTE (tnkz15153 @ Sep 9 2010, 21:28) *
・I want to remodel it to four channel output simultaneously.

It should already support convolving as many channels input as long as the impulse has a matching number of channels.
Go to the top of the page
+Quote Post
Eliteforce
post Sep 24 2010, 23:00
Post #131





Group: Members
Posts: 73
Joined: 8-August 07
From: Austria
Member No.: 46033



I noticed a problem with certain impulse responses where the impulse is not the first sample.

Since such impulse responses introduce a delay the audio track will start a couple of samples later and the end will be cut-off early by the same number of samples

It would be nice to have an option to throw away the initial delay samples and end the track normally.


edit: Please note that changing the impulse responses is not an option, because it will alter the results. :/

This post has been edited by Eliteforce: Sep 24 2010, 23:11
Go to the top of the page
+Quote Post
Eliteforce
post Sep 26 2010, 00:03
Post #132





Group: Members
Posts: 73
Joined: 8-August 07
From: Austria
Member No.: 46033



Or instead of throwing away the initial delay samples / adding at the end maybe some kind of buffering and left shifting of the samples would work.
Go to the top of the page
+Quote Post
kode54
post Sep 26 2010, 00:42
Post #133





Group: Admin
Posts: 4576
Joined: 15-December 02
Member No.: 4082



Buffering would break gapless playback.

Another idea would be for you to add a silence:// track to the end of the conversion batch, and either convert all files to a single output track, or append them manually with an editor. Oh, and setting it to not reset the DSPs between tracks is essential for that manual padding to work.
Go to the top of the page
+Quote Post
Eliteforce
post Sep 26 2010, 10:46
Post #134





Group: Members
Posts: 73
Joined: 8-August 07
From: Austria
Member No.: 46033



Cutting each file manually after conversion with a wave editor. That's not the most comfortable workaround, is it? happy.gif

This post has been edited by Eliteforce: Sep 26 2010, 10:47
Go to the top of the page
+Quote Post
lvqcl
post Sep 26 2010, 11:05
Post #135





Group: Developer
Posts: 3325
Joined: 2-December 07
Member No.: 49183



And "Mix adjust" option doesn't work properly with such impulses...
Go to the top of the page
+Quote Post
edd
post Mar 23 2011, 17:41
Post #136





Group: Members
Posts: 5
Joined: 5-September 08
Member No.: 57947



Hi,

hereís one more guy whoíd like do convolve each stereo channel separately in order to simulate speaker over headphones. This thread doesnít look like the pluginís development is going on, but Iíll try to explain what would be necessary to do anyway:

A normal stereo recording has to channels. If you listen to it with speakers, you here both channels with both ears. Sounds like speakers do, including the room acoustics. Using headphones, you here the left channel with your left ear and the right channel with your right ear. Sounds sort of not so good.

In order to simulate speakers, the plugin would have to convert each stereo channel to a mono recording (which has two channels!), convolve the left two-channel mono signal with a stereo impulse response for sounds coming from the left (azimuth 30į), and convolve the right two-channel mono signal with a stereo impulse response for sounds coming from the right (azimuth 330į oder -30į). So each original stereo-channel has to be doubled, the twins have to be treated as stereo signals and convolved with a stereo impulse response (different ones for each twin couple/doubled stereo side), with makes the original stereo channel a new stereo signal. At the end, you have for channels, i.e. two stereo signals, which you have to mix. I hope my explanation isnít to confusing. One important conclusion is that this canít be done by combining the convolution plugin with a crossmixing plugin. This really wouldnít work, never ever.

And there still isnít any room response. What I described would sound as if your headphones were speakers in R≥, so, with no reflections at all, as long as the HRTF you use is really only an HRTF, not including room information.

I really would appreciate this functionality in the plugin, because it is a lot of work to open every music file in Audacity, exporting the channels separately as mono files, convolve-processing them with foobar2000 using HRTFs, mixing them together again in Audacity and exporting all this as a new music file, which has a certain HRTF inherent. This would mean to have two different verions of the whole music collection. blink.gif

I would instantly programm such a plugin for foobar2000, if I knew how.

It would be even greater though, to have this trick system wide, not only in foobar2000. Binaural phantasy.
Go to the top of the page
+Quote Post
odyssey
post Mar 23 2011, 17:57
Post #137





Group: Members
Posts: 2296
Joined: 18-May 03
From: Denmark
Member No.: 6695



QUOTE (edd @ Mar 23 2011, 17:41) *
A normal stereo recording has to channels. If you listen to it with speakers, you here both channels with both ears. Sounds like speakers do, including the room acoustics. Using headphones, you here the left channel with your left ear and the right channel with your right ear. Sounds sort of not so good.

There are tons of components for foobar2000 optimized for headphone usage and also ones that does exactly what you propose - Why would you need to use convolver, to achieve just that?


--------------------
Can't wait for a HD-AAC encoder :P
Go to the top of the page
+Quote Post
lvqcl
post Mar 23 2011, 18:34
Post #138





Group: Developer
Posts: 3325
Joined: 2-December 07
Member No.: 49183



@edd: http://www.hydrogenaudio.org/forums/index....showtopic=54966
Go to the top of the page
+Quote Post
edd
post Mar 23 2011, 19:00
Post #139





Group: Members
Posts: 5
Joined: 5-September 08
Member No.: 57947



QUOTE (odyssey @ Mar 23 2011, 18:57) *
QUOTE (edd @ Mar 23 2011, 17:41) *
A normal stereo recording has to channels. If you listen to it with speakers, you here both channels with both ears. Sounds like speakers do, including the room acoustics. Using headphones, you here the left channel with your left ear and the right channel with your right ear. Sounds sort of not so good.

There are tons of components for foobar2000 optimized for headphone usage and also ones that does exactly what you propose - Why would you need to use convolver, to achieve just that?

As I said, you have to convolve each stereo channel with two HRTFs in order to simulate speakers.

QUOTE (lvqcl @ Mar 23 2011, 19:34) *

That sounds great, have to look at it closer later on. Thanks!

BTW: Iíve tried the long way over Audacity with several music files. Sounds like speakers in an anechoic chamber (as itís supposed to), which sounds like Ö headphones. Almost. But it works. I need the RIR of a proper recording studio.
Go to the top of the page
+Quote Post
edd
post Mar 24 2011, 01:19
Post #140





Group: Members
Posts: 5
Joined: 5-September 08
Member No.: 57947



Unfortunately the plugin doesnít work anymore with foobar.
Go to the top of the page
+Quote Post
edd
post Mar 24 2011, 18:52
Post #141





Group: Members
Posts: 5
Joined: 5-September 08
Member No.: 57947



QUOTE (edd @ Mar 23 2011, 18:41) *
It would be even greater though, to have this trick system wide, not only in foobar2000. Binaural phantasy.

I made it (more or less), with JACK. Ingenious. I think, you donít even need the impulse response of a good recording studio/mixing studio. Youíll just notice, that some recordings sound strange without the reverb of a room.
Go to the top of the page
+Quote Post
romor
post Mar 26 2011, 12:30
Post #142





Group: Members
Posts: 668
Joined: 16-January 09
Member No.: 65630



QUOTE (kode54 @ Sep 10 2010, 06:15) *
It should already support convolving as many channels input as long as the impulse has a matching number of channels.

I can't make it to work:
QUOTE
Could not load impulse file (unexpected channel count).

Are you sure it's supported?


--------------------
scripts: http://goo.gl/M1qVLQ
Go to the top of the page
+Quote Post
Chesteta
post Mar 27 2011, 16:42
Post #143





Group: Members
Posts: 19
Joined: 24-December 10
Member No.: 86759



I use it all the time (Stereo Convolver 1.0.1) with version 1.1.5...

ahh, you werent talking about stereo convolver smile.gif just caught that

This post has been edited by Chesteta: Mar 27 2011, 16:44
Go to the top of the page
+Quote Post
AndreaT
post Dec 20 2012, 20:43
Post #144





Group: Members
Posts: 84
Joined: 15-May 12
From: Italy
Member No.: 99856



Hello Folks, as someone of you already stated, I confirm that the old 2006 plugin Convolver 0.3 doesn't work properly.

Please, is anyone there that could drive me to a good one for the current Foobar2000 v1.1 or the newer 1.2?


Thanks and regards, Andrea
Go to the top of the page
+Quote Post
mudlord
post Dec 21 2012, 02:21
Post #145





Group: Developer (Donating)
Posts: 805
Joined: 1-December 07
Member No.: 49165



QUOTE (edd @ Mar 24 2011, 11:52) *
QUOTE (edd @ Mar 23 2011, 18:41) *
It would be even greater though, to have this trick system wide, not only in foobar2000. Binaural phantasy.

I made it (more or less), with JACK. Ingenious. I think, you donít even need the impulse response of a good recording studio/mixing studio. Youíll just notice, that some recordings sound strange without the reverb of a room.


Or the idea of hooking DirectSound/Xaudio2/WinMM to make it in games/emulators sounds rather appealing....hmm....
Go to the top of the page
+Quote Post
Garf
post Dec 21 2012, 07:12
Post #146


Server Admin


Group: Admin
Posts: 4881
Joined: 24-September 01
Member No.: 13



QUOTE (Eliteforce @ Sep 24 2010, 23:00) *
I noticed a problem with certain impulse responses where the impulse is not the first sample.

Since such impulse responses introduce a delay the audio track will start a couple of samples later and the end will be cut-off early by the same number of samples

It would be nice to have an option to throw away the initial delay samples and end the track normally.


edit: Please note that changing the impulse responses is not an option, because it will alter the results. :/


The track duration should probably be extended by the FFT length.
Go to the top of the page
+Quote Post
Garf
post Dec 21 2012, 07:13
Post #147


Server Admin


Group: Admin
Posts: 4881
Joined: 24-September 01
Member No.: 13



QUOTE (AndreaT @ Dec 20 2012, 20:43) *
Hello Folks, as someone of you already stated, I confirm that the old 2006 plugin Convolver 0.3 doesn't work properly.

Please, is anyone there that could drive me to a good one for the current Foobar2000 v1.1 or the newer 1.2?


Thanks and regards, Andrea


Hmm, I wasn't aware that it stopped working? What's wrong with it?
Go to the top of the page
+Quote Post
AndreaT
post Dec 21 2012, 12:50
Post #148





Group: Members
Posts: 84
Joined: 15-May 12
From: Italy
Member No.: 99856



Hi Garf,

I found a plug-in called "Gapless Convolver " ver 0.4.5 that is working better than the official ver 0.3, however I am not sure it working perfectly. No time yet to measure.

Anyhow, I am looking for something reliable and stereo (I would use stereo inverted impulse response for DRC application).

Regards, Andrea

This post has been edited by AndreaT: Dec 21 2012, 12:51
Go to the top of the page
+Quote Post
AndreaT
post Dec 24 2012, 16:41
Post #149





Group: Members
Posts: 84
Joined: 15-May 12
From: Italy
Member No.: 99856



Hello Garf,

I tested again the Convolver v 0.3 with the current 1.2beta of Foobar and it crashes everytime I try to open it from "View -> DSP -> Convolver" option, while it doesn't crash if I open from "File -> Preference -> DSP Manager....".

Stated this, I have to ask you if this Convolver is capable to handle Stereo inpulse WAV file.

For my Digital Room Correction purpose I need to have L channel correct differently from R channel, so I created a Stereo WAV impulse file having the two channel different.
However, doing so I am getting a bad sound, the stereo image is very bad (instable) and the bass are very poor.

So, just for fun, I made a new Stereo WAV file having both channels indentical (so it is a true mono file) and containing a new correction impulse computed from the average response of the stereo channels (in other words: (L+R)/2.
Doing so I get a stable stereo image and the bass are back to a reasonable good and balanced musciality.
However, because I am driving both channels correction by the same average corrective impulse, I am not getting the best possible results.

Any explanation for this?
Could you help me getting what I would have?

Many thanks and Merry Xmass.
Andrea

Go to the top of the page
+Quote Post
AndreaT
post Jan 16 2013, 17:56
Post #150





Group: Members
Posts: 84
Joined: 15-May 12
From: Italy
Member No.: 99856



Hello Garf, I am sorry to have to confirm that the "official" Convolver ver 0.3 has problems (bugs??) (at least when playing stereo impulse).

As explained, my usage of a convolver is for DRC application, so a reverse impulse response is used for frequency response linearization.

I verified it comparing it vs. the well known ConvolverVST 4.4 and the matter is immediately audible (no need to go further in the investigation, just listen to it and you will understand).

Looking forward
Regards, Andrea
Go to the top of the page
+Quote Post

6 Pages V  « < 4 5 6
Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



RSS Lo-Fi Version Time is now: 23rd July 2014 - 06:59