Running flumotion on Ubuntu

Flumotion is a streaming server product developed by Fluendo. Flumotion runs in a distributed environment, where the video capture, encoding, and transmission can be run on different computers, so the load can be better balanced.

I have found it rather difficult to find an introductory help on how to get flumotion set up and running, so I’ll share my insights with you here.

Imagine a setup where you want machine A to capture and encode the video from a DV camera, machine B relaying the stream onto the Internet to several clients, and machine C getting the stream off machine B and writing it to disk. The software that you’d need to run on each of these machines is the following:

  1. Run flumotion-manager on machine B. flumotion-manager is the central component of a flumotion streaming setup, which connects up all the components and makes sure that everything works. It has to run before anything else can happen.
  2. Run flumotion-worker on every machine where you want work to be done, i.e. on machine A, B, and C. The workers are demons that connect to the manager and wait for commands to do something.
  3. Run flumotion-admin on any machine to set up the details of the flumotion streaming setup.

So, here are the commands, that I use to get it running using the default setup:

  1. flumotion start
    (which will run flumotion-manager -D -n default /etc/flumotion/managers/default/planet.xml for you).
  2. flumotion-worker -u pants -p off &
    (yes, these are the default user name and password :).
  3. flumotion-admin
    (and go through the GUI setup wizard).

… and you should be up and going with either your DV camera, your Webcam or your TV tuner card. Watch the cute smileys go happy! And connect to the stream using your favorite media player that can decode Ogg Theora/Vorbis, e.g. totem, vlc, xine.

I’ve found online man pages of flumotion-manager, flumotion-worker, and flumotion-admin helpful, because the flumotion package that my Ubuntu dapper installation installed did not have them. You might actually be better off using Jeff Waugh’s packages for each of the flumotion commands if you are setting up on Ubuntu Dapper. Another hint: use the library theora-mmx to get better performance.

Flumotion is an excellent solution to setting up video streaming. I have found the following conferences have used it before:

  • GUADEC, June 2006, http://guadec.org/GUADEC2006/Live
  • DebConf, May 2006, http://technocrat.net/d/2006/5/12/3384
  • Linux Audio Conference, May 2006, http://lac.zkm.de/2006/streaming.shtml
  • Washington DC LUG, http://dclug.tux.org/webcast/

3 thoughts on “Running flumotion on Ubuntu

  1. Please Help!
    I am new user of this software

    root@HP-500B:~# flumotion start
    Traceback (most recent call last):
    File “/usr/bin/flumotion-manager”, line 45, in
    boot.boot(PROGRAM_PATH, gst=False, gtk=False, installReactor=False)
    File “/usr/lib/flumotion/python/flumotion/common/boot.py”, line 269, in boot
    main = reflect.namedAny(path)
    File “/usr/lib/flumotion/python/flumotion/twisted/reflect.py”, line 54, in namedAny
    topLevelPackage = __import__(trialname)
    File “/usr/lib/flumotion/python/flumotion/common/package.py”, line 58, in import_module
    locals, fromlist)
    File “/usr/lib/python2.7/ihooks.py”, line 408, in import_module
    m = self.load_tail(q, tail)
    File “/usr/lib/python2.7/ihooks.py”, line 490, in load_tail
    raise ImportError, “No module named ‘%s'” % mname
    ImportError: No module named ‘flumotion.manager.main.main’
    Traceback (most recent call last):
    File “/usr/bin/flumotion-worker”, line 45, in
    boot.boot(PROGRAM_PATH, gtk=False, gst=False, installReactor=False)
    File “/usr/lib/flumotion/python/flumotion/common/boot.py”, line 269, in boot
    main = reflect.namedAny(path)
    File “/usr/lib/flumotion/python/flumotion/twisted/reflect.py”, line 54, in namedAny
    topLevelPackage = __import__(trialname)
    File “/usr/lib/flumotion/python/flumotion/common/package.py”, line 58, in import_module
    locals, fromlist)
    File “/usr/lib/python2.7/ihooks.py”, line 408, in import_module
    m = self.load_tail(q, tail)
    File “/usr/lib/python2.7/ihooks.py”, line 490, in load_tail
    raise ImportError, “No module named ‘%s'” % mname
    ImportError: No module named ‘flumotion.worker.main.main’
    root@HP-500B:~#

    1. @Karim I haven’t looked at Flumotion in a while, but it looks like you have an ImportError: No module named ‘flumotion.worker.main.main’.

Comments are closed.