Kodi Community Forum

Full Version: XBMC Video Server: stream/download your library contents
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
To those who have updated their software recently and have been using the "Cache API results" setting and are now getting a strange long error like http://pastebin.com/aVM5ffPV, clearing the cache from the menu fixes it. It was a wholly unforseen issue and I will fix it as soon as I get around to doing some coding. Sorry for the inconvenience.

I've posted some low-hanging fruit as issues on Github if anyone feels like he/she wants to contribute to the project. Pull requests are more than welcome! If you don't feel like contributing code (who could blame you?), also feel free to create issues for features you'd like to see or if you find any bug.

I've been working on an acceptance test suite (haven't pushed the branch to Github yet), mostly for fun since I'm taking a software testing course in school and thought I'd try to apply some of the knowledge gained to my own projects. With a little bit of luck I'll be able to find some more bugs that no one has reported yet.
@negge if you are a student you may be interested in Google Summer of Code 2014


We are specifically looking for projects like a web server project.

This could be a chance to improve the project, get paid, and integrate it officially into XBMC (maybe)
I was hoping you could help me figure out why I cant access the server from outside my network. I have the server and xbmc installed on the same machine and am able to access it on my network. I have the backend host set to my ip address on the machine. I went into my router and forwarded two ports to that ip address.the 80 and 8080 one a HTTP (80) and UDP/TCP (8080). I try to access the server using this address http://IP adress/xbmc-video-server/ and it comes up as a blank page outside my home network. I am a novice at this what step did I miss.I read something earlier that i may have to create a dns name, if so where is the best place to do this. The other problem I have been having on my home network is that for some files when i click the download link it trys to play it in the browser but with no sound. Other movies it just tries to download it. I know frodo doesnt do backend streaming but what is causing this?
Make sure you're using your external address when attempting to access it from the internet, e.g. instead of e.g. The latter will only work inside your home network.
Ok, I can now log into the server from outside the network using the external IP.
Which IP address do i list in the xbmc server host name settings the 192.168.x.xx or the external IP. Also using XBMC Frodo what can i expect to work as far as streaming is concerned?
Just to chime in here for those trying to get this to work on a single Windows machine. For the record, I thought negge's setup instructions were very clear and spot-on; I was able to access the video server from within my network without issue. Problems arose when trying to get in from the outside.

-- You need to be running XBMC Gotham. The install instructions explain this.

-- XBMC webserver must be ON. It's under Settings, Services. Pick a port, doesn't matter much. I chose 1222.

-- Make sure you can get xbmc-video-server to work correctly by navigating to localhost/xbmc-video-server. If you can't get this far, you probably did something wrong in the install instructions. Follow them exactly.

-- If you navigate to yourip:1222 (or whatever port you picked above; remember, you need to open this port in your firewall), you will get the XBMC webserver interface. Which works great. But this interface uses your XBMC master logon credentials, and controls your main XBMC interface. That's not a problem if you are the only one wanting to control this; you can completely skip xbmc-video-server and Apache and all this other stuff if that's the case. xbmc-video-server lets you specify accounts, that can each control an instance of XBMC, that will not affect the operation of your master XBMC.

-- Moving on. In xbmc-video-server backend settings, configure your hostname as your IP address, and your port as the port you picked above.

-- Probably a good idea to not have Apache listening on port 80 (the default). That's a busy port. Pick a random port, preferably something high, like 36331. Don't go over 65500. Open this port in your firewall.

-- Go to your XAMPP install directory (for me, c:\xampp), and navigate to apache\conf. Making sure Apache is not started, Edit the "httpd.conf" file. Find "Listen 80", change to "Listen 36331" (or whatever you picked as your Apache port above). Save.

-- Go into the "extra" folder. Edit "httpd-xampp.conf". Scroll to the bottom, find the "# New XAMPP security concept" block. Delete that entire block. Save.

-- From XAMPP control panel, go to Config in upper right, then "Service and Port Settings". Change "80" to the Apache port you picked above. I'm not entirely sure this step is necessary, but can't hurt.

-- Start Apache. Confirm it is running without displayed errors.

-- Navigate to yourip:yourapacheport/xbmc-video-server/ (so, for example, ), and provided you did everything above correctly, you should be in.

Hope this helps someone!

So i can a access the server from both the local network and external networks with the server and xbmc on the same computer.
I have forwarded two ports 80 and 8080 in my router for my internal IP for that computer.
Here is my backend configuration
Hostname: external IP
Port: 8080

I also have Frodo which seems to be semi working

Here are the issues I would like to still solve

#1) I would like to make a dns to access the server from both inside and outside the local network so instead of having to type in external IP/xbmc-video-server/ each time I can type the DNS in instead. What is the best way of going about this and what should my hostname be.

