![]() |
#41 |
Major Dude
Join Date: Jan 2004
Location: Brisbane, Australia
Posts: 1,193
|
Yes I'm pretty sure I am using IPC_GET_EXTENDED_FILE_INFOW_HOOKABLE correctly, it formats every other tag fine. It just fails to format %rating% and %playcount% even though these are formatted fine in the playlist. It seems the ML isn't hooking these calls.
Some other tag functions I wouldnt mind implementing are $color and $font for Toaster, although whether thats necessary depends on whether I decide to use HTML or not. |
![]() |
![]() |
![]() |
#42 | |
Ben Allison
Former Winamp Developer Join Date: Jan 2005
Location: Brooklyn, NY
Posts: 1,057
|
Quote:
|
|
![]() |
![]() |
![]() |
#43 |
Major Dude
Join Date: Jan 2004
Location: Brisbane, Australia
Posts: 1,193
|
Yep its enabled. The playlist allows using %rating% etc fine so I suspect its being used.
|
![]() |
![]() |
![]() |
#44 |
Ben Allison
Former Winamp Developer Join Date: Jan 2005
Location: Brooklyn, NY
Posts: 1,057
|
Looks like it's a bug in ml_local and not in the IPC_FORMAT_TITLE_EXTENDED API. It will be fixed in the next version. Thanks for the heads up and sorry about the confusion.
For reference, here's an example of how to use IPC_FORMAT_TITLE_EXTENDED code: |
![]() |
![]() |
![]() |
#45 |
Major Dude
Join Date: Jan 2004
Location: Brisbane, Australia
Posts: 1,193
|
Cool thanks Benski, itd be great not have to handle these myself, would %streamtitle% work too?.
Ive now got a C++ abstract framework in place to transparently switch between the different formatting methods depending on version. With the next release or beta I should be able to release gen_msn based on it, and just use the old ansi formatter for 5.32 (which manually does the %rating% lookups etc) rather than give that version special attention. Mind you, my tag processing is probably a bit more efficient than letting the ML handle it, as I imagine it does a lookup for the file each time for every tag. Whereas I cache the itemRecord once and use it every time for the entire processing of the atf spec. Itd also make ActiveWinamp much easier to code, and I can drop heaps of legacy code cause it will only target the most recent release. So looking forward to it ![]() |
![]() |
![]() |
![]() |
#46 | |
Junior Member
|
Quote:
![]() Can you post a new file here or email a new file to ice.bear(a)home.se , please! |
|
![]() |
![]() |
![]() |
#48 |
Major Dude
Join Date: Jan 2004
Location: Brisbane, Australia
Posts: 1,193
|
Am hanging out for the ML whar query IPCs..
ML_IPC_DB_RUNQUERY_SEARCHW? Do these exist in Winamp 5.33 or are they still coming? |
![]() |
![]() |
![]() |
#49 |
Join Date: Sep 2003
Posts: 27,873
|
no idea, is one for benski/will to make comment on (have stayed clear of anything to do with the ml personally)
-daz |
![]() |
![]() |
![]() |
#50 | |
Ben Allison
Former Winamp Developer Join Date: Jan 2005
Location: Brooklyn, NY
Posts: 1,057
|
Quote:
Here's some a quick overview of what Unicode IPC's were added (obviously the details will be in the new SDK) code: there is also a new itemRecordW that is more than just a wchar_t version of the itemRecord type. It includes all of the 5.33 MLDB fields. |
|
![]() |
![]() |
![]() |
#51 |
Major Dude
Join Date: Jan 2004
Location: Brisbane, Australia
Posts: 1,193
|
Awesome thanks.. I also reverse engineered the 'send to' menu IPCs to allow me to use the 'Send To' menu in ml_tree. I can't remember the details and don't have the code on hand, but I assume there are wchar equivalents of these? Given that the playlist still supports the 'send to' menu.
|
![]() |
![]() |
![]() |
#52 | |
Ben Allison
Former Winamp Developer Join Date: Jan 2005
Location: Brooklyn, NY
Posts: 1,057
|
Quote:
Why the need to reverse engineer it? The details should be in gen_ml/ml_ipc.h |
|
![]() |
![]() |
![]() |
#53 |
Major Dude
Join Date: Jan 2004
Location: Brisbane, Australia
Posts: 1,193
|
To add an item to the send to menu sure, but what about to display the send to menu itself, and then supply the itemrecords for the selected menu item? ie mimick the behaviour of the playlist with 'send to' to support 'sending to' everything else. I will show you later when I get a hold of the code, but Im pretty sure its not documented.
|
![]() |
![]() |
![]() |
#54 | |
Ben Allison
Former Winamp Developer Join Date: Jan 2005
Location: Brooklyn, NY
Posts: 1,057
|
Quote:
![]() |
|
![]() |
![]() |
![]() |
#55 |
Major Dude
Join Date: Jan 2004
Location: Brisbane, Australia
Posts: 1,193
|
I am referring to these tid-bits. Undocumented AFAIK.
libsendtoipc = (LONG)SendMessage(plugin.hwndWinampParent, WM_WA_IPC, (WPARAM)"LibrarySendToMenu", IPC_REGISTER_WINAMP_IPCMESSAGE); struct sndstruct{ /* 0 = Not used? 1 = Build the send to menu on the hmenu supplied 2 = Check if menu id that was selected was on sendto menu 3 = Send list of selected files 4 = Free allocated memory */ DWORD cmd; HMENU ma1SubMenu; //HMENU to build the menu on DWORD ma2; //unknown DWORD ma3; //causes a 1500 push..? DWORD ma4flag; //Type of source ie. ML_TYPE_RECORDLIST etc DWORD ma5menuid; //menu id that was selected void* ma6itemsaddress; //address of items HWND ma7Hwnd; //hwnd on owner window DWORD ma8; //handle? context? used internally? Don't set. byte data[124]; //reserved }; |
![]() |
![]() |
![]() |
#56 |
Ben Allison
Former Winamp Developer Join Date: Jan 2005
Location: Brooklyn, NY
Posts: 1,057
|
Shane - I'll put it in the next build of the SDK
code: |
![]() |
![]() |
![]() |
#57 |
Major Dude
Join Date: Jan 2004
Location: Brisbane, Australia
Posts: 1,193
|
typedef struct
{ wchar_t *query; int max_results; // can be 0 for unlimited itemRecordListW results; } mlQueryStructW; Is the query struct wchar like above? How are the items returned? It seems different to the itemRecordList results. Using: SendMessage(plugin.hwndLibraryParent,WM_ML_IPC,(WPARAM)&mlQ,ML_IPC_DB_RUNQUERYW); for (int i = 0; i < mlQ.results.Size; i++) { wstring fn = mlQ.results.Items[i].filename; } Doesn't work too well. EDIT: Nevermind. It appears the sdk is out of date, the itemRecordW has 4 extra DWORDS/pointers in it not accounted for. Adding them in fixed the arithmetic. Last edited by shaneh; 24th February 2007 at 04:17. |
![]() |
![]() |
![]() |
#58 |
Junior Member
Join Date: Aug 2003
Location: Croatia
Posts: 32
|
After a few Years not beeing here, I desided to see what is going on in the Winamp Community.
I was disapointed when the guys from Sqr Soft leaved their project in crossfading. 'Some' Years later there is no work forther. Why can't none one make the plug-in for crossfading that could be based on scanning signals on beginnig and end of the song, on given dB to mix, without to take the next song 15 sec. before the end. I've tried to learn C++, but never had the time to learn so that I could build plug-ins for Winamp. Dont take my frustration seriusly, i'm just frustrated. OK, I will come again in few Years, maybe then will it be some new interesting things. ![]() |
![]() |
![]() |
![]() |
#59 |
Passionately Apathetic
Administrator Join Date: May 2000
Location: Hell
Posts: 5,435
|
the directsound output plugin can be configured to cut silence off at a db threshold which, assuming enough pre-buffer, will also notify winamp to start serving up the next song. optionally, you can fade these transitions. voila, crossfading.
The main difference being, this is what is being fed into the soundcard, its not available at the dsp part of the chain, so its not ideal for streaming with say, shoutcast. |
![]() |
![]() |
![]() |
#60 |
Junior Member
Join Date: Jul 2004
Posts: 23
|
Where is the Latest lang_b (non beta)?
Can someone give me. |
![]() |
![]() |
![]() |
#61 |
Join Date: Sep 2003
Posts: 27,873
|
it's the same as is attached in the start of this thread. there have been no updates to the language file that i've seen since 5.32
-daz |
![]() |
![]() |
![]() |
#62 |
Join Date: Sep 2003
Posts: 27,873
|
|
![]() |
![]() |
![]() |
#63 | |
Junior Member
Join Date: Jul 2004
Posts: 23
|
Quote:
|
|
![]() |
![]() |
![]() |
#64 | |
Junior Member
Join Date: Jul 2004
Posts: 23
|
Quote:
Can someone attach me? |
|
![]() |
![]() |
![]() |
#65 |
Join Date: Sep 2003
Posts: 27,873
|
you don't need them, they are part of the internal resources included in winamp.exe for icons, the classic skin, etc and are not needed for a language pack.
-daz |
![]() |
![]() |
![]() |
#66 |
Senior Member
|
Any news of an updated SDK?
|
![]() |
![]() |
![]() |
#67 |
Senior Member
|
Hi,
I'm wondering if there is a unicode version of the ML_IPC_TREEITEM_ADD? Safai Album List for Winamp - Download: v1.43, v2.06, v2.07 beta Wallpaper for Playlist Editor - Download: v1.06 |
![]() |
![]() |
![]() |
#68 |
Junior Member
Join Date: Apr 2003
Posts: 30
|
Makefile in SDK
Can a makefile be included (exported with visual studio and added to the diffrent SDK projects) so that it will be possible to easily import the samples to eclipse and other IDEs ?
A link: http://www-128.ibm.com/developerwork...cdt/index.html The link is for the older Callisto eclipse version and not for the newer Europa, but the visual studio side instructions should be the same. I know its not a priority but some docs would be nice, or at least dependences. I've even seen open-source projects with better docs then Winamp, and that's saying a lot !!! |
![]() |
![]() |
![]() |
#69 |
Ben Allison
Former Winamp Developer Join Date: Jan 2005
Location: Brooklyn, NY
Posts: 1,057
|
Updated to 5.34 SDK (was sitting on the download site for a while but I forgot to post the link). I'll go ahead and compile the 5.35 SDK right now.
|
![]() |
![]() |
![]() |
#70 |
Junior Member
Join Date: Aug 2006
Posts: 8
|
Is there any change in lang_b? I'd made a Vietnamese language pack with brken font in treeview. I'm waiting for a good news
![]() This is my problem using 5.25 SDK. I worndering how to solve? PHP Code:
|
![]() |
![]() |
![]() |
#71 |
Join Date: Sep 2003
Posts: 27,873
|
you should be using http://forums.winamp.com/showthread....hreadid=270183 instead of pre-building the file yourself as lang_b is deprecated now and will be removed in one of the next sdk builds (is easier for us to just pre-build an example lng file for use now)
-daz |
![]() |
![]() |
![]() |
#72 |
Junior Member
Join Date: Aug 2006
Posts: 8
|
Do you mean the lang_b will be replaced?
Thanks for the 5.35 pre-building language pack. But it's difficult for me to do with .lng file 'cause Vietnamese should be translated in the context (on dialog.etc..) to get a exactly mapping. So, i want to know what different between your pre-building and the latest SDK lang_b is. Or can you give me the latest one? Thank you for your help ![]() Last edited by tt01t2; 5th September 2007 at 02:56. |
![]() |
![]() |
![]() |
#73 |
Join Date: Sep 2003
Posts: 27,873
|
you just need to use a resource editor on the pre-built .lng file which will allow you to translate and adjust the sizing of the controls on the dialog pages, etc to better fit the language.
the main difference is that lang_b hasn't been updated to properly match the current winamp resources (from what i remember of the sdk build action and the fact that it's broken without modifying the rc file first). the link i refered you to has the latest official lng file to work with as there will not be one done for 5.36 until that is finalised. from experience and other comments it's just easier for the base .lng file to be pre-built as most language pack developers don't have the means/knowledge to be able to compile a lang pack (as shown by the number of ones that i'd built for people in the past) and so is why the pre-built one will be the prefered method in future -daz |
![]() |
![]() |
![]() |
#74 | |
Senior Member
Join Date: Mar 2001
Location: smspower.org
Posts: 107
|
Backwards compatibility fix for Global Config
Quote:
code: Winamp returns 1 when it's an old version that doesn't understand that message. |
|
![]() |
![]() |
![]() |
#75 |
Senior Member
Join Date: Mar 2001
Location: smspower.org
Posts: 107
|
5.5 SDK updates
What's the spec for winampUninstallPlugin? void(void)?
Should I be replying to requests for "family" tags? Is there anything I can do (as an in_plugin) to support album art, or to get into the Unified File Info/Editor party? Where's the list of Global Config settings I ought to be using? (eg. global playback thread priority) |
![]() |
![]() |
![]() |
#76 |
Join Date: Sep 2003
Posts: 27,873
|
winampUninstallPlugin has been present since 5.0 (as i recently found out) but has been improved on slightly with 5.5 (varies depending on the plugin in use - as i'm not at home i can't give the handling for that and Egg is just too keen on logging everything done in cvs at times before we can sort out docs, etc heh since i knew we'd not put this into the full changelog).
the "family" thing i'd need to check against (is primarily for the setup (/REG=S association page to group things) the unified info editor is done as a full api (requires some additional in_* exports) but i don't think there's a basic example of this at the moment to work against (i believe all of that will be one of the next things on my official winamp todo list) the global stuff i think benski already posted about that (will find out the link in a bit - was to do with in_mad if you want to have a look in the meantime) due to all of the changes in 5.5 i think it may be a little while before the full 5.5 sdk is done but will post back what i can of the changes raised. -daz |
![]() |
![]() |
![]() |
#77 |
Member
|
Erm, it's probably already been asked a hundred times, or maybe it's still too early, but what's with the new localization in Winamp? I just can't find any relevant information, besides this beta SDK, which already might be outdated, or whatever. Actually this is what I'm mostly interested in:
* New: Fully translatable Localization support * New: WLZ (Winamp Language Zip) filetype support Can I have some more info on that? What's changed, and what do I have to do to update my old localization to work with Winamp 5.5? ![]() |
![]() |
![]() |
![]() |
#78 |
Join Date: Sep 2003
Posts: 27,873
|
check out the information in the 5.5 release thread on the links to information currently available about the new style language packs (is incomplete what's available).
full details plus an example language pack will be coming out this weekend (i've bust a nut over the last 2 weeks so i'm trying to recover for the last 2 days so things are running a bit behind on getting everything out the door especially when we only got a few things working at the last moment). all i shall say is i hope you're up for a ~40k word translation (since i'm relucant to allow any wlz's onto winamp.com that aren't complete in all respects) -daz |
![]() |
![]() |
![]() |
#79 | |
Member
|
Quote:
![]() |
|
![]() |
![]() |
![]() |
#80 |
Senior Member
Join Date: Mar 2001
Location: smspower.org
Posts: 107
|
OK... /REG=S only queries "family" if you return "type" == 0 or 1. I return a custom type (if configured that way) to get my files split out of regular audio, which has worked fine until now. The /REG=S window understand this and classifies it as "other" but does not query "family" on those items.
Is that on purpose, or a bug? Here's the priority bit: code: It threw me because the setting name isn't the same as the INI entry for this one. Last edited by Maxim; 13th October 2007 at 14:44. |
![]() |
![]() |
![]() |
|
Thread Tools | Search this Thread |
Display Modes | |
|
|