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 631209 - When dragging a podcast from Rhythmbox to ipod, it won't play
When dragging a podcast from Rhythmbox to ipod, it won't play
Status: RESOLVED DUPLICATE of bug 625054
Product: rhythmbox
Classification: Other
Component: iPod
0.13.x
Other Linux
: Normal normal
: ---
Assigned To: RhythmBox Maintainers
RhythmBox Maintainers
Depends on:
Blocks:
 
 
Reported: 2010-10-03 06:42 UTC by Omer Akram
Modified: 2010-10-26 11:55 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Omer Akram 2010-10-03 06:42:20 UTC
"1) Download a podcast
2) Insert iPod (mine is a 2nd gen.)
3) Drag podcast to iPod
4) Eject iPod
5) Play file in iPod

It shows up normally, but the iPod won't play it.

This used to work fine in Lucid, and it broke in the Maverick Beta."
Comment 1 Omer Akram 2010-10-03 06:43:03 UTC
also reported at: https://bugs.launchpad.net/ubuntu/+source/rhythmbox/+bug/640103
Comment 2 Kalle 2010-10-22 11:23:04 UTC
The problem is that the extension is removed from the filename of the podcast when copied to the ipod.

In the function ipod_get_filename_for_uri() in plugins/ipod/rb-ipod-source.c:

escaped = g_utf8_strrchr (filename, -1, '.');
if (escaped != NULL) {
        *escaped = 0;             
}  
Removes the extension.. 


If those lines are removed the next problem is (a couple of lines down):
    "if (extension != NULL) { "

In my case, 'extension' is empty but not NULL, so an extra '.' will be applied at the end of the filename. Because of:
"escaped = g_strdup_printf ("%s.%s", filename, extension);"

Replace with "if (extension != NULL && *extension != '\0') {"
fixes that.

Works for me, but someone who's more involved with the code should take a look at it.
Comment 3 Jonathan Matthew 2010-10-23 02:07:15 UTC
What version of rhythmbox are you using?  Some changes I made in 0.13.1 should have fixed this.  Output from 'rhythmbox -D encoder' would probably help in any case.
Comment 4 Kalle 2010-10-26 10:42:56 UTC
I'm running version 0.13.1 from Ubuntu 10.10. That's also where i grabbed the source. 'apt-get source rhythmbox'

Here's the output from '-D encoder' when i transfer the podcast.

-----------------

