IPB

Welcome Guest ( Log In | Register )

> foobar2000 Tech Support Forum Rules

Please read foobar2000 Tech Support Forum Rules before posting and comply with all the points.
Failure to provide all the information pointed out in the above document in your post is considered wasting other people's time and in extreme cases will lead to your topic getting locked without a reply.


See also: Hydrogenaudio Terms of Service.

2 Pages V   1 2 >  
Reply to this topicStart new topic
foobar2000 problem: high CPU usage, nonresponsiveness and crashes with
Anakunda
post Oct 19 2012, 07:28
Post #1





Group: Members
Posts: 414
Joined: 24-November 08
Member No.: 63072



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

This post has been edited by Anakunda: Oct 19 2012, 07:30
Go to the top of the page
+Quote Post
BenB
post Oct 19 2012, 07:59
Post #2





Group: Members
Posts: 627
Joined: 17-April 12
Member No.: 98921



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.

This post has been edited by BenB: Oct 19 2012, 08:01
Go to the top of the page
+Quote Post
Anakunda
post Oct 19 2012, 08:09
Post #3





Group: Members
Posts: 414
Joined: 24-November 08
Member No.: 63072



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
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.
Go to the top of the page
+Quote Post
Peter
post Oct 19 2012, 10:58
Post #4





Group: Admin
Posts: 3269
Joined: 30-September 01
Member No.: 84



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.


--------------------
This job would be great if it wasn't for the users.
Go to the top of the page
+Quote Post
Anakunda
post Oct 19 2012, 11:05
Post #5





Group: Members
Posts: 414
Joined: 24-November 08
Member No.: 63072



QUOTE (Peter @ Oct 19 2012, 11:58) *
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?

QUOTE (Peter @ Oct 19 2012, 11:58) *
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.
Go to the top of the page
+Quote Post
Peter
post Oct 19 2012, 11:37
Post #6





Group: Admin
Posts: 3269
Joined: 30-September 01
Member No.: 84



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.


--------------------
This job would be great if it wasn't for the users.
Go to the top of the page
+Quote Post
jayess
post Oct 19 2012, 15:46
Post #7





Group: Members
Posts: 84
Joined: 18-August 12
Member No.: 102432



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.
Go to the top of the page
+Quote Post
BenB
post Oct 19 2012, 18:51
Post #8





Group: Members
Posts: 627
Joined: 17-April 12
Member No.: 98921



QUOTE (Anakunda @ Oct 19 2012, 02:09) *
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
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).

This post has been edited by BenB: Oct 19 2012, 18:56
Go to the top of the page
+Quote Post
Anakunda
post Oct 19 2012, 18:55
Post #9





Group: Members
Posts: 414
Joined: 24-November 08
Member No.: 63072



QUOTE (BenB @ Oct 19 2012, 19:51) *
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?
Go to the top of the page
+Quote Post
BenB
post Oct 19 2012, 19:05
Post #10





Group: Members
Posts: 627
Joined: 17-April 12
Member No.: 98921



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.
Go to the top of the page
+Quote Post
Anakunda
post Oct 19 2012, 19:22
Post #11





Group: Members
Posts: 414
Joined: 24-November 08
Member No.: 63072



Scripts:

Default (currently used)

artist | year - album
CODE
$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

This post has been edited by Anakunda: Oct 19 2012, 19:31
Go to the top of the page
+Quote Post
BenB
post Oct 19 2012, 20:26
Post #12





Group: Members
Posts: 627
Joined: 17-April 12
Member No.: 98921



Sorry it took so long to get back to you. Try this and see if it does exactly what you posted does:
CODE
$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.

This post has been edited by BenB: Oct 19 2012, 20:35
Go to the top of the page
+Quote Post
Anakunda
post Oct 19 2012, 20:57
Post #13





Group: Members
Posts: 414
Joined: 24-November 08
Member No.: 63072



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:


I think the existing script is functionally OK, is album list tree pattern doing the foobar slowness on start and on loading big filelist ?



----------------------------------

@Peter: I have sent a report right now (20:12 UTC), was right after trying interact with frozen properties dialog invoked for whole library
(already deleted the columns UI plugin and all plugins that use it)
btw 80000 is a very small library as someone already adviced me here biggrin.gif

This post has been edited by Anakunda: Oct 19 2012, 21:22
Go to the top of the page
+Quote Post
BenB
post Oct 19 2012, 21:18
Post #14





Group: Members
Posts: 627
Joined: 17-April 12
Member No.: 98921



OK, I think this is it :
CODE
$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.

This post has been edited by BenB: Oct 19 2012, 21:23
Go to the top of the page
+Quote Post
fbuser
post Oct 19 2012, 21:23
Post #15





Group: Developer
Posts: 673
Joined: 26-September 07
Member No.: 47369



Instead of "optimizing" the title format expression, I recommend to tag the files properly. Then the needed expression is much simpler.
Go to the top of the page
+Quote Post
Anakunda
post Oct 19 2012, 21:31
Post #16





Group: Members
Posts: 414
Joined: 24-November 08
Member No.: 63072



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 (fbuser)
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)

This post has been edited by Anakunda: Oct 19 2012, 21:34
Go to the top of the page
+Quote Post
fbuser
post Oct 19 2012, 21:53
Post #17





Group: Developer
Posts: 673
Joined: 26-September 07
Member No.: 47369



QUOTE (Anakunda @ Oct 19 2012, 21:31) *
QUOTE (fbuser)
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
$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).
Go to the top of the page
+Quote Post
BenB
post Oct 19 2012, 22:17
Post #18





Group: Members
Posts: 627
Joined: 17-April 12
Member No.: 98921



QUOTE (Anakunda @ Oct 19 2012, 15:31) *
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.

This post has been edited by BenB: Oct 19 2012, 22:19
Go to the top of the page
+Quote Post
Anakunda
post Oct 19 2012, 22:43
Post #19





Group: Members
Posts: 414
Joined: 24-November 08
Member No.: 63072



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


This post has been edited by Anakunda: Oct 19 2012, 22:58
Go to the top of the page
+Quote Post
Anakunda
post Oct 20 2012, 10:08
Post #20





Group: Members
Posts: 414
Joined: 24-November 08
Member No.: 63072



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.
Go to the top of the page
+Quote Post
Peter
post Oct 20 2012, 10:25
Post #21





Group: Admin
Posts: 3269
Joined: 30-September 01
Member No.: 84



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.


--------------------
This job would be great if it wasn't for the users.
Go to the top of the page
+Quote Post
Anakunda
post Oct 20 2012, 10:57
Post #22





Group: Members
Posts: 414
Joined: 24-November 08
Member No.: 63072



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)
Go to the top of the page
+Quote Post
Peter
post Oct 20 2012, 21:44
Post #23





Group: Admin
Posts: 3269
Joined: 30-September 01
Member No.: 84



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.


--------------------
This job would be great if it wasn't for the users.
Go to the top of the page
+Quote Post
Anakunda
post Oct 20 2012, 21:58
Post #24





Group: Members
Posts: 414
Joined: 24-November 08
Member No.: 63072



I'm using these cover art patterns (front only):
CODE
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
Go to the top of the page
+Quote Post
BenB
post Oct 21 2012, 00:59
Post #25





Group: Members
Posts: 627
Joined: 17-April 12
Member No.: 98921



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.

This post has been edited by BenB: Oct 21 2012, 01:01
Go to the top of the page
+Quote Post

2 Pages V   1 2 >
Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



RSS Lo-Fi Version Time is now: 20th April 2014 - 19:45