Help - Search - Members - Calendar
Full Version: Album Art Downloader XUI
Hydrogenaudio Forums > Hydrogenaudio Forum > General Audio
Pages: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11
KarnEvil9
QUOTE(AlexVallat @ Apr 12 2008, 00:37) *

Possible fix for CPU usage while idle: AlbumArtDownloaderXUI-test_cpu_fix.zip.

Could someone who's experiencing CPU usage while idle please try extracting the contents of the above zip over their AAD program folder and letting me know if it has made any difference? My profiling tools say that it theoretically ought to.

Works for me! It now pretty much stays on 00, occasionally jumping to 01. That's with it open, but idle. I said before that caused about ~20% usage, but I tested it again before copying these files over, and it actually was jumping all over the place, sometimes into the 30s. 20% probably was about average, but it was hard to tell, because it was changing so much.

Thanks (again) for your efforts!
Mondo
i will give that a test tomorrow. i just wanted to chime in to say that if i run this at low priority level it responds how i imagine it should and memory sits around 100MB.
KarnEvil9
To add to what I reported earlier, after doing a search of a pretty popular album, with all search engines selected, CPU usage again jumps all over the place, as high as into the 30s, even after minimizing.

Just to reiterate, the old version did that even before searching (at least while open - minimizing mostly eliminated it). The new version uses virtually no CPU even while open, prior to searching.

So it looks like you're on the right track, but in some ways it's worse now (since minimizing no longer helps).

Not complaining; just reporting.
AlexVallat
QUOTE(KarnEvil9 @ Apr 12 2008, 09:38) *
To add to what I reported earlier, after doing a search of a pretty popular album, with all search engines selected, CPU usage again jumps all over the place, as high as into the 30s, even after minimizing.
Sorry, but just to be clear, do you mean while it is actually searching, or that it stays high after the search completes? (the Stop All link will disappear once all sources have finished searching)

During searching, the CPU usage is expected, but if it is then staying there after the search completes, I'll investigate further.

Alex
~*McoreD*~
Hi Alex,

I have been enjoying this amazing development of AAD XUI.

I have a couple of feature suggestions to increase the quality of the artwork that's downloaded using AAD command line.

/minRes
/squareFactor

Note: These option names are for demonstration only.

For example:

/minRes 600

would filter results to artwork with only Width >= 600 or Height >= 600
So either Width or Height should meet minimum dimensions.

/squareFactor 0.9

could make sure Width is almost close to Height.

squareFactor can be described as smaller dimension divided by the bigger dimension.

If the artwork is 600x593 thne the squareFactor for the artwork is 0.98833333 which is higher than 0.9 (almost square) so this can be included

If the artwork is 403x600 then the squareFactor for the artwork is 0.67166 which is less than 0.9 (not close to a square) so this will be excluded from the results.

squareFactor 1.0 is a perfect square: 500x500, 600x600 etc.

My expectation for AAD to have

CODE
aad.exe /artist "Artist Name" /album "Album Name" /minRes 600 /squareFactor 0.9


so AAD could filter results to artwork with Width or Height at least 600px and Square Factor at least 0.9

Best Regards,
McoreD
AlexVallat
QUOTE(~*McoreD*~ @ Apr 12 2008, 10:49) *

I have a couple of feature suggestions to increase the quality of the artwork that's downloaded using AAD command line.

/minRes
/squareFactor

Thanks for the suggestions. /minRes already exists, but I called it /minSize. It behaves the way you described, though.

/squareFactor sounds like a good idea, I'll probably put that in the next version.

Alex
thuan
I have the same result as KarnEvil9, virtually no CPU usage when open AAD and do nothing. But after doing a search and finish, it is again has CPU usage like before in the picture in one of my previous post.

I have a bunch of computers beside my main computer over here:
Athlon X2 4200+ 1GB Vista SP1 using onboard nvidia 6100;
a laptop with 1.7GHz Dothan Pentium M with 512 MB running XPSP2 with 945G onboard graphic;
a T7200 laptop with 2GB RAM Vista SP1 and onboard 965G
all of them run this program adequately. I have a P3 550 256MB RAM with XP on it, too. But I guess I don't need to test this program on it.

@arnymars:
What I meant by that is: if I can not convince you to change your point of view then it'll be pointless to continue talking. I was naive thinking that you would understand as you still kept your false assumption on this software and how a computer should work from my point of view. I'm sorry that my kindness and advice was unaccounted for and directed at the wrong person or any inconveniences that my posts directed to you have caused. Anyway, I will stop talking to you on this case, don't worry and peace.
AlexVallat
QUOTE(thuan @ Apr 12 2008, 11:57) *
I have the same result as KarnEvil9, virtually no CPU usage when open AAD and do nothing. But after doing a search and finish, it is again has CPU usage like before in the picture in one of my previous post.

OK, so I'm on the right track then, but not quite there. Try this one: AlbumArtDownloaderXUI-test_cpu_fix_2.zip.

