Banshee is working very slow
Banshee is working on my PC very slow. My pc should have enough power (2x3Ghz, 4GB-Ram, 7GB-Swap, 1GB-Graphics, 32bit Ubuntu) but the switching between playlists is working very low.
- default version of banshee (not a ppa-version)
- ~4000 music files on raid-1 ext4-partition
- 49%+32% CPU-Usage while switching playlist or album
- 50% CPU-Usage while scrolling album view
A debug didn't show me why banshee is working such slow. While i am switching between the playlists or selecting an album (takes nearly 2 seconds) nothing is shown on terminal.
tvn@main:~$ banshee --debug
** Running Mono with --debug **
[1 Info 17:37:52.783] Running Banshee 2.0.0: [Ubuntu Natty (development branch) (linux-gnu, i686) @ 2011-04-18 16:21:33 UTC]
[1 Debug 17:37:52.800] Initializing GTK
[1 Debug 17:37:54.154] Post-Initializing GTK
[1 Debug 17:37:54.164] Configuration client extension loaded (Banshee.GnomeBackend.GConfConfigurationClient)
[1 Debug 17:37:54.181] Using default gconf-base-key
[1 Debug 17:37:54.221] Bus.Session.RequestName ('org.bansheeproject.Banshee') replied with PrimaryOwner
[1 Debug 17:37:54.290] Core service started (DBusServiceManager, 0,001209)
[1 Debug 17:37:54.293] Registering remote object /org/bansheeproject/Banshee/DBusCommandService (Banshee.ServiceStack.DBusCommandService) on org.bansheeproject.Banshee
[1 Debug 17:37:54.302] Core service started (DBusCommandService, 0,011063)
[1 Debug 17:37:54.336] Opened SQLite (version 3.7.4) connection to /home/tvn/.config/banshee-1/banshee.db
[1 Debug 17:37:54.337] Core service started (DbConnection, 0,034676)
[1 Debug 17:37:54.344] Database version 43 is up to date
[1 Debug 17:37:54.374] Core service started (PreferenceService, 0,013099)
[1 Debug 17:37:54.381] Core service started (Network, 0,007064)
[1 Debug 17:37:54.382] Registering remote object /org/bansheeproject/Banshee/SourceManager (Banshee.Sources.SourceManager) on org.bansheeproject.Banshee
[1 Debug 17:37:54.382] Core service started (SourceManager, 0,000638)
[1 Debug 17:37:54.390] Core service started (MediaProfileManager, 0,000229)
[1 Debug 17:37:54.393] Registering remote object /org/bansheeproject/Banshee/PlayerEngine (Banshee.MediaEngine.PlayerEngineService) on org.bansheeproject.Banshee
[1 Debug 17:37:54.397] Core service started (PlayerEngine, 0,007314)
[1 Debug 17:37:54.411] Registering remote object /org/bansheeproject/Banshee/PlaybackController (Banshee.PlaybackController.PlaybackControllerService) on org.bansheeproject.Banshee
[1 Debug 17:37:54.412] Core service started (PlaybackController, 0,002727)
[1 Debug 17:37:54.419] Starting - Startup Job
[1 Debug 17:37:54.420] Core service started (JobScheduler, 0,007892)
[1 Debug 17:37:54.432] IO provider extension loaded (Banshee.IO.Gio.Provider)
[1 Debug 17:37:54.463] Loaded HardwareManager backend: Banshee.Hardware.Gio
[1 Debug 17:37:54.464] Core service started (HardwareManager, 0,044113)
[1 Debug 17:37:54.467] Bus.Session.RequestName ('org.bansheeproject.CollectionIndexer') replied with PrimaryOwner
[1 Debug 17:37:54.468] Registering remote object /org/bansheeproject/Banshee/CollectionIndexerService (Banshee.Collection.Indexer.CollectionIndexerService) on org.bansheeproject.CollectionIndexer
[1 Debug 17:37:54.470] Core service started (CollectionIndexerService, 0,005453)
[1 Debug 17:37:54.472] Core service started (SaveTrackMetadataService, 0,001513)
[1 Debug 17:37:54.480] Adding icon theme search path: /usr/share/banshee/icons
[1 Debug 17:37:54.481] Core service started (GtkElementsService, 0,009158)
[1 Debug 17:37:54.482] Core service started (InterfaceActionService, 0,001539)
[1 Debug 17:37:54.554] Registering remote object /org/bansheeproject/Banshee/GlobalUIActions (Banshee.Gui.GlobalActions) on org.bansheeproject.Banshee
[1 Debug 17:37:54.555] Album artwork path set to /home/tvn/.cache/media-art
[1 Debug 17:37:54.577] Core service started (ArtworkManager, 0,023272)
[1 Debug 17:37:54.577] Core service started (BookmarksService, 0,000135)
[1 Debug 17:37:55.046] Constructed Nereid interface: 0,402973
[1 Debug 17:37:55.139] Creating new surface cache for 90px images, capped at 0,65 MiB (21 items)
[1 Debug 17:37:55.198] Registering remote object /org/bansheeproject/Banshee/ClientWindow (Nereid.PlayerInterface) on org.bansheeproject.Banshee
[1 Debug 17:37:55.198] Core service started (NereidPlayerInterface, 0,576714)
[1 Debug 17:37:55.220] Extension service started (GStreamerCoreService, 0,020599)
[1 Debug 17:37:55.227] Extension service started (PodcastService, 0,002593)
[1 Debug 17:37:55.228] Extension service started (DapService, 0,001135)
[1 Info 17:37:55.232] Updating web proxy from GConf
[1 Debug 17:37:55.236] Direct connection, no proxy in use
[1 Debug 17:37:55.251] Extension service started (GnomeService, 0,022906)
[1 Debug 17:37:55.253] Extension service started (CoverArtService, 0,001967)
[1 Info 17:37:55.254] All services are started 1,032338
[1 Debug 17:37:55.673] Creating Pango.Layout, configuring Cairo.Context
[1 Debug 17:37:55.993] Extension source loaded: Jetzt wiedergegeben
[1 Debug 17:37:55.997] Extension source loaded: Miro Guide
[1 Debug 17:37:56.018] Extension source loaded: Hörbücher
[1 Debug 17:37:56.022] Starting GTK main loop
[1 Debug 17:37:56.267] Creating Pango.Layout, configuring Cairo.Context
[1 Debug 17:37:56.340] Creating Pango.Layout, configuring Cairo.Context
[1 Info 17:37:56.471] nereid Client Started
[1 Debug 17:37:56.474] Delayed Initializating Banshee.MediaEngine.PlayerEngineService
[1 Debug 17:37:56.478] (libbanshee:player) Stream volume supported: YES
[1 Debug 17:37:56.480] (libbanshee:player) Audiosink has volume: NO
[1 Debug 17:37:56.489] (libbanshee:player) Using system (gst-plugins-good) equalizer element
[1 Debug 17:37:56.549] Player state change: NotReady -> Ready
[1 Debug 17:37:56.554] Loaded equalizer presets: 0,000173
[1 Debug 17:37:56.559] Selected equalizer: Rock
[1 Debug 17:37:56.564] Player state change: Ready -> Idle
[1 Debug 17:37:56.569] (libbanshee:player) Disabled ReplayGain
[1 Info 17:37:56.571] GStreamer version 0.10.32.0, gapless: True, replaygain: False
[1 Debug 17:37:56.576] Delayed Initializating Banshee.Podcasting.PodcastService
[1 Debug 17:37:56.650] Delayed Initializating Banshee.Dap.DapService
[1 Debug 17:37:56.656] Dap support extension loaded: Banshee.Dap.AppleDevice
[2 Debug 17:37:56.686] Refreshing any podcasts that haven't been updated in over an hour
[1 Debug 17:37:57.687] Finished - Startup Job
[1 Debug 17:37:57.695] Starting - Alben-Cover downloaded
[3 Debug 17:37:57.705] Finished - Alben-Cover downloaded
[1 Debug 17:53:01.230] Starting - Metadata written in file
[4 Debug 17:53:01.238] Finished - Metadata written in file
Here are a few ideas:
Banshee might be doing something CPU-intensive in the background. There are some one-time jobs such as Beats-Per-Minute-detection and analyzing music similarity that can be very CPU-intensive. In Edit > Preferences > Extensions, you can make sure that some of these features are turned off. See this answer for more information about how to improve Banshee's CPU usage.
It could be a problem with Banshee's database. You can optimize the database by installing the
sqlite3
program and runningsqlite3 ~/.config/banshee-1/banshee.db "vacuum; analyze;"
in terminal. Other helpful advice about database performance can be found on the Performance Issues page of the Banshee Wiki.If nothing helps, you should definitely file a bug report. Be sure to attach the output of
banshee --debug
andbanshee --debug-sql
to your bug report (more information about getting debug logs).
Try my suggested* method for taming banshee. It worked for me to bring banshee down from around 50%->75%, to around 10%->20%, and it might work for you.
Edit: Under advice, I've decided to post the details here :) (defeats my laziness).
- Open the Banshee preferences, and find all the addins you are not really using, and probably won’t for a while:
- Disable even the slightest – including last.fm suggestions etc.
Here is what my list looks like now:
**The link is to my blog, to avoid typing it all over again.*