Bug 442248 - webdav ioslave does not implement random access, forcing kio-fuse-accessed files to be read in their entirety, rather than streamed
Summary: webdav ioslave does not implement random access, forcing kio-fuse-accessed fi...
Status: CONFIRMED
Alias: None
Product: frameworks-kio
Classification: Frameworks and Libraries
Component: WebDAV (show other bugs)
Version: git master
Platform: Manjaro Linux
: NOR normal
Target Milestone: ---
Assignee: KIO Bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-09-10 06:13 UTC by ihipop
Modified: 2023-05-09 05:11 UTC (History)
8 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
GVFS network speed chart (59.94 KB, image/png)
2021-09-10 06:13 UTC, ihipop
Details
KIO-FUSE network speed chart (67.19 KB, image/png)
2021-09-10 06:13 UTC, ihipop
Details

Note You need to log in before you can comment on or make changes to this bug.
Description ihipop 2021-09-10 06:13:02 UTC
Created attachment 141435 [details]
GVFS network speed chart

SUMMARY
KIO-FUSE will force video player to read the whole file, not stream it

The webdav server is the same one ,below

STEPS TO REPRODUCE
1. open a webdav:// server in dolphin
2. find a big video in it
3. open with a external video player like MPV/VLC

OBSERVED RESULT

When I use dolphin mount the webdav directory and open the Video (`kio-fuse`) inside dolphin,`kio` will make all video player (tested with `vlc/mpv`)  try to download the whole file ,not stream it,the network speed chart looks like a wall

https://invent.kde.org/system/kio-fuse/uploads/e273d4982b3ba32fd0a1b6508052cf1a/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20210910133844.png

I cd into the directory where the `kio` mounted  webdav to (like `/run/user/1000/kio-fuse-AYWsZt/webdav/127.0.0.1:8888/`) the terminal is very jam and slow when `ls`

Video play back is not work

EXPECTED RESULT

When I use  nautilus (`GFVS`) to open (mount) the `webdav` directory and open the Video inside nautilus,all video player (tested with `vlc/mpv`) works well, the video was streamed very well and the network speed chart looks like `wave`s

https://invent.kde.org/system/kio-fuse/uploads/373c6caeb4f6cba9bb3324e8b540850b/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20210910140615.png

I cd into the directory where the `GVFS` mounted  webdav to (like `/run/user/1000/gvfs/dav:host=127.0.0.1,port=8888,ssl=false/`) the terminal is very easy and smooth when `ls`

Video play back is  working well

This is the excepted 

SOFTWARE/OS VERSIONS

Linux/KDE Plasma: 
Operating System: Manjaro Linux
KDE Plasma Version: 5.22.5
KDE Frameworks Version: 5.85.0
Qt Version: 5.15.2

ADDITIONAL INFORMATION

```
/usr/lib/kio-fuse -V
KIO FUSE version 5.0.0
FUSE library version 3.10.4
using FUSE kernel interface version 7.31
fusermount3 version: 3.10.4
```
Comment 1 ihipop 2021-09-10 06:13:53 UTC
Created attachment 141436 [details]
KIO-FUSE network speed chart
Comment 2 Fabian Vogt 2021-09-10 06:38:49 UTC
The kioslave for webdav:// (http.so) does not implement random access, so kio-fuse has no choice but to download the file in a single chunk.

It should start playing during the download already though, unless the video file isn't directly streamable and contains necessary data (like an index) at the end.
Comment 3 ihipop 2021-09-11 07:24:01 UTC
@Fabian Vogt 

It not start playing during the download ,as you said ,a video  file often contains necessary data (like an index) at the end.

It will make the video player to `JAM` and Keeps Not Responding
Comment 4 Jesus 2021-09-29 19:39:25 UTC
I have observed the same behavior with sftp and fish. For a few months, the entire file is downloaded first and then the video plays
Comment 5 Bernhard 2021-10-01 03:52:47 UTC
(In reply to Jesus from comment #4)
> I have observed the same behavior with sftp and fish. For a few months, the
> entire file is downloaded first and then the video plays

I also have this problem with sftp in SMPlayer, which did not exist a few months back. Now the player opens but can't even draw its interface before the entire file has been downloaded by kio
Comment 6 a.saoutkin 2021-10-03 11:33:05 UTC
Fabian is correct, for WebDav unfortunately this is the expected behaviour until the HTTP slave implementation gains random access support.

For the SFTP protocol, this is most likely that the file is opened by KIOExec, not KIO FUSE because of this regression tracked here: https://bugs.kde.org/show_bug.cgi?id=436553
Comment 7 ihipop 2023-05-09 05:11:03 UTC
any update on this issue?