🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: borland.public.cppbuilder.multimedia
Article #424

Re: Compressing audio - formats supported by XP

#424
From: Mark Jacobs
Date: Thu, 29 Jul 2004 11:00
60 lines
4136 bytes
"Chris Croughton" <chris@keristor.net> wrote in message
news:slrncgfodl.orr.chris@ccserver.keris.net...
| On Wed, 28 Jul 2004 11:38:27 +0100, Mark Jacobs
| Specifically, it needs the Advantage Client Engine (some sort of
| database system, I gather), which may be obtained (free) from
| www.advantagedatabase.com/ (it needs a form filling in).
|
| I presume you mean the source code.  Where did you get documentation on
| the Windows ACM, only from the header file or did you find some other
| documentation?
|
| Your program works fine, having installed ACE, and does indeed look very
| useful.  Thanks for the pointer to it.  Nice dump format for the
| WAVEFORMATEX structures, I can copy those straight into my code (a bit
| of simple massaging if I want to do it field by field)...

I do beg your pardon, Chris. I must apologise, and with a double-yoker on my
face (egg - a big one!), let me just say that because of the testbed program
mathspenknife had become, a load of chaff libraries had got linked in, and
never thrown out again after they were no longer needed. One of these was
ACE32BOR.LIB (there were a couple of others including Direct Sound!!!) so I
have removed them, rebuilt from scratch (proper rebuild) and the .EXE has gone
from 1.2 MBytes to 880 KBytes in size.

The documentation for ACM is all in the Windows SDK documentation that comes
with BCB. On the Help menu in the IDE is the option "Windows SDK". Use it to
look up these functions :-

 acmDriverEnum
 acmFormatTagDetails
 acmFormatDetails

Here is a big hint. Use the "Index" method to elicit details from the ACM,
rather than enumeration - except for the acmDriverEnum part which has to be
done using CALLBACKs. Everything from there onwards can use a for loop
accessing successive indexes for the codecs and types discovered.

1. Enumerate the 13 or so codecs on the PC using acmDriverEnum and store the
id and number of types into 2 stringlists (or whatever you want to use) for
each one.
2. For each of the 13 or so codecs, for each of the number of types, use
acmFormatTagDetails to get the number of formats for this type and codec, and
the all-important wFormatTag.
3. For each format so discovered, use acmFormatDetails to derive each
WAVEFORMATEX structure. Remember to populate the largely empty WAVEFORMATEX
wFormatTag with the dwFormatTag found in step 2, as well as the index number
(0 to however many formats were discovered) in dwFormatIndex, before calling
acmFormatDetails.

Steps 2 and 3 should be calling the acm with the flags
ACM_FORMATTAGDETAILSF_INDEX and ACM_FORMATDETAILSF_INDEX

The new version (not dependent on ACE or DSOUND) of mathspenknife.exe has been
uploaded. Sorry about the hassle and thanks for pointing this out to me. Good
luck. Thanks again.
-- 
Mark Jacobs
DK Computing
http://www.dkcomputing.co.uk
markj atty critical dotty co dotty uk
Technical Details
Message-ID: <4108d8b7$1@newsgroups.borland.com>
Path: arc1-ca.pugleaf.net!g2news1.google.com!news2.google.com!proxad.net!fr.ip.ndsoftware.net!newsfeed00.sul.t-online.de!newsfeed01.sul.t-online.de!t-online.de!newsgroups.borland.com!not-for-mail
References: <40fe9d52$1@newsgroups.borland.com> <41030db0$1@newsgroups.borland.com> <slrncgcg7t.ma.chris@ccserver.keris.net> <41066b52$1@newsgroups.borland.com> <slrncgdb7k.b4f.chris@ccserver.keris.net> <41078213@newsgroups.borland.com> <slrncgfodl.orr.chris@ccserver.keris.net>

Show Full Headers
Complete Article Headers
X-Google-Thread: 10d0fc,3ab497c67f89962f
X-Google-Attributes: gid10d0fc,public
X-Google-Language: ENGLISH,ASCII-7-bit
Reply-To: "Mark Jacobs" <markj atty critical dotty co dotty uk>
From: "Mark Jacobs" <markj atty critical dotty co dotty uk>
Newsgroups: borland.public.cppbuilder.multimedia
References: <40fe9d52$1@newsgroups.borland.com> <41030db0$1@newsgroups.borland.com> <slrncgcg7t.ma.chris@ccserver.keris.net> <41066b52$1@newsgroups.borland.com> <slrncgdb7k.b4f.chris@ccserver.keris.net> <41078213@newsgroups.borland.com> <slrncgfodl.orr.chris@ccserver.keris.net>
Subject: Re: Compressing audio - formats supported by XP
Date: Thu, 29 Jul 2004 12:00:07 +0100
Lines: 62
Organization: DK Computing
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1437
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1441
NNTP-Posting-Host: 81.144.157.8
Message-ID: <4108d8b7$1@newsgroups.borland.com>
X-Trace: newsgroups.borland.com 1091098807 81.144.157.8 (29 Jul 2004 04:00:07 -0700)
Path: arc1-ca.pugleaf.net!g2news1.google.com!news2.google.com!proxad.net!fr.ip.ndsoftware.net!newsfeed00.sul.t-online.de!newsfeed01.sul.t-online.de!t-online.de!newsgroups.borland.com!not-for-mail