Skip to main content

Topic: foobar2000 problem: high CPU usage, nonresponsiveness and crashes with (Read 7706 times) previous topic - next topic

0 Members and 1 Guest are viewing this topic.
  • Anakunda
  • [*][*][*][*][*]
foobar2000 problem: high CPU usage, nonresponsiveness and crashes with
Well I finally realized that I'd wish to fix the long term issue I have with foobar. It works most time normally but the problem increases proportionally with the playlist content size. Loading the playlist from my whole library (80000+ items), I see foobar increases CPU usage to one full core and moreover stays unresponsive for a long time. Eventually it will crash if I try to interact with UI.

Now, firstly the installed components:
Code: [Select]
Core (2012-09-14 11:14:54 UTC)
foobar2000 core 1.1.15
foo_abx.dll (2009-06-07 12:25:26 UTC)
ABX Comparator 1.3.4
foo_ac3.dll (2012-08-29 15:57:04 UTC)
AC3 decoder 0.9.7
foo_adpcm.dll (2011-12-15 15:27:38 UTC)
kode's ADPCM decoders 1.10
foo_albumlist.dll (2012-09-14 11:13:32 UTC)
Album List 4.5
foo_audioscrobbler.dll (2010-06-04 07:27:04 UTC)
Audioscrobbler 1.4.7
foo_benchmark.dll (2008-12-31 17:23:04 UTC)
Decoding Speed Test 1.1
foo_bitcompare.dll (2008-12-05 13:08:02 UTC)
Binary Comparator 1.2
foo_burninate.dll (2011-02-24 08:40:34 UTC)
Audio CD Writer 3.0.3
foo_cdda.dll (2012-09-14 11:13:08 UTC)
CD Audio Decoder 3.0
foo_chacon.dll (2010-04-07 00:03:40 UTC)
Chacon 3
foo_comserver2.dll (2006-07-31 19:13:20 UTC)
COM Automation server 0.7 alpha 6
foo_converter.dll (2012-09-14 11:12:44 UTC)
Converter 1.5
foo_convolve.dll (2006-08-04 19:57:26 UTC)
Convolver 0.3
foo_discogs.dll (2011-08-12 00:42:42 UTC)
Discogs Tagger 1.30
foo_dsp_dolbyhp.dll (2010-01-22 11:40:28 UTC)
Dolby Headphone Wrapper 1.4.1
foo_dsp_effect.dll (2012-06-25 18:41:26 UTC)
Effect DSP 0.11
foo_dsp_hdcd.dll (2010-04-09 00:47:38 UTC)
HDCD decoder 1.3
foo_dsp_prvb.dll (2010-06-29 18:04:52 UTC)
Programmable reverb DSP 1.2
foo_dsp_resampler.dll (2012-08-17 18:41:42 UTC)
SoX Resampler 0.8.0
foo_dsp_std.dll (2012-09-14 11:13:28 UTC)
Standard DSP Array 1.0
foo_dsp_xgeq.dll (2012-02-05 11:11:22 UTC)
Graphic Equalizer 0.3.7
foo_dsp_xover.dll (2010-04-07 18:04:58 UTC)
Crossover 0.42
foo_dumb.dll (2012-09-19 18:26:10 UTC)
DUMB module decoder 0.9.9.64
foo_dynamic_range.dll (2011-11-12 21:18:36 UTC)
Dynamic Range Meter 1.1.1
foo_facets.dll (2011-08-18 18:06:16 UTC)
Facets 1.0
foo_fileops.dll (2012-09-14 11:12:06 UTC)
File Operations 2.1.3
foo_freedb2.dll (2012-09-14 11:13:42 UTC)
Online Tagger 0.7
foo_gep.dll (2012-10-04 16:27:54 UTC)
Game Emu Player 1.152
foo_hdcd.dll (2012-07-17 18:40:12 UTC)
HDCD decoder 1.15
foo_input_adplug.dll (2012-09-24 02:39:14 UTC)
AdPlug 1.41
foo_input_amr.dll (2009-03-05 19:20:06 UTC)
AMR input 1.1.1
foo_input_avs.dll (2012-02-19 09:50:20 UTC)
AVS input 0.4
foo_input_celt.dll (2011-05-16 11:21:00 UTC)
CELT Decoder 0.1.2
foo_input_dsdiff.dll (2011-05-18 18:01:22 UTC)
DSDIFF Decoder 1.4
foo_input_dts.dll (2010-09-03 10:18:04 UTC)
DTS decoder 0.3.0
foo_input_exe.dll (2012-10-11 20:56:52 UTC)
Command-Line Decoder Wrapper 0.4
foo_input_fc.dll (2011-06-29 23:38:10 UTC)
Future Composer Decoder 0.2
foo_input_ht.dll (2012-08-25 20:33:32 UTC)
Highly Theoretical 2.0.30
foo_input_hvl.dll (2012-02-19 09:52:04 UTC)
Hively Tracker decoder 1.9
foo_input_kdm.dll (2012-02-19 09:52:40 UTC)
KDM Decoder 1.1
foo_input_monkey.dll (2012-04-20 19:24:30 UTC)
Monkey's Audio Decoder 2.1.6
foo_input_org.dll (2012-02-19 09:53:10 UTC)
Organya decoder 1.9
foo_input_qsf.dll (2012-02-19 09:53:54 UTC)
Highly Quixotic 2.0.20
foo_input_sacd.dll (2012-08-28 12:38:42 UTC)
Super Audio CD Decoder 0.6.0
foo_input_shorten.dll (2009-11-15 19:46:36 UTC)
Shorten decoder 0.4.2.2
foo_input_std.dll (2012-09-14 11:13:32 UTC)
Standard Input Array 1.0
foo_input_tak.dll (2010-01-09 17:11:58 UTC)
TAK Decoder 0.4.4
foo_input_tfmx.dll (2012-02-19 09:55:20 UTC)
TFMX decoder 0.9
foo_input_upse.dll (2012-08-15 17:36:46 UTC)
UPSE PSF Decoder 1.7
foo_input_ym.dll (2011-03-19 10:16:42 UTC)
YM Decoder 0.3
foo_jesus.dll (2010-09-23 00:34:06 UTC)
Autosave & Autobackup 10
foo_keep_queue.dll (2010-11-12 02:28:46 UTC)
Keep Queue 0.3.5
foo_lock.dll (2010-01-11 10:18:36 UTC)
Pause on Lock 0.5
foo_masstag.dll (2009-09-18 08:01:36 UTC)
Masstagger 1.8.4
foo_midi.dll (2012-09-28 09:31:54 UTC)
MIDI synthesizer host 1.174
foo_musicbrainz.dll (2012-07-25 00:23:28 UTC)
MusicBrainz Tagger 0.3
foo_osd.dll (2012-04-13 18:21:22 UTC)
On-Screen Display GDI+ 1.70
foo_out_asio.dll (2012-06-06 13:19:14 UTC)
ASIO support 2.1.2
foo_out_ks.dll (2006-08-04 19:54:58 UTC)
Kernel Streaming Output 1.2.2
foo_out_wasapi.dll (2012-09-02 09:12:42 UTC)
WASAPI output support 3.0
foo_playcount.dll (2011-07-13 09:47:18 UTC)
Playback Statistics 3.0.2
foo_playlist_attributes.dll (2012-08-15 21:20:46 UTC)
Playlist Attributes 0.5.1
foo_playlist_bind.dll (2009-01-04 13:01:24 UTC)
Playlist Bind 3.3
foo_playlistexport.dll (2009-12-08 06:06:28 UTC)
Playlist Export 0.3
foo_playlisthistory.dll (2011-01-18 06:44:48 UTC)
Playlist History 0.1.5
foo_plorg.dll (2011-05-03 13:45:06 UTC)
Playlist Organizer 2.3
foo_podcatcher.dll (2011-01-08 22:39:46 UTC)
Podcatcher 0.2.1 (beta, Jan  9 2011)
foo_popup_panels.dll (2012-01-10 18:37:22 UTC)
Popup Panels 0.1.4
foo_psf.dll (2012-08-14 15:59:26 UTC)
Highly Experimental 2.0.27
foo_queuecontents.dll (2012-02-23 20:06:40 UTC)
Queue Contents Editor 0.5.1
foo_quicksearch.dll (2011-05-29 08:26:56 UTC)
Quick Search Toolbar 3.2
foo_quicktag.dll (2010-09-01 08:15:08 UTC)
Quick Tagger 1.0.3
foo_r128norm.dll (2011-12-18 17:19:40 UTC)
EBU R128 Normalizer 1.11
foo_ramdisk.dll (2012-01-20 09:51:48 UTC)
RAM-Disk 1.0
foo_random_pools.dll (2012-06-08 20:04:48 UTC)
Random Pools 0.1.3
foo_rgscan.dll (2012-09-14 11:12:50 UTC)
ReplayGain Scanner 2.1.2
foo_run.dll (2009-06-07 13:15:18 UTC)
Run services 0.3.7
foo_runcmd.dll (2010-01-07 17:32:34 UTC)
Run Command 1.1
foo_scheduler.dll (2012-07-03 12:20:02 UTC)
Scheduler 4.10
foo_seek_box.dll (2010-04-21 13:03:30 UTC)
Seek box 0.0.3
foo_sid.dll (2012-02-19 10:02:16 UTC)
sidplay2 1.27
foo_simplaylist.dll (2011-08-18 18:01:36 UTC)
SimPlaylist 1.0
foo_simplaylist_manager.dll (2011-08-18 18:03:02 UTC)
SimPlaylist Manager 1.0
foo_skip.dll (2011-06-29 20:46:30 UTC)
Skip Track 1.7.3
foo_skype.dll (2011-05-21 16:33:24 UTC)
Skype playing notifications 0.2
foo_softplaylists.dll (2011-02-05 02:04:50 UTC)
Soft Playlists 2011-02-05
foo_tagbox.dll (2011-03-11 12:53:00 UTC)
TagBox 0.212
foo_texttools.dll (2010-08-24 07:49:52 UTC)
Text Tools 1.0.5
foo_trackpos.dll (2006-12-13 18:04:58 UTC)
Track Positioner 1.0
foo_ui_columns.dll (2011-02-27 19:23:00 UTC)
Columns UI 0.3.8.8
foo_ui_std.dll (2012-09-14 11:13:10 UTC)
Default User Interface 0.9.5
foo_uie_albumlist.dll (2009-03-28 15:14:18 UTC)
Album list panel 0.3.4
foo_uie_lyrics3.dll (2012-06-15 15:59:28 UTC)
Lyric Show Panel 3 0.3.5.2
foo_uie_sql_tree.dll (2012-06-03 06:40:14 UTC)
SQL Tree 1.0.4
foo_uie_tabs.dll (2007-09-08 20:08:54 UTC)
Tabbed panel modified 0.2.6
foo_uie_tagger_mod.dll (2012-01-10 18:46:56 UTC)
Tagger Panel 1.2.9
foo_unpack.dll (2012-09-14 11:12:08 UTC)
ZIP/GZIP/RAR Reader 1.6
foo_unpack_7z.dll (2011-08-13 16:27:58 UTC)
7-Zip reader 1.8
foo_unpack_lha.dll (2012-09-22 07:55:36 UTC)
LHA reader 1.12
foo_unpack_unix.dll (2011-08-13 16:26:26 UTC)
Unix archive reader 1.8
foo_upnp.dll (2012-05-10 16:48:34 UTC)
UPnP/DLNA Renderer, Server, Control Point 0.99.40
foo_verifier.dll (2009-10-05 09:39:20 UTC)
File Integrity Verifier 1.1
foo_vis_shpeck.dll (2009-09-28 09:32:16 UTC)
Shpeck - Winamp vis plugins wrapper 0.3.7
foo_vorbisstream.dll (2009-11-07 11:57:12 UTC)
Vorbis Streamer 1.1
foo_vst.dll (2011-03-05 06:19:04 UTC)
VST 2.4 adapter 0.9.0.3
foo_wave_seekbar.dll (2012-07-17 20:39:58 UTC)
Waveform seekbar 0.2.27

