Convolver DSP plug-in for Windows Media Player 10 - Page 4 - AVS Forum | Home Theater Discussions And Reviews
Baselworld is only a few weeks away. Getting the latest news is easy, Click Here for info on how to join the Watchuseek.com newsletter list. Follow our team for updates featuring event coverage, new product unveilings, watch industry news & more!


Forum Jump: 
 
Thread Tools
Old 11-02-2005, 06:14 PM - Thread Starter
Senior Member
 
jrpavel's Avatar
 
Join Date: Mar 2004
Posts: 297
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
It can use such threading, etc, when compiled under Linux, but it compiles without any problem under Windows. The issue is that the -- asio in particular -- sound libraries seem a bit fragile. Work continues.
jrpavel is offline  
Sponsored Links
Advertisement
 
Old 11-03-2005, 05:06 PM - Thread Starter
Senior Member
 
jrpavel's Avatar
 
Join Date: Mar 2004
Posts: 297
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Version 2.5 is now up on convolver.sourceforge.net .

The good news is that it should provide more helpful diagnostics. Let me know if you get something unhelpful or broken looking.

The not so good news is that you will need to add an initial line specifing the number of input and output channels that you intend to use (even if not all of them are used by the filter path sets that you go on to specify. So
Code:
2 6
would specify that you are putting stereo in and expecting 6 channels out.

You will need to supply sound with the right number of input channels and ensure that you have setup the correct number of speakers (Tools | Options | Devices | Speakers | Properties | Advanced from Windows Media Player ... also accessible via Control Panel) otherwise you will either get no playback or unfiltered playback (I would be interested in knowing which). I would also be interested in the impact of settng/unsetting the 24-bit setting on that speaker setting dialogue.

The purpose of requiring you to specify the channels, rather than deducing them as the previous version did, is that you may want to test one channel at a time, on a multi-channel setup, for example.

Enjoy.

PS: Any feedback to jrp at dial dot pipex dot com, if not here.
jrpavel is offline  
Old 11-06-2005, 03:01 PM - Thread Starter
Senior Member
 
jrpavel's Avatar
 
Join Date: Mar 2004
Posts: 297
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Good news and bad news:

Good news is that there are now a couple of impluse generator programs:

http://homepage.ntlworld.com/john.mu...meq/index.html
and http://www.duffroomcorrection.com/wi...Measuring_Tool.

There is also a new version of DRC: http://drc-fir.sourceforge.net/

The bad news is that 2.5 will not work if the number of input and output channels is not identical. I will correct this bug shortly.
jrpavel is offline  
Old 11-06-2005, 03:29 PM
AVS Special Member
 
Mark_A_W's Avatar
 
Join Date: Dec 2002
Location: Melbourne, Australia
Posts: 8,110
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Thanks John, I'm struggling along behind - it's hard to get time with 2 little kids...

Loving my Electric Bike!!
Mark_A_W is offline  
Old 11-06-2005, 03:50 PM
Advanced Member
 
Sinobi's Avatar
 
Join Date: Feb 2003
Location: Assens, Denmark
Posts: 512
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Quote:
Originally Posted by Mark_A_W View Post

Thanks John, I'm struggling along behind - it's hard to get time with 2 little kids...

No s..t.....
I have 2 small and one teen....(screeam)
and buying a new house and building the new speakers and drowning in projectors that needs to be tested for a magazine doesn't help.......HELP.
I just need 2-3 days off from the world so I can make this surround room correction dream of mine work.

I fully understand you Mark....

Henrik

More Pixels To The People!
Stereo......is about projectors. The Soooooony 12" CRT owner.
Sinobi is offline  
Old 11-06-2005, 11:59 PM - Thread Starter
Senior Member
 
jrpavel's Avatar
 
Join Date: Mar 2004
Posts: 297
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Quote:
Originally Posted by Mark_A_W View Post

it's hard to get time with 2 little kids...

... not at all: spend the time with the kids; no contest
jrpavel is offline  
Old 11-07-2005, 03:04 PM - Thread Starter
Senior Member
 
jrpavel's Avatar
 
Join Date: Mar 2004
Posts: 297
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
convolver 2.6 is now up on convolver.sf.net

This is a more serious attempt at trying to handle a different number of input channels from output channels (for use with cross-overs). You may need to specify the number of channel through the Speakers setting in Control Panel. If Windows Media Player does not support the number of channels that you specify, it will disable the plug-in.

You will need to restart Windows Media Player if the number of channels is changed by selecting a new config file, as WMP does not reinitialize the plug-in after settings are changed.

As ever, feedback/experiences welcome.
jrpavel is offline  
Old 11-07-2005, 11:17 PM
R_R
Newbie
 
R_R's Avatar
 
Join Date: Nov 2005
Location: Spain
Posts: 9
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Hello,

I've tested ver. 2.6, and I'm still unable to setup a crossover filter (2 channels in-4 channels out). In contrast to previous versions, now the plugin accepts the config file, and calculates attenuation. It do not crash Media Player, but the sound is left unproccessed (2 channels in-2 unfiltered channels out).

I've tried my filters with 2 4 first line, and cuadraphonic in control panel, and with 2 8 first line, and 7.1 in control panel (card is M-Audio Revo 7.1). Media player has been restarted with any settings change.

Maybe it would be useful for debugging purposes that the plugin could report how many channels it "sees" as usable in Windows Media.

Aside from this, now I can confirm that the "HCCD / 24-bit setting" makes the plugin stop proccessing.

Hope this helps.

Best regards,

Roberto
R_R is offline  
Old 11-07-2005, 11:52 PM - Thread Starter
Senior Member
 
jrpavel's Avatar
 
Join Date: Mar 2004
Posts: 297
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Robert, Thanks for the feedback. I'll make some further tweaks. John
jrpavel is offline  
Old 11-08-2005, 03:03 PM - Thread Starter
Senior Member
 
jrpavel's Avatar
 
Join Date: Mar 2004
Posts: 297
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
2.7 is now available. It should handle different numbers of input and output channels correctly for crossovers (but only playback 32, 16 and 8-bit PCM and 32-bit IEEE Float sources -- the full set of usable formats will be available in the next release).

The filter files themselves, specified through the config file, should continue to be in single-channel WAV format (so that they specify the sample rate, for example).
jrpavel is offline  
Old 11-08-2005, 11:30 PM
R_R
Newbie
 
R_R's Avatar
 
Join Date: Nov 2005
Location: Spain
Posts: 9
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Hello John,

Do you mean raw pcm format in the filter impulses?

I tried this way and convolver said: (picture)

loraw.pcm is a 32 bits IEEE raw pcm.
LL
R_R is offline  
Old 11-09-2005, 12:04 AM - Thread Starter
Senior Member
 
jrpavel's Avatar
 
Join Date: Mar 2004
Posts: 297
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Sorry if that was not clear. The filters can be any WAV files -- no change -- but the playback of 20 and 24-bit PCM formats are not yet supported.

RAW format PCM filter files are not usable because they are uninterpretable (channels, sample rate) without additional information.
jrpavel is offline  
Old 11-12-2005, 05:54 PM - Thread Starter
Senior Member
 
jrpavel's Avatar
 
Join Date: Mar 2004
Posts: 297
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Version 2.8 is now up on convolver.sf.net.

A wider range of playback formats is now supported (in order of preference: 32-bit IEEE float , 32, 24, 16 and 8-bit PCM, 24, 20 and 16-bit PCM in 32-bit containers, 20 and 16-bit PCM in 24-bit containers, and 64-bit IEEE float)

The config file now requires specification of channel to speaker mapping in config file. (Set it to 0 to disable it.) More details on convolver.sf.net

The config file also requires the sample rate to be specified in config file. This is used when reading raw 32-bit .PCM filter files such as those produced by DRC.

A convolver icon shows on Windows Media Player's status bar when Convolver is active.

So the first line of the config file might be something like:

44100 2 2 0

for a simple stereo to stereo setup or

48000 6 6 3F

for a 5.1 setup with channel to speaker mapping.

Let me know how you get on (jrp [at] dial dot pipex dot com)
jrpavel is offline  
Old 11-13-2005, 02:29 AM
R_R
Newbie
 
R_R's Avatar
 
Join Date: Nov 2005
Location: Spain
Posts: 9
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Hi John,

Good work, many thanks! Now crossovers works! Now an amateur can design his own crossover, equalizers, room correction, you name it. To date I only knows of linux setups that could do this (brutefir).

CPU usage seems pretty good, with ~18% for a stereo two ways crossover with long FIR filters (64k coefficients), P-IV, 2.2GHz.

On the picky side, I see that channel mapping has a strange behaviour, with setting different to 0 it seems that a third pair of channels is "created" (?). "Manual" mapping by the user with 0 setting is straightforward, though.

Now that important things works, I dare to add something to the wish list. Cascading filters would be a great addition. I mean, having the output of one filter to be the input of another filter. That could simplify the task of setting up separately crossovers, DRC, channel mixing, etc. Now is possible, but one has to convolve externally different impulses to get the combined behaviour.

Again, congrats and thanks.

Roberto
R_R is offline  
Old 11-13-2005, 03:30 AM - Thread Starter
Senior Member
 
jrpavel's Avatar
 
Join Date: Mar 2004
Posts: 297
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Roberto, Thanks. Glad that you have it working.

I can do a bit more on cpu usage, but nothing earth shattering. As it is, the FFT routines take more than half of processing time.

A couple of suggestions: do you really need 64k coefficients? How many of them are zero, or close to 0? Coefficients that are close to zero (10e-18, say) slow things down considerably. Trimming your impulse responses / filters will do more than I will be able to do, particularly with previous generation Pentium 4s with limited caches.

Could you explain more precisely the channel mapping issue?

The next thing on my list, after a bit more optimization, and subject to further design changes based on feedback, is a user interface to replace the config file, but that will be quite an effort, and I want to make sure that the guts work before applying such icing.

I'll have a think about the cascading of filters. It may be quite tricky. Others have asked for the ability to add delay to a channel (again this is doable externally), or the ability to select different filter automatically based on what is being played back.

These are all usability issues that depend on how people use convolver in practice.

Anyway, thanks for the feedback and lets see how it goes.
jrpavel is offline  
Old 11-13-2005, 05:00 AM
R_R
Newbie
 
R_R's Avatar
 
Join Date: Nov 2005
Location: Spain
Posts: 9
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Quote:
Originally Posted by jrpavel View Post

Roberto, Thanks. Glad that you have it working.

I can do a bit more on cpu usage, but nothing earth shattering. As it is, the FFT routines take more than half of processing time.

Ok. Now it is faster than any other windows convolver I've came across.

Quote:


A couple of suggestions: do you really need 64k coefficients?

Well, in fact no, is more a matter of testing the limits. But I like precise ecualization in the bass range, and it means very long filters. Probably 16k will more than suffice.

Quote:


Could you explain more precisely the channel mapping issue?

Yes, this is my crossover.txt:

44100 2 4 0
f:\\filtros\\lo-norm.wav
0.0
2.0
f:\\filtros\\lo-norm.wav
1.0
3.0
f:\\filtros\\hi-norm.wav
0.0
0.0
f:\\filtros\\hi-norm.wav
1.0
1.0

Nothing special, highs goes to channels 0 and 1 and lows to 2 and 3, left and right respectively.

If I change the first line to:
44100 2 4 3F

Then I have output also in channels 4 & 5, and it happens to be a copy of channels 2 & 3, but downmixed to mono (see picture).

In fact I'm not sure of this last sentence, it could be that it is channel 3 repeated in 4 & 5, but I'm sure that outputs in 4 & 5 are identical (easy to test when highs are in 2 & 3: Image comes from center spot, nothing on the sides).

Well, I hope that it becomes clear.

Roberto
LL
R_R is offline  
Old 11-13-2005, 09:49 AM - Thread Starter
Senior Member
 
jrpavel's Avatar
 
Join Date: Mar 2004
Posts: 297
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Roberto, could you try 33, instead of 3f as the channel mask, please?
jrpavel is offline  
Old 11-13-2005, 10:10 AM
R_R
Newbie
 
R_R's Avatar
 
Join Date: Nov 2005
Location: Spain
Posts: 9
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
John, 33 works OK.
R_R is offline  
Old 11-13-2005, 03:43 PM - Thread Starter
Senior Member
 
jrpavel's Avatar
 
Join Date: Mar 2004
Posts: 297
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Good. 3f is, I think, a 5.1 spec, while 33 is good fo Quad, which is, I think, consistent with your setup.
jrpavel is offline  
Old 11-15-2005, 01:28 PM - Thread Starter
Senior Member
 
jrpavel's Avatar
 
Join Date: Mar 2004
Posts: 297
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
convolver 2.9 is up on convolver.sf.net

This has some internal technical tweaks that may make it a more compatible DMO.

VERSION.dll, comdlg32.dll and msdmo.dll are now excluded from the distribution; they should be on the target system already. This may avoid problems with non-XP SP2 systems. DirectX 9 will be required.

... and 2.10 has some optimizations that give about 5% better performance. You can delete any wisdom.fftw files that you find in the convolver directory or elsewhere, if upgrading.

Next step, apart from any bug fixes, is some slightly more intrusive optimization for a potentially bigger step up in performance (which is already acceptable: 6-channel 65536-tap 48kHz convolution happens at 5 times real time on a 3GHz P4, or 2GHz Pentium M).
jrpavel is offline  
Old 11-17-2005, 03:41 PM - Thread Starter
Senior Member
 
jrpavel's Avatar
 
Join Date: Mar 2004
Posts: 297
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
2.11, just released, fixes a couple of bugs that caused crashes in calculation of optimum attenuation and ConvolverWrapper access to property page.
jrpavel is offline  
Old 11-21-2005, 09:51 PM
Newbie
 
janterje's Avatar
 
Join Date: Sep 2004
Location: Norway!
Posts: 5
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
This sounds extremely interesting! good work jrpavel!

This DSP plugin would let you use digital room correction on all channels when playing a movie in Microsoft Media Center Edition that uses WMP10? Or do i need to install Theatertek or Zoomplayer?

Someone should make a A-Z guide! I'm going to order a new soundcard thats better then my built in and test this out.
janterje is offline  
Old 11-22-2005, 12:52 AM - Thread Starter
Senior Member
 
jrpavel's Avatar
 
Join Date: Mar 2004
Posts: 297
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Thanks janterje.

MCE does not play DVDs without a filter like NVIDIA Puredecoder (standalone, or built in to TheaterTek) or it can use the ones that come as part of Intervideo WinDVD, etc.

What ZoomPlayer Pro does is to allow the Convolver Wrapper to be inserted into the filter graph so that it can do its work.

Someone else may be able to explain how they got Convolver Wrapper to work with TheaterTek.

So if you can find a way of getting ConvolverWrapper into the graph with whatever codec you are using, you are done.

Any pointers to other widgets for accomplishing this would be gratefully received.
jrpavel is offline  
Old 11-22-2005, 05:02 AM
Advanced Member
 
vairulez's Avatar
 
Join Date: Dec 2002
Posts: 673
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
for theatertek it's very simple :
andrew added an option called the audio-postprocessor. You can add there any directshow filter having a merit of do_not_use+1 and that can take in input/output pcm interleaved.
The filter is inserted in the graph after the audio decoder and before the renderer

sorry for my poor english but I'm french !!!!
vairulez is offline  
Old 11-22-2005, 06:26 AM - Thread Starter
Senior Member
 
jrpavel's Avatar
 
Join Date: Mar 2004
Posts: 297
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
Thanks. That's helpful.
jrpavel is offline  
Old 11-22-2005, 08:32 AM
Senior Member
 
Schroinx's Avatar
 
Join Date: Sep 2002
Location: Denmark
Posts: 261
Mentioned: 1 Post(s)
Tagged: 0 Thread(s)
Quoted: 13 Post(s)
Liked: 12
So what you're saying is that it does not work with WMP10/MCE5 or?
Schroinx is offline  
Old 11-22-2005, 10:39 AM - Thread Starter
Senior Member
 
jrpavel's Avatar
 
Join Date: Mar 2004
Posts: 297
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
My understanding is that MCE2005 needs a 3rd party DVD filter, which will play back DVDs with WMP10, but the MCE interface does not use WMP10 to playback videos, it uses the 3rd party filter directly.

Nevertheless, it ought to be possible to insert ConvolverWrapper into the playback graph that MCE2005 sets up; I have not yet tried to work out how to do that.

I'm happy to be corrected on this point, or to have a recipe for making Convolver work with the MCE2005 interface.
jrpavel is offline  
Old 11-22-2005, 10:54 AM
Senior Member
 
Schroinx's Avatar
 
Join Date: Sep 2002
Location: Denmark
Posts: 261
Mentioned: 1 Post(s)
Tagged: 0 Thread(s)
Quoted: 13 Post(s)
Liked: 12
I believe this to be true. I don't think the WMP10 can play dvds without 3rd party filters either. I use the dscaler5 dvd filters. However with my very limited understanding of the subject I am unable to help you out.

Anyhow to my understanding one would want to have the DRC filters working on all sound output not regading the source eg dvd, mp3, tv or whatnot?

I have read most of the replies in this tread, and I was wondering about it could be made as a plug-in for the ffdshow eventually, as this could provide the frame for the UI. However I do not know about ffdshow's audio stuff supports MCE5?
Schroinx is offline  
Old 11-22-2005, 11:23 AM - Thread Starter
Senior Member
 
jrpavel's Avatar
 
Join Date: Mar 2004
Posts: 297
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
I'm not sure that ffdshow accepts plug-ins. It could, no doubt, use the Convolver convolution classes -- indeed it is said to have some of its own -- but, as you suggest, it may not help you unless ffdshow can be used as the 3rd party playback filter that the MCE interface uses.
jrpavel is offline  
Old 11-23-2005, 05:10 AM
Advanced Member
 
vairulez's Avatar
 
Join Date: Dec 2002
Posts: 673
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 0 Post(s)
Liked: 10
there's no way to access mce playback graph, that's why ffdshow for example doesn't work with mce

sorry for my poor english but I'm french !!!!
vairulez is offline  
Sponsored Links
Advertisement
 
 
Thread Tools


Forum Jump: 

Posting Rules  
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off