EDIT: it's occurred to me that this is probably an issue with WebDAV/Nextcloud when using cifs mounted samba shares, and it is not VLC's fault. Later I will try with a video file added directly to the nextcloud data folder, and also one added to the raspi's internal memory mounted as local storage in nexcloud to see where the problem is.
VLC 3.0.2 on opensuse leap 15 (but presumably not OS specific)
Problem:
When I seek in a video file, VLC buffers the entire content between where it was playing back and until the time I seek to. So if I seek 10 minutes ahead into a video, I have to wait for VLC to buffer 10 minutes of video before playback starts. I want it to start from the seek point directly.
This is a problem because I am streaming through nextcloud on a raspberry pi and it goes to 100% cpu usage while buffering the video at full speed to catch up. If I want to start a video one hour in, this means a lot of waiting and a lot of strain on the raspi, going full speed. When streaming without buffering it doesn't need to go full speed (only needs to match the bitrate of the files).
setup:
Server on my LAN providing samba shares from local and external usb drives.
Samba shares mounted on raspberry pi on the same LAN using cifs.
added in nextcloud instance on the same raspberry pi as local storage.
accessed online through webDAV (address of files would be something like https://xxx/nextcloud/remote.php/webdav/xxx/xxx.mkv
extra info:
I have checked the network usage to confirm that VLC:
streams the file at its normal bitrate during playback (desirable)
peaks to max transfer speed after seeking, until caught up (undesirable), then starts playback and transfer speed goes back to normal
doesnt buffer when paused (desireable)