Amarok crashes Plasma (sometimes)

Martin Byttebier martinbyttebier at gmx.com
Mon Oct 20 13:36:17 BST 2025


Op Mon, 20 Oct 2025 13:37:52 +0300
Tuomas Nurmi <tuomas at norsumanageri.org> schreef:

> Hi,
> thank you for reporting. I tried some similar steps, but couldn't
> reproduce the described issue yet. (Possibly related: On quit, Amarok
> has to wait for any collection scan to finish before the process is
> terminated) Possibly amarok --debug might provide some extra
> information.
> 
> There are also some hang-related crashes observable in
> https://crash-reports.kde.org/ data, but I haven't found a way to
> reproduce any of them reliably yet. Maybe I one day will.

Ok, it turned out it was the media player applet causing the plasma
crashes. Once the applet was disabled the plasma shell did not crash
anymore when I launched Amaork.
AFAIk the bug has been fixed. Anyway I enabled the media player
applet today and everuthing seems to be fine.

There is one thing left. 
Try to start a song whilst Amarok is still scanning the collection
Once the scanning is done the start buttom doesn't work anymore.
I've to quit Amarok and start again.

BEGIN: void EngineController::playPause()
amarok:   [EngineController] PlayPause: Pipeline state 2
amarok:   BEGIN: void EngineController::play()
amarok:     BEGIN: void Playlist::Actions::play()
amarok:       BEGIN: void Playlist::Actions::play(quint64, bool)
amarok:         BEGIN: void EngineController::play(Meta::TrackPtr, uint, bool)
amarok:           BEGIN: void EngineController::stop(bool, bool)
amarok:             BEGIN: void EngineGstPipeline::requestState(GstState)
amarok:               requested state READY
amarok:               not reapplying gst state
amarok:             END__: void EngineGstPipeline::requestState(GstState) [Took: 0s]
amarok:             New source: QUrl("")
amarok:             uri ""
amarok:           END__: void EngineController::stop(bool, bool) [Took: 0s]
amarok:           [EngineController] play: bounded is  QObject(0x0) current "Spaceman"
amarok:           [EngineController] Just a normal, boring track... :-P
amarok:           BEGIN: void EngineController::playUrl(const QUrl&, uint, bool)
amarok:             BEGIN: void EngineGstPipeline::requestState(GstState)
amarok:               requested state READY
amarok:               not reapplying gst state
amarok:             END__: void EngineGstPipeline::requestState(GstState) [Took: 0s]
amarok:             [EngineController] URL:  QUrl("file:///mnt/data/mp3/electric moon/the doomsday machine/Electric Moon - Spaceman.mp3") "file:///mnt/data/mp3/electric moon/the doomsday machine/Electric Moon - Spaceman.mp3"
amarok:             [EngineController] Offset:  0
amarok:             New source: QUrl("file:///mnt/data/mp3/electric moon/the doomsday machine/Electric Moon - Spaceman.mp3")
amarok:             uri "file:///mnt/data/mp3/electric%20moon/the%20doomsday%20machine/Electric%20Moon%20-%20Spaceman.mp3"
amarok:             [EngineController] Gain of -1 would clip at absolute peak of 1
amarok:             [EngineController] Using pre-gain 3  and gain of -2 with relative peak of -1
amarok:             BEGIN: void EngineGstPipeline::requestState(GstState)
amarok:               requested state PLAYING
amarok:               BEGIN: static void EngineGstPipeline::cb_setupSource(GstElement*, GstElement*, gpointer)
amarok:               END__: static void EngineGstPipeline::cb_setupSource(GstElement*, GstElement*, gpointer) [Took: 0s]
amarok:             END__: void EngineGstPipeline::requestState(GstState) [Took: 0.001s]
amarok:           END__: void EngineController::playUrl(const QUrl&, uint, bool) [Took: 0.002s]
amarok:         END__: void EngineController::play(Meta::TrackPtr, uint, bool) [Took: 0.002s]
amarok:       END__: void Playlist::Actions::play(quint64, bool) [Took: 0.002s]
amarok:     END__: void Playlist::Actions::play() [Took: 0.002s]
amarok:   END__: void EngineController::play() [Took: 0.002s]
amarok: END__: void EngineController::playPause() [Took: 0.002s]
amarok: BEGIN: static gboolean EngineGstPipeline::cb_duration(GstBus*, GstMessage*, gpointer)
amarok: END__: static gboolean EngineGstPipeline::cb_duration(GstBus*, GstMessage*, gpointer) [Took: 0s]
amarok: [EngineController] slotTrackLengthChanged( -1 )
amarok: BEGIN: void ProgressWidget::redrawBookmarks(const QString*)
amarok: END__: void ProgressWidget::redrawBookmarks(const QString*) [Took: 0s]
amarok: Internal data stream error.
amarok: BEGIN: static gboolean EngineGstPipeline::cb_duration(GstBus*, GstMessage*, gpointer)
amarok: END__: static gboolean EngineGstPipeline::cb_duration(GstBus*, GstMessage*, gpointer) [Took: 0s]
amarok: BEGIN: void EngineGstPipeline::handleAboutToFinish()
amarok:   About to finish
amarok:   need more queue
amarok:   BEGIN: void EngineController::slotAboutToFinish()
amarok:     BEGIN: void Playlist::Actions::requestNextTrack()
amarok:     END__: void Playlist::Actions::requestNextTrack() [Took: 0s]
amarok:   END__: void EngineController::slotAboutToFinish() [Took: 0s]
amarok: END__: void EngineGstPipeline::handleAboutToFinish() [Took: 0s]
amarok:     [EngineController] slotTrackLengthChanged( -1 )
amarok: BEGIN: void ProgressWidget::redrawBookmarks(const QString*)
amarok: END__: void ProgressWidget::redrawBookmarks(const QString*) [Took: 0s]


Martin


More information about the Amarok mailing list