Thread: Winamp 5.55 SDK
View Single Post
Old 11th January 2007, 17:49   #38
Benski
Ben Allison
Former Winamp Developer
 
Benski's Avatar
 
Join Date: Jan 2005
Location: Brooklyn, NY
Posts: 1,047
Quote:
Originally posted by shaneh
Thanks Benski, that should help out with a few things. Can we use this function to allocate timer ids too? Otherwise an API for that would be good, or just picking random numbers as usual :P No biggy.
Sure, but this will take a bit of extra work, because timer IDs were typically picked by banging on the number pad (i.e. there's no good logic to their numbering)

Quote:

My main gripe is with the ATF functionality. Its great that the new IPC_FORMAT_TITLE_EXTENDED does a bit of work, but it doesn't seem to do much.

For example, it doesn't handle %rating% or %playcount% etc. Would it be possible to have something like a IPC_FORMAT_TITLE_EXTENDED_2 which tells winamp that the *p in waFormatTitleExtended is pointing to an itemRecordW, and therefore use that to do the tag processing? Or maybe returning -2 from *TAGFUNC tells winamp the same thing.

Or better still, instead of just querying the input plugins for %tags%, it actually does the full ATF processing? (I assume involving an ML lookup etc) This way any plugins that do ATF processing will automatically be future proofed against new %tags% supported in winamp, and not require much (re)implementation on behalf of plugins. This would be the preferred option I think.
To be honest, IPC_FORMAT_TITLE_EXTENDED was written for the particular needs of the Media Library (ml_local), although it's likely useful for some third party developers. If you can send me specifics on what you need out of the ATF engine, I can try to implement something to fulfill those needs.

Also of note, there is a (hidden) API to use the ATF engine directly, w/o going through a SendMessage call. At the moment, it doesn't let you do much extra, but I am considering adding things to it like defining your own custom functions and prepopulating (or retrieving) the $put/$get variables. If you have any interest in this, let me know.
Benski is offline   Reply With Quote