Thanks also for the information on your PCs. The one I find particularly interesting is the Pentium M laptop. The Dothan Pentium M is roughly equivalent in performance to a good P4, I believe (correct me if I'm wrong), and 512Mb would seem to me like a sensible lower limit. I can only assume that if it is running OK on that laptop, but unusable on Mondo's Athlon or anymars' P4 (both also at 512Mb), it's probably down to how much work WPF can offload on to the GPU. I don't really have any experience with the Intel onboard graphics - would you say the 945G was a reasonably good graphics chipset, or more entry-level? anymars is running a GeForce 4, which I don't think support DX9 - which means WPF would have to do most, if not all, of the rendering work in the CPU instead. I can see how that would make a difference.

Alex
~*McoreD*~
QUOTE(AlexVallat @ Apr 12 2008, 18:54) *


Thanks for the suggestions. /minRes already exists, but I called it /minSize. It behaves the way you described, though.

/squareFactor sounds like a good idea, I'll probably put that in the next version.

Alex


Oops.. my bad:

QUOTE

/minSize Specifies the minimum size of (/minSize 300)
image, in pixels, to use.
Both horizontal and vertical
dimensions must conform.
May be abbreviated to /mn (/mn 300)


I thought it was fileSize. biggrin.gif

That's GREAT news Alex. Thanks for the fast response! cool.gif

Cheers,
McoreD
arnymars
Alex,

I tested this fix, and it looks very promizing. First AAD window, when open without search terms from within or outside of foobar, draws no CPU resources continuosly whatsoever. When opened with search terms, it stops drawing the resources soon after the search is completed. However, each additional open AAD instance continues drawing CPU resources at 1.5% periodically indefinitely whether empty or showing Search results, while it's active window on the screen. Once passive (you switch to a different program or AAD window), it appears to stop drawing the resources. If none of AAD instances is active on the screen, they all total to 1.5% but only seldom. It's almost perfect in this aspect now, but I feel can be polished a bit. If you are kind enough to give a user without new or any Graphics Card a bit more control over AAD habits in ID3 Tag local search, it will really solve whole this issue for all (as opposed to attempts of simply shutting up users on the forum).

thuan,

I do tend to assemble my own PCs, but also use stock PCs, depending on purpose. I'm well aware of deficiencies of price designed PCs, and CPUs of various generations, even without overclocking. However, this whole "weak PC" issue is irrelevant here, since in my view programs advertized as foobar plugins or helpers should adhere to foobar System Requirements. As well, any program can be improved, as we all know, and bug reports are merely encouragement for this. And on top of this, AAD is a good program.
thuan
Sorry, I was wrong that laptop has a 915G, my main computer is the one that has 945G (but I use a dedicated card now). The 915G and 945G are nearly identical just different in clock speed and different vertex shader versions that they support. 945G supports vertex shader 3.0 (915G supports version 2) and a little more powerful in term of raw power as it has higher core clock. They both do not have support for vertex shader and HW T&L in HW that a GF2/4MX or higher have. Performace wise they are POS to be honest, should be lower than a GF4MX440 a DX7 class card even though they are DX9 capable. As for the CPU, yes you're right it should be as powerful as a good P4.
Performance of AAD on this system is of course not as fast as my main computer and the T7200 laptop but still acceptable IMO. On the Athlon X2, it is not much different from my main computer and the T7200, maybe because I haven't used up all of my RAM yet and the CPU is roughly about the same in power.

Also, I have a long standing problem with your program that I told you some time ago, but it seems like you forgot. If I launch a search then another right after and turn off the first one, the 2nd instance (not really as you only have one process) sometimes freezes. This also happens when there're more than 2 windows, if I close one of old ones the newer ones will randomly freeze. It might unfreeze if there's some change in the UI though.

I have tested your new build it's still the same as the previous test build.

EDIT: somehow I kept getting the old binary however I tried, can you rename the zip?
AlexVallat
QUOTE(thuan @ Apr 12 2008, 15:22) *
Also, I have a long standing problem with your program that I told you some time ago, but it seems like you forgot. If I launch a search then another right after and turn off the first one, the 2nd instance (not really as you only have one process) sometimes freezes. This also happens when there're more than 2 windows, if I close one of old ones the newer ones will randomly freeze. It might unfreeze if there's some change in the UI though.
Is this the problem you mean? I thought I'd fixed that in 0.14, but it doesn't seem to match your new description exactly. If it's a different problem you are describing, that you reported to me and I failed to acknowledge, then I apologise for missing it. I'll see if I can reproduce it from the description you've given here, but if there are any other details from the original report, please pass those on again.

QUOTE(thuan @ Apr 12 2008, 15:22) *
EDIT: somehow I kept getting the old binary however I tried, can you rename the zip?
OK, it's now AlbumArtDownloaderXUI-test_cpu_fix_2.zip (AlbumArt.exe inside should have a modified timestamp of 2008-04-12 13:00).

QUOTE(arnymars @ Apr 12 2008, 14:54) *
However, each additional open AAD instance continues drawing CPU resources at 1.5% periodically indefinitely whether empty or showing Search results, while it's active window on the screen.
If I've understood right, you run AAD, and it's fine. After completing a search, it's fine. Opening a new search window (through the menu?) results in low, but non-zero CPU usage while the new window has the focus? Does closing the new window return usage to zero? I haven't been able to isolate this case in my profiler tool.

I'll see if I can put together a test build that drops the priority of the file browser search to background when the file browser window is minimised (which will also avoid CPU usage rendering the results as they come in), and you can let me know if it makes enough difference to CPU usage to be worthwhile.

Alex
mobyduck
Great job Alex!

All my problems seem solved with zip #2.

When I launch AAD CPU stays at 0-3%; I also tried 3 or 4 searches through foo_run and CPU usage is back to 0 when the search is over (and I have the impression AAD uses less resources than before also when seeking, though I'm not really sure).

Case closed for me. wink.gif

Alessandro
thuan
I reported the freeze problem in this post, the last paragraph. There's nothing more I can say about it though.

About the CPU fix, it really is still the same as the previous one for me.

EDIT: update on the CPU usage problem, it's good on the XP Dothan laptop and not on my main Vista machine (the one with ATI card) whether Aero is on or off. I will try to test the other machines when I can. The T7200 laptop is doing something and that AMD machine is currently in used by other.
Mondo
update seems to fix the problems. memory usage still sits at about 200M even after doing a few searches and closing all the search windows to just have the file browser open. i suppose running it through foobar would help.. i just need to learn how to do it.
definitely a solid update though!! i've been using it for about an hour now without it really inhibiting my progress at all.
oh yeah, my graphics card is an ati radeon 9600.
arnymars
QUOTE(AlexVallat @ Apr 12 2008, 08:57) *

Opening a new search window (through the menu?) results in low, but non-zero CPU usage while the new window has the focus?

It looks, like any AAD Search window in focus or visible on screen (unobstructed), even a single open one, whether with or without search results, whether open from AAD menu, foobar or Win Explorer, draws 1.5% every 2-3 sec indefinitely without mouse over activity. With more AAD windows open, and one still in focus & several (partially) visible, frequency of CPU usage increases, while staying at 1.5% and slowly going to 1.5-3+% with 6 AAD windows open, no mouse over. Once all windows are out of focus and fully covered by another program window (but not minimized), AAD draws 0% CPU total regardless of number of windows with or withour search results. In focus File or Foobar Browser windows don't draw CPU at all. It all looks like standard intelligent WPF routing, but may possibly be further minimized.

Timely memory release may be another issue to look at. If done correctly, it should be covered by .Net 3.5. "As long as there exists a reference to an object, which might be either a direct reference to an object or via a graph of objects, the object is considered to be in use by the CLR. When there is no reference to an object, and thus cannot be reached or used, it becomes garbage. However, it still holds on to the memory allocated to it. .NET Framework includes a garbage collector which runs periodically, on a separate thread than the application's thread, that enumerates all the unusable objects and reclaims the memory allocated to them."

As to opening windows minimized, as done in this test build, this option is traditionally reserved for a user in Prefs, and not everyone likes it, as AAD performs some entertainment function as well, complementing foobar in that, so attractiveness - nice Covers apear from nowhere - and immediate visual access to Covers feel important.
AlexVallat
QUOTE(thuan @ Apr 12 2008, 16:28) *

I reported the freeze problem in this post, the last paragraph. There's nothing more I can say about it though.
Can you tell me if the old windows that you close have currently running searches, or if closing idle windows has the same effect? If it is closing currently running searches, I have added a possible fix for it to Test Build 3.

QUOTE(arnymars @ Apr 12 2008, 22:33) *
It looks, like any AAD Search window in focus or visible on screen (unobstructed), even a single open one, whether with or without search results, whether open from AAD menu, foobar or Win Explorer, draws 1.5% every 2-3 sec indefinitely without mouse over activity.
Could you use the tab key to move focus out of the text boxes (for example on to the search button), then leave the mouse outside the window check to see if it is the same? The profiler is telling me that the only area being redrawn on an empty idle AAD search window now is flashing the text-insertion caret in the textbox. I've got to say, it seems unlikely that this will be using 1.5% CPU, but after that, I'm out of ideas.

QUOTE(arnymars @ Apr 12 2008, 22:33) *
Timely memory release may be another issue to look at.
Can you be more specific about where? I had a memory leak hunting session at around version 0.7, and while I'm sure the major ones are still plugged (closing a window or clearing search results releases the memory used), there might be minor ones I've missed. I've had a look at the usual suspects, though, and everything seems to be being released when it should be.

QUOTE(arnymars @ Apr 12 2008, 22:33) *
As to opening windows minimized, as done in this test build, this option is traditionally reserved for a user in Prefs
I'm not set on using that as a UI mechanism yet. If low-priority file tag scanning goes in at all, there will be some way of indicating that this particular operation should be treated as a background task to run at a low priority (rather than a more general global option). For the moment, minimising the window indicates that it should work in the background. Windows will never be automatically minimised or opened minimised - that will always be a user-initiated action.

Test Build 3 sets the file scanning thread to low priority while the file browser is minimised. Could you try running it and let me know if that reduces the CPU load significantly for you? It doesn't for me, but then it only runs at about 50-60% CPU here anyway, so there's another 40% or so idle CPU time available for other normal-priority threads before it would take share away from the low priority ones anyway.

Alex
arnymars
Alex, I think you exactly right about the cursor - removing it from the window in focus lives AAD with 0% CPU usage regardless of the number of visible windows with or without search results. Still it looks like WPF overhead, for a cursor to draw 1.5-3% CPU every 2 sec. But this problem seems to be resolved.

Can this Mondo's RAM & CPU report help: "i'm running a 2.17ghz amd athlon with 512MB of ram and the program is almost completely unusable. it opens up at about 30MB of memory and escalates from there until it gets into 400+MB 10 seconds later. interface is almost completely unresponsive, usually i click something and sit there hoping my mouse click went through. i know my computer is pretty outdated, but is the program supposed to be using this much memory?". "Memory usage still sits at about 200M even after doing a few searches and closing all the search windows to just have the file browser open". " if i run this at low priority level it responds how i imagine it should and memory sits around 100MB" ?
I'll try to do more tests a bit later.

Pointers Wiki
Memory Management Reference
.NET Framework Developer's Guide - Garbage Collection
Garbage Collection FAQ

I'm afraid, "low priority" search won't do much from heat standpoint, if there are no other programs running (foobar excluded as it draws very little), so some kind of Application & Resource Throttling approach is needed. Low priority will help to use other programs simultaneously, if one is willing to allow extreme fan noize & PC damage consequences. However, a lot of of people would feel easier, if task throttling is implemented. " The general tuning figure for the threshold limit for processors is 85 percent". Some MS Blogs & Forums are good places to ask.

See also:
.NET Framework Developer's Guide - Managed Threading

This is great and unusual experience for a plugin type program. Despite newer models dominating sales, P4 replacement at many homes is slow, especially in the 3-d world. And everyone loves music, with P2P sharply increasing availability. Foobar is still considered an easy choise for lossless formats playback, despite "unfinished" feel. Having completed music collections with Lyrics and Covers is a great hobby. As I mentioned earlier, most audiophiles would want to find more info about an Album and its Cover, if easy links are provided with found covers. I can't think of another App with such a good fit for this as AAD.
thuan
Alex, the freeze issue happens whether the old window is searching or idle. Your latest build doesn't fix it in either case for me. As for the CPU usage problem, it is still the same for me on any of my Vista machine, CPU usage goes wildly again after a search.

EDIT: CPU usage on XP (Dothan) is fine.
AlexVallat
QUOTE(arnymars @ Apr 13 2008, 00:37) *
Alex, I think you exactly right about the cursor
OK, thanks for letting me know. It's a little disappointing that showing a flashing text insertion cursor uses a measurable amount of CPU, but at least the mystery is solved.

QUOTE(arnymars @ Apr 13 2008, 00:37) *
Mondo: "Memory usage still sits at about 200M even after doing a few searches and closing all the search windows"
Yes, that was helpful. It turns out a leak was introduced in 0.11, which I have now managed to track down and eliminate. Test Build 4 should now always release a search window's memory when it is closed.

Thanks for your links. AAD is a fully managed-code application, though, so information about pointers doesn't apply in this case. If anyone is curious, I've found SciTech's .NET Memory Profiler to be invaluable in tracking down managed object leaks (objects expected to be free for garbage collection, but which are still being held on to due to unexpected references to them).

QUOTE(arnymars @ Apr 13 2008, 00:37) *
I'm afraid, "low priority" search won't do much
Yeah, I figured it probably wouldn't do much, as it didn't sound like there was anything else competing for CPU at the time, but I thought it might be worth a try, as I was doing a test build anyway. I'll remove it. At least it proves that the file scanning is not taking CPU from anything else that needs it more, just making good use of the CPU resource made available to it.

I appreciate the time you took looking up links on throttling and tuning, but I'm afraid they all seem to relate to server applications, where different priorities apply, and scaling must be taken into account.

This just isn't the case for a single-user desktop application performing a user-initiated foreground task. I'm not going to get into all this again, but suffice it to say, I won't be writing any throttling code.

QUOTE(thuan @ Apr 13 2008, 04:13) *
the freeze issue happens whether the old window is searching or idle. Your latest build doesn't fix it in either case for me. As for the CPU usage problem, it is still the same for me on any of my Vista machine, CPU usage goes wildly again after a search.
Fair enough - if the freeze can occur even when not searching, then the fix I put in to test build 3 wouldn't have had any effect. I'm still trying to find any reason there might be a freeze from closing an idle window, but haven't managed to come up with anything yet, sorry. I'll keep looking, though.

Also, lacking a Vista machine to test on, I'm not sure what I can do about it. If you have the time and patience, you can download WpfPerf (documentation), then using the Perforator tool check to see if the Dirty Rect Addition Rate is non-zero when idle after completing a search. If it is, check the "Show dirty region update overlay" checkbox. Hopefully this will result in some coloured rectangles over whatever area is being re-rendered - if you send me a screenshot of that, I can see if I can figure out why that area might be being re-rendered when it is supposed to be idle.

Of course, I'd understand if you don't want to bother, but I thought I'd mention it anyway, as it's probably the only way to get anywhere with a Vista-only problem.

Alex
thuan
QUOTE(AlexVallat @ Apr 13 2008, 22:59) *

Of course, I'd understand if you don't want to bother, but I thought I'd mention it anyway, as it's probably the only way to get anywhere with a Vista-only problem.

As you're willing to help fix the problem, at least I should be able to do that, shouldn't I. It's to improve the program I use after all. Here it is:
IPB Image
The part inside the RED rectangle I drew is the part keep updating after a search. With the rectangle inside the cover sources updates the most, the 2nd in frequency is the search button and the least is the remaining part. When starting up and doing nothing, an inactive AAD window does have Dirty Rect Addition Rate = 0. And here's the data frame inside WpfPerf:
IPB Image
Thank you for taking your time looking into my/users' problems. It's hard to find someone, working on a FOSS project such as this, who is willing to help and tolerant as you.
AlexVallat
QUOTE(thuan @ Apr 14 2008, 03:51) *
Wow, 816 dirty rect addition rate! I need a faster pc... :-)

OK, I've had another stab at preventing the sources area from redrawing when it shouldn't. I'm going to assume the Search button redrawing is a side-effect of that, as I can't think of anything that would cause the button to redraw itself. Try Test Build 5 and see if that resolves the problem after performing a search. If it doesn't, could you let me know if any of the sources have "test: true" written under them? They should all say "test:false", if everything is working the way I am hoping.

For the freezing problem, does it still draw the window at all? Or do you get a black or corrupted display? If it is drawing the window, try moving the mouse over Options link, and see if the cursor changes to the hand pointer, and then hover over the sort triangle, and see if a tooltip pops up. If the tooltip does pop up, does the window then become responsive afterwards? How about minimizing and restoring the window, does that unfreeze it? I just need to know if I'm looking at the right effect or not. Does it ever happen if you open new window within AAD itself, rather than using foo_run to trigger it?

Alex
thuan
With this new test build, it seems like it even redraws faster after a search, all sources return test:false though. And yes, you're right about the cover sources part is the main problem as only that part is redrawn when AAD is inactive after a search.

I found some new bugs in this test build:
- Do a search and when the search is still taking place, doing another search with the same search term by either click on the search button or press enter inside the text box completely freeze AAD.

- Launh first search, then launch a 2nd search, close down the 2nd window when the first one still searching will completely freeze AAD.

About the freeze issue:
QUOTE
For the freezing problem, does it still draw the window at all? Or do you get a black or corrupted display?

Yes it still draws the window.
QUOTE
If it is drawing the window, try moving the mouse over Options link, and see if the cursor changes to the hand pointer, and then hover over the sort triangle, and see if a tooltip pops up. If the tooltip does pop up, does the window then become responsive afterwards?

No, the cursor doesn't change to the hand pointer at any place.
QUOTE
How about minimizing and restoring the window, does that unfreeze it?

Doesn't do any good in older versions, the latest test build is reponsive afterward though.
QUOTE
Does it ever happen if you open new window within AAD itself, rather than using foo_run to trigger it?

It happens in either case.
AlexVallat
QUOTE(thuan @ Apr 14 2008, 14:41) *
Hmm... Windows Vista progress bars are continuously animated, aren't they? It would seem that they are being animated by WPF even when they aren't visible too. Hopefully this Test Build 6 will finally lay them to rest and stop them animating. If it doesn't, I might need some holy water and a silver stake, just to be sure.

I've fixed the second-search freezing bug in this test build too, thanks for pointing it out.

In this test build I've also tried a couple more ideas to help with the freezing bug from the answers you gave me, so let me know if anything improves there too, please.

Alex
thuan
Yes, progress bars in Vista are continuously animated.
Fortunately, it seems like you have brought me holy water and a silver stake. This version seems to work fine CPU usage wise and the freeze issue wise. I only did a few searchs though. I will try more tomorrow. It's late night over here already.

EDIT: Ok, in this version you managed to make everything goes to sleep when searching is finished. "Dirty Rect Addition Rate" does equal zero. There's a small CPU usage (well in a RARE case I have seen it goes nearly to 10% on my Core 2, but haven't encountered this behavior again) in AlbumArt.exe thread, as shown in Process Explorer, happens SOMETIMES whether the windows are active, inactive or minimized, though. If you're willing to continue investigating, I'm able to help, too.

