De-encoding DLL? (was Re: [vorbis-dev] Win32 DLL)

Dimitry Andric dimitry at andric.com
Sat Jun 24 03:28:00 PDT 2000



-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 2000-06-24 at 15:12 Michael Smith wrote:

>At 09:18 PM 6/23/00 -0700, you wrote:
>>Is anyone working on moving the decoder/player into DLL form?
>>
>
>As far as I know, not currently. However, it would be very simple to
>do so. I could do so in about 5 minutes if I had any idea about how
>to build dlls under windows (it's not something I've ever had a
>reason to figure out in the past), or if someone were to advise me
>on how to do this. 
>
>However, it's dubious whether there's any advantage in having it in
>this form. Having a shared library (or dll) has two main advantages:
>it takes up less disk space, and multiple programs using it can
>share it in memory. The latter isn't really relevent - one rarely
>runs multiple player programs simultaneously. The former is
>relevent, but the dll would be approximately 70k - hardly enough to
>worry about. (This is based on the size of the winamp plugin - which
>has the full decoder, not much else, and is in dll form).

You have forgotten one advantage, namely that you can upgrade the
vorbis shared library or DLL to a new version, independently of the
program(s) that use it. This will work, as long as the vorbislib
interface doesn't change, i.e all the public functions in
include/vorbis/*.h stay the same. My guess is that this interface
won't change very much at all anymore, as opposed to the
implementation. Please correct me if I'm wrong about this. (Monty?)

So I think having a "standard" shared library and/or DLL
implementation might be a good thing to have. It saves recompiling
every application dependent on vorbislib when it is updated (which is
still quite often these days, I guess :).

A Win32 DLL which exports just the extern functions from
vorbisfile.h, codec.h, etc, would not be very difficult to make (much
easier than a ACM codec ;), and can be used from any other Win32 app
quite easily. If anybody finds this interesting, I can try to put
something like this together for Win32.

Cheers,
- --
Dimitry Andric <dimitry at andric.com>
PGP key: http://andric.com/dim.asc
KeyID: 4096/1024-0x2E2096A3
Fingerprint: 7AB4 62D2 CE35 FC6D 4239 4FCD B05E A30A 2E20 96A3

-----BEGIN PGP SIGNATURE-----
Version: Encrypted with PGP Plugin for Calypso
Comment: http://www.gn.apc.org/duncan/stoa_cover.htm

iQA/AwUBOVR/HrBeowouIJajEQIrvwCeOGj3D34V5t3AZQ0D+3vDtlg6vioAoJ9G
vHFkSB4iJgdpLrLSLWAj4+9G
=MCzR
-----END PGP SIGNATURE-----

--- >8 ----
List archives:  http://www.xiph.org/archives/
Ogg project homepage: http://www.xiph.org/ogg/



More information about the Vorbis-dev mailing list