Setting up the UPnP Server on FreeNAS for streaming Media to the XBox
FreeNAS is a multi-functional NAS server that not only serves out files for Windows, Mac and Linux machines but can also be used in the home entertainment market. As part of the build of FreeNAS, it comes with a UPnP server called Fuppes. Fuppes can advertise itself on the network and is automatically picked up by the XBox as it has a built in UPnP Client. Fuppes will not only stream out content that the XBox can decode but also has the ability to transcoding a video or audio stream which cannot be played by default.
Before you use this solution, you will need to set up, configure and load content onto the FreeNAS servers. See the guides below for this:-
The first thing you will need to do is create a folder for your UPnP database on you NAS server. Using your explorer window, connect to your FreeNAS windows share (in these guides this is \\freenas\FreeNAS_Files). From here, you can create a new directory call UPnPServer. If you have content which cannot be directly played on an Xbox, you will need to enable transcoding and for this to work, it will need a temporary directory to store cached files. In this example, it has been called Temp and has been created on the same level as the UPnPServer folder.
From the Menu, click on Services and then UPnP.
There are lots of steps to do here but it is relatively simple.
- Enable the UPnP server by checking the box
- Give the FreeNAS server a friendly name here so you will know which server it is from the XBox. N.B. The most important bit here is the ":" (colon). If there is no colon after the name, even though the XBox will pick the server up, the XBoX will say "No videos found".
- Enter the name of the UPnP Server folder you created in Step 1. The local equivalent of the \\freenas\FreeNAS_Files\UPnPServer Windows share is /mnt/Files/UPnPServer on FreeNAS.
- Add in your Content folders you wish to share out. This example has 3 folders, Music, Photos and Videos, all of which already have content in and can be seen on the folder structure on Step 1
- Set your default profile as Microsoft XBox 360. This will tell FreeNAS what multimedia the XBox understands and which types it has to first transcode before playing.
- Enable the Transcode option and set a temporary folder for the cache (created in Step 1). You can now press Save and Restart and this will kick off your UPnP service.
- To access the Fuppes UPnP services, click on the web link shown here (http://192.168.1.250:49152). I found I had to go in here to get new content working correctly.
If your content is not showing up as expected, you will need to go into Fuppes to kick off a scan of the content.
Click on Options on the left hand menu and then by clicking on either Rebuild database or Update database, it does seem to go through and add all the content to Fuppes but it wasn't until I clicked on Rebuild virtual container did the content show up correctly on the Xbox.