XBMSP

From XBMC4Xbox
Jump to navigation Jump to search

The XBMS Protocol

XBMC's network-protocol is specificly designed to stream audio, video and pictures. XBMSP (XBMC Media Stream Protocol) or XBMS for short is one of the easiest and most functional ways to stream media from your PC to XBMC. Your shares are configured using a user-friendly server-program on your PC and can be used without any additional configuration to XBMC, although you are able to create source links to individual shares if you so desire.
In order to use this method, you need to download and install CCXGui. There are two versions available, the full version and lite. The lite version is newer and more up to date, although it limits you to a single share, whereas the full version does not enforce a limit.

How to configure XBMS in XBMC

Simple Configuration for Novice Users

XBMS can be used with no additional configuration by simply selecting the XBMSP Network Share (Auto Discover) source which is included in Pictures, Videos and Music by default. When you select this source, XBMC should display all of your shares that you set up on your PC and you are able to browse through them as though all of the files were stored locally on the Xbox.

Advanced Configuration

With a few simple additions to Sources.xml, you can vastly improve the functionality of your shares. By adding sources that point to the individual shares, your can browse directly to them from Pictures, Videos and Music.
For general information regarding sources, see Media Sources. In order to set up your sources you need to know the IP address of your PC.
Like all sources, XBMS sources need to contain two pieces of information:
  1. The <name> tag - This indicates what XBMC will display as the name of the source
  2. The <path> tag - This indicates where the information is actually located

For the purpose of these examples, I will use 192.168.1.100 as the IP address of the PC where the shares are located. For your configuration, simply substitute the IP address of your computer.

Configuring your Main XBMS Source

You will want to configure your main XBMS source. In doing so, you create a source that will display all of the shares on your PC. To do so, simply add this source:
Note that you will need to add this source under Pictures, Videos and Music in order to make it appear in all of those.
<xml>
  <source>
    <name>XBMSP Network Share</name>
    <path>xbms://192.168.1.100:1400/</path>
  </source>
</xml>

Linking Directly to your Shares

As an example, we will add a source directly to our XBMS music share in Music. Simply add the following to the Music section of Sources.xml:
Notice that we added the name of the share that we set up in CCXGui to the end of the path. This tells XBMC to navigate directly to that share.
<xml>
  <source>
    <name>Music</name>
    <path>xbms://192.168.1.100:1400/music</path>
  </source>
</xml>

How to configure CCXGui on your Windows computer

For the purpose of this tutorial, use the full version of CCXGui.
Step 1 - When you launch CCXGui for the first time, you will see a screen that looks like this:
Mainwindow.png
Sharesadded.png
Step 2 - In order to share folders, you can either add them using the Add Share button, or you can simply drag and drop the folders onto the GUI. If you are sharing folders, the program will automatically name the shares for you, although you will have to name shared drives yourself. In order to change the name of your shares, highlight them and press F2. As you can see, I have shared a combination of folders and drives. This way, I can set up sources to individual folders in order to browse my media collection more easily in XBMC, but I will also be able to browse the entire drives.
Step 3 - Now, you need to restart the service in order to begin using the shares. Simply click the Stop NT Service Button twice and you should get a confirmation that the server is running. The next step is to test the shares in order to ensure that they are operational. Run the Test Server utility and you should get something that looks like this:
Assuming that all of the shares that you set up appear in the utility, your PC is good to go and you're ready to start setting up XBMC to see the shares.
Testserver.png
Step 4 - If you have a firewall running on your Windows PC that is sharing the folders configure it allow the xbms traffic (local port 1400 by default).

How to configure ccxstream on your Linux/UNIX/BSD/POSIX computer

Install a ccx-server or deamon (like ccXStream (for Linux)) or ccXStream (for UNIX/BSD/POSIX) on your Linux computer/server, and configure it to share folder/folders.
Note: The 2 given links didnot work when i tried it, maybe you have to google to find what you are looking for.
The ccxstream server source includes a program 'ccxtest' which can be used to check the daemon is operating correctly. It is built along with the ccxstream server when you build the program from source. If you installed via a package such as RPM or deb, then check the contents to see it it was included.
To test simply run 'ccxtest', by default it will connect to locahost port 1400 so unless you changed the port or are connecting from a remote system it should connect to the server, display the connection parameters and list the shared resources in the root folder. They 'help' to get a list of commands you can use.

How to build/compile ccxstream on Solaris

The current ccxstream source package on sourceforge does not build on Solaris. To fix, edit the Makefile and change the linker libraries from:


LDFLAGS+=-lreadline -ltermcap
to
LDFLAGS+=-lnsl -lsocket -lresolv -ltermcap
Also, Solaris does not define the symbol INADDR_NONE so if you wish to build cxxtest you will need to edit ccxclientconn.c and add the following
#ifndef INADDR_NONE
#define INADDR_NONE ((unsigned long) -1)
#endif
After the line #include "ccxclient.h"