Moreover I encounter long foobar starts (ie 30 seconds or so). I don't know if it is related to the freezing issue or if that's due to initial scan of music library which is all located at external USB2 HD. The long start is however not so much matter since I mostly start it only once after logon and until shutdown I leave it minimized in tray.
Now I did some experimental with starting foobar with clean config.db and it seems that the freezing issue is gone although the CPU is still high when working with huge sets of files. And also the startup noticeably speeds up (about 10-15 seconds only).

So now I needed to know what are the possibilities. Of course I don't want to restart from scratch with clean config (since I already have created many conversion profiles, custom setings, file operations presets etc etc. - BTW. I'd very appreciate if all these internal presets, conversion profiles and possibly all user config were sometime exportable and importable in some easy to read text format - it would simplify solving issues like this significantly).

Really appreciate any useful suggestions.
  • Last Edit: 19 October, 2012, 02:30:57 AM by Anakunda

  • BenB
  • [*][*][*][*][*]
foobar2000 problem: high CPU usage, nonresponsiveness and crashes with
Reply #1
As to the long foobar starts, viewing the console (View > Console) will often show the culprit(s). Look at the initialization times.

The playlist troubles might be caused by sorting, column, grouping and other scripts.
  • Last Edit: 19 October, 2012, 03:01:57 AM by BenB

  • Anakunda
  • [*][*][*][*][*]
