[Flac-dev] Re: ACM codec

Ingo Ralf Blum ingoralfblum at gmx.de
Fri Oct 5 09:30:02 PDT 2001


> Mr. Blum,
> I had to make some assumptions writing the driver, because I had no previous
> experience writing ACM drivers. I did what I could based in Microsoft's
> documentation but, of course, I made same mistakes. I had no time to test
> the code I wrote yet and will not in the next 2 weeks. All I can tell you
> now is about what I did and about my sources. So, considering your
> enthusiasm, I suggest you take the code I wrote and continue or use as
> reference. If you want this, let me know. If not, then I ask you for same
> patience, since I have not much time. It's not important the paternity of
> the driver, but the driver done. I just think it should not be published
> before tested.

I don't want to push you. I'm just writing some DirectShow filters for Vorbis
and for convenience I also created an ACM driver. I did this only to support the
filters because apps like VirtuaDub don't work with DirectShow. I ran into a few
problems that i wanted to discuss and get some clarification. Because that was
and is my first ACM driver, too. I apologize for bothering you.

> Now, let's talk about your lest comments.
> >Which says nothing. The above text applies to renderers and capture
> >filters, not to intermediate filters like compressors. Especially all
> >standard AVI and WAV filters support the WAVEFORMATEXTENSIBLE structure,
> >whether the docs state something different or not.
> If you say it is, so it is. But then I ask you, did your Vorbis ACM driver
> work? Will WAVE_FORMAT_EXTENSIBLE id be recognized in old 16bits Windows
> systems?

WAVE_FORMAT_EXTENSIBLE is just another format id. Problems might occur, when
there is more than one driver, that supports this. However, the drivers are not
registered by their format tag, but by a name and when the system is about to
playback a file it simply looks at the format tag and probes all installed
codecs, whether they support it. Then it sets the formats as input format and
that exactly the place where the driver should either accept it, when the GUID
is its own, or reject it if not. However, as I wrote in one of my last posts, I
had media player spending a few seconds at 100%, while opening an AVI file, that
used the filter and the codec. I haven't tried to find out, why this happened,
but I will do so in the next weeks.

> HKEY_CURRENT_USER\Software\Microsoft\ActiveMovie\devenum\
> {33D9A761-90C8-11D0-BD43-00A0C911CE86}

Thank's. I didn't know this key.

> I couldn't find the previous excerpt in the Windows 2000 DDK. Maybe you can
> help me on it.
> Here's an excerpt about it taken from the Microsoft Platform DDK:

It's from the Windows NT 4 DDK. In my opinion the reference in the NT DDK is a
bit more detailed than in the Windows 2000 DDK. For your convenience I uploaded
the chapter about multimedia drivers here:


The mentioned text is part of the DRV_CONFIGURE message reference (near the
beginning of the document).

> So, a client software can ask for the configuration box at any time.
> I confirmed it in the IMA ADPCM driver's code provided by Microsoft. So I
> used it as a compression options' dialog.

Good. I wasn't aware of this, because the DDK mentioned, that the message is
only for the control panel.

> PS: Sorry for the previous malformed messages. I hope I have it fixed now.

Which malformed messages?



More information about the Flac-dev mailing list