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 334216 - [gnomevfssrc] won't open some media on NFS mounts any longer
[gnomevfssrc] won't open some media on NFS mounts any longer
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-base
0.10.4
Other Linux
: Normal normal
: 0.10.5
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2006-03-11 14:01 UTC by Marinus Schraal
Modified: 2006-03-11 16:40 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
proposed patch (2.11 KB, patch)
2006-03-11 14:26 UTC, Tim-Philipp Müller
committed Details | Review

Description Marinus Schraal 2006-03-11 14:01:54 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
Comment 1 Marinus Schraal 2006-03-11 14:08:03 UTC
 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
Comment 2 Tim-Philipp Müller 2006-03-11 14:26:22 UTC
Created attachment 61091 [details] [review]
proposed patch

Does this fix it for you?
Comment 3 Marinus Schraal 2006-03-11 14:49:42 UTC
Yep, the patch fixes all issues I encountered.
Comment 4 Tim-Philipp Müller 2006-03-11 16:40:22 UTC
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).