<html style="direction: ltr;">
  <head>

    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    <style type="text/css">body p { margin-bottom: 0.2cm; margin-top: 0pt; } </style>
  </head>
  <body style="direction: ltr;"
    bidimailui-detected-decoding-type="UTF-8" text="#000000"
    bgcolor="#FFFFFF">
    Hi all,<br>
    <br>
    I have a setup which is embeddedish (Intel CPU and quite a bit of
    power, but will need most of this power to do stuff with. An Intel
    display adapter). The device has a local display (touch screen LCD)
    that needs to display some UI (implemented by a web server on the
    device) displayed by webkit. The background for the UI needs to be a
    live stream from a local camera connected directly to the device.<br>
    <br>
    There is software written already to do some of this stuff on
    another HW platform, where the display is hard-wired to show a
    background from the camera and a foreground (RGBA). It is working
    with embedded QT (formerly QTopia) and webkit. I need to port this
    to the fore-mentioned Intel platform.<br>
    <br>
    So what I need is this. I need a browser to display UI with partial
    transparency, through which you can see a lower layer that is
    generated anywhere from 25 to 60 times a second from a camera.
    Ideally, I should be able to keep the camera code in a separate
    process from the webkit one. I am unfamiliar with all of the
    technologies I'm about to mention, so I'd like your help in which
    one to learn - which one will most likely let me do what I want the
    easiest.<br>
    <br>
    The options I could think of:<br>
    - Keep things in the frame buffer. I know QT has some classes to do
    just that. They even support color spaces other than RGB (the camera
    typically produces 4:2:2 YUV). I'm not sure how much free of
    conversion that is (if it does require conversion, I'd rather do it
    myself). I'm also not sure how much support I'd have for partial
    transparency and for running the Video preview in a separate process
    than the browser.<br>
    <br>
    - Use X11 and DRI/DRM. I know for sure that different processes are
    supported. From what I've started to read about DRM, however, it
    seems that taking over the entire screen is the only option truly
    supported. I'm not sure how it works.<br>
    <br>
    - Use X11 and OpenGL. This will definitely support all the
    transparency I'd need, but I'm not sure whether that is the right
    option.<br>
    <br>
    Does anyone know what does Xine/VLC/Dragon player use? How does the
    UI cause things to be transparent when, e.g., I'm moving a window
    around? Is OpenGL involved in this?<br>
    <br>
    Shachar<br>
    <pre class="moz-signature" cols="72">-- 
Shachar Shemesh
Lingnu Open Source Consulting Ltd.
<a class="moz-txt-link-freetext" href="http://www.lingnu.com">http://www.lingnu.com</a>
</pre>
  </body>
</html>