Constant Buffering over LAN
#1
I'm sure this has been asked here before, but I have a somewhat odd setup. I have two Mac Minis set up; one for TV shows storage/playback and one for movie storage/playback. I like to keep them separated because they're hooked up in two very different areas, and I keep the storage on local drives so I wouldn't have to worry about buffering problems... or so I thought. XBMC plays everything back flawlessly when its playing a file from the internal drive. The problem happens when I try to play a TV show on the Mac Mini that's set up for movies. What it has to do is connect to the TV Mini over 802.11n LAN and pull the file to play on the Movie Mini. THIS is when I get buffering problems, and it can get pretty bad to the point where it's unwatchable. I read about increasing buffering amounts to prevent this and made an advancedsettings.xml file, but it didn't seem to help. Here's what my file looks like:

Code:
<advancedsettings>
    <network>
        <cachemembuffersize>524288000</cachemembuffersize>
    </network>
</advancedsettings>

So it should cache 500mb at that setting, right? RAM shouldn't be an issue because I have 8GB in it. The video file I'm playing back is your typical MKV at a 6000kbps bitrate. The overall file sizes of each episode are around 2GB. I'm just not quite understanding why it has to keep buffering. If I try to manually pull the file down using finder, it transfers a little slower than it should but still fast enough to where the playback would never outrun it (I'd say around 15 mb/sec). Does anybody have any other suggestions as to how this can be fixed? I thought for sure increasing the buffer size would do the trick but I honestly didn't notice any difference at all. In fact it's like that setting is completely ignored.. Am I doing that right? Do I need to add the "<?xml version="1.0" encoding="UTF-8"?>" to the top of the XML file? I'd really appreciate anybody's help. Thank you!!

Edit: I just tried it with a much smaller file (a 200mb SD episode) and it still has to constantly buffer. This definitely has to be a bug with XBMC, especially since the size of this entire video file is less than half of what I have the buffer size set to.
Reply
#2
Do a file transfer speed test from one to the other via "dd" in a terminal:

Code:
# this will transfer movie.mkv with a block size of 8 megs without saving, thus purely testing file transfer speed
$ dd if=/path/to/movie.mkv bs=8M of=/dev/null

It will give you stats at the end. Note that this assumes that the movie is accessible via a file path on the machine (in other words, the shared folder is mounted). If you are using an FTP or HTTP source, you may need to try another method to test the speed.

In my experience, all current WiFi standards are complete crap at streaming HD sources over a local network.
HTPC 1 - Zotac ZBOX ID80U | 4GB RAM | 64GB SSD | Openelec | Confluence
HTPC 2 - Zotac ZBOX ID41U | 4GB RAM | 60GB SSD | Openelec | Confluence
Server - unRAID Server | 3 x 2TB WD Green HDD, 1TB WD Black HDD (Cache) | Sabnzbd | CouchPotato | Sickbeard
Reply
#3
I've done a few transfer speed tests and they're all giving me 10 - 15 mb/sec. So file transfer speed shouldn't be a problem... And even if it was, a buffer size of 500mb should have theoretically fixed that problem. Is there a better way to connect to a Mac over LAN for XBMC other than mounting a volume through Finder? Maybe connecting it using a different method will tell XBMC to treat the streaming differently?
Reply
#4
I think it will work better for you if you add your movies from inside XBMC with add videos... Then choose network share SMB or NFS, instead of using the mount in finder.

This is the way I have it set up and it works most of the time. Sometimes there is buffering though (Im connected over wireless..) In my experience setting cachemembuffersize does not make much difference for LAN buffering.
Reply
#5
To be clear, cachemembuffersize WILL NOT EVER change the amount of time that you have to wait for a video to buffer. All it does is allow a larger storage pool for the moments when it's able to transfer faster than playback. That lets you do all the waiting at once instead of broken up over the course of playback.

Also, 500MB of cache at 6000kbps is only 10.7sec of playback time. Try switching cachemembuffersize to 0 and see what you get. That will use a disk based buffer. Also, is Hardware acceleration enabled?
Reply
#6
I recently moved from Android and Windows to iOS and OSX.

XBMC on my PC streamed from the network without any problems; TuneIn Radio on my smartphone likewise.

With both my iPad and my Mac Mini, I had massive problems:

TuneIn Radio on the iPad would randomly disconnect or buffer every minute or two.
XBMC on the Mac wouldn't ever stream more than a few seconds of 720p video from my MyBook Live via wi-fi before buffering.

On my Mac, I verified all was well on a wired connection: it was.

I looked at my network and found a lot of my neighbours have very similar SSIDs (BTHubX-XXXX). I was still using the factory password and default security (WPA2).

Either OSX Mavericks and iOS7 dislikes similar SSIDs OR (perhaps more likely) they don't play nicely with WPA2 security.

Three small changes:

SSID changed to a unique name
Security changed from WPA2 to WPA
Password changed

No stutters, buffers or disconnects (even with 1080p DTS 5.1 surround movies) on both my Mac Mini and iPad.

Hope this fixes your problem.
Reply
#7
check the readbufferfactor which is a new gotham feature for advancedsettings.xml and set it to 4.0

via: http://wiki.xbmc.org/?title=Advancedsett...k_settings
First decide what functions / features you expect from a system. Then decide for the hardware. Don't waste your money on crap.
Reply
#8
I am storing my media on 3 NAS devices (Movies, TV, New media)
The "New Media" NAS is on 24x7 but I only turn the other 2 on when I want to watch something on them. Until a month ago I had no problem but now if I try to watch from 1 NAS while the other 2 are powered off I get constant buffering issues. Internet streaming works fine. If all NAS devices are powered up I have no problems.

So my assumption is that Kodi is constantly trying to access the offine NAS and this is interrupting the current video/LAN stream.

I haven't seen an option that would cause this problem.
I don't think that this problem started immediately after an upgrade. I think I have upgraded Openelec twice (to 6.0 then 6.0.1) since first having the problem)
Anyone have any ideas?

NUC, Openelec 6.0.1, Kodi 15.2
Reply
#9
I use NFS for streaming movies from my NAS (Synology DS212j) over a 1 Gbps LAN. It use to work great, but some time ago it just stopped and I got this problem with buffering. I have tried both wired and wireless network, but I can't see any dropped packages, delays, etc. And I have a 1 Gbps LAN and a ac wireless network, so there is enough bandwidth. I tried Kodi on my Nexus 9 over wifi and it works great.

But then last night I tried to mount the NFS drive directly in Openelec, e.g.

mount -t nfs -o proto=tcp,port=2049 192.168.1.10:/volume1/movies /storage/movies

Since then the buffering issue is gone Smile
Reply
#10
(2016-08-31, 09:33)viktor_swe Wrote: Since then the buffering issue is gone Smile
my kodi box is a pentium D, nvidia 210, 2gb, asus p5-Ld2, win10 64.  don't knock it, it works, and awesome 4.1 audio too.  but kodi was buffering playing files from the NAS.  I ran downstairs and snagged a 20 years old dlink network card that was being used for years as a bookmark of sorts and switched the network cable on to that, instead of the built in NIC on the MB, and wallah....no more buffering, and kodi runs like a dream.
Reply
#11
For the KODI cache you have to do some math. 
It's not an arbitrary number.
Obviously you need a gig network at minimal. 
For the math go look at this write up:
https://nerddrivel.com/2017/09/03/home-m...ckodixbmc/
Reply

Logout Mark Read Team Forum Stats Members Help
Constant Buffering over LAN0