Another small problem, when changing the Album search string (mostly delete some unnecessary words, it's not a new search string so most of the time AAD uses the old window) and do a search again during the original search is taking place, the GUI may temporary freeze. It will be reponsive soon though with the same trigger as in previous freeze problem. Other than this, the GUI doesn't freeze now.

EDIT2: It seems like I found out the cause of the freeze issue I talk about above. It only happens either when you stop the search using the stop all button or do another search that satisfies certain criteria making it happen in the current search window. IOW, when user stops a search it causes AAD to freeze.
AlexVallat
QUOTE(thuan @ Apr 14 2008, 18:08) *
OK, good news on the redraw after search issue then, I'm going to call that resolved. If there's another separate issue with CPU usage while idle, then we have to go back to the start to figure out what it is actually doing (if anything). Is that just on Vista (I'm not seeing it on XP here)? Does it ever happen before a search is made?

I've made some changes to the Stop All (including when stopping searches ready to perform a new replacement search), so hopefully freezing should be minimised. If a lot of sources are searching, there may still be a brief delay, but hopefully not much now. There may be a significant delay in actually stopping a source to a slow server, as it is unfortunately not possible to interrupt it while it is actually receiving data as part of a download, but the UI should be responsive while waiting though.

Test Build 7 should be more responsive in the search-stopping area, and also fixes a bug where the Stop All button may remain visible even though all searches have stopped.

Alex
thuan
QUOTE(AlexVallat @ Apr 17 2008, 02:07) *
OK, good news on the redraw after search issue then, I'm going to call that resolved.
Yeah, I don't think we can do anything more with this.
QUOTE(AlexVallat @ Apr 17 2008, 02:07) *
If there's another separate issue with CPU usage while idle, then we have to go back to the start to figure out what it is actually doing (if anything).

I also think this is a seperate issue, as only AlbumArt.exe thread has CPU usage and dirty frame addition rate is really 0 after a search.
QUOTE(AlexVallat @ Apr 17 2008, 02:07) *
Is that just on Vista (I'm not seeing it on XP here)?

Yes, only on Vista.
QUOTE(AlexVallat @ Apr 17 2008, 02:07) *
Does it ever happen before a search is made?

No, as far as I can tell.
QUOTE(AlexVallat @ Apr 17 2008, 02:07) *
Test Build 7 should be more responsive in the search-stopping area, and also fixes a bug where the Stop All button may remain visible even though all searches have stopped.

Yes, it's as good as I expect it to be.
AlunAlun
Can I just say that, as a new foobar2k user, I found and downloaded this program and it worked an absolute treat, I found it a joy to use. Well done and thank you very much! biggrin.gif
AlexVallat
QUOTE(thuan @ Apr 17 2008, 04:58) *
I also think this is a seperate issue, as only AlbumArt.exe thread has CPU usage and dirty frame addition rate is really 0 after a search.
OK, I've put together some fairly random performance optimisations into Test Build 8. If none of them hit the mark, I think I'll have to leave this as it is - sorry. If I move to a Vista development environment, I'll take another look at it, though.

I plan to package up what we've got here with McoreD's /squareFactor suggestion, fix up Coveralia and Google search scripts again, and release as 0.17 this weekend. Thanks for all your help with tracking down the performance issues.

QUOTE(AlunAlun @ Apr 18 2008, 14:16) *
Can I just say that, as a new foobar2k user, I found and downloaded this program and it worked an absolute treat, I found it a joy to use. Well done and thank you very much! biggrin.gif
Thanks, it's always great to know when people appreciate my work!

Alex
thuan
QUOTE(AlexVallat @ Apr 19 2008, 00:42) *
OK, I've put together some fairly random performance optimisations into Test Build 8. If none of them hit the mark, I think I'll have to leave this as it is - sorry. If I move to a Vista development environment, I'll take another look at it, though.

It doesn't fix it, but it seems to be better. And it seems to only happen when there're a lot of album arts found whether in single or multiple window. No picky, though. I can wait, as I said if there had been no one bringing this up, I wouldn't have noticed it. Thanks for taking your time and fixed my issues with this simple but indispensable program.
AlexVallat
AlbumArt Downloader XUI v0.17 Released

This is a performance release, several issues have been fixed relating to CPU usage for rendering the search window, and a memory leak when closing a search window has been plugged. Responsiveness in general has also been improved.

Additionally, the Coveralia script has been fixed and the Google Images script re-written to cope with their changes, and should both now work again.

Finally, a new parameter has been added to the command line interface (aad.exe): /minAspect. This specifies the minimum aspect ratio of the image to use. This is how square the image must be, where a value of 1 represents perfectly square (600 x 600, for example). An image of size 600 x 300 would only be allowed if /minAspect were 0.5 or lower.

Download:
AlbumArtDownloaderXUI.exe (Installer. Recommended)
AlbumArtDownloaderXUI.zip (zip archive for those who don't like installers)
.NET Framework 3.5 (required)
AlbumArtDownloaderXUI-MediaInfoX64Upgrade.exe (x64 version of MediaInfo - must be installed if you are running a 64 bit version of Windows)
arnymars
Alex,
I also wanted to thank you for your persistant work on this nice utility. Its always a pleasure to deal with intelligent person as well. I checked your website and found, your hardware resources were quite limited for a while. It raises a reasonable question though, why you don't want to help others with limited resources to enjou your program by adding some limited throttling algorithm. And why don't you want to add Cover Weblink Return code to your sources, which doesn't look that hard and time consuming, based on the Cover sources scripts posted on your website.

Another question I have is about your Foobar Configuration File Tool. Is it possible to add the new checksum calculation to it to avoid patching Foobar? Also, with this tool, is there a way to increase Foobar Max Sound Volume? Is there any reason for it to be so low anyway compare to Apollo, WinAmp etc.?
AlexVallat
QUOTE(arnymars @ Apr 19 2008, 16:58) *

Thank you for your comments. In answer to your questions: I don't regard throttling to be generally helpful, even for low spec machines - it would just make a slow process even slower, with no real benefits. I concede that if your PC has a hardware fault that causes overheating at high CPU loads, you might benefit from throttling, but it's a bit of an edge case.

As I'm feeling helpful, though, I'll point you at WinThrottle, a free tool which will let you throttle your CPU in a flexible and configurable way. If you are unable or unwilling to resolve the overheating problem in hardware, this is probably the best solution to work around it in software.

Adding a information web link to the results is not a bad idea, and may even make it into a future version sometime. All I'm saying is that I disagree with your estimate of how laborious and time consuming it would be to do, and it's not something that I'm likely to want to work on any time soon. What I might do, though, is add the functionality to display an information web link in the results pane if that data is supplied by the source, then if anyone does want to spend the time modifying the scripts to scrape that information, it would automatically be displayed.

About the Foobar Configuration File Tool, I'm not at liberty to discuss that publicly here.

If you have an issue with Foobar's max sound volume, you might have better luck starting a new thread about that - someone on the forum is bound to know about that, but won't see the question buried here in an unrelated topic.

Alex
boondie
Hey guys this is a great plugin first of all. Secondly I just formatted and have forgotten how to get this working with foobar (from the right click menu). If anyone could help me out that would be great. Perhaps this information should be in the first post?

Cheers
AlexVallat
QUOTE(boondie @ Apr 20 2008, 06:57) *
I just formatted and have forgotten how to get this working with foobar (from the right click menu). If anyone could help me out that would be great
You need to use the foo_run plugin to do this. The usual command line would be something like:

"C:\Program Files\AlbumArtDownloader\AlbumArt.exe" /artist "%album artist%" /album "%album%" /path "$replace(%_path%,%_filename_ext%,)Folder.%%extension%%"

The Command Line Reference for Album Art Downloader XUI might be helpful too.

Alex

tuz
Hi, first of all, thanks a lot for this software.
i've got problems with the different versions.
It can be described as "crash at startup"
I join to this post my errorlog.txt but it's in french.

here is the first lines :

System.Windows.Markup.XamlParseException: Impossible de convertir la chaîne « AlbumArtDownloader.ico » de l’attribut « Icon » en objet de type « System.Windows.Media.ImageSource ». Impossible de trouver un composant d’image adapté pour terminer l’opération. Erreur à l’objet « AlbumArtDownloader.Splashscreen » dans le fichier de balisage « AlbumArt;component/splashscreen.xaml ». ---> System.NotSupportedException: Impossible de trouver un composant d’image adapté pour terminer l’opération. ---> System.Runtime.InteropServices.COMException (0x88982F50): Exception de HRESULT : 0x88982F50
--- Fin de la trace de la pile d'exception interne ---


Let me know if you can't understand a thing. I'll try to translate a few if it can help us.

Thanks

Ps: i've already tried to uninstall and reinstall .net framework, even using a special .net cleaner but without success
Spirit_of_the_ocean
I use AAD with foo_func telling AAD to be started when there is no cover. I works wonderful. Thanks for AAD.
AlexVallat
QUOTE(tuz @ Apr 22 2008, 20:02) *
It can be described as "crash at startup"
Hello tuz, I've tried searching around to see if I could find any information on the problem you are describing. The only thing I could find was this thread from the Microsoft forums: "DLL version not correct" when loading an image from the assembly.

If you want to try the solution they came up with, uninstall .NET Framework 3.5, then uninstall Windows Imaging Components (WIC), then re-install .NET Framework 3.5. To uninstall WIC, you can use the command %windir%\$NtUninstallWIC$\spuninst\spuninst.exe

I hope this helps,

Alex
~*McoreD*~
QUOTE(AlexVallat @ Apr 19 2008, 21:20) *

AlbumArt Downloader XUI v0.17 Released

Finally, a new parameter has been added to the command line interface (aad.exe): /minAspect. This specifies the minimum aspect ratio of the image to use. This is how square the image must be, where a value of 1 represents perfectly square (600 x 600, for example). An image of size 600 x 300 would only be allowed if /minAspect were 0.5 or lower.


Alex,

THANK YOU for the feature addition. Now AAD can be used to automate downloading of more reliable artwork. smile.gif

Cheers,
McoreD

Edit:

http://itsfv.svn.sourceforge.net/viewvc/it...r1=24&r2=33

20080424T001501 Job Started: VALIDATE_TRACKS_SELECTED
20080424T001504 Validating Disc: Mistaken Identity - Delta Goodrem in D:\Music\Delta Goodrem\Mistaken Identity
20080424T001504 Checks? True, Tracks? True, Library? True, File System? True
20080424T001504 Chosen Most Common Artist: "Delta Goodrem" with 100.00% confidence
20080424T001515 Found 3 sources of Artwork
20080424T001515 Artwork from File as D:\Music\Delta Goodrem\Mistaken Identity\Artwork.jpg with 600x600
20080424T001515 Artwork from Track as G:\Users\Administrator\AppData\Roaming\iTSfv\Delta Goodrem\Mistaken Identity\1482-TrackArtwork.jpg with 600x600
20080424T001515 Artwork from AAD as G:\Users\Administrator\Pictures\iTSfv\Delta Goodrem\Mistaken Identity\AAD.jpg with 709x709
20080424T001515 Choosing G:\Users\Administrator\Pictures\iTSfv\Delta Goodrem\Mistaken Identity\AAD.jpg as the best Artwork
20080424T001515 Replace 600x600 with 709x709 for D:\Music\Delta Goodrem\Mistaken Identity\Folder.jpg? True
20080424T001515 Saved G:\Users\Administrator\Pictures\iTSfv\Delta Goodrem\Mistaken Identity\AAD.jpg as D:\Music\Delta Goodrem\Mistaken Identity\Folder.jpg
20080424T001515 Replace 600x600 with 709x709 for D:\Music\Delta Goodrem\Mistaken Identity\Artwork.jpg? True
20080424T001515 Saved G:\Users\Administrator\Pictures\iTSfv\Delta Goodrem\Mistaken Identity\AAD.jpg as D:\Music\Delta Goodrem\Mistaken Identity\Artwork.jpg
20080424T001515 Replace 600x600 with 709x709 for D:\Music\Delta Goodrem\Mistaken Identity\AlbumArtSmall.jpg? True
20080424T001515 Saved G:\Users\Administrator\Pictures\iTSfv\Delta Goodrem\Mistaken Identity\AAD.jpg as D:\Music\Delta Goodrem\Mistaken Identity\AlbumArtSmall.jpg
20080424T001515 Export Artwork Pass 1 Finished.
20080424T001516 Compare Artwork Path: G:\Users\Administrator\Pictures\iTSfv\Delta Goodrem\Mistaken Identity\AAD.jpg
20080424T001516 Cached Artwork dimensions for D:\Music\Delta Goodrem\Mistaken Identity\14 You Are My Rock.mp3
20080424T001516 Cached Track Artwork Path: G:\Users\Administrator\AppData\Roaming\iTSfv\Delta Goodrem\Mistaken Identity\1482-XmlArtwork.jpg
20080424T001516 Track Artwork Size: 600x600, Compare Artwork Size: 709x709
20080424T001516 Replace Artwork for 14 You Are My Rock.mp3? True

Works GREAT! Thanks again. biggrin.gif
david_dl
How about proxy support, ie. using the Internet Explorer proxy settings?
AlexVallat
QUOTE(david_dl @ Apr 25 2008, 13:40) *
How about proxy support, ie. using the Internet Explorer proxy settings?
It should already be doing that.

If you need to use a proxy other than the one specified by the system Internet Options (Control Panel, Internet Options, Connections, Lan Settings on XP), then it is possible to add or modify the AlbumArt.exe.config file to specify the proxy to use with the standard .net configuration settings:

CODE
<configuration>
<system.net>
  <defaultProxy>
    <proxy proxyaddress="your proxy address" />
  </defaultProxy>
</system.net>
</configuration>
TarkusShakti
First lets say thanks for Alex's effort. This is a great time saver.

I rebuilt my OS and installed AAD-v17 on my system. I noticed that when I right-click a folder (containing mp3s) in explorer; I no longer see a selection for "Search for Album art." This was a great convenience item, can we get it back?

TS
AlexVallat
QUOTE(TarkusShakti @ Apr 26 2008, 18:13) *
Thanks, glad Album Art Downloader made it on to your list of software to re-install!

I'll add an option to the installer to put a Search for Album Art command on the context menu for folders in explorer for the next version. Until then, you can use AlbumArtDownloaderBrowseFolder.reg to add it. If Album Art Downloader is not in C:\Program Files\AlbumArtDownloader, it will need editing first, though.

Alex
TarkusShakti
QUOTE(AlexVallat @ Apr 26 2008, 13:49) *

I'll add an option to the installer to put a Search for Album Art command on the context menu for folders in explorer for the next version. Until then, you can use AlbumArtDownloaderBrowseFolder.reg to add it.


Thank you and thank you!!

TS
MP3Me
Anybody know why Album Art Downloader would be unable to write a jpg file into a folder?
I run a search with the File Browser and under the 'Artwork Status' column some albums
are listed as 'Not Present' and others as 'Found:Folder.jpg'. However, in actuality, there are no Folder.jpg in
any of my music folders. When I get artwork for the former case I am able to write the jpg; for the latter case, I first get a dialog claiming file already exists, when I choose to overwrite, a second dialog appears stating access is denied.

I am running XP. When I examine folder/file permissions, all are listed as 'Read Only'.
When I do a recursive change on the permissions and then reexamine, XP claims they
are still read only.

thanks

Edit -
Solved:
folder.jpg is a protected operating system file! In folder view disable 'Hide protected operating system files'.
AlexVallat
AlbumArt Downloader XUI v0.18 Released

Just a couple of minor new features here. The installer has had a couple of minor cosmetic issues fixed, and now has an option to add a "Browse for Album Art..." entry to the context menu for folders in Explorer. The creation of Start Menu entries is now optional too.

In the search results, if a script provides a url with additional information for a result, a small IPB Image is displayed next to the result name, which will launch the default browser to show that page. So far, only Google Image and Amazon searches will provide these links. Other scripts may gain them in the future - if anyone else wants to add this functionality to a script, then the Add method has an additional optional string parameter after the name of the result which is the info url to use.

Download:
AlbumArtDownloaderXUI.exe (Installer. Recommended)
AlbumArtDownloaderXUI.zip (zip archive for those who don't like installers)
.NET Framework 3.5 (required)
AlbumArtDownloaderXUI-MediaInfoX64Upgrade.exe (x64 version of MediaInfo - must be installed if you are running a 64 bit version of Windows)
david_dl
QUOTE(AlexVallat @ Apr 26 2008, 01:54) *
QUOTE(david_dl @ Apr 25 2008, 13:40) *
How about proxy support, ie. using the Internet Explorer proxy settings?
It should already be doing that.

If you need to use a proxy other than the one specified by the system Internet Options (Control Panel, Internet Options, Connections, Lan Settings on XP), then it is possible to add or modify the AlbumArt.exe.config file to specify the proxy to use with the standard .net configuration settings:

CODE
<configuration>
<system.net>
  <defaultProxy>
    <proxy proxyaddress="your proxy address" />
  </defaultProxy>
</system.net>
</configuration>


Thanks, it doesn't seem to be automatically using those settings but i'll try the .config method.
On another note, I received an email from amazon the other day that said my 'access key' was being used to request data using an old version of their web protocol, and that they would be cutting off support soon, so could I please upgrade my application, or something to that effect. Since I assume AAD is still using my amazon key, I'd recommend looking into it. biggrin.gif
AlexVallat
QUOTE(david_dl @ Apr 28 2008, 11:26) *
Since I assume AAD is still using my amazon key, I'd recommend looking into it. biggrin.gif
Thanks for letting me know! I'm afraid the amazon query URL has just been carried along the copy and paste trail until I had no idea where it originally came from. I'll have a look at what the protocol changes needed are.

Alex
Bob... Just Bob
Hate to bump an old topic but, I recently decided to look for a new album art downloading program as my old one hasn't been updated to work with the new amazon.com API, and thus misses a lot of possible covers, I downloaded this one and was really happy with it at first, until I realized I couldn't use a date or year parameter in my save directory, which means it doesn't work with my sorting methods. Is this possible to add?

Sorry if this has been covered before.
mobyduck
Not sure what you mean. If you want to store the covers in a path containing your %DATE% tag, it should be feasible... Do you invoke AAD through foo_run?

Alessandro
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.