4k movies from NAS: buffering

Hey,

I want to play a 4k video from my NAS. However, the movie often stops and starts buffering.
In between the buffering everything works fine and normal HD videos also work fine.
When I play the same 4k video from a hard drive directly connected to the vero 4k+, it also works great.
So I guess the connection between the NAS and vero 4k+ is the limiting factor.
However, when I copy the video from my pc to the NAS it easily gets 100MB/s. So I thought the connection to the NAS should be fast enough.

I have a mounted a shared folder in OSMC’s filesystem as described here: File sharing with a NAS, media server, windows share or other device
I’m using the NFS protocol with fstab.

The setup I’m using is the following:

  • NAS: WD cloud ex2 ultra
  • The NAS is connected with a wire (CAT5e) to a wifi access point which acts as a switch
  • the wifi access point is connected with a wire (CAT5e) to my general router
  • the vero 4k+ is also connected with a wire (CAT5e) to the wifi access point.
    setup

The video I try to play is “Dolby_Universe_4K_SDR_71-Atmos-thedigitaltheater”. (which I downloaded here: https://thedigitaltheater.com/dolby-trailers/)

Here is a log when I tried to play the 4k video.
https://paste.osmc.tv/yimukucabo

Kind regards,
Ben

You’re running a 1 Gbps Vero4K+ but only getting 100 Mbps. I assume this is a limitation of the switch/AP. (What make/model is it?)

Anyway, I think you have a serious network problem. You’re using both the WiFi and ethernet interfaces on the Vero4K+, yet both are showing massive number of dropped RX packets:

eth0: flags=-28605<UP,BROADCAST,RUNNING,MULTICAST,DYNAMIC>  mtu 1500
        inet 192.168.0.156  netmask 255.255.255.0  broadcast 192.168.0.255
        ether 90:0e:b3:28:9b:f9  txqueuelen 1000  (Ethernet)
        RX packets 13533395  bytes 17372877534 (16.1 GiB)
        RX errors 0  dropped 442320  overruns 0  frame 0
        TX packets 3162345  bytes 237552966 (226.5 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 40  
...
wlan0: flags=-28605<UP,BROADCAST,RUNNING,MULTICAST,DYNAMIC>  mtu 1500
        inet 192.168.0.103  netmask 255.255.255.0  broadcast 192.168.0.255
        ether 10:2c:6b:23:ec:1a  txqueuelen 1000  (Ethernet)
        RX packets 889480  bytes 82293189 (78.4 MiB)
        RX errors 0  dropped 373071  overruns 0  frame 0
        TX packets 36723  bytes 4551269 (4.3 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

At least eth0 has the “excuse” of receiving 16.1 GiB of data (with 442,320 dropped packets) but wlan0 has received only 78.4 MiB and dropped 373,071 packets.

I’d recommend that you change the cables, or at least take them out and reseat them. If you have one available, attach a cheapo unmanaged switch directly to the router and then the Vero4K+ and NAS directly to the unmanaged switch, taking the switch/AP out of the path between Vero4K+ and NAS. See if that helps.

And thanks for the network diagram. Very useful and so rarely provided.

1 Like

Hey dillthedog,

Thanks a lot. I tried your suggestion and it works perfectly.
I connected the NAS and vero 4k+ (with other ethernet cables) to a separate switch.
setup_solution

I also checked the dropped RX packets and they seem to be much better. Thanks a lot for guiding me where to look in the logs :).
So the problem was the switch/AP. (it is provided by my internet provider with their own casing. So I don’t know the brand/type).

One last thing:

  • You mentioned that I’m only getting 100Mbps. Where can you see this in the logs?
  • Is it also possible to check the transfer rate of the video itself in the logs?

Thanks again for the fast and very useful reply.

Kind regards,
Ben

Good to see you’ve made progress. And another network diagram for extra marks! :slight_smile:

Oct 21 21:19:33 osmc kernel: libphy: stmmac-0:00 - Link is Up - 100/Full

Not easily from the logs. You can run ifstat -i eth0 to see what’s happening on the eth0 interface when viewing a video. It’s not installed on your system, so run sudo apt-get install ifstat to install.