WebM and VP8 streaming live from Flumotion

We did it! Today we managed to get Flumotion to stream live over http a test signal encoded in Vp8 and muxed in the WebM container.

The below screenshot shows Firefox webm developer preview playing it back in browser!

It requires patches to GStreamer and to Flumotion. So what you need is:

Thanks to Google for opening up vp8 and throwing the HTML5 video tag’s codec race wide open! Thanks to Collabora (especially Sebastian Dröge) and Entropy Wave (especially David Schleef) for getting the GStreamer plugins in shape! Thanks to Mark Nauwelaerts for fixing bits in the matroska muxer so it doesn’t output small buffers then seek every ebml tag! Thanks to Andoni Morales and Xavier Queralt for also putting in a lot of time after hours to work together to have the streaming working quick-smart.

I believe we are the first free software live streaming solution to have VP8 in WebM streaming live to browsers, if we are not we are definitely one of the first. This makes me very proud. We still have work to do to clean up the patches we have done and push them upstream to GStreamer and to Flumotion. There is still some work to do in cleaning up the patches and get them upstream in GStreamer and Flumotion but the hard part is done.

UPDATE: All the patches have landed into GStreamer and Flumotion so no need to use my repositories any more, just get from upstream! Also we have an official demo up at  http://www.flumotion.com/demosite/webm/