foobar2000 problem: high CPU usage, nonresponsiveness and crashes with
Reply #2
So I measured exactly the startup time (cached) with my existing config and it is about 38 seconds exactly. Is this normal?

Console after star:
Code: [Select]
Podcatcher: Feed db table created.
Podcatcher: Cast db table created.
Watching: G:\music
Watching: H:\music
Watching: I:\music
Watching: F:\music
Album List refreshed in: 0:28.616993
foo_upnp: succesfully loaded file C:\Users\Anakunda\AppData\Roaming\foobar2000\foo_upnp.xml
foo_upnp: initialized in 0.038s
Graphic Equalizer: initialized (SSE support: 3)
Startup time : 0:35.255979
Autobackup: Backed up 107 items to autobackup.20121019-090505.zip


But as I wrote it's not so much bugging me (I don't start or shutdown foobar too frequently)

Playlist: it stays to make unresponsiveness after all content is once loaded into it (sorting, column, grouping and other acripts. should be done already). Maybe this is not playlist issue but property viewers issue whose work with current selection data too.

  • Peter
  • [*][*][*][*][*]
  • Administrator
foobar2000 problem: high CPU usage, nonresponsiveness and crashes with
Reply #3
Your startup log says it all pretty much. I presume you're using the Columns UI Album List Panel, it's known to be very inefficient with large libraries. You should perhaps remove it from your UI layout.

