If you have an XBOX 360 and you’re not using the media capabilities your not completely using your XBOX. The 360 is an excellent way to bring the media on your PC to your living room. Today I’m going to walk you through how to stream video to your 360 using uShare on a computer running linux. It doesn’t need to have very high specs, mine only has a Pentium 4 running at 1.6Ghz with 768 Megs of ram and it streams flawlessly.
Here’s what we’ll need to get started.
- XBOX 360
- Spare Computer with Ubuntu Linux Installed (With as much Hard Drive space as you feel necessary, I have 500 Gigs installed in mine )
- uShare (ver 1.1a)
- Ethernet cable from your Spare computer to your XBOX 360
OK? Now lets get this thing done
First we need to add the GeeXboX package repository to apt because this is where we’re going to get the uShare packages from. To do this we need to open a terminal window and type
sudo gedit /etc/apt/sources.list
We want to add the following lines to the end of this file
##GeeXboX package repository
deb http://www.geexbox.org/debian/ unstable main
Make sure to save this file.
Now from the terminal type the following command to update the apt cache and install ushare
sudo apt-get update; sudo apt-get install ushare
Once the uShare binary is installed you need to edit the ushare.conf file to do this type
sudo gedit /etc/ushare.conf
here’s an example ushare.conf
# /etc/ushare.conf
# uShare UPnP Friendly Name (default is 'uShare').
USHARE_NAME=VIDEOSERVER
# Interface to listen to (default is eth0).
# Ex : USHARE_IFACE=eth1
USHARE_IFACE=eth0
# Port to listen to
USHARE_PORT=49153
# Port to listen for Telnet connections
USHARE_TELNET_PORT=1337
# Directories to be shared (space or CSV list).
# Ex: USHARE_DIR=/dir1,/dir2
USHARE_DIR=/home/user/xbox360
# Use to override what happens when iconv fails to parse a file name.
USHARE_OVERRIDE_ICONV_ERR=yes
# Enable Web interface (yes/no)
ENABLE_WEB=yes
# Enable Telnet control interface (yes/no)
ENABLE_TELNET=no
# Use XboX 360 compatibility mode (yes/no)
ENABLE_XBOX=yes
# Use DLNA profile (yes/no)
# This is needed for PlayStation3 to work (among other devices)
ENABLE_DLNA=no
The main items in this file are
- “USHARE_NAME” is the display name of your share
- “USHARE_IFACE” is the network interface uShare should listen on
- “USHARE_PORT” this is the port the ushare server listens on. Make sure this is set to 49153
- “USHARE_DIR” This needs the full path of the folder with your media.
- “ENABLE_WEB” This turns on the web interface make sure this is set to yes
- “ENABLE_XBOX” This is what enables XBOX 360 compatibility. Make sure it’s set to yes
Save this file.
Now simply start uShare by typing
sudo /etc/init.d/ushare start
You should see a line similar to the following.
* Starting uShare UPnP A/V & DLNA Media Server: ushare
...done.
Now we need to visit the web interface at
http://your.servers.ip.address:49153/web/ushare.html
From this web page click the “Refresh Shares …” button
Now if you switch on your XBOX 360 you should be able to browse to the “media” blade then go to the “Video” option if you press “X” you should see the text you entered into “USHARE_NAME” in the ushare.conf file. You can now browse and stream compatable videos (divX, xvid, mp4, mov, mpeg, avi) from your Linux server to your XBOX 360.
If you’re not able to see the uShare share from your XBOX you may need to edit the following file
sudo gedit /etc/init.d/ushare
Find the following lines
start-stop-daemon --start --quiet --background --oknodo \
--make-pidfile --pidfile $PIDFILE \
--exec $DAEMON -- $USHARE_OPTIONS
And change them to
start-stop-daemon --start --quiet --background --oknodo \
--make-pidfile --pidfile $PIDFILE \
--exec $DAEMON -- $USHARE_OPTIONS --xbox
Now restart uShare
sudo /etc/init.d/ushare stop
sudo /etc/init.d/ushare start
And you should now be able to see your share from the XBOX 360
Have fun and happy viewing!
Send any feedback to liam.macinnes (at) gmail (dot) com
What distro of linux are you using? I’m currently using an old PIII 600, 512MB ram with 2x 250MB IDE hard drives running windows home server to stream content to my Xbox 360. I’m having more than a few issues with windows home server so I figured I’d give linux a go as a file/media server. Any advice you have would be great.
As long as you’re not doing any transcoding (Your videos are already n a format the Xbox understands) then you should be good.
Whoops forgot the main question you asked. I’m using Ubuntu Server
Will this work on other Linux distros, I’m thinking about getting a Linux NAS box.
uShare should work with other distros. But you’ll probably need to find packages for your distro of choice or compile it from source if none are available. From what I understand a lot of NAS devices actually have a DLNA server built in (so they may or may not be xbox 360 compatable out of the box. So a search on the NAS device youre looking at you may not even need to install uShare on it.
You are the shit, thanks a million I followed your instructions and it works perfect, nice goin bro!
Great guide! Installs like a charm.
I’m not sure if you can offer any insight, but if there is a ‘problem’ with a video while I’m watching it on my Xbox360, the uPnP server becomes unresponsive and the Xbox doesn’t ’see’ it anymore.
From there, I can restart the uShare service, restart the Xbox, and it still doesn’t work.
If I reboot the computer and the Xbox, it starts working again.
Might you know what is causing that?
Thanks!
When I try to go to the web interface, I get a network timeout because it takes too long to respond. What am I doing wrong? Thanks for your help.
Hi Jim.
Make sure that the AppArmor in Ubuntu isn’t blocking oyu from connecting. To test this try turning it off trying the web interface and turning it back on again.
turn apparmor off: sudo /etc/init.d/apparmor stop
turn ustream off: sudo /etc/init.d/ushare stop
turn ustream on: sudo /etc/init.d/ushare start
Try the web interface.
turn apparmor back on if this didn’t help: sudo /etc/init.d/apparmor start
What version of Ubuntu are you using?
People who talk like this should be forced to wear ankle monitors.
Just a note, wlan0 connections didn’t seem to work, I couldn’t get the xbox to recognize my uShare until I switched to a wired (eth0)connection. No laptop love
.
Addendum to my last comment.. might not want to moderate it… It seems*cough* I was wirelessly connected to someone elses secured network.. >.>
@ubidubi ……? ok sure. Not quite sure what you mean but OK your opinion.
@LiamM: Thank you, your instructions worked like a charm first try, My 46 inch Samsung HDTV and I now rate you among one of our Ubuntu heroes. No more using WMP11 through VirtualBox just to watch my movies, It appears ushare doesn’t work with jpeg images but it is still a very worthwhile tool.
Hey, thanks for the instructions. I got the ushare up and running in Ubuntu and the xbox can see it, but when I try to play a .avi video on my xbox through ushare it says it can’t play that content because it is not supported. This exact video worked when streaming it from XP. So keeping in mind that I’m fairly new to linux, any ideas as to what I did wrong? Some thoughts I have are, I FTPed the file from xp to linux, could that in some way change the file? Or, do I need some sort of codecs for linux?
got this working but can’t share more than one directory. tried space separated and csv but no joy. even adding more via web interface didn’t help.
Also sharing music just shows a long list of songs regardless of whether you choose album, songs or genre.
any ideas on sharing more than one directory?
Thanks
You are awesome man……. Worked great for me…. Linux / Ubunto is the shizzznit.
Works great with one little hitch…….. i have two 360’s and using this method i can only stream media to one of them at a time. If one is running its connection gets bumped when i start watching media on the other. Any ideas?
Thanks for the tutorial! I have one question, however – is it possible to do this on a LAN (rather than running an Ethernet cable direct from the server to the Xbox) – meaning can I hook up both the server and the Xbox to a router and make this work that way?
Thanks again!
@Jon I’m not sure about that. As far as I know the 360 itself does that actual decoding (and thus playing) of the video file anything that plays from Windows “should” play from uShare in linux. Keep in mind that I don’t have a windows install currently to test this from.
@Tony I ran into the same issue with the music files. I’ll be revisiting this in the new year when I have some time to see if I can iron out some of the nagging issues like that.
@mediaguy I don’t think uShare locks the stream in any way. How are your 360’s wired up to the Linux PC? Depending on the video you may be trying to pull too much data from the server at once. I’ll do some testing with this as well and try to find a solution for you in the new year.
@Ally Certainly in fact that’s very similar to the setup I’m using myself. This should work just as well with the 360 and computer both hooked up to the same router or switch.
both xboxes and the pc are connected to a router ( wired ). I was able to sream movies to 3 xboxes at a time while using wmp 11 on a vista system so i highly doubt that i’m trying to pull to much at a time only using 2 now.
@mediaguy Very odd. I’ll have to see if I can get my hands on another 360 and see if I can replicate the issue
Hooray, I was able to get it to work! However, I did have to do two edits;
Changed ENABLE_XBOX to USHARE_ENABLE_XBOX
Edited /usr/share/mime/packages/freedesktop.org.xml – changed the following:
to
Oddly enough, I was unable to get videos ripped to AVI using Handbrake to work. Does anyone know of a possible workaround or better yet, a fix?
Sorry, didn’t realize part of my last post didn’t show up. In the abovementioned file, there is a line like this one:
mime-type type=”video/x-msvideo”
but with pointy brackets. You will need to change it to this:
mime-type type=”video/x-ms-wmv”
(But leave the pointy brackets)
>Now if you switch on your XBOX 360 you should be able to browse to the “media” blade then >go to the “Video” option if you press “X” you should see the text you entered into >“USHARE_NAME” in the ushare.conf file.
I think I did everything right up to this point, but when I turn on this XBOX, I don’t see this “media blade” you are referring to. When I switch through the menus on the Dashboard, I still only have My Xbox, from there I have the Video Library, but it’s only looking to connect to a Windows-based PC.
Has anyone been able to stream .mp4 video files to the XBox? Renaming mp4 files to m4v or .mov seems to work (mostly) but is there any reason it can’t stream .mp4 files? I know it’s initially set to recognize them as audio files, but is there a way to get UShare to recognize them as Video?
@ iceolate
That would because you are using the New Xbox Experience. The latest patch that changed the entire interface quite alot. UNfortunately I can’t help you with what the equivalent menu option would be, though I suspect there will be one as you sugested, in the ‘My Xbox’ tab.
I only recently got my Xbox 360 and am just starting to look at getting this set up. Perhaps someone else can comment on whether anything here changes with respect to the NXE patch?
nothing reallly changes with respect to the NXE patch. just look at the my video library in the my xbox section. it now shows all the sources automaticly instead of having to press x to switch sources
Instructions worked perfectly. I’m on Ubuntu 8.10 and I had to make the change mentioned to the ushare start script but, after that, it worked like a dream.
Thanks
@ dean –
i will give it another shot again. i had to reinstall my OS, so i’ll see what happens this weekend. thanks.
i followed every step and i couldnt connect worth stit and i use ubuntu
I’m running Ubuntu 8.04 Hardy and I have an XBox 360. The instructions worked pretty well – thanks very much! Based on a bit of reading on other sites I made a few changes that others might find useful.
First, according to this page some of the variables in the default configuration file are incorrect: https://bugzilla.redhat.com/show_bug.cgi?id=436605. Based on this I prepended “USHARE_” to the variables that don’t already have it.
Second, rather than editing /etc/init.d/ushare directly, I created a new file called /etc/default/ushare and added the following line:
USHARE_OPTIONS=”–xbox”
This is more the “Ubuntu way” and ensures that the xbox option does not disappear when you upgrade the package in the future.
Thanks again! Mike.
Two days of troubleshooting and websites and still nothing. I’m on Ubuntu 8.04. When I test PC connection, I can see “VIDEOSERVER” but it will never connect. Have tried “USHARE_” edit and “–xbox” edit. I have even tried using a different router between Ubuntu PC and Xbox. I’ve also tried various port forwarding within the router. Not sure what options are left.
LiamM, Thanks a lot. I just set this up per your directions. It took me longer to read the walk through than it did to get it going. I’m running it on Intrepid Ibex server and it works great!!
Dude you are the man! I had my Xbox playing videos from my file server in about 5 minutes. A million thanks to you!
@Hausner
try turning off the firewall
i heard ushare uses multicast and sometimes its blocked buy the firewall
Newbie here.
When I tried to put:
##GeeXboX package repository
deb http://www.geexbox.org/debian/ unstable main
into the source file and save it. It said I don’t have permission. Check path.
@ Justin how did you open it? did you start gedit (or your editor) with sudo?
sudo gedit /etc/apt/sources.list
or
sudo vi /etc/apt/sources.list
or
sudo nano /etc/apt/sources.list
You have to do this as your user (unless you logged in as root) won’t have access to write to this file.
This is the best thing ever works even better than my xp box does
I have a problem straming avi files >1,5 Gb. Xbox can not open it…
Seems theres not a repository on that site for amd64.
Guess I’ll have to build it from source, or stick with Mediatomb perhaps.
Built it from source, and built a .deb for amd64 for it. Seems to work, not set it up yet.
Very well done, sir. I wish I would have had this guide a year or so ago when I set my uShare server up. It worked so well I forgot the name of the server. Googled for it and you were the first result. Thank you for making this guide.
Great Tutorial. Here’s some info I found worked for me.
I’m running Mandriva 2009. I had to add USHARE_ to all the variables missing them in the /etc/ushare.conf file.
Also, created one folder to host all my shares, ex: USHARE_DIR=/home/sinister6/ushare.
Placed symbolic links in them pointing to the actual shared folders, ex:
ln -s /mnt/win_c3/Movies/ Movies01
ln -s /mnt/win_c4/Music/ Music01
Restart ushare
Forgot to mentioned, I have .mp4 movies that wouldn’t play. I had to change the extension to either .mov or .avi, both new extensions worked.
Hopes this helps.
Tuturial worked great thanks.. The web connection didnt seem to work but runs great over my LAN and WIFI to my XBOX 360 which is all I wanted…
I Believe i did everything correct, I am able to see my shares in the web interface but they are not showing up on my xbox360,
when i go to edit /etc/init.d/ushare i dont see the lines
start-stop-daemon –start –quiet –background –oknodo \
–make-pidfile –pidfile $PIDFILE \
–exec $DAEMON — $USHARE_OPTIONS
Instead i have this
#!/bin/sh
#
# ushare This shell script takes care of starting and stopping ushare.
#
# chkconfig: – 75 25
# description: uShare UPnP A/V Media Server.
#
# Source function library.
. /etc/rc.d/init.d/functions
# Source networking configuration.
. /etc/sysconfig/network
# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 0
OPTIONS=”"
prog=ushare
DESC=”UPnP A/V Media Server”
[ -r "/etc/ushare.conf" ] && . /etc/ushare.conf
# abort if no shared directory is defined
[ -z "$USHARE_DIR" ] && exit 0
start() {
echo -n $”Starting $prog: ”
daemon –user ushare $prog -d -D
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/$prog
}
stop() {
echo -n $”Stopping $prog: ”
killproc $prog
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$prog /var/run/ircd.pid
}
reload() {
echo -n $”Reloading $prog: ”
killproc $prog -HUP
RETVAL=$?
echo
}
# See how we were called.
case “$1″ in
start)
start
;;
stop)
stop
;;
status)
status $prog
RETVAL=$?
;;
restart)
stop
start
;;
I tryed inputing the value xbox in Options but it didnt yeild any results.
Also i am running Fedora 10 idk if thats going to make a difference
would I be able to take some one elses /etc/init.d/ushare and over write mine with it?
change the line:
daemon –user ushare $prog -d -D
to:
daemon –user ushare $prog -x -d -D
It worked great, had to disable the firewall to get it to go, I’ll mess with firewall permissions to git-er-up and solid with the firewall on – but for now I’m elated. So since I decided it only appropriate to give props to LiamM for putting this together, I threw on some music, which is also sharing quite nicely now. But, here’s whats up, the movie titles are showing up in my music titles. I have thought about it briefly and tried a few things to separate the files in the ushare.conf, it didnt really work out as I had hoped. Its ok I guess, I’ll just have to remove the X’s from some of the titles, unless you have some other ideas
I got it working, but my xbox seems to display all the “artists” very unorganized. When I share the same media from my windows box it appears very organized on the xbox artist list for music.
Now under artists (using the ushare server) it displays all the songs under Artists, instead of a list of bands/artists…
any thoughts here?
thanks for the tutorial!
Hey came across your post today… works great for me, but I was doing it before, on ClarkConnect and on Fedora. However, I also have the problem with mutiple xboxes… did that get solved?
I saw that development has ceased on uShare, but it works great as is, other than not being able to stream to more than one xbox360 at once, and the Xbox360 being picky. I streamed to multiple machines with Zune and Windows Media Player and Windows Home Server without issue.
I’ve got a few extra mobo/proc/ram combos laying around. I might just replace the xboxes with a GeeXbox or something.
Hi Everyone,
What a awsome guide, it works great on my pc, ushare starts up and can see my dir folder, I can also see my ushare folder on my xbox, but I have one issue where I cannot see any files on the xbox, it keeps saying there are no videos located ? also the same for music and pics ? What could I check to see why it wont see any files ?
Thanks
Insem
Please help me!!!!
I am using Fedora 10, when I run this command;
sudo gedit /etc/init.d/ushare
I am not getting these lines in the file
start-stop-daemon –start –quiet –background –oknodo \
–make-pidfile –pidfile $PIDFILE \
–exec $DAEMON — $USHARE_OPTIONS
So I can’t do this;
And change them to
start-stop-daemon –start –quiet –background –oknodo \
–make-pidfile –pidfile $PIDFILE \
–exec $DAEMON — $USHARE_OPTIONS –xbox
My Xbox won’t see my media server
Mine seem to work fine, is there any way of restricting the films by age rating on certain xbox’s as i don’t ready want my 11yr old watching Horror films on his xbox upstairs…
Thanks
Andy
Hi, it’s great mp3 worked… but I can’t play video, of any kind they told to do upgrade but I aldready update my xbox… Any hint?!
Maybe someone can help me out here…I had no problem setting this up, thanks to your very explicit instructions. However, when I go to the video blade, go to the server file, and access the folders within the server file, it claims that I have no video files present. They are all in .avi format, but it doesn’t inform me that I can’t play them, it just claims that there are not any files present. Any suggestions?
Oh, I also should have mentioned, it can read and play .avi files perfectly fine when I plug my jump drive into the usb port.
Further developments include :
All of my HIMYM video files show up under the music library, but (obviously) do not play.
When I put Abandon Kansas (music) on there, stopped and restarted the ushare server, the files show up, but when i select them, it merely clicks, but does nothing. Please, if someone could find out why the Xbox gods hate me…
If your 360 is having trouble seeing the videos try renaming the extension to mov or m4v from whatever it is (eg .avi, .divx, etc).
From what I understand the music problem is that uShare does not handle the metadata of your files. I’ve been searching for a solution….but nothing yet.
I can get my Xbox to run the music/video files just fine. However, every time I fire up the computer and xbox I have to go through the same procedure as described above. When I`m sudo apt-get update I get this response:
Err http://www.geexbox.org unstable/main Packages
404 Not Found
W: Failed to fetch http://www.geexbox.org/debian/dists/unstable/main... 404 Not Found
E: Some index files failed to download, they have been ignored, or old ones used instead.
Everything before updates ok.
Afterwards when I try to go to my servers ip adress etc it comes up with 404 not found. Has this something to do with the fact that it can`t update properly?
Any help would be appreciated.
Ubuntu 9.04
It looks like geekbox disabled their Ubuntu repository. But it looks like Ubuntu has added it to their Universe repository. Make sure it's enabled by following the instructions on the Ubuntu Guide http://ubuntuguide.org/wiki/Ubuntu:Jaunty#Add_Ext... Then you can continue on skipping the
"sudo gedit /etc/apt/sources.list
We want to add the following lines to the end of this file
##GeeXboX package repository
deb http://www.geexbox.org/debian/ unstable main"
and continue on with "sudo apt-get update; sudo apt-get install ushare"
I hope this fixes everything for you.
It looks like geekbox disabled their Ubuntu repository. But it looks like Ubuntu has added it to their Universe repository. Make sure it's enabled by following the instructions on the Ubuntu Guide http://ubuntuguide.org/wiki/Ubuntu:Jaunty#Add_Ext... Then you can continue on skipping the
"sudo gedit /etc/apt/sources.list
We want to add the following lines to the end of this file
##GeeXboX package repository
deb http://www.geexbox.org/debian/ unstable main"
and continue on with "sudo apt-get update; sudo apt-get install ushare"
I hope this fixes everything for you.
If you're using iptables put this in your config file replacing 192.168.1.100 with the ip of your xbox360:
#allow xbox360 access
-A INPUT -s 192.168.1.100/32 -j ACCEPT
Just wanted to say thanks. I had tried various things to make this work. Adding the –xbox option to the startup script works perfectly. Thanks.
Hi there guys, I just wanted to holla and tell you that I found a great site. For those of you who don’t want to spend stupid amounts of money on ppv fees to watch UFC 108 online FREE in full high definition. Far Better then spending $55.95 on it eh?
Hey there peeps, I just wanted to holla and tell you that I found a great site. For those of you who don’t want to spend stupid amounts of money on pay-per-view fees to watch UFC 108 online FREE in full high definition. Far Better then spending $55.95 on it eh?
THIS IS FANTASTIC, I DON'T NEED WINDOWS ANYMORE, FINALLY. Thanks a ton
THIS IS FANTASTIC, I DON'T NEED WINDOWS ANYMORE, FINALLY. Thanks a ton
Thanks, worked great for me! I also had to edit the init script and add the "–xbox" option but once I did that it worked wonderful!
This howto was all I needed to make it happen!
Thank you – worked awesome
CentOS 5.4 x64, edited /etc/init.d/xbox and changed OPTIONS=”" to OPTIONS=”–xbox”, xbox is quite happy now …
Thanks for going over this. It took me 1 hour but I got this working on my ubuntu machine. After installing I did not like the fact that uShare does not auto-update the files in the folder structure. I found something called PS3MediaServer (http://code.google.com/p/ps3mediaserver/). This works with Xbox 360, is incredibly easy to set-up, has more features, and has a nice gui for customizing. This took me 15 minutes to get running and works like a champ.