[Bug 664256] Separate video decoding in another process

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Fri May 4 04:18:02 PDT 2012


https://bugzilla.gnome.org/show_bug.cgi?id=664256
  GStreamer | don't know | unspecified

Guillaume Emont <gemont> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |gemont at igalia.com

--- Comment #6 from Guillaume Emont <gemont at igalia.com> 2012-05-04 11:17:59 UTC ---
I have more or less implemented this:
https://github.com/guijemont/Sandboxed-Player

In a nutshell, the sandboxeddecodebin element is a bin has inside:
 fdsink (sends stuff to sandboxed process)
 shmsrc (gets gdp encoded video buffers from sandboxed process) ! gdpdepay
 shmsrc (gets gdp encoded audio buffers from sandboxed process) ! gdpdepay

And the external process runs a pipeline like:
  fdsrc ! decodebin2 name=decoder 
  decoder. ! video/x-raw-yuv;video/x-raw-rgb ! gdppay ! shmsink (video)
  decoder. ! audio/x-raw-int;audio/x-raw-float ! gdppay ! shmsink (audio)

The sandboxing is done using setuid-sandbox (a stand alone version of the
chromium sandbox: http://code.google.com/p/setuid-sandbox/ ).

This proves that it is doable, and can be used to measure the performance
overhead (I haven't done that yet).
I am in the process of writing up a blog post that explains this thing in more
details.

-- 
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list