Other than that, if you experience crashes, please always autosubmit the reports; if you wish for someone from the staff to have a look at your reports, please post so on the forum shortly after submitting the report so we'll find matching reports (by your IP address) and investigate.
  • Last Edit: 19 October, 2012, 06:01:22 AM by Peter

  • Anakunda
  • [*][*][*][*][*]
foobar2000 problem: high CPU usage, nonresponsiveness and crashes with
Reply #4
I presume you're using the Columns UI Album List Panel, it's known to be very inefficient with large libraries.


I have it installed but not using as UI  (I'm using default UI).Does it still slowdown foobar?

Other than that, if you experience crashes, please always autosubmit the reports; if you wish for someone from the staff to have a look at your reports, please post so on the forum shortly after submitting the report so we'll find matching reports (by your IP address) and investigate.


I post it here.

  • Peter
  • [*][*][*][*][*]
  • Administrator
foobar2000 problem: high CPU usage, nonresponsiveness and crashes with
Reply #5
Sounds like the Default UI album list is also inefficient with such large track counts - I recommend removing it from your UI layout to reduce your startup time.

  • jayess
  • [*][*]
foobar2000 problem: high CPU usage, nonresponsiveness and crashes with
Reply #6
I don't doubt what he's saying as I've had problems with Foobar on my own large library. I've got around 2,100 albums in a main folder broken down by a, b, c etc. If I enable "libray viewer selection playlist" and then attempt to do any kind of file operation such as rip a cd, move copy files etc., then Foobar will start skipping and starting/stopping on the track being played.

  • BenB
  • [*][*][*][*][*]
foobar2000 problem: high CPU usage, nonresponsiveness and crashes with
Reply #7
So I measured exactly the startup time (cached) with my existing config and it is about 38 seconds exactly. Is this normal?

Console after star:
Code: [Select]
Podcatcher: Feed db table created.
Podcatcher: Cast db table created.
Watching: G:\music
Watching: H:\music
Watching: I:\music
Watching: F:\music
Album List refreshed in: 0:28.616993
foo_upnp: succesfully loaded file C:\Users\Anakunda\AppData\Roaming\foobar2000\foo_upnp.xml
foo_upnp: initialized in 0.038s
Graphic Equalizer: initialized (SSE support: 3)
Startup time : 0:35.255979
Autobackup: Backed up 107 items to autobackup.20121019-090505.zip

Wow, it takes Album list almost 29 seconds to load. That's an extraordinary amount of time, esp. since it's the DUI. It normally handles large libraries far better than CUI's Album list panel.

I have a fairly large library also and use rather complicated scripts but never experience load times exceeding 0.750 of a second (and this is using CUI's Album list panel). All of my music is on one NAS, however.

I suspect the extended load time for Album list that you're experiencing at startup is due to the script(s) you're using. Can you post the script for the view you use most? We may be able to tweak it so it will load faster (or it might have to be simplified due to the size of your library).
  • Last Edit: 19 October, 2012, 01:56:00 PM by BenB

  • Anakunda
  • [*][*][*][*][*]
foobar2000 problem: high CPU usage, nonresponsiveness and crashes with
Reply #8
Can you post the script for the view you use most? We may be able to tweak it so it will load faster (or it might have to be simplified due to the size of your library).


Sure, where do I get list of scripts I'm using?

  • BenB
  • [*][*][*][*][*]
foobar2000 problem: high CPU usage, nonresponsiveness and crashes with
Reply #9
Preferences (Ctrl+P) > Media Library > Album List

If you haven't modified those already there or added any new views, then you're using the default views (i.e. "by Album", "by Artist", etc). If this is the case, I don't need you to post them. Just tell me which one you use most and we'll start from there. Also, I need to know how meticulous you are about tagging your music, and whether you have a system for how you tag your music.

  • Anakunda
  • [*][*][*][*][*]
foobar2000 problem: high CPU usage, nonresponsiveness and crashes with
Reply #10
Scripts:

Default (currently used)

artist | year - album
Code: [Select]
$if($or($stricmp(%album artist%,'<various artists>'),$stricmp(%album artist%,'VA'),$stricmp(%album artist%,'various'),$stricmp(%album artist%,'Various Artists')),'< various artists >',$swapprefix($trim(%album artist%)))|$if($or($stricmp(%album artist%,'<various artists>'),$stricmp(%album artist%,'VA'),$stricmp(%album artist%,'various'),$stricmp(%album artist%,'Various Artists'),$not($or($meta_test(artist),$meta_test(album artist)))),,[$year($if2(%date%,%releasedate%)) - ])%album%|[Disc $num(%discnumber%,2)[ - $if3(%discsubtitle%,%disctitle%,%discname%)]|][%tracknumber%. ][%track artist% - ]%title%


temporarily I'm switching to other scripts which are minor customizations of this.

Tags used: most of tracks have all of these tags
ARTIST
TITLE
ALBUM
DATE
GENRE
PERFORMER
TRACKNUMBER
TOTALTRACKS
COMMENT (about 50% estimated)

About 30% tracks estimated has also these tags:
RELEASEDATE
LABEL
CATALOG
COUNTRY
DISCID
ISRC

Newly added tracks (about 20% estimated) also contain set of 15 tags starting with DISCOGS_.....
and also some other set of tags like MUSICBRAINZ_...... tags

All or almost all tracks have replaygain_album_gain, replaygain_album_peak, replaygain_track_gain and replaygain_track_peak

Also this may do matter that part of albums are stored as 1 file with embedded CUEsheet and subsong indexes (estimate 10% of total)
Also it may play some role that all music files are stored on external USB2 drives (slow access) - G:\music and I:\music
  • Last Edit: 19 October, 2012, 02:31:51 PM by Anakunda

  • BenB
  • [*][*][*][*][*]
foobar2000 problem: high CPU usage, nonresponsiveness and crashes with
Reply #11
Sorry it took so long to get back to you. Try this and see if it does exactly what you posted does:
Code: [Select]
$if($or($stricmp(%album artist%,'<various artists>'),$stricmp(%album artist%,'VA'),$stricmp(%album artist%,'various'),$stricmp(%album artist%,'Various artists'),$not($or($meta_test(artist),$meta_test(album artist)))),
'< various artists >',
$swapprefix($trim(%album artist%))|[$year($if2(%date%,%releasedate%)) - ]%album%|[Disc $num(%discnumber%,2)[ - $if3(%discsubtitle%,%disctitle%,%discname%)]|][%tracknumber%. ][%track artist% - ]%title%)

Judging by my own library (loaded in less than 1.5 seconds), I'm hoping this will load for you in less than 10 seconds. All I've done is remove the redundant parsing thus far.
  • Last Edit: 19 October, 2012, 03:35:41 PM by BenB

  • Anakunda
  • [*][*][*][*][*]
foobar2000 problem: high CPU usage, nonresponsiveness and crashes with
Reply #12
Sorry your optimized script doesnot seem work fully (<various artists> behaves as single album thus is unexpandable)
It should group all VA albums into one group without prefixing them with year while it should do prefix and sort albums by year in regular artist groups:
  • Last Edit: 19 October, 2012, 04:22:46 PM by Anakunda

  • BenB
  • [*][*][*][*][*]
foobar2000 problem: high CPU usage, nonresponsiveness and crashes with
Reply #13
OK, I think this is it :
Code: [Select]
$if($or($stricmp(%album artist%,'<various artists>'),$stricmp(%album artist%,'VA'),$stricmp(%album artist%,'various'),$stricmp(%album artist%,'Various Artists'),$not($or($meta_test(artist),$meta_test(album artist)))),
'< various artists >'|%album%|[Disc $num(%discnumber%,2)[ - $if3(%discsubtitle%,%disctitle%,%discname%)]|][%tracknumber%. ][%track artist% - ]%title%,
$swapprefix($trim(%album artist%))|[$year($if2(%date%,%releasedate%)) - ]%album%|[Disc $num(%discnumber%,2)[ - $if3(%discsubtitle%,%disctitle%,%discname%)]|][%tracknumber%. ][%track artist% - ]%title%)

Your existing script has Album list parsing album artist tags in VA albums twice.

The parsing could also be quicker if you used a consistent value in your VA album's %album artist% tag, made sure all albums had a %date% tag and used a consistent tag for disc names.
  • Last Edit: 19 October, 2012, 04:23:55 PM by BenB

  • fbuser
  • [*][*][*][*][*]
  • Developer
foobar2000 problem: high CPU usage, nonresponsiveness and crashes with
Reply #14
Instead of "optimizing" the title format expression, I recommend to tag the files properly. Then the needed expression is much simpler.

  • Anakunda
  • [*][*][*][*][*]
foobar2000 problem: high CPU usage, nonresponsiveness and crashes with
Reply #15
OK thanks this script already works better but somewhere lost group without artist at all (previously the question mark in treebar), looks a bit faster to load now. Anyway foobar keeps crashing when opening clicking on All Music, loading it into Library Viewer and opening properties. It seems also eat alot of RAM (4GB used 50 usually, after opening all library properties all is used + massive pagefile swapping)

Quote
Instead of "optimizing" the title format expression, I recommend to tag the files properly

what do you mean by tagging files properly? I think the files contain all necessary tags (post #11) and I actually don't want to change the scheme (unless it's somehow causing performance problems)
  • Last Edit: 19 October, 2012, 04:34:56 PM by Anakunda

  • fbuser
  • [*][*][*][*][*]
  • Developer
foobar2000 problem: high CPU usage, nonresponsiveness and crashes with
Reply #16
Quote
Instead of "optimizing" the title format expression, I recommend to tag the files properly

what do you mean by tagging files properly? I think the files contain all necessary tags (post #11) and I actually don't want to change the scheme (unless it's somehow causing performance problems)
I mean the content of the tags. There shouldn't be different values for "various artists" or empty tags for "artist" and "album artist". If the files were tagged properly you could reduce the expression to

Code: [Select]
$swapprefix($trim(%album artist%))|[$year($if2(%date%,%releasedate%)) - ]%album%|[Disc $num(%discnumber%,2)[ - $if3(%discsubtitle%,%disctitle%,%discname%)]|][%tracknumber%. ][%track artist% - ]%title%

In general, it is not a good idea to solve problems with data inconsistencies with other means then correcting the data (as long as it is possible).

  • BenB
  • [*][*][*][*][*]
foobar2000 problem: high CPU usage, nonresponsiveness and crashes with
Reply #17
I actually don't want to change the scheme (unless it's somehow causing performance problems)


You don't have a scheme. You're using title formatting to make up for your inconsistent/nonexistent tags.
  • Last Edit: 19 October, 2012, 05:19:26 PM by BenB

  • Anakunda
  • [*][*][*][*][*]
foobar2000 problem: high CPU usage, nonresponsiveness and crashes with
Reply #18
Thanks for the note.
Now I only use for VA albums ALBUM ARTIST '<various artists>'
so the script shortened to

$swapprefix($trim(%album artist%))|$if($or($stricmp(%album artist%,'<various artists>'),$not($or($meta_test(artist),$meta_test(album artist)))),,[$year($if2(%date%,%releasedate%)) - ])%album%|[Disc $num(%discnumber%,2)[ - $if3(%discsubtitle%,%disctitle%,%discname%)]|][%tracknumber%. ][%track artist% - ]%title%

That's for the album list script. Nevertheless the foobar unresponsiveness and high CPU/memory usage still occures if I click on root ("All Music").
I guess this must be something else.
Grouping pattern for playlist (SimPlaylist):
Headers:
[%album artist% - ][%album%]

Columns:
[%album%]

Sorting pattern:
$swapprefix($trim(%album artist%))|$trim(%album%)|$num(%discnumber%,3)|$if(%tracknumber%,$num(%tracknumber%,3),$if2($trim(%title%),%filename%))

Subgroups:
[Disc %discnumber%]$if($and($meta_test(discnumber),$or($meta_test(discsubtitle),$meta_test(disctitle),$meta_test(discname))),' - ',)[$if3(%discsubtitle%,%disctitle%,%discname%)]

Displayed columns:
Playing
Track
Title / track artist
Duration
Rating (database)


The startup time is a bit better now:
Album List refreshed in: 0:18.002442
Startup time : 0:24.148089
  • Last Edit: 19 October, 2012, 05:58:37 PM by Anakunda

  • Anakunda
  • [*][*][*][*][*]
foobar2000 problem: high CPU usage, nonresponsiveness and crashes with
Reply #19
I have sent already several crush reports (the last submit at 9:57 GMT today), can someone from the staff look at them and find some clue?
Thank you very much.

  • Peter
  • [*][*][*][*][*]
  • Administrator
foobar2000 problem: high CPU usage, nonresponsiveness and crashes with
Reply #20
Thanks for the reports, this is very interesting.
The lag/crashing will be fixed in the next update. I see that the album art viewer is lagging trying to evaluate a large group of tracks (presumably your whole collection) - removing it from the layout will help for now.

  • Anakunda
  • [*][*][*][*][*]
foobar2000 problem: high CPU usage, nonresponsiveness and crashes with
Reply #21
Thanks for the fix. It seems that after removing album art viewer the long CPU load doesnot occure anymore (I think the album art scanner still may be in effect even with big selection however it would be a good idea to abort scanning on first picture mismatch/missing and leave the view blank)

  • Peter
  • [*][*][*][*][*]
  • Administrator
foobar2000 problem: high CPU usage, nonresponsiveness and crashes with
Reply #22
Curious: do you perhaps use complicated album art lookup patterns? I can't get that info from the crash reports, though the problem scenario suggests so.
Anyway, relevant code has been fixed to quit early where appropriate instead of evaluating album art lookup patterns for thousands of tracks each time; the next fb2k update will contain the fix.

  • Anakunda
  • [*][*][*][*][*]
foobar2000 problem: high CPU usage, nonresponsiveness and crashes with
Reply #23
I'm using these cover art patterns (front only):
Code: [Select]
folder.jpg
folder.jpeg
folder.gif
folder.png
front.png
front.jpg
front.jpeg
front.gif
artworks.jpg
artworks.jpeg
artwork.png
artwork.jpeg
artwork.png
artwork.gif
thumb.jpg
thumb.jpeg
thumb.gif
thumb.png
cover.png
cover.jpg
cover.jpeg
cover.gif
album.png
album.jpg
album.jpeg
album.gif
%album%*.png
%album%*.jpg
%album%*.jpeg
%album%*.gif
%artist% - %album%*.png
%artist% - %album%*.jpg
%artist% - %album%*.jpeg
%artist% - %album%*.gif
%filename%*.jpg
%filename%*.jpeg
%filename%*.gif
%filename%*.png
Cover\folder.jpg
Cover\folder.jpeg
Cover\folder.gif
Cover\folder.png
Cover\thumb.jpg
Cover\thumb.jpeg
Cover\thumb.gif
Cover\thumb.png
Cover\cover.png
Cover\cover.jpg
Cover\cover.jpeg
Cover\cover.gif
Cover\album.png
Cover\album.jpg
Cover\album.jpeg
Cover\album.gif
Cover\front.png
Cover\front.jpg
Cover\front.jpeg
Cover\front.gif
Cover\%album%*.png
Cover\%album%*.jpg
Cover\%album%*.jpeg
Cover\%album%*.gif
Cover\%artist% - %album%*.png
Cover\%artist% - %album%*.jpg
Cover\%artist% - %album%*.jpeg
Cover\%artist% - %album%*.gif
Cover\%filename%*.jpg
Cover\%filename%*.jpeg
Cover\%filename%*.gif
Cover\%filename%*.png
Covers\folder.jpg
Covers\folder.jpeg
Covers\folder.gif
Covers\folder.png
Covers\thumb.jpg
Covers\thumb.jpeg
Covers\thumb.gif
Covers\thumb.png
Covers\cover.png
Covers\cover.jpg
Covers\cover.jpeg
Covers\cover.gif
Covers\album.png
Covers\album.jpg
Covers\album.jpeg
Covers\album.gif
Covers\front.png
Covers\front.jpg
Covers\front.jpeg
Covers\front.gif
Covers\%album%*.png
Covers\%album%*.jpg
Covers\%album%*.jpeg
Covers\%album%*.gif
Covers\%artist% - %album%*.png
Covers\%artist% - %album%*.jpg
Covers\%artist% - %album%*.jpeg
Covers\%artist% - %album%*.gif
Covers\%filename%*.jpg
Covers\%filename%*.jpeg
Covers\%filename%*.gif
Covers\%filename%*.png
CoverArt\folder.jpg
CoverArt\folder.jpeg
CoverArt\folder.gif
CoverArt\folder.png
CoverArt\thumb.jpg
CoverArt\thumb.jpeg
CoverArt\thumb.gif
CoverArt\thumb.png
CoverArt\cover.png
CoverArt\cover.jpg
CoverArt\cover.jpeg
CoverArt\cover.gif
CoverArt\album.png
CoverArt\album.jpg
CoverArt\album.jpeg
CoverArt\album.gif
CoverArt\front.png
CoverArt\front.jpg
CoverArt\front.jpeg
CoverArt\front.gif
CoverArt\%album%*.png
CoverArt\%album%*.jpg
CoverArt\%album%*.jpeg
CoverArt\%album%*.gif
CoverArt\%artist% - %album%*.png
CoverArt\%artist% - %album%*.jpg
CoverArt\%artist% - %album%*.jpeg
CoverArt\%artist% - %album%*.gif
CoverArt\%filename%*.jpg
CoverArt\%filename%*.jpeg
CoverArt\%filename%*.gif
CoverArt\%filename%*.png
Art\folder.jpg
Art\folder.jpeg
Art\folder.gif
Art\folder.png
Art\thumb.jpg
Art\thumb.jpeg
Art\thumb.gif
Art\thumb.png
Art\cover.png
Art\cover.jpg
Art\cover.jpeg
Art\cover.gif
Art\album.png
Art\album.jpg
Art\album.jpeg
Art\album.gif
Art\front.png
Art\front.jpg
Art\front.jpeg
Art\front.gif
Art\%album%*.png
Art\%album%*.jpg
Art\%album%*.jpeg
Art\%album%*.gif
Art\%artist% - %album%*.png
Art\%artist% - %album%*.jpg
Art\%artist% - %album%*.jpeg
Art\%artist% - %album%*.gif
Art\%filename%*.jpg
Art\%filename%*.jpeg
Art\%filename%*.gif
Art\%filename%*.png
Scan\folder.jpg
Scan\folder.jpeg
Scan\folder.gif
Scan\folder.png
Scan\thumb.jpg
Scan\thumb.jpeg
Scan\thumb.gif
Scan\thumb.png
Scan\cover.png
Scan\cover.jpg
Scan\cover.jpeg
Scan\cover.gif
Scan\album.png
Scan\album.jpg
Scan\album.jpeg
Scan\album.gif
Scan\front.png
Scan\front.jpg
Scan\front.jpeg
Scan\front.gif
Scan\%album%*.png
Scan\%album%*.jpg
Scan\%album%*.jpeg
Scan\%album%*.gif
Scan\%artist% - %album%*.png
Scan\%artist% - %album%*.jpg
Scan\%artist% - %album%*.jpeg
Scan\%artist% - %album%*.gif
Scan\%filename%*.jpg
Scan\%filename%*.jpeg
Scan\%filename%*.gif
Scan\%filename%*.png
Scans\folder.jpg
Scans\folder.jpeg
Scans\folder.gif
Scans\folder.png
Scans\thumb.jpg
Scans\thumb.jpeg
Scans\thumb.gif
Scans\thumb.png
Scans\cover.png
Scans\cover.jpg
Scans\cover.jpeg
Scans\cover.gif
Scans\album.png
Scans\album.jpg
Scans\album.jpeg
Scans\album.gif
Scans\front.png
Scans\front.jpg
Scans\front.jpeg
Scans\front.gif
Scans\%album%*.png
Scans\%album%*.jpg
Scans\%album%*.jpeg
Scans\%album%*.gif
Scans\%artist% - %album%*.png
Scans\%artist% - %album%*.jpg
Scans\%artist% - %album%*.jpeg
Scans\%artist% - %album%*.gif
Scans\%filename%*.jpg
Scans\%filename%*.jpeg
Scans\%filename%*.gif
Scans\%filename%*.png
AlbumArt\folder.jpg
AlbumArt\folder.jpeg
AlbumArt\folder.gif
AlbumArt\folder.png
AlbumArt\thumb.jpg
AlbumArt\thumb.jpeg
AlbumArt\thumb.gif
AlbumArt\thumb.png
AlbumArt\cover.png
AlbumArt\cover.jpg
AlbumArt\cover.jpeg
AlbumArt\cover.gif
AlbumArt\album.png
AlbumArt\album.jpg
AlbumArt\album.jpeg
AlbumArt\album.gif
AlbumArt\front.png
AlbumArt\front.jpg
AlbumArt\front.jpeg
AlbumArt\front.gif
AlbumArt\%album%*.png
AlbumArt\%album%*.jpg
AlbumArt\%album%*.jpeg
AlbumArt\%album%*.gif
AlbumArt\%artist% - %album%*.png
AlbumArt\%artist% - %album%*.jpg
AlbumArt\%artist% - %album%*.jpeg
AlbumArt\%artist% - %album%*.gif
AlbumArt\%filename%*.jpg
AlbumArt\%filename%*.jpeg
AlbumArt\%filename%*.gif
AlbumArt\%filename%*.png
ArtWork\folder.jpg
ArtWork\folder.jpeg
ArtWork\folder.gif
ArtWork\folder.png
ArtWork\thumb.jpg
ArtWork\thumb.jpeg
ArtWork\thumb.gif
ArtWork\thumb.png
ArtWork\front.png
ArtWork\front.jpg
ArtWork\front.jpeg
ArtWork\front.gif
ArtWork\cover.png
ArtWork\cover.jpg
ArtWork\cover.jpeg
ArtWork\cover.gif
ArtWork\album.png
ArtWork\album.jpg
ArtWork\album.jpeg
ArtWork\album.gif
ArtWork\%album%*.png
ArtWork\%album%*.jpg
ArtWork\%album%*.jpeg
ArtWork\%album%*.gif
ArtWork\%artist% - %album%*.png
ArtWork\%artist% - %album%*.jpg
ArtWork\%artist% - %album%*.jpeg
ArtWork\%artist% - %album%*.gif
ArtWork\%filename%*.jpg
ArtWork\%filename%*.jpeg
ArtWork\%filename%*.gif
ArtWork\%filename%*.png
Not sure if these introduce stability problem

  • BenB
  • [*][*][*][*][*]
foobar2000 problem: high CPU usage, nonresponsiveness and crashes with
Reply #24
Wow! There must be well over 200, maybe over 300, search patterns in your list and you're unsure if it's causing problems?

Anyway, you can shorten the list by changing the file extension to an * (unless you actually have the covers in multiple formats and want foobar to check for one type at a time for some odd reason). Then you'll only need one entry for each variant instead of your typical four. A list of 60 to 80 entries is better than what you have now, although that's still a hell of a lot.

folder.jpg, folder.jpeg, folder.gif, folder.png > folder.*
front.png, front.jpg, front.jpeg, front.gif > front.*
etc., etc.

Also, I suggest bulk renaming all your front covers to one value. Then you can reduce your list to 9 entries.
  • Last Edit: 20 October, 2012, 08:01:36 PM by BenB