GNOME Bugzilla – Bug 334216
[gnomevfssrc] won't open some media on NFS mounts any longer
Last modified: 2006-03-11 16:40:22 UTC
Since 0.10.4 gnomevfssrc won't play some files on NFS mounts. Totem returns the following error : Totem could not play 'file:///mnt/lothlorien/media/video/series/Stargate/Everything Stargate/Stargate SG-1/Season 5/Stargate SG-1 [5x18] The Warrior.avi'. Cannot play this file over the network. Try downloading it to disk first. Other files do play, but crash on seeking. snippet of IRC discussion : <__tim> gnomevfssrc uses gnome_vfs_uri_is_local() to predicate whether pull-mode is supported (to avoid opening a resource twice in a short time to check for that, which breaks with some http servers like last.fm) <__tim> in this case gnome_vfs_uri_is_local() returns (correctly) FALSE, which means certain demuxers/decoders like avidemux and flacdec won't work <foser> so those plugins need fixing ? <__tim> no, gnomevfssrc needs fixing
GST_DEBUG=gnomevfssrc:5 gst-launch-0.10 gnomevfssrc location=file:///mnt/lothlorien/media/incoming/Stargate.Atlantis.S02E20.HDTV.XviD-TvD.avi ! typefind ! fakesink 2>&1 | grep check_get_range gives LOG (0x80519a0 - 0:00:00.146317000) gnomevfssrc(29042) gstgnomevfssrc.c(1095):gst_gnome_vfs_src_check_get_range:<gnomevfssrc0> remote URI (file:///mnt/lothlorien/media/incoming/Stargate.Atlantis.S02E20.HDTV.XviD-TvD.avi), random access not possible
Created attachment 61091 [details] [review] proposed patch Does this fix it for you?
Yep, the patch fixes all issues I encountered.
Great, thanks for testing and apologies for the breakage. 2006-03-11 Tim-Philipp Müller <tim at centricular dot net> * ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_check_get_range): gnome_vfs_uri_is_local() alone is not a good indicator whether we can operate in pull-mode with a specific URI, as it returns FALSE for file:// URIs that point to an NFS-mounted path. Be more conservative here: whitelist local files, blacklist http URIs and use the old mechanism for anything else (fixes #334216).