I’m normally playing videos from a SAMBA share installed in a Ubuntu PC to play files from Kodi in Android TV box reviews, but sometimes when I use 10/100 Ethernet, or worse WiFi local “streaming” may not be as smooth as possible. SAMBA is convenient because of access control and read write operations, but if you want to get a bit more performance, you may switch to NFS instead, or like I’ve going to show you here to a DLNA / UPnP server to stream videos locally from Kodi 16.1.
There are several options, but MiniDLNA is lightweight compared to MediaTomb, so it will also run on lower end hardware like cheap ARM Linux development boards like Raspberry Pi, Orange Pi, or NanoPi NEO without taking too many resources.
Installation is very easy in Debian / Ubuntu distributions, and I supposed this should also work with Windows Subsystem for Linux in Windows 10:
1 |
sudo apt-get install minidlna |
MiniDLNA can be configured with the same settings for all users, or different settings for specific users. In both case you’ll need to edit /etc/minidlna.conf configuration file. In my case, I only changed or uncommented the following lines for global settings:
1 2 3 4 5 6 7 8 9 10 11 |
media_dir=/media/jaufranc/SEAGATE EXTENSION/Downloads/cnxsoft/Video_Samples media_dir=/home/jaufranc/Videos db_dir=/var/cache/minidlna log_dir=/var/log # Automatic discovery of new files in the media_dir directory. inotify=yes # Notify interval, in seconds. notify_interval=895 |
You can add as many media_dir lines as you want, and also add A, V or P letter to separate Audio, Video, and Photo media type. For example:
1 2 3 |
media_dir=A,/home/user/Music media_dir=P,/home/user/Pictures media_dir=V,/home/user/Videos |
Please note that minidlna daemon (minidlnad) will automatically scan subdirectories, so they don’t need to be specified.
Now that we have modifed the configuration, let’s restart it:
1 |
sudo service minidlna restart |
The Wiki on Ubuntu linked in the introduction also mentions to run the following command to rebuild the database:
1 |
sudo service minidlna force-reload |
However, while I could find my new UPnP server in Kodi, there were no files at all, and the log shows the same error message over and over:
1 2 3 |
[2016/08/16 11:05:49] upnphttp.c:1052: warn: HTTP Connection closed unexpectedly [2016/08/16 11:05:54] upnphttp.c:1052: warn: HTTP Connection closed unexpectedly [2016/08/16 11:05:59] upnphttp.c:1052: warn: HTTP Connection closed unexpectedly |
eventually the command:
1 |
sudo minidlnad -R |
fixed the issue. But that’s not exactly the right way to fix it as it assumes root is running the daemon.
A better way if you’re going to have a decidated server is probably to set the ownership of media files to minidlna with a command like:
1 |
sudo chown minidlna:minidlna media_dir -R |
So how do you play videos from your DLNA/UPnP server in Kodi 16.1? Go to Videos->Files, and select Add videos…
Kodi should like your UPnP / DLNA servers. In my case FX8350:root, which correspond to the hostname or friendly_name in the hostname, and to the user, normally minidlna. Select the server, than Browser Folder, or Videos, and click OK.
I’ve shot a short video showing how to setup UPnP devices in Kodi, and compare SAMBA and DLNA performance by playing the same video file in Kodi 16.1 Android through SAMBA and UPnP/DLNA.
You’ll notice the video played from the SAMBA server starts much faster, but buffers several time during playback, while the video played from MiniDLNA server on the same PC will buffer data longer at start, and always fill the buffer fast enough to avoid bufferring.
I took Conky screenshots for another video showing the traffic shape for both SAMBA with relatively constant speed (6600 KB/s to 7400 KB/s) and DLNA which shows very high bitrate (>10000 KB/s) to fill the buffer the first time, and then play consistently around 6400 to 6800 KB/s.
Of course switching from SAMBA to DLNA won’t do miracles, but if you notice a few buffering while playing videos in SAMBA, switching to DLNA/UPnP may resolve the issue. You can also keep the best of both world, for example using SAMBA to download/copy files, and DLNA to play them back.

Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011.
Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress