Help - Search - Members - Calendar
Full Version: Toaster for Fb2k
Hydrogenaudio Forums > Hosted Forums > foobar2000 > 3rd Party Plugins - (fb2k)
Pages: 1, 2, 3, 4, 5, 6, 7
shaneh
Discussion about the Toaster plugin, continued from:
http://www.hydrogenaudio.org/forums/index....ndpost&p=275216

Current version is 0.1.6 (http://www.myplugins.info), updated 5/03/2005


The Toaster plugin is a port from the Toaster for Winamp plugin:
http://www.winamp.com/plugins/details.php?id=138586
and http://forums.winamp.com/showthread.php?s=&threadid=207630

As the port was done in about 20 minutes, there is still quite a bit of development to be done to get it working smoothly under fb2k.

FAQ
Where is the Foobar 2000 0.9 port?

Porting to fb2k 0.9 would require a fair amount of work, due to the fact Toaster is not native unicode. I am planning a complete rewrite of Toaster, which should be a lot nicer. It should allow tiling custom skins, progress bars, buttons etc, and proper skin packaging support. So I wont bother porting this version of Toaster across, as it needs to be re-written anyway.
banjobacon
I'll just paste what I wrote in the other thread here.

I get a box titled "Microsoft Visuall C++ Runtime Library" pop up, saying the following...

QUOTE
Runtime Error!

Program C:\Program Files\foobar2000\foobar2000.exe

R6025
- pure virtual function call


Another time, this failure.txt file popped up.

CODE

Illegal operation:
Code: C0000005h, flags: 00000000h, address: 004217F4h
Access violation, operation: read, address: 00200033h
Call path:
WinMain=>app_mainloop
This is the first crash logged by this instance.
Code bytes (004217F4h):
004217B4h: 83 EC 1C 89 4D FC E8 92 FD FF FF 84 C0 0F 84 8C
004217C4h: 00 00 00 53 56 6A 01 8D 4D E4 E8 DB CB FE FF 8B
004217D4h: 75 08 8B CE 8B 06 FF 10 33 DB 89 45 08 85 C0 76
004217E4h: 28 57 8B 06 53 8B CE FF 50 04 8B F8 8B CF 8B 07
004217F4h: FF 10 8B 45 EC 8D 4D E4 C1 E8 02 50 57 E8 78 1B
00421804h: FF FF 43 3B 5D 08 72 DA 5F 80 7D 18 00 5E 5B 74
00421814h: 0A 8D 45 E4 50 E8 39 00 00 00 59 FF 75 14 8B 45
00421824h: F4 8B 4D FC FF 75 10 8B 40 04 FF 75 0C 8D 44 05
Stack (0012F918h):
0012F8F8h: 01C6FFDC 77FA88F0 77F521E0 0000005A
0012F908h: 01C6DEBC C0000005 01C6DE98 01C6DEA8
0012F918h: 004458F4 013CE1A8 00000000 00000000
0012F928h: 00000000 00000000 00000001 0043A1C8
0012F938h: 0043A1B4 004458F4 0012F964 00426FE2
0012F948h: 00000003 00000001 FFFFFFFF 00000000
0012F958h: 00000000 00000004 00000003 0012F97C
0012F968h: 004277B4 00000003 000F044A 00000003
0012F978h: 00000000 0012FA00 00CB7DD9 004465DC
0012F988h: 000F044A 013A4CA8 00000000 77D43C1F
0012F998h: 005C2188 FFFFFFEB 00000000 000F044A
0012F9A8h: 005C2040 0012F9C8 77D43C1F 005C2040
0012F9B8h: FFFFFFEB 00000000 000F044A 00CC44B2
0012F9C8h: 0012FA00 77D440BD 005C2040 FFFFFFEB
0012F9D8h: 77D440C6 000F044A 00CC44B2 00000000
0012F9E8h: 0012F9DC 013A4CA8 00CB7C03 0012FAB4
0012F9F8h: 00CC5B0C FFFFFFFF 0012FA30 00CC4592
0012FA08h: 013A4CA8 000F044A 00000111 000103E9
0012FA18h: 00170532 0012FAA4 00CC44B2 00000000
0012FA28h: 00000000 00000000 0012FA5C 77D43A50
Registers:
EAX: 00200033, EBX: 00000000, ECX: 013F0104, EDX: 0043B0D8
ESI: 013CE1BC, EDI: 013F0104, EBP: 0012F940, ESP: 0012F918
Crash location: "foobar2000", loaded at 00400000h - 00452000h

Loaded modules:
foobar2000 loaded at 00400000h - 00452000h
ntdll loaded at 77F50000h - 77FF7000h
kernel32 loaded at 77E60000h - 77F46000h
USER32 loaded at 77D40000h - 77DCC000h
GDI32 loaded at 7F000000h - 7F041000h
ADVAPI32 loaded at 77DD0000h - 77E5D000h
RPCRT4 loaded at 78000000h - 78087000h
ole32 loaded at 771B0000h - 772D4000h
COMCTL32 loaded at 71950000h - 71A34000h
msvcrt loaded at 77C10000h - 77C63000h
SHLWAPI loaded at 70A70000h - 70AD9000h
utf8api loaded at 10000000h - 1000D000h
comdlg32 loaded at 763B0000h - 763F5000h
SHELL32 loaded at 4F510000h - 4FD21000h
foo_albumlist loaded at 008D0000h - 008DB000h
foo_audioscrobbler loaded at 008E0000h - 00900000h
LIBCURL loaded at 00900000h - 00919000h
WS2_32 loaded at 71AB0000h - 71AC5000h
WS2HELP loaded at 71AA0000h - 71AA8000h
WINMM loaded at 76B40000h - 76B6C000h
serwvdrv loaded at 5CD70000h - 5CD77000h
umdmxfrm loaded at 5B0A0000h - 5B0A7000h
foo_cdda loaded at 009B0000h - 009BE000h
foo_clienc loaded at 009C0000h - 009CB000h
foo_console loaded at 009D0000h - 009D7000h
foo_dbsearch loaded at 009E0000h - 009F8000h
foo_diskwriter loaded at 00A00000h - 00A12000h
foo_dsp_extra loaded at 00A20000h - 00A35000h
foo_dsp_soundtouch loaded at 00A40000h - 00A4D000h
foo_flac loaded at 00A50000h - 00A6C000h
foo_freedb loaded at 00A70000h - 00A8D000h
foo_id3v2 loaded at 00A90000h - 00AC0000h
MSVCP60 loaded at 55900000h - 55961000h
foo_infobox loaded at 00AC0000h - 00AD3000h
foo_input_std loaded at 00AE0000h - 00B7E000h
MSACM32 loaded at 77BE0000h - 77BF4000h
foo_masstag loaded at 00B80000h - 00B94000h
foo_output_std loaded at 00BA0000h - 00BA9000h
foo_playcount-1.4.1 loaded at 00BB0000h - 00BBA000h
foo_playlistgen_ex loaded at 00BC0000h - 00BCF000h
foo_read_http loaded at 00BD0000h - 00BD9000h
foo_rgscan loaded at 00BE0000h - 00BED000h
foo_scroll loaded at 00BF0000h - 00BF6000h
foo_spc loaded at 00C00000h - 00C11000h
foo_syfm loaded at 00C20000h - 00C2A000h
foo_temple loaded at 00C30000h - 00C3B000h
foo_toaster loaded at 00C40000h - 00C5E000h
gdiplus loaded at 70D00000h - 70E91000h
MSVCR71 loaded at 7C340000h - 7C396000h
foo_uie_albumart loaded at 00C80000h - 00C8C000h
foo_uie_volume loaded at 00C90000h - 00C9A000h
foo_ui_columns loaded at 00CA0000h - 00CD7000h
foo_ui_std loaded at 00CE0000h - 00CF7000h
foo_vorbisenc loaded at 00D00000h - 00DFA000h
foo_wavpack loaded at 00E00000h - 00E12000h
foo_winamp_spam loaded at 00E20000h - 00E28000h
uxtheme loaded at 5AD70000h - 5ADA4000h
ctagent loaded at 00F80000h - 00F90000h
dciman32 loaded at 73BC0000h - 73BC6000h
mswsock loaded at 71A50000h - 71A8B000h
DNSAPI loaded at 76F20000h - 76F45000h
winrnr loaded at 76FB0000h - 76FB7000h
WLDAP32 loaded at 76F60000h - 76F8C000h
rasadhlp loaded at 76FC0000h - 76FC5000h
wshtcpip loaded at 71A90000h - 71A98000h
dsound loaded at 51080000h - 510DD000h
VERSION loaded at 77C00000h - 77C07000h
wdmaud loaded at 72D20000h - 72D29000h
msacm32 loaded at 72D10000h - 72D18000h
midimap loaded at 77BD0000h - 77BD7000h
KsUser loaded at 5EF80000h - 5EF84000h
iconv loaded at 06790000h - 0686A000h
imagehlp loaded at 76C90000h - 76CB2000h
DBGHELP loaded at 6D510000h - 6D58D000h

Stack dump analysis:
Address: 004458F4h, location: "foobar2000", loaded at 00400000h - 00452000h
Address: 0043A1C8h, location: "foobar2000", loaded at 00400000h - 00452000h
Address: 0043A1B4h, location: "foobar2000", loaded at 00400000h - 00452000h
Address: 004458F4h, location: "foobar2000", loaded at 00400000h - 00452000h
Address: 00426FE2h, location: "foobar2000", loaded at 00400000h - 00452000h
Address: 004277B4h, location: "foobar2000", loaded at 00400000h - 00452000h
Address: 00CB7DD9h, location: "foo_ui_columns", loaded at 00CA0000h - 00CD7000h
Address: 004465DCh, location: "foobar2000", loaded at 00400000h - 00452000h
Address: 77D43C1Fh, location: "USER32", loaded at 77D40000h - 77DCC000h
Address: 77D43C1Fh, location: "USER32", loaded at 77D40000h - 77DCC000h
Address: 00CC44B2h, location: "foo_ui_columns", loaded at 00CA0000h - 00CD7000h
Address: 77D440BDh, location: "USER32", loaded at 77D40000h - 77DCC000h
Symbol: "GetWindowLongW" (+0000002Bh)
Address: 77D440C6h, location: "USER32", loaded at 77D40000h - 77DCC000h
Symbol: "GetWindowLongW" (+00000034h)
Address: 00CC44B2h, location: "foo_ui_columns", loaded at 00CA0000h - 00CD7000h
Address: 00CB7C03h, location: "foo_ui_columns", loaded at 00CA0000h - 00CD7000h
Address: 00CC5B0Ch, location: "foo_ui_columns", loaded at 00CA0000h - 00CD7000h
Address: 00CC4592h, location: "foo_ui_columns", loaded at 00CA0000h - 00CD7000h
Address: 00CC44B2h, location: "foo_ui_columns", loaded at 00CA0000h - 00CD7000h
Address: 77D43A50h, location: "USER32", loaded at 77D40000h - 77DCC000h
Address: 00CC44B2h, location: "foo_ui_columns", loaded at 00CA0000h - 00CD7000h
Address: 00CC44B2h, location: "foo_ui_columns", loaded at 00CA0000h - 00CD7000h
Address: 77D43B1Fh, location: "USER32", loaded at 77D40000h - 77DCC000h
Address: 00CC44B2h, location: "foo_ui_columns", loaded at 00CA0000h - 00CD7000h
Address: 77D73964h, location: "USER32", loaded at 77D40000h - 77DCC000h
Symbol: "CreateAcceleratorTableA" (+0000032Dh)
Address: 77D99BE0h, location: "USER32", loaded at 77D40000h - 77DCC000h
Address: 77D45462h, location: "USER32", loaded at 77D40000h - 77DCC000h
Symbol: "ReleaseDC" (+0000012Ah)
Address: 00CC44B2h, location: "foo_ui_columns", loaded at 00CA0000h - 00CD7000h
Address: 77D454C3h, location: "USER32", loaded at 77D40000h - 77DCC000h
Symbol: "SendMessageW" (+00000047h)
Address: 719AE1B6h, location: "COMCTL32", loaded at 71950000h - 71A34000h
Symbol: "Ordinal384" (+000393E0h)
Address: 719AF696h, location: "COMCTL32", loaded at 71950000h - 71A34000h
Symbol: "Ordinal384" (+0003A8C0h)
Address: 719B0055h, location: "COMCTL32", loaded at 71950000h - 71A34000h
Symbol: "Ordinal384" (+0003B27Fh)
Address: 77D44092h, location: "USER32", loaded at 77D40000h - 77DCC000h
Symbol: "GetWindowLongW" (+00000000h)
Address: 7197B394h, location: "COMCTL32", loaded at 71950000h - 71A34000h
Symbol: "Ordinal384" (+000065BEh)
Address: 77D440BDh, location: "USER32", loaded at 77D40000h - 77DCC000h
Symbol: "GetWindowLongW" (+0000002Bh)
Address: 7197BA6Ch, location: "COMCTL32", loaded at 71950000h - 71A34000h
Symbol: "Ordinal384" (+00006C96h)
Address: 7197B394h, location: "COMCTL32", loaded at 71950000h - 71A34000h
Symbol: "Ordinal384" (+000065BEh)
Address: 77D440BDh, location: "USER32", loaded at 77D40000h - 77DCC000h
Symbol: "GetWindowLongW" (+0000002Bh)
Address: 77D440C6h, location: "USER32", loaded at 77D40000h - 77DCC000h
Symbol: "GetWindowLongW" (+00000034h)
Address: 00CB7B0Ch, location: "foo_ui_columns", loaded at 00CA0000h - 00CD7000h
Address: 77D43B4Fh, location: "USER32", loaded at 77D40000h - 77DCC000h
Address: 00CB853Ah, location: "foo_ui_columns", loaded at 00CA0000h - 00CD7000h
Address: 00CC5B38h, location: "foo_ui_columns", loaded at 00CA0000h - 00CD7000h
Address: 00CB7B0Ch, location: "foo_ui_columns", loaded at 00CA0000h - 00CD7000h
Address: 00CB7B32h, location: "foo_ui_columns", loaded at 00CA0000h - 00CD7000h
Address: 77D43A50h, location: "USER32", loaded at 77D40000h - 77DCC000h
Address: 7197B394h, location: "COMCTL32", loaded at 71950000h - 71A34000h
Symbol: "Ordinal384" (+000065BEh)
Address: 7197B394h, location: "COMCTL32", loaded at 71950000h - 71A34000h
Symbol: "Ordinal384" (+000065BEh)
Address: 77D43B1Fh, location: "USER32", loaded at 77D40000h - 77DCC000h
Address: 7197B394h, location: "COMCTL32", loaded at 71950000h - 71A34000h
Symbol: "Ordinal384" (+000065BEh)
Address: 7197B394h, location: "COMCTL32", loaded at 71950000h - 71A34000h
Symbol: "Ordinal384" (+000065BEh)
Address: 00CB7B0Ch, location: "foo_ui_columns", loaded at 00CA0000h - 00CD7000h
Address: 77D73964h, location: "USER32", loaded at 77D40000h - 77DCC000h
Symbol: "CreateAcceleratorTableA" (+0000032Dh)
Address: 77D99BE0h, location: "USER32", loaded at 77D40000h - 77DCC000h
Address: 77D45B3Bh, location: "USER32", loaded at 77D40000h - 77DCC000h
Symbol: "IsWindowVisible" (+00000080h)
Address: 7197B394h, location: "COMCTL32", loaded at 71950000h - 71A34000h
Symbol: "Ordinal384" (+000065BEh)
Address: 00CB7B0Ch, location: "foo_ui_columns", loaded at 00CA0000h - 00CD7000h
Address: 77D45B5Ah, location: "USER32", loaded at 77D40000h - 77DCC000h
Symbol: "CallWindowProcW" (+00000019h)
Address: 7197B394h, location: "COMCTL32", loaded at 71950000h - 71A34000h
Symbol: "Ordinal384" (+000065BEh)
Address: 10003461h, location: "utf8api", loaded at 10000000h - 1000D000h
Symbol: "uCallWindowProc" (+00000018h)
Address: 7197B394h, location: "COMCTL32", loaded at 71950000h - 71A34000h
Symbol: "Ordinal384" (+000065BEh)

Version info:
foobar2000 v0.8.3
UNICODE



I'm pretty sure it's due to Toaster.


moderation: changed [ code ] to [ codebox ]. put crashlogs into codebox instead of code tags, please
MrEnergizer
Yeah I got the same errors.
Removed Toaster and the problem ceased.
shaneh
@badrad, kl33per, synth7: The configuration should be under the components menu. Look at the screenshot in the first post to see where. As it was developed for Winamp initially it doesnt support the Foobar preferences pane.

Assuming youve already looked there, I cant think off hand what the problem might be. Are you using Windows XP? Have you tried disabling other components to see which one might be conflicting? I have a feeling it might have something to do with mixed runtimes. I am using Foobar2000 v0.8.3, and Columns 0.1.2 beta3.

A am simply using the code from the tutorial for the menu code:

CODE

class menu_item_main_toaster : public menu_item_main {
// Return the number of commands we provide.
virtual unsigned get_num_items() {
 return 2;
}

// Set out to the name of the n-th command.
// This name is used to identify the command and determines
// the default position of the command in the menu.
virtual void enum_item(unsigned n, string_base & out) {
 if (n == 0) out = "Components/Toaster/Configure Toaster";
 if (n == 1) out = "Components/Toaster/Show Toast";
}

// Perform n-th command.
virtual void perform_command(unsigned n) {
 if (n==0 && core_api::assert_main_thread()) {

  configtoast();
 }
 if (n==1 && core_api::assert_main_thread()) {

  showToast(NULL, false, true, false, 0);
 }
}

// Return whether the n-th command is checked.
virtual bool is_checked(unsigned n) {
 return false;
}

// Set out to the description for the n-th command.
virtual bool get_description(unsigned n, string_base & out) {
 if (n == 0) {
  out = "Configure Toaster";
  return true;
 }
 if (n == 1) {
  out = "Show Toast";
  return true;
 }
 return false;
}
};

// We need to create a service factory for our menu item class,
// otherwise the menu commands won't be known to the system.
static menu_item_factory< menu_item_main_toaster > foo_menu;
shaneh
@alphaex32: I havent fully tested the id3v2 image code in Fb2k, but its a cut'n'paste job from the winamp plugin with no dependencies on Winamp so Im not sure what the issue could be. the only thing I guessed with and didnt bother testing is the file path retrieval.:

CODE
myTag.Link((char*)track->handle_get_path());


Its possible this might be a problem if its in UTF8. Try using the winamp plugin under Winamp to see if the id3v2 covers are loaded ok to check if the problem is specific to this Fb2k version.
shaneh
@eliazu: I will fix up the utf8 etc stuff in a future version.

@foosion: Yes Ive read that FAQ, along with the many other FAQs. At the time I just didnt put a lot of thought into what UTF8 really was, or have any unicode files to test with. (if anyone has a very small unicode based file, e-mail it to me for testing).
Plus it was a 10minute port job from a player that doesnt support unicode so there is going to be a few deficiencies here and there.

Im currently using:
MultiByteToWideChar(CP_ACP,MB_PRECOMPOSED,(*src,-1,dest,MSGLENGTH);

In the conversion routine, just changing this to CP_UTF8 should get it to work. Although I will look into the utf8api stuff, I use some of the string_utf16_from_utf8 in the messenger portion of code, though Im not sure if this is in the utf8api lib.

I dont want to change too much to be dependent on foobar2000 libs etc, as the code is practically identical from the winamp one to the fb2k one, and itd be nice to have a unified code base for the actual window. I'll look further into it however. For if the DrawText routines have the ability to embed colour that would be nice indeed. Though I hope it has the ability to measure the strings and is GDI+ compatible.

For the play_control::playback_format_title_ex() etc, Ive been having a few issues. That call works fine, but Id like to get the %_playlist_number% etc stuff in the formatting. So I use:

int curtrack = playlist_oper::get()->get_playback_cursor();
playlist_oper::get()->format_title(curtrack,...);

instead, which so far works. Though it obviously has issues if the item isn't in the playlist. I tried get_currenty_playing too, but it returns -1 if you call it in a on_playback_new_track, which I guess is expected behaviour.

Whats a good way to get the track handle in such a way that it can be formatted with playlist information on a song change or when called via a hotkey? Would you say the playback_cursor would be the best method?

I will look into on_playback_dynamic_info for streams.
shaneh
@Skates:

It currently just uses the first ID3FID_PICTURE it finds. AFAIK theres no particular standard for where the cover art should be stored, so it just uses the first picture it finds in the tag. It shouldnt matter whats its called AFAIK, as long as there is an image in there using the standard ID3FID_PICTURE frame.

@banjobacon, MrEnergizer:

This could be a runtime confict of some sort. Perhaps if I compile to an older version of the msvcr, or flick some compiler switches, it might work.

Otherwise, it could be some handle problem. I think that version I posted frees the handle passed to it on the on_playback_new_track which I think it probably isn't supposed to do. Whether this would cause a sporadic crash I am not sure.
Skates
QUOTE(shaneh @ Feb 20 2005, 08:09 PM)
@Skates:

It currently just uses the first ID3FID_PICTURE it finds. AFAIK theres no particular standard for where the cover art should be stored, so it just uses the first picture it finds in the tag. It shouldnt matter whats its called AFAIK, as long as there is an image in there using the standard ID3FID_PICTURE frame.


For some reason its not finding the cover art tags inserted by Musicmatch, when using the lookup tags feature. If you could look into the problem it would be appreciated...

If need be I can send a MP3 tagged by Musicmatch!
shaneh
Could you try using the winamp Toaster plugin and see if it finds the images? You can send me a small .mp3 with a id3v2 image in it to the address indicated in the plugin.
spaceships
what xp theme are you using?
Skates
QUOTE(shaneh @ Feb 20 2005, 10:30 PM)
Could you try using the winamp Toaster plugin and see if it finds the images? You can send me a small .mp3 with a id3v2 image in it to the address indicated in the plugin.
*


Doesn't work in WinAMP either, sent a demo mp3 with random ass tags from Musicmatch.
aliumalik
Excellent working shaneh!
this might be a silly request (memory freak sad.gif) but is it possible that after the toast fades out the ram usage can be returned to normal? (when minimized foobar mem usage is around 1.5 meg but when toasts whow it climbs to around 5 meg and doest come down but if you maximize and minimize it again it returns back to normal)
Thanks for an excellent plugin
shaneh
@Skates: I'll take a look when it comes through.

@aliumalik: I can take a look, although I think this may be more to do with the way Windows works. ie, when you minimize foobar (or any application), it pages out the memory to disk. But because Toaster causes a window to be shown in that thread, Windows reloads the paged memory and doesnt page the process out again until you manually hit "minimize". This is because Windows see the process as "active"/"interactive" and is careful not to page the process out.

While memory "usage" might drop to 1.5mb, you will probably find the actual VM size doesnt change for the process.
aliumalik
shaneh from toaster's settings I figured you know how to display embedded album art files from id3v2 tags. If you have some knowledge on this could you help foo_uie_albumart. They can't figure out how to display images from id3v2 tags and I have to manually create folder.jpg for all of my album folders.

Thanks a lot
shaneh
@skates: That file you sent me showed the cover images fine in Winamp. (be sure to enable the option). Ive found the problem with the foobar plugin. The file path is being returned in the format "file://c:\" instead of just "c:\". I'll add the fix into the next release.

Do you know how to get the file path without the file:// cruft? I suppose I could use titleformat, but I suspect there may be another more efficient way.

I also need a way for detecting streams to avoid looking for the id3 tag or folder.jpg etc.

@aliumalik: Toaster just makes use of id3lib, theres plenty of documentation for that particular library.
shaneh
Ive fixed up the support for ID3v2 cover images and UTF8 tags:
http://www.hydrogenaudio.org/forums/index....ndpost&p=275216

I still need to look into the dynamic info, http streams and so forth. I tried adding colour support, but the .ini file I am using strips leading 0x03 characters as whitespace, so its a bit problematic so Ive left it out.

I can't just use the utf8api for my purposes either, as I need to use DrawString and wrapped text etc.
Skates
QUOTE(shaneh @ Feb 21 2005, 01:44 AM)
@skates: That file you sent me showed the cover images fine in Winamp. (be sure to enable the option). Ive found the problem with the foobar plugin. The file path is being returned in the format "file://c:\" instead of just "c:\". I'll add the fix into the next release.

Do you know how to get the file path without the file:// cruft? I suppose I could use titleformat, but I suspect there may be another more efficient way.

I also need a way for detecting streams to avoid looking for the id3 tag or folder.jpg etc.

Still having the same problem, sent you another MP3, this one also contains APEv2 tags which maybe be the problem in all of this. If you can check out it out, it would be appreciated. Figured out why the MP3 that I sent you was not working in WinAMP, but the rest of my MP3s with APEV2 tags along with ID3v2 aren't working either.

Also I noticed a problem with exporting configs, example in 1 and on the right side I have " '('%_length%')' " and when I export that, it doesn't save it properly. It will save as " ('%_length%') " its cutting out the '. This also seems to be happening everytime foobar2000 is closed and reopnened.

Also the id3lib.dll error message reads that the dll should be in the same folder as winamp.exe.
alphaex32
QUOTE(shaneh @ Feb 20 2005, 08:34 PM)
@alphaex32: I havent fully tested the id3v2 image code in Fb2k, but its a cut'n'paste job from the winamp plugin with no dependencies on Winamp so Im not sure what the issue could be. the only thing I guessed with and didnt bother testing is the file path retrieval.:

CODE
myTag.Link((char*)track->handle_get_path());


Its possible this might be a problem if its in UTF8. Try using the winamp plugin under Winamp to see if the id3v2 covers are loaded ok to check if the problem is specific to this Fb2k version.
*



Just tried it, and sure enough, it works in the winamp version. So it is surely a problem specific to the foobar port.

Btw, I am getting error logs everytime I shut down foobar after installing your plugin.
shaneh
alphaex32: Have you tried the new version I posted in the upload forum? it should have fixed that problem.

RE: the error logs, Ive seen that too. As well as the pure virtual call error. I will look into it further.

@Skates: That file you sent me didnt have any id3v2 tags.

The missing ' is a result of the .ini saving and loading API in windows. I will probably switch to another method for foobar later. You can just prefix and suffix your tags with something like [] and it should retain it ok.
Skates
QUOTE(shaneh @ Feb 21 2005, 09:16 AM)
@Skates: That file you sent me didnt have any id3v2 tags.

The missing ' is a result of the .ini saving and loading API in windows. I will probably switch to another method for foobar later. You can just prefix and suffix your tags with something like [] and it should retain it ok.
*


Hmm damn, I just noticed that tag.exe is removing the id3v2 tags that Musicmatch adds. Havew to come up with a different solution so that it doesn't happen. What about reading the tags from APEv2?
alphaex32
QUOTE(shaneh @ Feb 21 2005, 10:16 AM)
alphaex32: Have you tried the new version I posted in the upload forum? it should have fixed that problem.
*



Didn't even notice the new version. Unfortunately, the rar file seems to be corrupted. I have redownloaded it a few times already and winrar is giving me those "unexpected end" errors.
shaneh
Why am I having that problem so much? Ive havent experienced problems with corruption before, I can only assume its an issue with my account on this board.

Ive tried updating it with another format, see if it helps.

@Skates: Does APE even support cover images? I see nothing here:
http://www.ikol.dk/~jan/musepack/klemm/www...sv8/apekey.html
Skates
QUOTE(shaneh @ Feb 21 2005, 10:02 AM)
@Skates: Does APE even support cover images? I see nothing here:
http://www.ikol.dk/~jan/musepack/klemm/www...sv8/apekey.html
*


tag.exe puts the images in APEv2 so I'm guessing that it is, otherwise it should still work since APE is just a tag format and it shouldn't matter what the tags contain.
eliazu
QUOTE(shaneh @ Feb 21 2005, 03:51 AM)
@eliazu: I will fix up the utf8 etc stuff in a future version.


thanx.
the new vesrsion 0.1.1 display hebrew fonts right smile.gif but theres still problems with display of covers in hebrew folders.
Canar
foobar2000 will remove cover art when the tag is altered/rewritten. This is considered a feature, not a bug. Cover images should not be stored in audio files.
banjobacon
Well, my latest crash came when I double clicked my playlist panel in order to create a new playlist. Here's the failure.txt, in case that is of any help.

CODE
Illegal operation:
Code: C0000005h, flags: 00000000h, address: 004212F5h
Access violation, operation: read, address: 00000000h
Call path:
WinMain=>app_mainloop
This is the first crash logged by this instance.
Code bytes (004212F5h):
004212B5h: FF 15 18 90 43 00 8B 3D 1C 59 44 00 FF 05 10 59
004212C5h: 44 00 C1 EF 03 C7 45 FC 00 00 00 00 74 3D 53 8B
004212D5h: 5D 08 56 8B 4D 0C FF 75 FC 8B 01 FF 10 84 C0 74
004212E5h: 20 A1 14 59 44 00 8B 4D FC 8B 34 C8 8B CE 8B 06
004212F5h: FF 10 8B 03 8B CB FF 10 8B 13 50 56 8B CB FF 52
00421305h: 10 FF 45 FC 39 7D FC 72 CA 5E 5B 8D 4D F8 E8 0C
00421315h: 4D FE FF 5F C9 C2 08 00 55 8B EC 51 B8 F8 58 44
00421325h: 00 56 50 89 45 FC FF 15 18 90 43 00 A1 1C 59 44
Stack (0012FCE0h):
0012FCC0h: 00BDF8C0 77FA88F0 77F521E0 0000005A
0012FCD0h: 00BDD9F4 C0000005 00BDD9D0 00BDD9E0
0012FCE0h: 013F0760 00000000 004458F4 004458F8
0012FCF0h: 0000003F 0012FD14 00427292 013F0774
0012FD00h: 0012FD10 00000002 00000003 00000000
0012FD10h: 004394C4 0012FD28 004277AE 01470AB8
0012FD20h: 0043B508 00000000 0012FDBC 00CB8C08
0012FD30h: 004465DC 0012FE4C 00CB7B0C 00000000
0012FD40h: 00CC63E0 00F19E58 0000001D 0000001D
0012FD50h: 00000000 00000010 00000000 00000000
0012FD60h: 00000000 00000001 00CC67DC 00CC67C8
0012FD70h: 005CBAF0 FFFFFFEB 00000000 0012FE4C
0012FD80h: 00CB7B0C 0012FDBC 77D440BD 005CBAF0
0012FD90h: FFFFFFEB 77D440C6 0012FE4C 00CB7B0C
0012FDA0h: 00000000 0012FD6C 77D47E67 00CB853A
0012FDB0h: 0012FE5C 00CC5B38 00000003 0012FDD8
0012FDC0h: 00CB7B32 004465AC 000102FE 00000203
0012FDD0h: 00000001 002D0044 0012FE04 77D43A50
0012FDE0h: 000102FE 00000203 00000001 002D0044
0012FDF0h: 00CB7B0C DCBAABCD 00000000 0012FE4C
Registers:
EAX: 00000000, EBX: 013F0774, ECX: 01470A54, EDX: 0000003E
ESI: 01470A54, EDI: 00000040, EBP: 0012FCF4, ESP: 0012FCE0
Crash location: "foobar2000", loaded at 00400000h - 00452000h

Loaded modules:
foobar2000 loaded at 00400000h - 00452000h
ntdll loaded at 77F50000h - 77FF7000h
kernel32 loaded at 77E60000h - 77F46000h
USER32 loaded at 77D40000h - 77DCC000h
GDI32 loaded at 7F000000h - 7F041000h
ADVAPI32 loaded at 77DD0000h - 77E5D000h
RPCRT4 loaded at 78000000h - 78087000h
ole32 loaded at 771B0000h - 772D4000h
COMCTL32 loaded at 71950000h - 71A34000h
msvcrt loaded at 77C10000h - 77C63000h
SHLWAPI loaded at 70A70000h - 70AD9000h
utf8api loaded at 10000000h - 1000D000h
comdlg32 loaded at 763B0000h - 763F5000h
SHELL32 loaded at 4F510000h - 4FD21000h
foo_albumlist loaded at 008D0000h - 008DB000h
foo_audioscrobbler loaded at 008E0000h - 00900000h
LIBCURL loaded at 00900000h - 00919000h
WS2_32 loaded at 71AB0000h - 71AC5000h
WS2HELP loaded at 71AA0000h - 71AA8000h
WINMM loaded at 76B40000h - 76B6C000h
serwvdrv loaded at 5CD70000h - 5CD77000h
umdmxfrm loaded at 5B0A0000h - 5B0A7000h
foo_cdda loaded at 009B0000h - 009BE000h
foo_clienc loaded at 009C0000h - 009CB000h
foo_console loaded at 009D0000h - 009D7000h
foo_dbsearch loaded at 009E0000h - 009F8000h
foo_diskwriter loaded at 00A00000h - 00A12000h
foo_dsp_extra loaded at 00A20000h - 00A35000h
foo_dsp_soundtouch loaded at 00A40000h - 00A4D000h
foo_flac loaded at 00A50000h - 00A6C000h
foo_freedb loaded at 00A70000h - 00A8D000h
foo_id3v2 loaded at 00A90000h - 00AC0000h
MSVCP60 loaded at 55900000h - 55961000h
foo_infobox loaded at 00AC0000h - 00AD3000h
foo_input_std loaded at 00AE0000h - 00B7E000h
MSACM32 loaded at 77BE0000h - 77BF4000h
foo_masstag loaded at 00B80000h - 00B94000h
foo_output_std loaded at 00BA0000h - 00BA9000h
foo_playcount-1.4.1 loaded at 00BB0000h - 00BBA000h
foo_playlistgen_ex loaded at 00BC0000h - 00BCF000h
foo_read_http loaded at 00BD0000h - 00BD9000h
foo_rgscan loaded at 00BE0000h - 00BED000h
foo_scroll loaded at 00BF0000h - 00BF6000h
foo_spc loaded at 00C00000h - 00C11000h
foo_syfm loaded at 00C20000h - 00C2A000h
foo_temple loaded at 00C30000h - 00C3B000h
foo_toaster loaded at 00C40000h - 00C5E000h
gdiplus loaded at 70D00000h - 70E91000h
MSVCR71 loaded at 7C340000h - 7C396000h
foo_uie_albumart loaded at 00C80000h - 00C8C000h
foo_uie_volume loaded at 00C90000h - 00C9A000h
foo_ui_columns loaded at 00CA0000h - 00CD7000h
foo_ui_std loaded at 00CE0000h - 00CF7000h
foo_vorbisenc loaded at 00D00000h - 00DFA000h
foo_wavpack loaded at 00E00000h - 00E12000h
foo_winamp_spam loaded at 00E20000h - 00E28000h
uxtheme loaded at 5AD70000h - 5ADA4000h
ctagent loaded at 00F80000h - 00F90000h
mswsock loaded at 71A50000h - 71A8B000h
DNSAPI loaded at 76F20000h - 76F45000h
winrnr loaded at 76FB0000h - 76FB7000h
WLDAP32 loaded at 76F60000h - 76F8C000h
dsound loaded at 51080000h - 510DD000h
VERSION loaded at 77C00000h - 77C07000h
wdmaud loaded at 72D20000h - 72D29000h
msacm32 loaded at 72D10000h - 72D18000h
rasadhlp loaded at 76FC0000h - 76FC5000h
midimap loaded at 77BD0000h - 77BD7000h
wshtcpip loaded at 71A90000h - 71A98000h
KsUser loaded at 5EF80000h - 5EF84000h
appHelp loaded at 75F40000h - 75F5F000h
CLBCATQ loaded at 7C890000h - 7C911000h
OLEAUT32 loaded at 77120000h - 771AB000h
COMRes loaded at 77050000h - 77115000h
cscui loaded at 76620000h - 7666E000h
CSCDLL loaded at 76600000h - 7661C000h
browseui loaded at 71500000h - 715FD000h
USERENV loaded at 75A70000h - 75B15000h
SETUPAPI loaded at 76670000h - 76757000h
ntshrui loaded at 76990000h - 769B4000h
ATL loaded at 76B20000h - 76B35000h
NETAPI32 loaded at 71C20000h - 71C6E000h
shdocvw loaded at 71700000h - 71848000h
imagehlp loaded at 76C90000h - 76CB2000h
DBGHELP loaded at 6D510000h - 6D58D000h

Stack dump analysis:
Address: 004458F4h, location: "foobar2000", loaded at 00400000h - 00452000h
Address: 004458F8h, location: "foobar2000", loaded at 00400000h - 00452000h
Address: 00427292h, location: "foobar2000", loaded at 00400000h - 00452000h
Address: 004394C4h, location: "foobar2000", loaded at 00400000h - 00452000h
Address: 004277AEh, location: "foobar2000", loaded at 00400000h - 00452000h
Address: 0043B508h, location: "foobar2000", loaded at 00400000h - 00452000h
Address: 00CB8C08h, location: "foo_ui_columns", loaded at 00CA0000h - 00CD7000h
Address: 004465DCh, location: "foobar2000", loaded at 00400000h - 00452000h
Address: 00CB7B0Ch, location: "foo_ui_columns", loaded at 00CA0000h - 00CD7000h
Address: 00CC63E0h, location: "foo_ui_columns", loaded at 00CA0000h - 00CD7000h
Address: 00CC67DCh, location: "foo_ui_columns", loaded at 00CA0000h - 00CD7000h
Address: 00CC67C8h, location: "foo_ui_columns", loaded at 00CA0000h - 00CD7000h
Address: 00CB7B0Ch, location: "foo_ui_columns", loaded at 00CA0000h - 00CD7000h
Address: 77D440BDh, location: "USER32", loaded at 77D40000h - 77DCC000h
Symbol: "GetWindowLongW" (+0000002Bh)
Address: 77D440C6h, location: "USER32", loaded at 77D40000h - 77DCC000h
Symbol: "GetWindowLongW" (+00000034h)
Address: 00CB7B0Ch, location: "foo_ui_columns", loaded at 00CA0000h - 00CD7000h
Address: 77D47E67h, location: "USER32", loaded at 77D40000h - 77DCC000h
Symbol: "CallNextHookEx" (+00000039h)
Address: 00CB853Ah, location: "foo_ui_columns", loaded at 00CA0000h - 00CD7000h
Address: 00CC5B38h, location: "foo_ui_columns", loaded at 00CA0000h - 00CD7000h
Address: 00CB7B32h, location: "foo_ui_columns", loaded at 00CA0000h - 00CD7000h
Address: 004465ACh, location: "foobar2000", loaded at 00400000h - 00452000h
Address: 77D43A50h, location: "USER32", loaded at 77D40000h - 77DCC000h
Address: 00CB7B0Ch, location: "foo_ui_columns", loaded at 00CA0000h - 00CD7000h
Address: 00CB7B0Ch, location: "foo_ui_columns", loaded at 00CA0000h - 00CD7000h
Address: 77D43B1Fh, location: "USER32", loaded at 77D40000h - 77DCC000h
Address: 00CB7B0Ch, location: "foo_ui_columns", loaded at 00CA0000h - 00CD7000h
Address: 77D73964h, location: "USER32", loaded at 77D40000h - 77DCC000h
Symbol: "CreateAcceleratorTableA" (+0000032Dh)
Address: 77D99BE0h, location: "USER32", loaded at 77D40000h - 77DCC000h
Address: 77D43D79h, location: "USER32", loaded at 77D40000h - 77DCC000h
Symbol: "GetMessageW" (+00000125h)
Address: 00CB7B0Ch, location: "foo_ui_columns", loaded at 00CA0000h - 00CD7000h
Address: 77D43A33h, location: "USER32", loaded at 77D40000h - 77DCC000h
Address: 77D4B1B8h, location: "USER32", loaded at 77D40000h - 77DCC000h
Symbol: "IsDialogMessageW" (+0000008Dh)
Address: 77D73964h, location: "USER32", loaded at 77D40000h - 77DCC000h
Symbol: "CreateAcceleratorTableA" (+0000032Dh)
Address: 77D99C00h, location: "USER32", loaded at 77D40000h - 77DCC000h
Address: 77D43DDFh, location: "USER32", loaded at 77D40000h - 77DCC000h
Symbol: "DispatchMessageW" (+0000000Bh)
Address: 100038ECh, location: "utf8api", loaded at 10000000h - 1000D000h
Symbol: "uDispatchMessage" (+0000000Ah)
Address: 0041238Bh, location: "foobar2000", loaded at 00400000h - 00452000h
Address: 70A74187h, location: "SHLWAPI", loaded at 70A70000h - 70AD9000h
Symbol: "Ordinal125" (+0000002Dh)
Address: 00410FEAh, location: "foobar2000", loaded at 00400000h - 00452000h
Address: 00438DB5h, location: "foobar2000", loaded at 00400000h - 00452000h
Address: 00400000h, location: "foobar2000", loaded at 00400000h - 00452000h
Address: 70A74187h, location: "SHLWAPI", loaded at 70A70000h - 70AD9000h
Symbol: "Ordinal125" (+0000002Dh)
Address: 00438DE0h, location: "foobar2000", loaded at 00400000h - 00452000h
Address: 0043C320h, location: "foobar2000", loaded at 00400000h - 00452000h
Address: 77E8141Ah, location: "kernel32", loaded at 77E60000h - 77F46000h
Symbol: "GetCurrentDirectoryW" (+00000044h)
Address: 70A74187h, location: "SHLWAPI", loaded at 70A70000h - 70AD9000h
Symbol: "Ordinal125" (+0000002Dh)
Address: 77E9B2E5h, location: "kernel32", loaded at 77E60000h - 77F46000h
Symbol: "SetThreadExecutionState" (+00000097h)
Address: 77E97CE0h, location: "kernel32", loaded at 77E60000h - 77F46000h
Symbol: "VerSetConditionMask" (+0000D764h)
Address: 00438C81h, location: "foobar2000", loaded at 00400000h - 00452000h

Version info:
foobar2000 v0.8.3
UNICODE
aliumalik
shaneh your plugin is open source right? Why not host @ sourceforge.net? IPB's uploading somehow gets the compressed files corrupted :S. And yes I am also getting those random crashes haven't been able to try this one yet. If you dont want to host @ sourceforge I will be getting my hosting in a week and I can host for you
banjobacon
You could also upload your plugin to the 3rd party plugin site.
Biscuits
Hey, I got the latest version (.zip file worked!) and it seems as though the crashes on quit have been fixed, though I haven't tested thoroughly. I have a few requests:

- Have an option so that it is not always on top.

- I have my hold option all the way up (which I assume makes it never go away) and if I press stop, it stays there. It'd be nice if it'd automatically go away if the music is stopped.

- Have an option to show elapsed time?

- If song is paused, have it show [Paused] or something like that.

Maybe these options defeat the original purpose of the plugin, but I'd find them useful.

Thanks,
-Tristan
Mike Giacomelli
QUOTE(aliumalik @ Feb 20 2005, 10:50 PM)
shaneh from toaster's settings I figured you know how to display embedded album art files from id3v2 tags. If you have some knowledge on this could you help foo_uie_albumart. They can't figure out how to display images from id3v2 tags and I have to manually create folder.jpg for all of my album folders.

Thanks a lot
*



Art in tags is incompatable with foobar's tagging, so adding cover art to any tag type would not be a good idea. You'd have to disable tag writing in foobar entirely for it to work.

Using a folder.jpg is a much better solution.
Skates
QUOTE(Mike Giacomelli @ Feb 21 2005, 12:46 PM)
QUOTE(aliumalik @ Feb 20 2005, 10:50 PM)
shaneh from toaster's settings I figured you know how to display embedded album art files from id3v2 tags. If you have some knowledge on this could you help foo_uie_albumart. They can't figure out how to display images from id3v2 tags and I have to manually create folder.jpg for all of my album folders.

Thanks a lot
*



Art in tags is incompatable with foobar's tagging, so adding cover art to any tag type would not be a good idea. You'd have to disable tag writing in foobar entirely for it to work.

Using a folder.jpg is a much better solution.
*


Actually, a folder.jpg will not work right for some people such as I, I only keep singles from albums that I deem worthy enough to keep. In this case it would be redundant to have a folder for every single I have, in instances that I only have one song from that album.
anza
QUOTE(Skates @ Feb 21 2005, 09:03 PM)
QUOTE(Mike Giacomelli @ Feb 21 2005, 12:46 PM)
QUOTE(aliumalik @ Feb 20 2005, 10:50 PM)
shaneh from toaster's settings I figured you know how to display embedded album art files from id3v2 tags. If you have some knowledge on this could you help foo_uie_albumart. They can't figure out how to display images from id3v2 tags and I have to manually create folder.jpg for all of my album folders.

Thanks a lot
*



Art in tags is incompatable with foobar's tagging, so adding cover art to any tag type would not be a good idea. You'd have to disable tag writing in foobar entirely for it to work.

Using a folder.jpg is a much better solution.
*


Actually, a folder.jpg will not work right for some people such as I, I only keep singles from albums that I deem worthy enough to keep. In this case it would be redundant to have a folder for every single I have, in instances that I only have one song from that album.
*



Well you could just have many image files in the folder and name them after the single.
rossthiof
Seems there is a problem with displaying album cover in some cases:
If there is an ä,ö or ü [german: "Umlaute"] in the file path, the folder-jpg can't be displayed.
Is there any possibility to solve this problem?

shaneh
I think I may have found the cause of at least one of the crashes, I will update it with a fix eventually.

I wont bother uploading it anywhere else until Ive stabalised it somewhat.

I dont see the problem with cover art in your audio files. It contains other meta data so why not. It certainly saves having to fiddle with external files etc. The disk space usage isnt much of an argument when you go through and do the actual % figures. I agree that id3v2 is a crappy format though. Id be more concerned about a player that modifies your files as you play them tongue.gif and writes non-standard tags such as PLAYCOUNT instead of the standard POPM fields etc, with the only way to prevent it being to block all tag modifications. Thats always bugged me about fb2k.

@Biscuits: I tried implementing an "always on bottom" feature a while ago, but Windows doesnt really support it. You have to continually check your Z order position and move to the bottom on all sorts of events etc. It ended up being quite awkward and unusable.

I could hide the toast window on stop without a problem I think.

Things like elapsed time which change dynamically are a bit tricky to do in Toaster. Its been coded in such a way that updating would require a complete redraw of the window. Though thinking about it just now, there might be a way. Although the dynamic width would have to not change with each update, only on a song change, for best results.

The song paused thing would be easy to do if I implement the dynamic info stuff I talked about above.

@rossthiof + others: I will need to change the file handling to unicode versions AFAIK.
ssamadhi97
QUOTE(shaneh @ Feb 22 2005, 01:13 AM)
Id be more concerned about a player that modifies your files as you play them tongue.gif and writes non-standard tags such as PLAYCOUNT instead of the standard POPM fields etc
*


Err. This is not a feature of the player, but something introduced by third party plugins that are not part of any installer package. Don't spread this kind of disinformation, please. (btw there is an alternative plugin that does not touch file tags at all and keeps track of playback statistics in its own database)
shaneh
Maybe so, but if you want to keep statistics in the main database (AFAIK, the database is part of the player), then you have to update it with fields similar to how the 3rd party plugin works. This data is then potenitally written to the file. I think most people would want to use this database than a 2nd, or sql server or whatever.

Regardless of whether the 3rd party plugins which put this info in the DB in the first place are or aren't part of the package, the main db has the ability to write non-standard tags to files you play. Which AFAIK *is* a feature of the player.
amppa
QUOTE(shaneh @ Feb 20 2005, 08:23 AM)
All downloads are the same - but for some reason the board is corrupting my uploads, so try your luck with them.

Well, you could upload the plugin to the 3rd party site to avoid corrupted files.
A_Man_Eating_Duck
is there any chance of getting support for multiple image locations?
Like an image fallback, if string A is not found, try string B.

e.g
i have
F:\album art\%Artist% - %Album%.jpg
and
F:\album art\Various Artists - %album%

or is it easier to put in support for the $if2 function ?

e.g
$if2(F:\Album Art\%artist% - %album%.jpg,F:\Album Art\Various Artists - %album%.jpg)


shaneh
A_Man_Eating_Duck: You can separate strings by ; and Toaster will try them in order. Unfortuantly if your albums or artist have non-filename characters have invalid filename characters you will have problems. I am not sure of a way to filter the strings such that invalid characters are filtered (on a per tag basis). /EDIT: The $replace function would seem to do the trick.

Ive updated to 0.1.2, but only debug builds are currently available until stability settles. You will need the debug msvcr stuff for this.

I think Ive fixed the main issue people were probably having. I previously had C++ exceptions turned off due to some internal SEH stuff I was doing with delay imports. Ive changed this about a bit and hopefully it will work a little better. I havent done the unicode file handling stuff yet though.
aliumalik
QUOTE(shaneh @ Feb 22 2005, 06:18 AM)
Maybe so, but if you want to keep statistics in the main database (AFAIK, the database is part of the player), then you have to update it with fields similar to how the 3rd party plugin works. This data is then potenitally written to the file. I think most people would want to use this database than a 2nd, or sql server or whatever.

Regardless of whether the 3rd party plugins which put this info in the DB in the first place are or aren't part of the package, the main db has the ability to write non-standard tags to files you play. Which AFAIK *is* a feature of the player.
*


Exactly third party plugins should be able to access the db and create additional fields. This whole idea of tagging the files with playcount is weird and using sqllite adds another process why use an external db if you already have one. I still cant understand why it removes some metadata when editing tags while that metadata is part of the id3 spec. For me this is the first thing that needs to be worked on. id3 spec compliant tags and native id3v2 support like other players do today (itunes etc)
A_Man_Eating_Duck
QUOTE(shaneh @ Feb 22 2005, 11:23 AM)
A_Man_Eating_Duck: You can separate strings by ; and Toaster will try them in order.
*


blush.gif

Well strike me down, it works

Thanks
shaneh
@rossthiof+eliazu: try the new 0.1.3 version and see if its working ok with the unicode folders. It seems to ok for me, though my machine isnt very 'international' so I havent done a too thorough test.
rossthiof
I'm on the way to test it, but there is one problem:
I don't have this file called "msvcr71d.dll" on my system and it seems to be hard to find it in the internet...

Edit:Works very well.THX a lot!
banjobacon
I downloaded a file with Toaster skins from the Winamp forum (here). I got the ballon skin to work in foobar by changing a few settings around in the Toaster config window, after importing the Ballon preset. However, after I close and reopen fb2k, the skin doesn't work anymore. I have to re-import it for anything to show up.
eliazu
hebrew covers and fonts are displayed great now on 0.1.3. thank you very much!
Duble0Syx
I've just dl v 0.1.3 and now I get the "cannot load DLL" error when foobar starts. I already have all the dll's I think I need as well as GDI since I am on WinXP sp2. Are there some components known to cause this or am I still missing something?

EDIT: Also, I can't open with 7zip archives at all with either winrar or 7-zip.
dano
you can get the 2 dll's needed for debug version from here: http://dream.eng.uci.edu/sungjin/EECS123/
if you dont want that, use the release version - my download did not work, too (firefox). but after i tried the download in internet explorer, it worked?!
Mike Giacomelli
QUOTE(shaneh @ Feb 21 2005, 05:18 PM)
Regardless of whether the 3rd party plugins which put this info in the DB in the first place are or aren't part of the package, the main db has the ability to write non-standard tags to files you play. Which AFAIK *is* a feature of the player.
*



Writing nonstandard tags is a very useful feature, and allowed by the spec in most tag formats (and when not allowed, they are not written). What possible reason could you have for not wanting them?
Skates
QUOTE(Mike Giacomelli @ Feb 22 2005, 02:20 PM)
QUOTE(shaneh @ Feb 21 2005, 05:18 PM)
Regardless of whether the 3rd party plugins which put this info in the DB in the first place are or aren't part of the package, the main db has the ability to write non-standard tags to files you play. Which AFAIK *is* a feature of the player.
*



Writing nonstandard tags is a very useful feature, and allowed by the spec in most tag formats (and when not allowed, they are not written). What possible reason could you have for not wanting them?
*


Exactly the point, cover art maybe unstandard with APEv2, but as you say unstandard tags are very useful. So whats the point of not supporting cover art tags?

Seems like your backstepping from your previous statements...
Duble0Syx
Could someone maybe mirror the files? The 7zip file is broken when downloaded with firefox and I can't download the file at all on IE.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2008 Invision Power Services, Inc.