GNOME Bugzilla – Bug 338664
Rhythmbox crashes on import of a specific MP3 file
Last modified: 2006-05-06 10:02:04 UTC
Steps to reproduce: 1. Load rhythmbox normally 2. Rhythmbox begins importing library automatically 3. When rhythmbox gets to the file "1926_097%20-%20Bessie%20Smith%20-%20I%20Ain't%20Got%20Nobody%20(128%20JS%203.11).mp3", it crashes. Please see the stack trace below. If you need the MP3 file, please e-mail me. Stack trace: (gdb) thread apply all bt
+ Trace 67636
Thread 38 (Thread -1301296208 (LWP 24704))
Thread 37 (Thread -1301296208 (LWP 24704))
Thread 33 (Thread -1301296208 (LWP 24704))
Thread 31 (Thread -1301296208 (LWP 24704))
Thread 28 (Thread -1301296208 (LWP 24704))
Thread 23 (Thread -1301296208 (LWP 24704))
Thread 17 (Thread -1301296208 (LWP 24704))
Thread 16 (Thread -1301296208 (LWP 24704))
Other information: [0x832a4e8] [action_thread_main] rhythmdb.c:2016 (01:25:53): executing RHYTHMDB_ACTION_LOAD for "file:///media/idedisk2/Music/Charts/Whitburn%20Pop/1926/1926_097%20-%20Bessie%20Smith%20-%20I%20Ain't%20Got%20Nobody%20(128%20JS%203.11).mp3" [0x832a4e8] [rb_metadata_load] rb-metadata-gst.c:760 (01:25:53): loading metadata for uri: file:///media/idedisk2/Music/Charts/Whitburn%20Pop/1926/1926_097%20-%20Bessie%20Smith%20-%20I%20Ain't%20Got%20Nobody%20(128%20JS%203.11).mp3 [0x832a4e8] [rb_metadata_load] rb-metadata-gst.c:832 (01:25:53): going to PAUSED for metadata, uri: file:///media/idedisk2/Music/Charts/Whitburn%20Pop/1926/1926_097%20-%20Bessie%20Smith%20-%20I%20Ain't%20Got%20Nobody%20(128%20JS%203.11).mp3 [0x832a4e8] [rb_metadata_gst_typefind_cb] rb-metadata-gst.c:563 (01:25:53): found type application/x-id3 (rhythmbox:23077): GStreamer-CRITICAL **: gst_pad_activate_pull: assertion `old == GST_ACTIVATE_NONE' failed Segmentation fault
There's a good chance this is a dupe of bug #334167, which is fixed in CVS. Is there a non-UTF-8 encoded tag in that file? Check it using: gst-launch-0.10 -t playbin uri=file://path/to/file
Below is the output from that command. I can't see any mention of encoding in the output, hope it helps. gst-launch-0.10 -t playbin uri=file:///home/thebrid/Music/Charts/Whitburn\ Pop/1926/1926_097\ -\ Bessie\ Smith\ -\ I\ Ain\'t\ Got\ Nobody\ \(128\ JS\ 3.11\).mp3 Setting pipeline to PAUSED ... (gst-launch-0.10:17931): GStreamer-CRITICAL **: gst_pad_activate_pull: assertion `old == GST_ACTIVATE_NONE' failed Pipeline is PREROLLING ... ERROR: from element /playbin0/decoder/id3demux0: Could not determine the mime type of the file Additional debug info: gstid3demux.c(843): gst_id3demux_sink_activate (): /playbin0/decoder/id3demux0: No caps found for contents within an ID3 tag ERROR: pipeline doesn't want to preroll. Setting pipeline to NULL ... FREEING pipeline ...
For whatever reason, GStreamer isn't finding the actual MP3 stream (audio/mpeg) inside the ID3 tags. Re-assigning to GStreamer. Could you create a shortened file with "head -c100k original.mp3 short.mp3" and attach that to the bug?
Created attachment 63627 [details] First 100 Kb of non-working MP3 file Please find attached the first 100 Kb of the non-working MP3 file.
Works fine for me with CVS, should be fixed in the upcoming -good release: $ gst-launch-0.10 filesrc location=338588-typefinding.mp3 ! decodebin ! audioconvert ! alsasink -t Setting pipeline to PAUSED ... Pipeline is PREROLLING ... FOUND TAG : found by element "id3demux0". title: I Ain't Got Nobody artist: Bessie Smith track number: 97 date: 1926-01-01 comment: Debuted 1926 and peaked at #8 on Various Charts. source Pop Memories FOUND TAG : found by element "mad0". layer: 3 mode: joint emphasis: none audio codec: MPEG-1 layer 3 bitrate: 128000 Pipeline is PREROLLED ... Setting pipeline to PLAYING ... New clock: audioclock0 Got EOS from element "pipeline0". Execution ended after 5608496000 ns. Setting pipeline to PAUSED ... Setting pipeline to READY ... Setting pipeline to NULL ... FREEING pipeline ...
This should be fixed in gst-plugins-good 0.10.3 Please re-open if this is not the case.