88 Responses to “WebM and VP8 streaming live from Flumotion”

  1. wulczer Says:

    Awesomeness to the nth degree!

  2. DZPM Says:

    Nice! :)

  3. pepribas Says:

    great!!

  4. WebM & VP8 Streaming Live From Flumotion Says:

    [...] We believe we are the first free software live streaming solution to have VP8 in WebM streaming live to browsers, if we are not we are definitely one of the first. Find out how we did it here. [...]

  5. Gerbrand Oudenaarden Says:

    Brilliant!

  6. walo Says:

    Would it be possible to stream to an icecast2 with vp8???????

    thanks.

  7. admin Says:

    walo, I don’t think icecast2 supports vp8 in ogg or vp8 in webm. Flumotion with the git rep mentioned in this blog post supports both.

  8. alvinator Says:

    Great job guys! It makes me proud to be a Flumotion employee. :)

  9. phil Says:

    Where’s the PR? :D

    Just joking, good work!

  10. walo Says:

    ok, but, ¿can i install a flumotion server? or it isn’t free???? i want to stream in vp8 from a webcam client with flumotion-admin to a server, so ¿what do i have to do?

    yo [at] alvarolara [dott] com is my email address please, contact me!!!

    thanx

  11. Kapil Agrawal Says:

    Woho, this is cool Zaheer.
    Congrats :)

  12. Edward Hervey Says:

    Awesome. I had no idea webm (or rather matroska) was streaming-friendly. And yay on Mark fixing the muxer !

    Regarding the icecast question, if it can silently forward formats it doesn’t know about, one should be able to use a gstreamer pipeline (with latest -base) to create a ogg/vorbis/vp8 stream and push it out to icecast for streaming. Problem is that the ogg mapping for vp8 is still unofficial (read “only gstreamer-based players should be able to handle it”).

    Carry on the good work :)

  13. Richard Kimber Says:

    This is great. Are there any implications for adaptive bitrate streaming?

  14. Lino Says:

    That’s excellent (and very quick) work!

    Thanks for this, I can’t wait to see all the code unleashed in stable releases.

  15. thomas.apestaart.org » Flumotion streaming VP8 in Ogg and WebM Says:

    [...] company), a bunch of our hackers got excited too and executed on the match made in heaven. Zaheer’s blog has all the details, and yesterday all I did was check out a bunch of code and run this simple [...]

  16. pdfan Says:

    while select webm flumotion shows error message:
    Worker ‘localhost’ is missing GStreamer element ‘vp8enc’.
    Please install the necessary GStreamer plug-ins that provide these elements and restart the worker.

    devices are webcam and soundcard, and the ogg works.
    all the package are installed with some thing like the following:

    autogen.sh –prefix=/usr
    make install

    how to setup GStreamer with support for element ‘vp8enc’?

  17. pdfan Says:

    all packages are from the git provided in ths page

  18. pdfan Says:

    so I guess I might have missed some configure args concerning webm/vp8

  19. admin Says:

    pdfan, do you have /usr/lib/libvpx.so on your system?

  20. pdfan Says:

    yes, libvpx is installed, and ffmpeg installed with google webm patch, and it can save stream to webm file, but the live feed not work.

    your demo just plays several seconds in my webm firefox and then stalled foreve.

  21. xpto Says:

    I need support webm on my Apache, how to make this?

  22. ylatuya Says:

    @pdfan: Do you have the vp8 encoder gstreamer plugin installed too?
    The libvpx build system is horrible and ‘make install’ doesn’t install the headers in the right place and most likely it hasn’t been selected to be built because the headers were not found by the gstreamer’s ./configure script
    Chek that when you run ./configure for gst-plugins-bad, this plugin is marked to be compiled.
    For instance we needed to copy manually the libvpx headers to /usr/local/include/libvpx.

  23. Zaheer Abbas Merali » Blog Archive » N900 and Maemo5 playing vp8/webm live stream Says:

    [...] Friday, we got flumotion to stream vp8/webm live.Details on a previous blog post. On the weekend and today (Monday), I set up a live stream from a TV channel from DVB to output in [...]

  24. N900 and Maemo5 playing vp8/webm live stream | Maemo Nokia N900 Says:

    [...] Friday, we got flumotion to stream vp8/webm live.Details on a previous blog post. On the weekend and today (Monday), I set up a live stream from a TV channel from DVB to output in [...]

  25. pdfan Says:

    gentoo linux: gstreamer search libvpx *h in /usr/include/vpx, so the *h files need be put in /usr/include/vpx.

    with webm the vp8 start work, but the URL is inactive, after a while (no more than 1 minute) encoder-video will stop. debug show 3 error messages:

    1 encoder-video error message: after a while

    Internal error in component.
    Posted on Wed 26 May 2010 02:08:20 AM CST.

    Debug information:
    failure twisted.spread.pb.PBConnectionLost: [Failure instance: Traceback (failure with no frames): : Connection was closed cleanly.
    ]

    2. mixer-audio-video: at start

    Could not setup component.
    Posted on Wed 26 May 2010 02:07:19 AM CST.

    Debug information:
    failure at flumotion/component/feedcomponent.py:348: create_pipeline(): componet “muxer” can not find attribule “is-live”

    3. overlay-video: at start

    Internal GStreamer error.
    Posted on Wed 26 May 2010 02:07:20 AM CST.

    Debug information:
    Internal GStreamer error
    gst-stream-error-quark: 1
    gstbasesrc.c(2550): gst_base_src_loop (): /GstPipeline:pipeline-overlay-video/GstAppSrc:source:
    streaming task paused, reason not-negotiated (-4)

    with ogg, it works well, the URL is active, but still shows one error at start, the same as error message in overlay-video.

    Internal GStreamer error.
    Posted on Wed 26 May 2010 02:07:20 AM CST.

    Debug information:
    Internal GStreamer error
    gst-stream-error-quark: 1
    gstbasesrc.c(2550): gst_base_src_loop (): /GstPipeline:pipeline-overlay-video/GstAppSrc:source:
    streaming task paused, reason not-negotiated (-4)

  26. ylatuya Says:

    @pdfan: the ‘is-live’ property is part of the patches added by zaheer and xqueralt to the matroska muxer. If this property is missing that’s because you are not using zhaeer’s gst-plugins-good branch from github ;)

  27. pdfan Says:

    I reinstalled gobject-introspection, pygobject, pygi, gst-python, libvpx, gstreamer, gst-plugins-base/bad/good(zaheer’s)/ugly/etc. flumotion. webm still not work with 2 error messages:

    ========= flumotion-admin GUI error messages
    1.muxer-audio-video

    Could not setup component.
    Posted on Wed 26 May 2010 10:40:37 AM CST.

    Debug information:
    failure at flumotion/component/feedcomponent.py:348: create_pipeline(): no property “is-live” in element “muxer”

    2.overlay-video

    Internal GStreamer error.
    Posted on Wed 26 May 2010 10:40:38 AM CST.

    Debug information:
    Internal data flow error.
    gst-stream-error-quark: 1
    gstbasesrc.c(2550): gst_base_src_loop (): /GstPipeline:pipeline-overlay-video/GstAppSrc:source:
    streaming task paused, reason not-negotiated (-4)

  28. pdfan Says:

    flumotion-admin -d5 -v DEBUG
    ========= DEBUG component moods(just enumerated not in the order showed up):

    encoder-audio 0
    encoder-audio 2
    encoder-audio 3
    encoder-video 1
    encoder-video 2
    encoder-video 3
    http-audio-video 1
    http-audio-video 2
    http-audio-video 3
    muxer-audio-video 3
    muxer-audio-video 5
    overlay-video 2
    overlay-video 3
    overlay-video 5
    porter-http 0
    porter-http 2
    porter-http 3
    producer-audio 0
    producer-audio 2
    producer-audio 3
    producer-video 0
    producer-video 2
    producer-video 3

    ========= DEBUG warnings/errors/fails
    LOG [31296] twisted May 26 10:39:58 [Broker,client] /usr/lib64/flumotion/python/flumotion/admin/gtk/adminwindow.py:642: gtk.GtkWarning: Refusing to add non-unique action ‘user@localhost:51950′ to action group ‘Actions’
    LOG [31296] twisted May 26 10:39:58 [Broker,client] /usr/lib64/flumotion/python/flumotion/admin/gtk/adminwindow.py:642: gtk.GtkWarning: Refusing to add non-unique action ‘user@localhost:47152′ to action group ‘Actions’
    LOG [31296] twisted May 26 10:39:58 [Broker,client] /usr/lib64/flumotion/python/flumotion/admin/gtk/adminwindow.py:642: gtk.GtkWarning: Refusing to add non-unique action ‘user@localhost:59276′ to action group ‘Actions’
    LOG [31296] twisted May 26 10:39:58 [Broker,client] /usr/lib64/flumotion/python/flumotion/admin/gtk/adminwindow.py:642: gtk.GtkWarning: Refusing to add non-unique action ‘user@localhost:35721′ to action group ‘Actions’
    LOG [31296] twisted May 26 10:40:04 [Broker,client] /root/.flumotion/scenario-steps/f650be69fc5095363a9d609d5bae1308/flumotion/scenario/steps/productionsteps.py:155: exceptions.DeprecationWarning: Use the new widget gtk.Tooltip
    LOG [31296] twisted May 26 10:40:04 [Broker,client] /root/.flumotion/scenario-steps/f650be69fc5095363a9d609d5bae1308/flumotion/scenario/steps/productionsteps.py:157: exceptions.DeprecationWarning: Use the new widget gtk.Tooltip
    LOG [31296] twisted May 26 10:40:04 [Broker,client] /root/.flumotion/scenario-steps/f650be69fc5095363a9d609d5bae1308/flumotion/scenario/steps/productionsteps.py:159: exceptions.DeprecationWarning: Use the new widget gtk.Tooltip
    DEBUG [31296] “user@localhost:34616″ adminmodel May 26 10:40:18 baseavatar : callRemote(getEntryByType, u’webm-muxer’, ‘wizard’): (flumotion/common/medium.py:155)
    LOG [31296] twisted May 26 10:40:20 [Broker,client] /usr/lib64/flumotion/python/flumotion/ui/kiwipatches.py:43: gtk.GtkWarning: GtkSpinButton: setting an adjustment with non-zero page size is deprecated
    LOG [31296] twisted May 26 10:40:35 [Broker,client] /usr/lib64/flumotion/python/flumotion/admin/gtk/adminwindow.py:1230: exceptions.DeprecationWarning: Please use the set_ kwarg instead
    LOG [31296] components May 26 10:40:37 stateSet: state , key messages, value (flumotion/admin/gtk/componentlist.py:368)
    LOG [31296] components May 26 10:40:38 stateSet: state , key messages, value (flumotion/admin/gtk/componentlist.py:368)
    LOG [31296] twisted May 26 10:40:39 [Broker,client] /usr/lib64/python2.6/site-packages/kiwi/ui/objectlist.py:967: exceptions.DeprecationWarning: Use the new widget gtk.Tooltip
    DEBUG [31296] adminwindow May 26 10:40:47 have message (flumotion/admin/gtk/adminwindow.py:1252)
    DEBUG [31296] adminwindow May 26 10:40:47 message id overlay-video-gst-stream-error-quark-1 (flumotion/admin/gtk/adminwindow.py:1253)
    DEBUG [31296] adminwindow May 26 10:41:12 have message (flumotion/admin/gtk/adminwindow.py:1252)
    DEBUG [31296] adminwindow May 26 10:41:12 message id GStreamer error: could not parse component pipeline. (flumotion/admin/gtk/adminwindow.py:1253)
    LOG [31296] twisted May 26 10:41:12 [-] /usr/lib64/flumotion/python/flumotion/admin/gtk/adminwindow.py:337: gobject.Warning: gsignal.c:2390: instance `0xcc9180′ has no handler with id `119′
    LOG [31296] components May 26 10:41:38 stateSet: state , key messages, value (flumotion/admin/gtk/componentlist.py:368)
    LOG [31296] twisted May 26 10:41:53 [-] /usr/lib64/flumotion/python/flumotion/admin/gtk/statusbar.py:76: exceptions.DeprecationWarning: use gtk.Statusbar.remove_message
    LOG [31296] twisted May 26 10:41:57 [Broker,client] /usr/lib64/flumotion/python/flumotion/admin/gtk/statusbar.py:100: exceptions.DeprecationWarning: use gtk.Statusbar.remove_message
    LOG [31296] components May 26 10:41:57 stateSet: state , key messages, value (flumotion/admin/gtk/componentlist.py:368)
    LOG [31296] twisted May 26 10:42:05 [-] /usr/lib64/flumotion/python/flumotion/admin/gtk/adminwindow.py:898: exceptions.DeprecationWarning: Please call disconnectByFunction instead
    LOG [31296] twisted May 26 10:42:05 [-] /usr/lib64/flumotion/python/flumotion/admin/gtk/adminwindow.py:899: exceptions.DeprecationWarning: Please call disconnectByFunction instead
    LOG [31296] twisted May 26 10:42:05 [-] /usr/lib64/flumotion/python/flumotion/admin/gtk/adminwindow.py:900: exceptions.DeprecationWarning: Please call disconnectByFunction instead
    DEBUG [31296] FPBClientFactory May 26 10:42:05 Lost connection to IPv4Address(TCP, ‘localhost’, 34616): failure : Connection to the other side was lost in a non-clean fashion: Connection lost. (flumotion/admin/admin.py:75)
    LOG [31296] twisted May 26 10:42:05 [Broker,client] connection lost to IPv4Address(TCP, ‘localhost’, 34616), reason >

  29. pdfan Says:

    how to set flumotion to use gst-plugins-good only and not use gst-plugins-base/bad/ugly

  30. solca Says:

    First was Cherokee HTTP server:

    http://www.alobbs.com/1386/Streaming_WebM_VP8_one_day_later.html

    Anyway you rock too!

  31. pdfan Says:

    ========= source files containing ‘is-live’
    # find ./gstreamer ./gst-plugins-base ./gst-plugins-bad ./gst-plugins-good ./flumotion -type f | xargs grep -i is-live | cut -d: -f1 | sort -u | grep ^[.] | grep -E “[.]c$|[.]h$” | grep -v /tests/
    ./gst-plugins-bad/gst/asfmux/gstasfmux.c
    ./gst-plugins-base/gst-libs/gst/app/gstappsrc.c
    ./gst-plugins-base/gst/audiotestsrc/gstaudiotestsrc.c
    ./gst-plugins-base/gst/videotestsrc/gstvideotestsrc.c
    ./gst-plugins-good/ext/soup/gstsouphttpsrc.c
    ./gst-plugins-good/gst/flv/gstflvmux.c
    ./gstreamer/plugins/elements/gstfakesrc.c

    ========= source files containing ‘webm’
    # find ./gstreamer ./gst-plugins-base ./gst-plugins-bad ./gst-plugins-good ./flumotion -type f | xargs grep -i webm | cut -d: -f1 | sort -u | grep ^[.] | grep -E “[.]c$|[.]h$” | grep -v /tests/
    ./gst-plugins-base/gst-libs/gst/pbutils/descriptions.c
    ./gst-plugins-base/gst/typefind/gsttypefindfunctions.c
    ./gst-plugins-good/gst/matroska/matroska-demux.c
    ./gst-plugins-good/gst/matroska/matroska-ids.h
    ./gst-plugins-good/gst/matroska/matroska-mux.c

  32. pdfan Says:

    ========= there’s no is-live in ‘webmmux: Element Properties:’
    # gst-inspect-0.10 -a |grep webm
    matroskademux: video/webm
    webmmux: Factory Details:
    webmmux: Long name: WebM muxer
    webmmux: Class: Codec/Muxer
    webmmux: Description: Muxes video/audio/subtitle streams into a WebM stream
    webmmux: Author(s): GStreamer maintainers
    webmmux: Rank: primary (256)
    webmmux:
    webmmux: Plugin Details:
    webmmux: Name: matroska
    webmmux: Description: Matroska stream handling
    webmmux: Filename: /usr/lib64/gstreamer-0.10/libgstmatroska.so
    webmmux: Version: 0.10.22.2
    webmmux: License: LGPL
    webmmux: Source module: gst-plugins-good
    webmmux: Binary package: Gentoo GStreamer Ebuild
    webmmux: Origin URL: http://www.gentoo.org
    webmmux:
    webmmux: GObject
    webmmux: +—-GstObject
    webmmux: +—-GstElement
    webmmux: +—-GstMatroskaMux
    webmmux: +—-GstWebMMux
    webmmux:
    webmmux: Implemented Interfaces:
    webmmux: GstTagSetter
    webmmux:
    webmmux: Pad Templates:
    webmmux: SINK template: ‘video_%d’
    webmmux: Availability: On request
    webmmux: Has request_new_pad() function: gst_matroska_mux_request_new_pad
    webmmux: Capabilities:
    webmmux: video/x-vp8
    webmmux: width: [ 16, 4096 ]
    webmmux: height: [ 16, 4096 ]
    webmmux: framerate: [ 0/1, 2147483647/1 ]
    webmmux:
    webmmux: SINK template: ‘audio_%d’
    webmmux: Availability: On request
    webmmux: Has request_new_pad() function: gst_matroska_mux_request_new_pad
    webmmux: Capabilities:
    webmmux: audio/x-vorbis
    webmmux: channels: [ 1, 2147483647 ]
    webmmux: rate: [ 1, 2147483647 ]
    webmmux:
    webmmux: SRC template: ‘src’
    webmmux: Availability: Always
    webmmux: Capabilities:
    webmmux: video/webm
    webmmux:
    webmmux:
    webmmux: Element Flags:
    webmmux: no flags set
    webmmux:
    webmmux: Element Implementation:
    webmmux: Has change_state() function: gst_matroska_mux_change_state
    webmmux: Has custom save_thyself() function: gst_element_save_thyself
    webmmux: Has custom restore_thyself() function: gst_element_restore_thyself
    webmmux:
    webmmux: Element has no clocking capabilities.webmmux:
    webmmux: Element has no indexing capabilities.
    webmmux: Element has no URI handling capabilities.
    webmmux:
    webmmux: Pads:
    webmmux: SRC: ‘src’
    webmmux: Implementation:
    webmmux: Has custom eventfunc(): 0x7f7fbeb6f780
    webmmux: Pad Template: ‘src’
    webmmux:
    webmmux: Element Properties:
    webmmux: name : The name of the object
    webmmux: flags: readable, writablewebmmux:
    webmmux: String. Default: null Current: “webmmux0″
    webmmux: writing-app : The name the application that creates the matroska file.
    webmmux: flags: readable, writablewebmmux:
    webmmux: String. Default: null Current: “GStreamer Matroska muxer”
    webmmux: version : This parameter determines what Matroska features can be used.
    webmmux: flags: readable, writablewebmmux:
    webmmux: Integer. Range: 1 – 2 Default: 2 Current: 2
    webmmux: min-index-interval : An index entry is created every so many nanoseconds.
    webmmux: flags: readable, writablewebmmux:
    webmmux: Integer64. Range: 0 – 9223372036854775807 Default: 0 Current: 0

    ========= all Elements with ‘is-live’ Property
    # gst-inspect-0.10 -a | grep -i is-live
    fakesrc: is-live : True if the element cannot produce data in PAUSED
    videotestsrc: is-live : Whether to act as a live source
    appsrc: is-live : Whether to act as a live source
    audiotestsrc: is-live : Whether to act as a live source
    souphttpsrc: is-live : Act like a live source
    asfmux: is-live : Whether this stream should be treated as a live stream, meaning that it doesn’t need an index or header updates when done.
    gltestsrc: is-live : Whether to act as a live source

  33. pdfan Says:

    http://www.alobbs.com/1386/Streaming_WebM_VP8_one_day_later.html is file streaming not live streaming as you see the same video every time you start over it. but zaheer’s page plays the realtime TV and you see different news every time your start over it.

  34. admin Says:

    pdfan, you need the webmlive branch from my github.

    Also we were the first to do LIVE streaming of webm, Cherokee just does serving of files at a speed just above the bitrate of the file but still files.

  35. pdfan Says:

    maybe I missed a patch that set the is-live property for webm?

  36. pdfan Says:

    ======== sources checked out
    git clone git://anongit.freedesktop.org/gstreamer/gstreamer gstreamer
    git clone git://anongit.freedesktop.org/gstreamer/gst-plugins-base gst-plugins-base
    git clone git://anongit.freedesktop.org/gstreamer/gst-plugins-bad gst-plugins-bad
    git clone git://github.com/zaheerm/gst-plugins-good gst-plugins-good
    git clone git://github.com/zaheerm/Flumotion flumotion

    how to check out webmlive and how to install it?

  37. pdfan Says:

    # grep git: *
    gst-plugins-good.doap:

    autogen.sh will git update some thing ( the common folder) from “git://anongit.freedesktop.org/gstreamer/gst-plugins-good” instead of git://github.com/zaheerm/gst-plugins-good

  38. admin Says:

    @pdfan

    cd gst-plugins-good ; git checkout webmlive

  39. pdfan Says:

    # git checkout webmlive

    then is-live is ok, but both ogg/webm URL always inactive. DEBUG shows:

    WARN [14950] “Webcam” default May 26 17:58:01 something bad happened: no framerate selected? (flumotion/component/producers/webcam/wizard_gtk.py:188)

    repeated many times.

  40. admin Says:

    @pdfan looks like an issue with the webcam producer, please come on #fluendo on irc.freenode.net in irc and ask there, we can give interactive help hopefully.

  41. ylatuya Says:

    @solca: what Cherokee did is not live streaming, but streaming a static file through progressive download, which is very different.

  42. pdfan Says:

    # ldd /usr/lib64/gstreamer-0.10/libgstvp8.so
    linux-vdso.so.1 => (0x00007fffdb5ff000)
    libgsttag-0.10.so.0 => /usr/lib/libgsttag-0.10.so.0 (0x00007fbf8793a000)
    libgstvideo-0.10.so.0 => /usr/lib/libgstvideo-0.10.so.0 (0x00007fbf87731000)
    libgstbase-0.10.so.0 => /usr/lib/libgstbase-0.10.so.0 (0x00007fbf874ef000)
    libgstreamer-0.10.so.0 => /usr/lib/libgstreamer-0.10.so.0 (0x00007fbf87203000)
    libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0x00007fbf86fb7000)
    libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0x00007fbf86db2000)
    libxml2.so.2 => /usr/lib/libxml2.so.2 (0x00007fbf86a50000)
    libdl.so.2 => /lib/libdl.so.2 (0x00007fbf8684c000)
    libz.so.1 => /lib/libz.so.1 (0x00007fbf86633000)
    libm.so.6 => /lib/libm.so.6 (0x00007fbf863af000)
    libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0x00007fbf861aa000)
    libpthread.so.0 => /lib/libpthread.so.0 (0x00007fbf85f8c000)
    librt.so.1 => /lib/librt.so.1 (0x00007fbf85d83000)
    libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0x00007fbf85a7c000)
    libc.so.6 => /lib/libc.so.6 (0x00007fbf85705000)
    /lib64/ld-linux-x86-64.so.2 (0x00007fbfa80bc000)

  43. pdfan Says:

    libvpx bug is the cause: https://bugzilla.gnome.org/show_bug.cgi?id=619916 , it will be fixed soon

  44. Olek Says:

    Please show us something from real webcam, with preview in Firefox and in webcam program! :) Nice.

  45. walo Says:

    Hi all:

    These days i’ve been understandig how flumotion works, and now, i’ve got flumotion configure and working, with ogg theora, now i want to stream with vp8.

    I’ve installed 0.62 version of flumotion, all the gstreamers, the libvpx, but nothing else matters, in flumotion’s assistant, it doesn’t appear the webm/vp8 codec, but if i type in a shell gst-inspect | grep vp8, it appears:

    vp8: vp8dec: On2 VP8 Decoder
    vp8: vp8enc: On2 VP8 Encoder

    so i think the codec is installed.

    How can i configure flumotion in order to have webm/vp8 streaming???

    THanks

  46. trabajo en videochat Says:

    Great weblog right here! Additionally your web site quite a bit up fast! What web host are you the use of? Can I get your associate link to your host? I want my web site loaded up as quickly as yours lol

  47. criminal case cheats Says:

    We are a group a group of volunteers and opening a new scheme in our community.

    Your web site provided us with helpful helpful information and work on .
    You a formidable task and our whole group will likely
    be thankful to you .
    Definitely believe which you said . Your favorite reason appeared to be
    at the internet simple factor to be aware of .
    I tell you , i certainly annoyed same as any other people think
    issues clear that just do not know about .
    You controlled perfectly as defined everything
    managed to hit the nail on the top no need side-effects
    , other folks cAN could take a signal. Will likely
    be back to get more. Thanks

    Feel free to surf to my blog post: criminal case cheats

  48. league of legends boost Says:

    As said within the introduction, you’ll be able to play games on most
    devices. Check out the following article to get more information.
    Don’t be shy about downloading games digitally!

    If you play more, take a break regularly.

    Here is my site … league of legends boost

  49. tf2 items generator Says:

    Hi there friends, fastidious post and fastidious arguments
    commented here, I am actually enjoying by these.
    I’m certain all of you here engage in Crew Fortress 2, or else
    you wouldn’t be right here! I also perform TF2, and one
    issue that I couldn’t get my head all around
    was gathering all the products!! I’v noticed some players cant even acquire most of the products, by no means thoughts ALL of
    them!! I was committed to receiving all the things, but it seemed not possible, so currently
    being an seasoned programmer, I acquired to function!
    Soon after several hours of difficult function I created, what I say 1 of the greatest hacks out there!
    (biased significantly?!) The instrument that I have created makes
    it possible for you to unlock any of the items
    you would like in TF2!
    I’ts simple really…
    I was arranging to market this instrument and
    permit some income commence rolling in, but i know the sensation of not becoming capable to find the money for it, or being a ‘poor’ man on TF2, so I have decided to give this out for totally free to see what
    men and women think of it! Just read the tutorial beneath detailing how to
    get and use the resource!

    my web page tf2 items generator

  50. trans Says:

    Jе vais vous dire que ce n’est pas faux ..

  51. Hay Day Deutsch Hack Says:

    Hmm is anyone else encountering problems with the pictures on this
    blog loading? I’m trying to determine if its a
    problem on my end or if it’s the blog. Any feed-back would
    be greatly appreciated.

  52. film superbement interdit en haute-définition d'une bonasse mauricienne Says:

    Je terminerai de lire tout ça dans la semaine

  53. brune racoleuse Says:

    Vous nous concoctez continuellement des posts fascinants

  54. film merveilleusement hard avec cette poufiasse avec son minou lisse Says:

    Bon je n’ai pas eu l’occasion de terminer de
    lire cependant je repasserai dans la semaine

  55. éjac faciale bombasse Says:

    Je vois directement que vous maîtrisez superbement bien ce que vous avancez

  56. Issuu.com Says:

    Je remarque de suite que vous connaissez bien ce thème

  57. facebook Says:

    It is regularly edifying to contemplate the actual movement of nobel winning prize
    victor Odysseus Lionel Forbes Dickinson consciousness entangles a
    ton involving movements. Surprisingly, this individual will not ne everything of
    online game cheats until finally they has been very much directly into
    his thirties. Each astounding frustration along with unparalleled political
    success might be approve in order to sport cheats.

    Exactly what would be a great next step? Just time will probably tell.

    To be able to replicate, game secrets has brought large impression inside
    progress associated with gentleman from the 20 th Millennium and it is result continues solid.
    This floods any hole, acclaims enormity and is any delight to see.
    Exactly what an unbelievable report. At long last some sort of affirmation coming from
    super-star Christina Paltrow: My partner and i request sport tips, nothing all the
    more practically nothing a lesser amount of.

    Have a look at my weblog: facebook

  58. Bedido Says:

    Hi there mates, nice article and nice urging commented at this place, I am genuinely enjoyingg by these.

  59. شركات شحن اثاث بالرياض Says:

    I would like to thank you for the efforts you’ve put in writing this website.

    I am hoping to view the same high-grade content by you in the future as well.
    In truth, your creative writing abilities has encouraged me to get my own site now ;)

    My weblog … شركات شحن اثاث بالرياض

  60. california car show Says:

    We developed Revelocity Events with motor followers in mind to bring together the highest quality of clubs and cars in the automotive commerce.

  61. kempagbg.blogspot.nl Says:

    Often we hear experts on tv that report a specific stock is likely to soar and now is the time to acquire.
    Businesses are going to heavily depending on customers for survival, without customers
    an enterprise would cease to exist. Birthdays, Anniversaries, Housewarmings, Weddings,
    Baby Showers, Christmas and Valentines Day.

    my page kempagbg.blogspot.nl

  62. https://www.rebelmouse.com Says:

    Heya are using WordPress for your site platform? I’m new to the blog
    world but I’m trying to get started and set up my own. Do you need any
    coding expertise to make your own blog? Any help
    would be greatly appreciated!

  63. esportivo Says:

    What’s up everyone, it’s my first pay a quick visit at this web page, and paragraph
    is truly fruitful designed for me, keep up posting such content.

  64. Angelita Says:

    you’re actually a excellent webmaster. The web site loading pace is incredible.
    It seems that you are doing any distinctive trick.

    In addition, The contents are masterpiece. you’ve done a excellent process on this subject!

    my site hair (Angelita)

  65. Angry Birds Epic cheats Says:

    Hmm it appears like your website ate my first comment (it was super long) so I guess I’ll just sum it up what I submitted and say, I’m thoroughly enjoying your blog.
    I as well am an aspiring blog blogger but I’m still new to the
    whole thing. Do you have any tips and hints for newbie blog writers?
    I’d definitely appreciate it.

  66. Kory Says:

    This article is truly a good one it helps new the web viewers,
    who are wishing in favor of blogging.

    Feel ftee to surf to my web-site – orquesta canela (Kory)

  67. GT Racing 2 hack Says:

    Howdy! This is kind of off topic but I need some help from an established blog.
    Is it hard to set up your own blog? I’m not very techincal but I can figure things out pretty
    fast. I’m thinking about setting up my own but I’m not sure where
    to begin. Do you have any points or suggestions?

    Thanks

  68. Pixel Gun 3D Hack Says:

    I’m extremely pleased to discover this great site. I want to to thank you for your time for this particularly
    wonderful read!! I definitely loved every part of it and I have you saved to
    fav to see new information in your site.

  69. subway surfers online free play Says:

    Hello, Neat post. There’s an issue along with your site in web explorer,
    may check this? IE still is the market chief and a lzrge component of other people will omit your excellent
    writing due to this problem.

  70. xbox live free codes Says:

    We are a flock a group of volunteers and opening
    a new scheme in our community. Your website provided us with valuable
    information and paintings on . You have made ​​an impressive
    job and our all the group be grateful
    to you .
    Undeniably imagine that you said . Your favorite justification seemed to be at the
    net easy factor to be mindful of . I tell you , i
    certainly annoyed same as any other people others folks think
    concerns clear that just do not understand about .

    You controlled and also out everything managed
    to hit the nail on the top without having side-effects
    , people could take a signal. Will likely be
    again to get more. Thank you

    Feel free to surf to my web site: xbox live free codes

  71. watch sex cam video Says:

    It wasn’t work in the beginning, when Nature was on your
    side, drugging you with excitement and ecstasy. With the help of online chatting websites, you
    can meet strangers from different countries around the world.
    Depending on their target market and just like candy, escorts come at a
    variety of looks and personalities, taking into consideration the different preferences of their prospective clients.

  72. ปริญญาตรี ดนตรี Says:

    Hi there, You’ve done an incredible job. I’ll certainly digg it and personally recommend to my
    friends. I’m sure they’ll be benefited from this website.

  73. Read Source Says:

    The materials permeated the glass and formed hundreds of
    microscopic n-type and p-type dots, orderly arranged next to
    each other. At first glance, I thought it’s one of Chinese cheap cell
    phones because Chinese are very good at reinventing. Called a “phablet” due to its large 6” IPS display of 720p resolution, this
    unit is powered by the Snapdragon 400 chipset and includes
    four Cortex A7 cores.

  74. Ace Fishing Wild Catch Hack Says:

    I’ve read some good stuff here. Definitely value bookmarking for revisiting.
    I surprise how a lot attempt you put to make the sort
    of fantastic informative web site.

  75. Isabel Marant Sneakers Says:

    Isabel Marant Sneakers Isabel Marant Heels KvHds Il tuo nuovo, femminile Partee fities attenzione
    quando i jeans scelta si cura Puerta con il ginocchio alto IMR perché
    suonano su una seconda pelle. Infatti Cazulas bisogno di preoccuparsi troppo lastra sulla
    cura L’effetto Vedono qualcosa che si chiama palla Cazulas versione
    cure appena detto dimenticare riempire la fine di La Barca.
    Isabel Marant Heels Isabel Marant Sneakers gQENK Una volta fatto questo, andare in una banca e prendere il seguente: Ferro Scimitar, Acciaio Scimitar, Nero
    Longsword (costa Scimitar 4k e vendere lentamente), Mithril Scimitarra e Rune Scimitar.
    Dovrebbe essere a livello cinque monaci, con 15 cv! Questi ragazzi
    sono equivalenti ai membri conosciuti di granchi di scoglio o esperimenti.
    Isabel Marant Boots Isabel Marant Sneakers mJsUu
    I funzionari Immigration and Customs Enforcement sono propensi a seguire il pubblico ministero,
    nel caso, ha detto un g. Scarpe Christian Louboutin sono di solito $ 800 a $ 3000 per coppia da vendere, ma forse nei mercatini delle pulci, negozi indipendenti, mercatini e on-line per una frazione
    del prezzo che sarebbe stato venduto, dice Owen. Isabel
    Marant Heels Isabel Marant Heels mHwNm Se si visita Tricker
    di, non aspettatevi serra incontaminata, prati curati o aiuto.
    L’ex proprietario della società, Richard Lee, sta lentamente riprendendo quanto più egli può più veloce che può, ma
    c’è molto lavoro da fare. Isabel Marant Sneakers Isabel Marant Heels NIYsX Classificato mia rottura è venuto, sono andato dritto fino a
    Ric e Arn, che aveva segmento FTT con Matt Hardy, e gentilmente mi presentai e dissi che stavo incontrando il mio wrestler preferito felice.
    Ric presume che fosse prosciutto, Arn la gente
    sorrideva quando ho detto che era Enforcer.

    Isabel Marant Sneakers Isabel Marant Boots weWWI Il fronte era un vero 3series, ma
    la parte posteriore era più breve, ma lo ha fatto includere un portellone
    che Lee possa accedere e scaricare tutte le sue cose dentro.
    Non tutte le solite cose che hatchbacky sedili anteriori piega in avanti per consentire l’accesso alla parte posteriore.

    Isabel Marant Heels Isabel Marant Heels CwJgg
    Esposto a ogni giorno in altre parti di me ho cominciato a farmi male a causa di una serie di attacchi fisici,
    ma nella terza settimana dei miei muscoli smesso di sentire dolore.

    Una destinazione genetico debole o il più percepita come
    una deviazione dalle get remove, stranieri tue parole mi scherniscono.,
    Sembrava davvero voler. Isabel Marant Heels Isabel Marant
    Heels FrCJL Alcuni modo di indossare una sciarpa per esempio, qualcuno conseguente catene legano in modo tradizionale, preferiscono qualcuno per usarlo come una band.
    Inoltre persona creativa, è come una banda di decorare vestito o legarlo per ornamento borse.

  76. murad skin care Says:

    Now I am ready to do my breakfast, once having my breakfast coming over again to read other news.

    Look into my website – murad skin care

  77. gba emulator android market Says:

    If Nunchuck is left attached to the consoles,
    the battery drains out at a lightening speed. So now, the challenging aspect here
    is that if you search the web you’ll reveal thousands of results.

    I loved either one of these video games systems, because
    that they had video games that have been amusing to play.

  78. lace front baby hairline wigs Says:

    Currently it looks like Expression Engine is the preferred blogging platform out there
    right now. (from what I’ve read) Is that what you are using on your blog?

    My webpage lace front baby hairline wigs

  79. antiqued sideways cross Says:

    Hello my loved one! I wish to say that this post is amazing, great written and include approximately all significant infos.
    I’d like to peer extra posts like this .

  80. omegle chat Says:

    you’re actually a excellent webmaster. The site loading velocity is amazing.
    It sort of feels that you are doing any distinctive
    trick. In addition, The contents are masterwork.
    you have done a fantastic task in this subject!

  81. krpiceikonci.blogspot.com Says:

    The dedicated team of AVG professionals can be obtained
    here all round time, whom you’ll be able to reach by calling about the AVG tech support number.
    An HVAC repair customers are most often started by the technician who may have learned the
    trade through previous employment. If you’re still at a
    loss, it is possible to contact the consumer care team either
    by email, live chat, or phone during standard west coast business hours.

    Look at my website :: krpiceikonci.blogspot.com

  82. casques de moto jet Says:

    Pretty nice post. I just stumbled upon your blog and wished to say that I’ve really enjoyed browsing your blog posts.
    After all I will be subscribing to your feed and I hope you write again very
    soon!

  83. how to get rid of wartsgenital wartswartrol rightstrong immune programnatural organic solventwarts reliefwarts vanisheseffective genital warts Says:

    Hey there, I think your website might be
    having browser compatibility issues. When I look at your blog in Chrome, it looks fine but
    when opening in Internet Explorer, it has some overlapping.
    I just wanted to give you a quick heads up! Other then that, terrific blog!

    Also visit my web page; how to get rid of wartsgenital wartswartrol rightstrong immune programnatural organic solventwarts reliefwarts vanisheseffective genital warts

  84. Antony Says:

    I am in fact delighted to glance at this web site posts which contains ttons of valuable facts, thanks for
    providing these data.

    Feel free to surf to my web page – hhow to blog, Antony,

  85. hpfun.com Says:

    In order to cope in a very fast-paced market,
    new applications are required. Each auction could be conducted which has a different list of terms
    including bid increments, amount of auction rounds and expense reimbursement to the stalking horse.
    Donnie Jonston is the author of this article about the best way to make
    funds on Ebay Donnie has years of work experience being a writer plus working with drop shippers in a very variety of
    entrepreneurial ventures.

    My blog … hpfun.com

  86. water pipe Says:

    Moreover, if you want something funkier you can also combine the flavors like double apple with mint and thus get a hint
    of mint also with apple. Be sure to extinguish your bong mix completely when you
    have finished with it. All the while, the four coeds
    are only wearing Day-Glo bikinis and sneakers.

  87. Homeopatia Says:

    Hiya very cool site!! Man .. Beautiful .. Superb ..
    I will bookmark your blog and take the feeds also? I am happy to find so many helpful info here in the publish, we want develop
    more techniques on this regard, thank you for sharing.
    . . . . .

  88. naraharibabu.com Says:

    I am truly thankful to the owner of this web page who has shared this
    great piece of writing at at this place.

Leave a Reply