#2) I'm running this on frodo which semi works. I realize that it is supposed to be run on gotham but I'm not sure I want to mess around with the nightly builds even though its frozen now. Currently on Frodo none of the M3u files work when you click watch and open in XBMC. Oddly on some movies if you click download they open up in browser and start playing sometimes with sound other times without sound. Even then the playback is slow and choppy and takes a long time to buffer. Is there anyone on here with gotham and this running that could tell me the best case scenario for streaming, how well does this work as far as buffer times and accessibility of videos. As I stated before it sort of works with frodo but if someone would definitively say that it works great with gotham i would make the jump to gotham.
(2014-02-22, 06:34)willburstyle06 Wrote: [ -> ]So i can a access the server from both the local network and external networks with the server and xbmc on the same computer.
I have forwarded two ports 80 and 8080 in my router for my internal IP for that computer.
Here is my backend configuration
Hostname: external IP
Port: 8080

No idea about what works/doesn't work with Frodo. Gotham works fine on my system.

If you want a "shortcut" to an IP address, you edit the hosts file in your windows/system32/drivers/etc directory. But it's a lot easier to just create a Favorite / Bookmark / whatever in your browser.

(2014-02-22, 01:59)willburstyle06 Wrote: [ -> ]Ok, I can now log into the server from outside the network using the external IP.
Which IP address do i list in the xbmc server host name settings the 192.168.x.xx or the external IP. Also using XBMC Frodo what can i expect to work as far as streaming is concerned?

Streaming in general should work fine, it's seeking that doesn't seem to work all the time. This is something that have been improved in Gotham and that's the main reason why I recommend people to use Gotham instead of Frodo in combination with this software.

@willburstyle06: you're almost there now if you're able to log in both from your internal network and from the internet. You now have two choices. One is to configure a reverse proxy (see the README) and use "localhost" as the backend address. The other is to register a dynamic DNS name and point it to your external IP (e.g. you.no-ip.org ->, then edit the system32/drivers/etc/hosts file on the machine that runs XBMC Video Server and point you.no-ip.org to the internal address instead of the external (e.g. instead of There are some posts further back in this thread that explains the process in more detail (search the thread for "hosts file").

It's really quite saddening to see so many people struggling getting this thing to work over the internet. Alas there's nothing I can do about it, this is the way computer networking works - one has to know the basics in order to make services accessible from the internet. What really complicates things in most cases is the use of NAT on home networks (your machine's internal address isn't the same as its external), which sadly isn't going to go away before IPv6 becomes widespread.
Just a couple of items on my wishlist:

-- In grid view, titles that are longer than 3 lines distort the grid. Example: http://www.acaeum.com/images/img1.jpg

-- Option (or default?) to not sort "the" in the title?

-- Specials (S00E01, etc) are correctly shown in the "Specials" section under the Seasons, but the episodes are also listed under Season 1, at the top. So right now, it shows S00E01, then S01E01, S01E02, etc.

@FoulFoot: could you add these as issues on Github? Otherwise I'll most likely forget them.

  • the size of the CSS has been decreased slightly, which should decrease the time it takes to open the application the first time
  • fixed a cosmetic issue where dropdown menues in the filter were slightly smaller than text inputs
  • added ability to ignore article when sorting
  • fixed the previously mentioned issue where an update to the underlying JSON-RPC client would break the application if "cache API results" was enabled
  • it is no longer possible to switch to a backend if that backend is unconnectable
  • downloading a file using the download links now properly opens a dialog, thus forcing the browser not to attempt to play it in-browser. The filename is also properly set to the original.
  • improve logging when failing to configure a backend. If for some reason you're unable to figure out why adding a backend doesn't work, check the logs.
  • allow access to the system log before the first backend has configure (to be able to check for additional clues)
  • use a slimmed down menu before the application is configured
  • you will now be redirected to the settings page the first time you configure a backend

Follow the usual upgrade instructions on Github to get the latest code.
The server works seamlessly on the local network and can stream any file without almost any buffering.
On computers trying to access the server from outside the local network I'm getting mixed results. The buffering is extremely slow in most cases and some files don't either don't work or stream for a second after a long wait then cut out. I uploaded 3 log files to Pastebin with 3 movies that had different results when trying to stream. As a side note all 3 files streamed fine on the local network and do not have any corruption.

http://pastebin.com/YNTB0zw7 (xbmcafewgoodmen) streamed perfectly with almost no buffer
http://pastebin.com/jSdLPCRu (xbmc300)- buffered for around 20-30 seconds played 2-3 seconds then stopped stream
http://pastebin.com/SncaPgud (xbmc8mile)- buffered for around 30 seconds then error message came up

Could someone please help me look at these and see what I possibly could be doing wrong. What is the average buffer time for other people who have set up their servers and how well can you guys stream blu ray mkv files?
What is your upload bandwidth? You'll need quite a lot of bandwidth to stream BD rips.