or Connect
AVS › AVS Forum › Video Components › Home Theater Computers › Convolver DSP plug-in for Windows Media Player 10
New Posts  All Forums:Forum Nav:

Convolver DSP plug-in for Windows Media Player 10 - Page 4

post #91 of 326
Thread Starter 
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.
post #92 of 326
Thread Starter 
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
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.


PS: Any feedback to jrp at dial dot pipex dot com, if not here.
post #93 of 326
Thread Starter 
Good news and bad news:

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

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.
post #94 of 326
Thanks John, I'm struggling along behind - it's hard to get time with 2 little kids...
post #95 of 326
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....

post #96 of 326
Thread Starter 
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
post #97 of 326
Thread Starter 
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.
post #98 of 326

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,

post #99 of 326
Thread Starter 
Robert, Thanks for the feedback. I'll make some further tweaks. John
post #100 of 326
Thread Starter 
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).
post #101 of 326
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.
post #102 of 326
Thread Starter 
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.
post #103 of 326
Thread Starter 
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)
post #104 of 326
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.

post #105 of 326
Thread Starter 
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.
post #106 of 326
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.


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.


Could you explain more precisely the channel mapping issue?

Yes, this is my crossover.txt:

44100 2 4 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.

post #107 of 326
Thread Starter 
Roberto, could you try 33, instead of 3f as the channel mask, please?
post #108 of 326
John, 33 works OK.
post #109 of 326
Thread Starter 
Good. 3f is, I think, a 5.1 spec, while 33 is good fo Quad, which is, I think, consistent with your setup.
post #110 of 326
Thread Starter 
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).
post #111 of 326
Thread Starter 
2.11, just released, fixes a couple of bugs that caused crashes in calculation of optimum attenuation and ConvolverWrapper access to property page.
post #112 of 326
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.
post #113 of 326
Thread Starter 
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.
post #114 of 326
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
post #115 of 326
Thread Starter 
Thanks. That's helpful.
post #116 of 326
So what you're saying is that it does not work with WMP10/MCE5 or?
post #117 of 326
Thread Starter 
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.
post #118 of 326
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?
post #119 of 326
Thread Starter 
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.
post #120 of 326
there's no way to access mce playback graph, that's why ffdshow for example doesn't work with mce
New Posts  All Forums:Forum Nav:
  Return Home
  Back to Forum: Home Theater Computers
AVS › AVS Forum › Video Components › Home Theater Computers › Convolver DSP plug-in for Windows Media Player 10