After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 661330 - Album Art plugin makes Rhythmbox crash on some files
Album Art plugin makes Rhythmbox crash on some files
Status: RESOLVED FIXED
Product: rhythmbox
Classification: Other
Component: Plugins (other)
HEAD
Other Linux
: Normal normal
: ---
Assigned To: RhythmBox Maintainers
RhythmBox Maintainers
Depends on:
Blocks:
 
 
Reported: 2011-10-09 16:57 UTC by Nikolai Knopp
Modified: 2012-03-21 11:56 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
1-second segment of a file causing the crash (created with mp3splt-gtk). (17.96 KB, audio/mpeg)
2011-10-09 16:57 UTC, Nikolai Knopp
Details

Description Nikolai Knopp 2011-10-09 16:57:01 UTC
Created attachment 198659 [details]
1-second segment of a file causing the crash (created with mp3splt-gtk).

(I do not know which version to select, as I'm using Arch Linux and the package version is given as 2.90.1.git20110928-1, and Rhythmbox-About tells me 2.90.1.)

Problem:
Rhythmbox crashes instantly on playing "certain" mp3 files (see attachment). I suspect it's the cover art plugin, as deactivating resolves it the issue.

How to reproduce:
1. Start Rhythmbox.
2. Select one of the "special" mp3-files and double click to play.
3. RB instantly crashes.

How to work around the problem:
1. Deactivate Cover Art plugin.

Other versions:
Crash also occurs with version 2.90.1.git20110829. I don't know what happens with previous versions.

Additional information:
I don't know what exactly has to be wrong with the mp3 to cause the crash. The attached one plays fine e.g. in totem. Others also play fine with Rhythmbox, and album art is displayed properly.
The terminal output (see below) also gives errors with replaygain, but (de-)activating that plugin did not influence the crash in any way.

Terminal output (last lines of running "rhythmbox -d"):

(18:13:18) [0x1111380] [rb_entry_view_row_activated_cb] rb-entry-view.c:2100: row activated
(18:13:18) [0x1111380] [rb_entry_view_row_activated_cb] rb-entry-view.c:2104: emitting entry activated
(18:13:18) [0x1111380] [rb_shell_player_entry_activated_cb] rb-shell-player.c:2669: got entry 0x7fec9cbf56d0 activated
(18:13:18) [0x1111380] [rb_shell_player_set_playing_source_internal] rb-shell-player.c:3088: setting playing source to 0x7fec9c058030
(18:13:18) [0x1111380] [prev_action_sensitive_cb] rb-mpris-plugin.c:1285: emitting CanGoPrevious change
(18:13:18) [0x1111380] [next_action_sensitive_cb] rb-mpris-plugin.c:1276: emitting CanGoNext change
(18:13:18) [0x1111380] [rb_shell_player_sync_with_source] rb-shell-player.c:2910: playing source: 0x7fec9c058030, active entry: (nil)
(18:13:18) [0x1111380] [rb_shell_set_window_title] rb-shell.c:2329: clearing title
(18:13:18) [0x1111380] [rb_shell_player_sync_buttons] rb-shell-player.c:3002: syncing with source 0x7fec9c058030
(18:13:18) [0x1111380] [rb_shell_playing_source_changed_cb] rb-shell.c:2195: playing source changed
(18:13:18) [0x1111380] [playing_source_changed_cb] rb-mpris-plugin.c:1265: emitting CanPause change
(18:13:18) [0x1111380] [playing_source_changed_cb] rb-mpris-plugin.c:1268: emitting ActivePlaylist change
(18:13:18) [0x1111380] [rb_player_gst_try_audio_sink] rb-player-gst-helper.c:71: setting profile property on gsettingsaudiosink
(18:13:18) [0x1111380] [rb_player_gst_try_audio_sink] rb-player-gst-helper.c:91: audio sink gsettingsaudiosink changed to READY state successfully
(18:13:18) [0x1111380] [pipeline_op] rb-player-gst-helper.c:401: not using pad blocking, calling op directly
(18:13:18) [0x1111380] [really_add_filter] rb-player-gst-helper.c:460: adding filter 0x2350060
(18:13:18) [0x1111380] [pipeline_op] rb-player-gst-helper.c:401: not using pad blocking, calling op directly
(18:13:18) [0x1111380] [really_add_filter] rb-player-gst-helper.c:460: adding filter 0x22c9020
(18:13:18) [0x1111380] [construct_pipeline] rb-player-gst.c:728: pipeline construction complete
(18:13:18) [0x1111380] [impl_open] rb-player-gst.c:786: setting new uri to file:///home/mikerofone/Musik/Ingrimm/Rattenstadt%20(Demo).mp3
(18:13:18) [0x1111380] [impl_play] rb-player-gst.c:848: not in transition, stopping current track to start the new one
(18:13:18) [0x1111380] [start_state_change] rb-player-gst.c:384: state change succeeded synchronously
(18:13:18) [0x1111380] [state_change_finished] rb-player-gst.c:409: setting new playback URI file:///home/mikerofone/Musik/Ingrimm/Rattenstadt%20(Demo).mp3
(18:13:18) [0x1111380] [rb_shell_player_set_playing_entry] rb-shell-player.c:1773: Success!
(18:13:18) [0x1111380] [rb_statusbar_sync_status] rb-statusbar.c:467: updating status with: '15 Titel, 1 Stunde, 2 Minuten, 79,4 MB', '', -1,000000
(18:13:18) [0x1111380] [bus_cb] rb-player-gst.c:527: playbin reached state READY
(18:13:18) [0x1111380] [track_change_done] rb-player-gst.c:337: track change finished
(18:13:18) [0x1111380] [playing_stream_cb] rb-shell-player.c:3503: new playing stream: file:///home/mikerofone/Musik/Ingrimm/Rattenstadt%20(Demo).mp3
(18:13:18) [0x1111380] [rb_header_sync] rb-header.c:523: syncing with entry = file:///home/mikerofone/Musik/Ingrimm/Rattenstadt%20(Demo).mp3
(18:13:18) [0x1111380] [rb_audioscrobbler_song_changed_cb] rb-audioscrobbler.c:1069: new entry: file:///home/mikerofone/Musik/Ingrimm/Rattenstadt%20(Demo).mp3
(18:13:18) [0x1111380] [rb_audioscrobbler_song_changed_cb] rb-audioscrobbler.c:1077: didn't get playing time; assuming 0
(18:13:18) [0x1111380] [rb_audioscrobbler_is_queueable] rb-audioscrobbler.c:598: entry file:///home/mikerofone/Musik/Ingrimm/Rattenstadt%20(Demo).mp3 is queueable
(18:13:18) [0x1111380] [ReplayGainPlayer.playing_entry_changed] /usr/lib/rhythmbox/plugins/replaygain/player.py:303: blocking rgvolume to reset it
Traceback (most recent call last):
  • File "/usr/lib/rhythmbox/plugins/replaygain/player.py", line 156 in playing_entry_changed
    pad.set_blocked_async(True, self.rgvolume_blocked_cb, self.rgvolume)
AttributeError: 'Pad' object has no attribute 'set_blocked_async'
(18:13:18) [0x1111380] [CoverArtDatabase.image_search] /usr/lib/rhythmbox/plugins/artdisplay/CoverArtDatabase.py:441: trying LocalCoverArtSearch
TypeError: metaclass conflict: the metaclass of a derived class must be a (non-strict) subclass of the metaclasses of all its bases
**
ERROR:pygobject.c:929:pygobject_new_full: assertion failed: (tp != NULL)

I'm happy to provide additional information, if needed.
Comment 1 Jonathan Matthew 2011-10-17 10:39:57 UTC
this should be fixed in commit a8dee25.  thanks for reporting it.
Comment 2 Vadim Rutkovsky 2012-03-21 11:32:08 UTC
Please reopen this issue, as it still occurs on rhythmbox 2.96 (see Ubuntu bug https://bugs.launchpad.net/ubuntu/+source/rhythmbox/+bug/959931, debug log - https://bugs.launchpad.net/ubuntu/+source/rhythmbox/+bug/959931/+attachment/2906502/+files/rhythmbox-debug.txt)
Comment 3 Jonathan Matthew 2012-03-21 11:34:57 UTC
That's not the same issue.  Open a new bug.
Comment 4 Vadim Rutkovsky 2012-03-21 11:56:13 UTC
Thanks, filed a new bug #672540