(12:36:01) [0x8aa8e68] [rb_encoder_gst_get_media_type] rb-encoder-gst.c:1176: found source media type audio/mpeg in destination type list
(12:36:01) [0x8aa8e68] [get_profile_from_media_type] rb-encoder-gst.c:873: Looking up profile for media type 'audio/mpeg'
(12:36:02) [0x8aa8e68] [encoder_match_media_type] rb-encoder-gst.c:752: desired caps are: audio/mpeg, mpegversion=(int)1, layer=(int)3
(12:36:02) [0x8aa8e68] [encoder_match_media_type] rb-encoder-gst.c:756: element caps are: audio/x-flac
(12:36:02) [0x8aa8e68] [encoder_match_media_type] rb-encoder-gst.c:760: intersect caps are: EMPTY
(12:36:02) [0x8aa8e68] [encoder_match_media_type] rb-encoder-gst.c:752: desired caps are: audio/mpeg, mpegversion=(int)1, layer=(int)3
(12:36:02) [0x8aa8e68] [encoder_match_media_type] rb-encoder-gst.c:756: element caps are: audio/x-vorbis
(12:36:02) [0x8aa8e68] [encoder_match_media_type] rb-encoder-gst.c:760: intersect caps are: EMPTY
(12:36:02) [0x8aa8e68] [encoder_match_media_type] rb-encoder-gst.c:752: desired caps are: audio/mpeg, mpegversion=(int)1, layer=(int)3
(12:36:02) [0x8aa8e68] [encoder_match_media_type] rb-encoder-gst.c:756: element caps are: audio/mpeg, mpegversion=(int)1, layer=(int)2, rate=(int){ 16000, 22050, 24000, 32000, 44100, 48000 }, channels=(int)[ 1, 2 ]
(12:36:02) [0x8aa8e68] [encoder_match_media_type] rb-encoder-gst.c:760: intersect caps are: EMPTY
(12:36:02) [0x8aa8e68] [profile_bin_find_encoder] rb-encoder-gst.c:813: unable to find encoder element
(12:36:02) [0x8aa8e68] [encoder_match_media_type] rb-encoder-gst.c:752: desired caps are: audio/mpeg, mpegversion=(int)1, layer=(int)3
(12:36:02) [0x8aa8e68] [encoder_match_media_type] rb-encoder-gst.c:756: element caps are: audio/x-speex, rate=(int)[ 6000, 48000 ], channels=(int)[ 1, 2 ]
(12:36:02) [0x8aa8e68] [encoder_match_media_type] rb-encoder-gst.c:760: intersect caps are: EMPTY
(12:36:02) [0x8aa8e68] [rb_encoder_gst_get_media_type] rb-encoder-gst.c:1176: found source media type audio/mpeg in destination type list
(12:36:02) [0x8aa8e68] [get_profile_from_media_type] rb-encoder-gst.c:873: Looking up profile for media type 'audio/mpeg'
(12:36:02) [0x8aa8e68] [encoder_match_media_type] rb-encoder-gst.c:752: desired caps are: audio/mpeg, mpegversion=(int)1, layer=(int)3
(12:36:02) [0x8aa8e68] [encoder_match_media_type] rb-encoder-gst.c:756: element caps are: audio/x-flac
(12:36:02) [0x8aa8e68] [encoder_match_media_type] rb-encoder-gst.c:760: intersect caps are: EMPTY
(12:36:02) [0x8aa8e68] [encoder_match_media_type] rb-encoder-gst.c:752: desired caps are: audio/mpeg, mpegversion=(int)1, layer=(int)3
(12:36:02) [0x8aa8e68] [encoder_match_media_type] rb-encoder-gst.c:756: element caps are: audio/x-vorbis
(12:36:02) [0x8aa8e68] [encoder_match_media_type] rb-encoder-gst.c:760: intersect caps are: EMPTY
(12:36:02) [0x8aa8e68] [encoder_match_media_type] rb-encoder-gst.c:752: desired caps are: audio/mpeg, mpegversion=(int)1, layer=(int)3
(12:36:02) [0x8aa8e68] [encoder_match_media_type] rb-encoder-gst.c:756: element caps are: audio/mpeg, mpegversion=(int)1, layer=(int)2, rate=(int){ 16000, 22050, 24000, 32000, 44100, 48000 }, channels=(int)[ 1, 2 ]
(12:36:02) [0x8aa8e68] [encoder_match_media_type] rb-encoder-gst.c:760: intersect caps are: EMPTY
(12:36:02) [0x8aa8e68] [profile_bin_find_encoder] rb-encoder-gst.c:813: unable to find encoder element
(12:36:02) [0x8aa8e68] [encoder_match_media_type] rb-encoder-gst.c:752: desired caps are: audio/mpeg, mpegversion=(int)1, layer=(int)3
(12:36:02) [0x8aa8e68] [encoder_match_media_type] rb-encoder-gst.c:756: element caps are: audio/x-speex, rate=(int)[ 6000, 48000 ], channels=(int)[ 1, 2 ]
(12:36:02) [0x8aa8e68] [encoder_match_media_type] rb-encoder-gst.c:760: intersect caps are: EMPTY
(12:36:03) [0x8aa8e68] [rb_encoder_gst_encode] rb-encoder-gst.c:1108: source file already has required media type audio/mpeg, copying rather than transcoding
(12:36:03) [0x8aa8e68] [attach_output_pipeline] rb-encoder-gst.c:658: attempting to open output file file:///media/IDA'S%20IPOD/iPod_Control/Music/F40/fsn2010-1020-1.
(12:36:03) [0x8aa8e68] [bus_watch_cb] rb-encoder-gst.c:350: message of type state-changed
(12:36:03) [0x8aa8e68] [bus_watch_cb] rb-encoder-gst.c:350: message of type state-changed
(12:36:03) [0x8aa8e68] [bus_watch_cb] rb-encoder-gst.c:350: message of type state-changed
(12:36:03) [0x8aa8e68] [bus_watch_cb] rb-encoder-gst.c:350: message of type stream-status
(12:36:03) [0x8aa8e68] [bus_watch_cb] rb-encoder-gst.c:350: message of type state-changed
(12:36:03) [0x8aa8e68] [bus_watch_cb] rb-encoder-gst.c:350: message of type stream-status
(12:36:03) [0x8aa8e68] [bus_watch_cb] rb-encoder-gst.c:350: message of type state-changed
(12:36:03) [0x8aa8e68] [bus_watch_cb] rb-encoder-gst.c:350: message of type state-changed
(12:36:03) [0x8aa8e68] [bus_watch_cb] rb-encoder-gst.c:350: message of type async-done
(12:36:03) [0x8aa8e68] [bus_watch_cb] rb-encoder-gst.c:350: message of type new-clock
(12:36:03) [0x8aa8e68] [bus_watch_cb] rb-encoder-gst.c:350: message of type state-changed
(12:36:03) [0x8aa8e68] [bus_watch_cb] rb-encoder-gst.c:350: message of type state-changed
(12:36:03) [0x8aa8e68] [bus_watch_cb] rb-encoder-gst.c:350: message of type state-changed
(12:36:03) [0x8aa8e68] [bus_watch_cb] rb-encoder-gst.c:333: received EOS, closing output stream
(12:36:03) [0x8aa8e68] [output_close_cb] rb-encoder-gst.c:286: finished closing output stream
(12:36:03) [0x8aa8e68] [rb_encoder_gst_emit_completed] rb-encoder-gst.c:273: destination file size: 19561257
(12:36:03) [0x8aa8e68] [encoder_completed_cb] rb-track-transfer-batch.c:347: encoder finished (size 19561257)

-----------------
Comment 5 Jonathan Matthew 2010-10-26 11:55:09 UTC
Thanks for the bug report. This particular bug has already been reported into our bug tracking system, but please feel free to report any further bugs you find.

*** This bug has been marked as a duplicate of bug 625054 ***