Bug 446077

Summary: VLC player does not stream video from Samba share with kio-fuse
Product: [Frameworks and Libraries] kiofuse Reporter: Patrick Silva <bugseforuns>
Component: generalAssignee: a.saoutkin
Status: RESOLVED DUPLICATE    
Severity: normal CC: edoubrayrie, fabian, kio-bugs-null, mapatrapa, nate
Priority: HI    
Version: unspecified   
Target Milestone: ---   
Platform: Neon   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Patrick Silva 2021-11-25 13:32:02 UTC
SUMMARY
This bug was previously mentioned in bug 445606 comment 4

STEPS TO REPRODUCE
1. install VLC player and kio-fuse
2. disable Samba support of VLC player (on neon unstable I do it by uninstalling vlc-plugin-samba package)
3. access a Samba share with Dolphin file manager by typing smb://samba_server/samba_share in the location bar
4. open a video located in your Samba share with VLC player

OBSERVED RESULT
VLC does not play the video and shows an error message:
"Your input can't be opened:
VLC is unable to open the MRL 'smb://samba_server/samba_share/video.mp4'. Check the log for details."

EXPECTED RESULT
VLC + kio-fuse plays videos from Samba shares

SOFTWARE/OS VERSIONS
Operating System: KDE neon Unstable Edition
KDE Plasma Version: 5.23.80
KDE Frameworks Version: 5.89.0
Qt Version: 5.15.3
Graphics Platform: Wayland
Comment 1 Nate Graham 2021-11-29 19:26:06 UTC
This sequence of events works for me on Fedora 34 (Wayland, git master everything). The error typically means that VLC is in fact trying to use its Samba server rather than getting a local path.

What version of VLC are you using? I have 3.0.16.

Can you verify that the `kio-fuse` daemon is running?

If you open a different file on a samba share using a different non-KDE app, does kio-fuse get used? You can check this by opening a document in LibreOffice, going to File > Properties, and looking at the path in the "Location" row. If the document was opened via a kio-fuse path, the path will start with "/run/user/1000/kio-fuse-[something]" So let's see if kio-fuse is working for other things.
Comment 2 Patrick Silva 2021-11-30 11:39:57 UTC
Currently I'm using VLC 3.0.9.2 from ubuntu repos, but he problem also occurs with nightly build of VLC 4 from the following PPa repository:

https://launchpad.net/~videolan/+archive/ubuntu/master-daily

Nothing is found when I search for 'kio-fuse' in System Activity (ctrl+esc).

