#14 in_mp4 Media Library support


With the following functions (exports) of the Input-
Plugin for Winamp2, Winamp will bbe able to read/write
the metadata of the MP4 files:

typedef struct {
char *filename;
char *metadata;
char *ret;
int retlen;
} extendedFileInfoStruct;

int __cdecl winampGetExtendedFileInfo
(extendedFileInfoStruct exfinfo);
int __cdecl winampSetExtendedFileInfo
(extendedFileInfoStruct exfinfo);
int __cdecl winampWriteExtendedFileInfo(void);

Winamp will probe the in_mp4.dll to see which functions
it exports. If it has winampGetExtendedInfo() then it will,
at various times, call it with the following inputs:

*filename = filename of file in question
*metadata = string describing the data to return
*ret = buffer for you to return in
retlen = how big *ret is

metadata will be something like "artist", "album", "title",
and a load more - what Winamp wants.

Be sure not to overrun the buffer.

The return value of the function (as far as I can tell): 0
= failed, 1 = succeeded. I don't know if there's a way to
signal that you want a bigger buffer.

When you are returning "length", you have to return the
length in ms, in ASCII.

I presume winampSetExtendedFileInfo is designed for
Winamp to return edited values to the Plugin, and you're
supposed to buffer them until winampWriteExtendedInfo
happens. Winamp uses this for the masstagger in the

Pleas implement this to the in_mp4 plugin to be able to
add mp4 files to library reading/writing the tags!

These functions aren't documented. Thanks to Maxim in
the Winamp2 developer forum.

Paramorpheus (R. Klein <rafaelklein@gmx.de>)


  • menno

    menno - 2003-11-21
    • status: open --> closed
  • menno

    menno - 2003-11-21

    Logged In: YES

    Thanks go to Case


Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

No, thanks