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 635698 - Jono Bacon breaks GStreamer (missing audioresample in transcoding pipeline)
Jono Bacon breaks GStreamer (missing audioresample in transcoding pipeline)
Status: RESOLVED FIXED
Product: banshee
Classification: Other
Component: GStreamer
git master
Other Linux
: Normal normal
: 2.0
Assigned To: Banshee Maintainers
Banshee Maintainers
Depends on:
Blocks:
 
 
Reported: 2010-11-24 14:59 UTC by David Nielsen
Modified: 2011-02-24 01:25 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Adding Jono to iPod, at GST_DEBUG=2 (45.24 KB, text/plain)
2010-11-24 18:24 UTC, David Nielsen
Details
Adding Jono to iPod, at GST_DEBUG=3 (665.13 KB, text/plain)
2010-11-24 18:25 UTC, David Nielsen
Details

Description David Nielsen 2010-11-24 14:59:34 UTC
I found that when syncing my iPod Jono Bacon's latest album wouldn't sync. The songs will play in Banshee and in Totem, as such appearing to be valid Ogg Vorbis files.

This error appears for all 11 tracks.

[1 Debug 12:27:59.371] Transcoding file:///home/david/Musik/Severed%20Fifth/Nightmares%20By%20Design/06.%20Forgotten%20Heroes.ogg to file:///home/david/.cache/banshee-1/transcoder/f24f97ef-d3b2-4d24-bef4-44a9225030f1.mp3
[1 Error 12:27:59.881] Cannot Convert File - Intern datastrømsfejl.: gstoggdemux.c(3474): gst_ogg_demux_loop (): /GstPipeline:pipeline/GstDecodeBin2:decodebin2/GstOggDemux:oggdemux5:
stream stopped, reason not-linked

For comparison:

As found in my library, imported using copy on import, writing all metadata to files and reflecting metadata changes to the folder/file names:
http://ompldr.org/vNmFuZw/badjono.tar.gz

The original files from the Severed Fifth website:
http://audio.lugradio.org/severedfifth/nightmaresbydesign/severedfifth-nightmaresbydesign-2010-ogg.zip
Comment 1 Vincent Penquerc'h 2010-11-24 15:37:38 UTC
Quite possibly the whopping 3 MB comment packet (album art) :|
Comment 2 David Nielsen 2010-11-24 16:00:02 UTC
It's entirely valid though.

Users, including myself, would even like to see this in wider use:
https://bugzilla.gnome.org/show_bug.cgi?id=633858

However given your comment, perhaps this is a duplicate of:
https://bugzilla.gnome.org/show_bug.cgi?id=635669
Comment 3 Vincent Penquerc'h 2010-11-24 17:26:34 UTC
Yes, entirely valid, but large comments have been known to break various decoders (especially hardware ones), so it's a hint as to where to look first for the bug.
FWIW, the first file of the tarball plays fine for me using yesterday's gstreamer's playbin2.
Comment 4 Gabriel Burt 2010-11-24 17:30:46 UTC
David, can you run banshee with "GST_DEBUG=2 make run > log" or maybe even w/ =3 and attach the log?  If it works for other Ogg files but not this one, seems like it's probably a GStreamer bug.
Comment 5 David Nielsen 2010-11-24 18:24:26 UTC
Created attachment 175194 [details]
Adding Jono to iPod, at GST_DEBUG=2
Comment 6 David Nielsen 2010-11-24 18:25:22 UTC
Created attachment 175195 [details]
Adding Jono to iPod, at GST_DEBUG=3