kio-fuse works with Libre Office.
Comment 3 Nate Graham 2021-11-30 18:20:16 UTC
Thanks. When it's working with LibreOffice, is the `kio-fuse` daemon running? If so, does it stop running when you try to open the file in VLC? If so, it almost seems like it's doing something and crashing.
Comment 4 Patrick Silva 2021-11-30 19:13:59 UTC
(In reply to Nate Graham from comment #3)
> When it's working with LibreOffice, is the `kio-fuse` daemon running?
yes

> If so, does it stop running when you try to open the file in VLC?
no, kio-fuse daemon remains running.
Comment 5 Nate Graham 2021-11-30 19:15:11 UTC
And then when it's already running, does VLC open the file using kio-fuse, or does it still fail?
Comment 6 Patrick Silva 2021-11-30 19:18:49 UTC
Vlc does not play the video even when kio-fuse daemon is running.
Comment 7 Nate Graham 2021-11-30 19:44:27 UTC
OK, so the bug seems to be that for you, opening a video on a Samba share in VLC does not cause the daemon to auto-launch, and when it's already running, it doesn't get used, so VLC tries to open the file itself and fails.

Any ideas, Alexander or Fabian?
Comment 8 Fabian Vogt 2021-11-30 20:08:41 UTC
kio-fuse is used by KIO to translate URLs like smb://foo/bar into local file paths, which are then passed to the application.
Here it looks like VLC sees the original URL, so KIO thinks that VLC can use it and passed it directly, without involving kio-fuse.

What does the "vlc-plugin-samba" package do? I assume it just removes the VLC plugin, but the VLC .desktop file still specifies that it can handle SMB URLs.

What are the values of X-KDE-Protocols and MimeType in VLCs .desktop file?
Comment 9 Nate Graham 2021-11-30 20:11:33 UTC
For reference, here is that data for my VLC installation, where I can confirm that kio-fuse translates the paths as expected:

X-KDE-Protocols=ftp,http,https,mms,rtmp,rtsp,sftp,smb

MimeType=application/ogg;application/x-ogg;audio/ogg;audio/vorbis;audio/x-vorbis;audio/x-vorbis+ogg;video/ogg;video/x-ogm;video/x-ogm+ogg;video/x-theora+ogg;video/x-theora;audio/x-speex;audio/opus;application/x-flac;audio/flac;audio/x-flac;audio/x-ms-asf;audio/x-ms-asx;audio/x-ms-wax;audio/x-ms-wma;video/x-ms-asf;video/x-ms-asf-plugin;video/x-ms-asx;video/x-ms-wm;video/x-ms-wmv;video/x-ms-wmx;video/x-ms-wvx;video/x-msvideo;audio/x-pn-windows-acm;video/divx;video/msvideo;video/vnd.divx;video/avi;video/x-avi;application/vnd.rn-realmedia;application/vnd.rn-realmedia-vbr;audio/vnd.rn-realaudio;audio/x-pn-realaudio;audio/x-pn-realaudio-plugin;audio/x-real-audio;audio/x-realaudio;video/vnd.rn-realvideo;audio/mpeg;audio/mpg;audio/mp1;audio/mp2;audio/mp3;audio/x-mp1;audio/x-mp2;audio/x-mp3;audio/x-mpeg;audio/x-mpg;video/mp2t;video/mpeg;video/mpeg-system;video/x-mpeg;video/x-mpeg2;video/x-mpeg-system;application/mpeg4-iod;application/mpeg4-muxcodetable;application/x-extension-m4a;application/x-extension-mp4;audio/aac;audio/m4a;audio/mp4;audio/x-m4a;audio/x-aac;video/mp4;video/mp4v-es;video/x-m4v;application/x-quicktime-media-link;application/x-quicktimeplayer;video/quicktime;application/x-matroska;audio/x-matroska;video/x-matroska;video/webm;audio/webm;audio/3gpp;audio/3gpp2;audio/AMR;audio/AMR-WB;video/3gp;video/3gpp;video/3gpp2;x-scheme-handler/mms;x-scheme-handler/mmsh;x-scheme-handler/rtsp;x-scheme-handler/rtp;x-scheme-handler/rtmp;x-scheme-handler/icy;x-scheme-handler/icyx;application/x-cd-image;x-content/video-vcd;x-content/video-svcd;x-content/video-dvd;x-content/audio-cdda;x-content/audio-player;application/ram;application/xspf+xml;audio/mpegurl;audio/x-mpegurl;audio/scpls;audio/x-scpls;text/google-video-pointer;text/x-google-video-pointer;video/vnd.mpegurl;application/vnd.apple.mpegurl;application/vnd.ms-asf;application/vnd.ms-wpl;application/sdp;audio/dv;video/dv;audio/x-aiff;audio/x-pn-aiff;video/x-anim;video/x-nsv;video/fli;video/flv;video/x-flc;video/x-fli;video/x-flv;audio/wav;audio/x-pn-au;audio/x-pn-wav;audio/x-wav;audio/x-adpcm;audio/ac3;audio/eac3;audio/vnd.dts;audio/vnd.dts.hd;audio/vnd.dolby.heaac.1;audio/vnd.dolby.heaac.2;audio/vnd.dolby.mlp;audio/basic;audio/midi;audio/x-ape;audio/x-gsm;audio/x-musepack;audio/x-tta;audio/x-wavpack;audio/x-shorten;application/x-shockwave-flash;application/x-flash-video;misc/ultravox;image/vnd.rn-realpix;audio/x-it;audio/x-mod;audio/x-s3m;audio/x-xm;application/mxf;
Comment 10 Patrick Silva 2021-11-30 20:15:17 UTC
X-KDE-Protocols=ftp,http,https,mms,rtmp,rtsp,sftp,smb

MimeType=x-content/audio-player;video/x-theora+ogg;video/x-theora+ogg;video/x-ogm+ogg;video/x-ogm+ogg;video/x-nsv;video/x-msvideo;video/x-msvideo;video/x-msvideo;video/x-msvideo;video/x-msvideo;video/x-msvideo;video/x-ms-wmv;video/x-matroska;video/x-flv;video/x-flv;video/x-flv;video/x-flic;video/x-flic;video/x-anim;video/webm;video/vnd.rn-realvideo;video/vnd.mpegurl;video/quicktime;video/ogg;video/mpeg;video/mpeg;video/mpeg;video/mpeg;video/mpeg;video/mp4;video/mp4;video/mp4;video/mp2t;video/dv;video/3gpp2;video/3gpp2;video/3gpp;video/3gpp;video/3gpp;text/x-google-video-pointer;text/x-google-video-pointer;image/vnd.rn-realpix;audio/x-xm;audio/x-wavpack;audio/x-wav;audio/x-wav;audio/x-vorbis+ogg;audio/x-vorbis+ogg;audio/x-vorbis+ogg;audio/x-tta;audio/x-speex;audio/x-scpls;audio/x-scpls;audio/x-s3m;audio/x-pn-realaudio-plugin;audio/x-musepack;audio/x-ms-wma;audio/x-ms-asx;audio/x-ms-asx;audio/x-ms-asx;audio/x-mpegurl;audio/x-mpegurl;audio/x-mod;audio/x-matroska;audio/x-it;audio/x-gsm;audio/x-ape;audio/x-aiff;audio/x-adpcm;audio/webm;audio/vnd.rn-realaudio;audio/vnd.rn-realaudio;audio/vnd.dts.hd;audio/vnd.dts;audio/ogg;audio/mpeg;audio/mpeg;audio/mpeg;audio/mpeg;audio/mpeg;audio/mp4;audio/mp4;audio/mp4;audio/mp2;audio/mp2;audio/midi;audio/flac;audio/flac;audio/basic;audio/AMR-WB;audio/AMR;audio/ac3;audio/aac;audio/aac;application/xspf+xml;application/x-shorten;application/x-quicktime-media-link;application/x-quicktime-media-link;application/x-matroska;application/x-cd-image;application/vnd.rn-realmedia;application/vnd.rn-realmedia;application/vnd.ms-wpl;application/vnd.ms-asf;application/vnd.ms-asf;application/vnd.ms-asf;application/vnd.ms-asf;application/vnd.apple.mpegurl;application/vnd.adobe.flash.movie;application/sdp;application/ram;application/ogg;application/ogg;application/mxf;
Comment 11 a.saoutkin 2021-11-30 23:31:35 UTC
What does the log say? Presumably it's just an authentication issue, VLC should be more forthcoming about what the exact issue is.

Is this Samba share password protected? If it is, then KIO FUSE should've been asked to open this URL.

I suspect this is a duplicate of https://bugs.kde.org/show_bug.cgi?id=436553 and will add it to my priority list. I'm a bit tight on time but might have some over the coming days.
Comment 12 Patrick Silva 2021-12-01 00:29:19 UTC
My Samba shares are passwordless. Haruna and SMPlayer are able to play the same videos.

VLC log:

main debug: processing request item: video.mp4, node: Playlist, skip: 0
main debug: rebuilding array of current - root Playlist
main debug: rebuild done - 3 items, index 2
main debug: starting playback of new item
main debug: resyncing on video.mp4
main debug: video.mp4 is at 2
main debug: creating new input thread
main debug: Creating an input for 'video.mp4'
main debug: requesting art for new input thread
main debug: using timeshift granularity of 50 MiB
main debug: using default timeshift path
main debug: `smb://arch-pc.local/WD/V%C3%ADdeos/video.mp4' gives access `smb' demux `any' path `arch-pc.local/WD/V%C3%ADdeos/video.mp4'
main debug: creating demux: access='smb' demux='any' location='arch-pc.local/WD/V%C3%ADdeos/video.mp4' file='(null)'
main debug: looking for access_demux module matching "smb": 17 candidates
main debug: no access_demux modules matched
main debug: creating access: smb://arch-pc.local/WD/V%C3%ADdeos/video.mp4
main debug: looking for access module matching "smb": 27 candidates
main debug: no access modules matched
main debug: dead input
main debug: looking for meta fetcher module matching "any": 1 candidates
lua debug: Trying Lua scripts in /home/stalker/.local/share/vlc/lua/meta/fetcher
lua debug: Trying Lua scripts in /usr/lib/x86_64-linux-gnu/vlc/lua/meta/fetcher
lua debug: Trying Lua scripts in /usr/share/vlc/lua/meta/fetcher
main debug: no meta fetcher modules matched
main debug: looking for art finder module matching "any": 2 candidates
lua debug: Trying Lua scripts in /home/stalker/.local/share/vlc/lua/meta/art
lua debug: Trying Lua scripts in /usr/lib/x86_64-linux-gnu/vlc/lua/meta/art
lua debug: Trying Lua playlist script /usr/lib/x86_64-linux-gnu/vlc/lua/meta/art/00_musicbrainz.luac
lua debug: skipping script (unmatched scope) /usr/lib/x86_64-linux-gnu/vlc/lua/meta/art/00_musicbrainz.luac
lua debug: Trying Lua playlist script /usr/lib/x86_64-linux-gnu/vlc/lua/meta/art/01_googleimage.luac
lua debug: skipping script (unmatched scope) /usr/lib/x86_64-linux-gnu/vlc/lua/meta/art/01_googleimage.luac
lua debug: Trying Lua playlist script /usr/lib/x86_64-linux-gnu/vlc/lua/meta/art/02_frenchtv.luac
lua debug: skipping script (unmatched scope) /usr/lib/x86_64-linux-gnu/vlc/lua/meta/art/02_frenchtv.luac
lua debug: Trying Lua playlist script /usr/lib/x86_64-linux-gnu/vlc/lua/meta/art/03_lastfm.luac
dbus debug: Getting All properties
dbus debug: Getting All properties
lua debug: skipping script (unmatched scope) /usr/lib/x86_64-linux-gnu/vlc/lua/meta/art/03_lastfm.luac
lua debug: Trying Lua scripts in /usr/share/vlc/lua/meta/art
main debug: no art finder modules matched
main debug: looking for meta fetcher module matching "any": 1 candidates
lua debug: Trying Lua scripts in /home/stalker/.local/share/vlc/lua/meta/fetcher
lua debug: Trying Lua scripts in /usr/lib/x86_64-linux-gnu/vlc/lua/meta/fetcher
lua debug: Trying Lua scripts in /usr/share/vlc/lua/meta/fetcher
main debug: no meta fetcher modules matched
main debug: looking for art finder module matching "any": 2 candidates
lua debug: Trying Lua scripts in /home/stalker/.local/share/vlc/lua/meta/art
lua debug: Trying Lua scripts in /usr/lib/x86_64-linux-gnu/vlc/lua/meta/art
lua debug: Trying Lua playlist script /usr/lib/x86_64-linux-gnu/vlc/lua/meta/art/00_musicbrainz.luac
lua debug: Trying Lua playlist script /usr/lib/x86_64-linux-gnu/vlc/lua/meta/art/01_googleimage.luac
lua debug: Trying Lua playlist script /usr/lib/x86_64-linux-gnu/vlc/lua/meta/art/02_frenchtv.luac
lua debug: Trying Lua playlist script /usr/lib/x86_64-linux-gnu/vlc/lua/meta/art/03_lastfm.luac
lua debug: Trying Lua scripts in /usr/share/vlc/lua/meta/art
main debug: no art finder modules matched
dbus debug: Getting property Position
main debug: changing item without a request (current 2/3)
main debug: nothing to play
Comment 13 Nate Graham 2021-12-01 02:38:27 UTC
That's probably it, then. VLC doesn't need credentials to access the share so it tries to play the file because its .desktop file says it can handle smb:// URLs, even though it really can't.

*** This bug has been marked as a duplicate of bug 436553 ***
Comment 14 Jesus 2021-12-12 23:08:11 UTC
The same thing happens for a couple of months if you try to play a video through  sftp://  with dolphin, the entire file is downloaded before it starts to play.
Comment 15 a.saoutkin 2022-04-23 11:54:58 UTC
(In reply to Jesus from comment #14)
> The same thing happens for a couple of months if you try to play a video
> through  sftp://  with dolphin, the entire file is downloaded before it
> starts to play.

You are referring to this bug which is now fixed: https://bugs.kde.org/show_bug.cgi?id=450198
Comment 16 Jesus 2022-04-23 15:14:58 UTC
(In reply to a.saoutkin from comment #15)
> (In reply to Jesus from comment #14)
> > The same thing happens for a couple of months if you try to play a video
> > through  sftp://  with dolphin, the entire file is downloaded before it
> > starts to play.
> 
> You are referring to this bug which is now fixed:
> https://bugs.kde.org/show_bug.cgi?id=450198

Yes, now it's working again