As requested logs of both GST_DEBUG=2 and 3 while adding the test files.
Comment 7 David Nielsen 2010-11-25 02:34:34 UTC
I just tested using Ogg Vorbis files from the LUgradio feed (http://www.lugradio.org/episodes-full.ogg.rss) and those transcode and transfer just fine to my iPod.

Move to GStreamer?
Comment 8 Tim-Philipp Müller 2010-11-26 23:43:43 UTC
To whoever changed the bug summary: I don't think this is related to playbin2, is it? But some app-specific transcoding pipeline.

David: could you make a *:5 log available please? This looks like a problem in the
application or with the pipeline setup, the *:3 log just says:

vorbisdec gstvorbisdec.c:597:vorbis_handle_identification_packet:<vorbisdec9>
using audio/x-raw-float with 2 channels and 32 bit audio depth
GST_PADS gstpad.c:1916:gst_pad_link_prepare: trying to link decodebin2:src0 and
sinkbin:sink
GST_PADS gstpad.c:1972:gst_pad_link_prepare: caps are incompatible

First guess would be that pipeline in sinkbin expects audio/x-raw-int, although the log suggests there's an audioconvert in there somewhere.
Comment 9 Tim-Philipp Müller 2010-12-07 17:07:11 UTC
Ping? Could someone supply a log please?
Comment 10 David Nielsen 2010-12-07 18:30:06 UTC
Sorry, I forgot about this one, and I am travelling but I will get you the log as soon as I unpack my machine again, Should be on the 8th.
Comment 11 David Nielsen 2010-12-16 21:30:17 UTC
My apologies for the delay, the log is compressed and hosted off bugzilla due to it being 65MB, compressed down to around 3MB.

http://ompldr.org/vNmxkcQ/jono.log.tar.bz2
Comment 12 David Nielsen 2011-02-02 00:35:04 UTC
This continues to happen with Banshee (git master) on Ubuntu Natty (x86_64 - as of today).
Comment 13 Tim-Philipp Müller 2011-02-02 01:16:24 UTC
Have you tried with the versions from the GStreamer PPA by any chance?

It looks like oggdemux/the decoder outputs caps with rate=96000, which are then piped into an audioconvert and the encoder (lamemp3enc), the latter of which can't handle a rate of 96kHz. So this is basically a bug in whoever creates that pipeline - it also needs an audioresample element.

However, I can't say I understand why puts caps with a rate of 96kHz in the first place, it doesn't do that here (with git).
Comment 14 Tim-Philipp Müller 2011-02-02 09:11:03 UTC
> However, I can't say I understand why puts caps with a rate of 96kHz in the
> first place, it doesn't do that here (with git).

David: just to make sure - could you confirm that your files are the same as the ones I downloaded yesterday?

$ md5sum *ogg
44337541d63b900f49b74c93accc0450  severedfifth_drilldown.ogg
100662744d5843bcdd33c55a3eb576bc  severedfifth_endofdays.ogg
db1a755ad9d0455568c9701d3108d8a9  severedfifth_fallout.ogg
55a6bdde9d6ee68d22bb19a40f1f561a  severedfifth_fightphilosophy.ogg
f5af263628ba0b521bf1cad6b9a4e436  severedfifth_foretoldrevelation.ogg
b76ff0b38a553c88d18ca755b0a4952f  severedfifth_forgottenheroes.ogg
f9fc11f4f684f0e968620ebc10442409  severedfifth_machinesofwar.ogg
c69d832eeda50c5ae692035bee3a69af  severedfifth_politicold.ogg
2c7d1be24d3c5a2ab797bfc906536c43  severedfifth_repent.ogg
79d3002d4356360e56f0c9d9e1463483  severedfifth_theblackening.ogg
02397430b40a875f697b0764c34b87ef  severedfifth_theyprey.ogg
Comment 15 David Nielsen 2011-02-02 10:56:40 UTC
f8db54661e9f26e37b84df2f53f291e3  01. Foretold Revelation.ogg
9c07c718f3f2ce0a256c7043a169c2d8  02. Drill Down.ogg
54f1ea4f10ff184f599424e2d719a643  03. Politicold.ogg
dd1277705d8690c35509686ce886d8d9  04. Fight Philosophy.ogg
0c06c2816ee7777ab37b78f17a29d9b2  05. Fallout.ogg
1369a1fb08f960d7d5efe7e26d877f91  06. Forgotten Heroes.ogg
d3299e373cb20504c241f83dff2cd467  07. The Blackening.ogg
f122a75a958352665c1c564e9733796e  08. They Prey.ogg
51092a0be6e422bc9899fa2e9d87a1cf  09. End Of Days.ogg
152bc8df5d40b2006d1a2ef0e46cc96a  10. Machines Of War.ogg
9e3086afe534d0cf8de28b9ac682b31a  11. Repent.ogg

Though I have metadata writeback enabled so this is somewhat expected. Both the Severed Fifth downloads should have this issue.
Comment 16 Tim-Philipp Müller 2011-02-02 11:31:11 UTC
Well, I don't have any explanation of why I get a different sample rate than you / the log. It's unlikely that both oggdemux and vorbisdec/libvorbis detect this wrongly, so my working hypothesis is that the files on the servers got updated/changed at some point. Could you make one of your files that fail for you available for me to test with directly?
Comment 17 David Nielsen 2011-02-02 11:44:46 UTC
Here you are:
http://ompldr.org/vNzk5cg/05.%20Fallout.ogg
Comment 18 Tim-Philipp Müller 2011-02-02 12:01:26 UTC
Thank you. This file shows up with a sample rate of 96000Hz here as well (and embedded coverart), so it looks like the files on the server have been updated at some point.

The only bug is likely a missing audioresample in the banshee transcoding pipeline then.
Comment 19 David Nielsen 2011-02-02 12:12:18 UTC
Thank you for your analysis Tim.
Comment 20 David Nielsen 2011-02-23 16:34:39 UTC
alexk proposed this:
https://pastebin.com/ZWJgAJS5

However that causes Banshee to always crash with:
http://monobin.com/__m4dcd4a4b
Comment 21 Tim-Philipp Müller 2011-02-23 16:51:04 UTC
I mostly don't understand this change:

 -    encoder_pad = gst_element_get_pad(conv_elem, "sink");
+    encoder_pad = gst_element_get_pad(resample_elem, "sink");

Why not just leave everything else as it is (conv_element-wise), but add an additional audioresample after the audioconvert/conv_element ?
Comment 22 Tim-Philipp Müller 2011-02-23 16:52:08 UTC
In other words, try the patch without that change.
Comment 23 David Nielsen 2011-02-23 18:01:31 UTC
With Tim's suggested change Jono no longer breaks GStreamer. Alex will you please commit the change.

With the patch and the change, I now generate mp3 files from the original vorbis files. They transfer to the iPod and playback.
Comment 24 Alexander Kojevnikov 2011-02-24 01:25:33 UTC
Committed, thanks Tim and David!