Meego Wiki
Views

TV Browser Video HW acceleration

From MeeGo wiki
(Difference between revisions)
Jump to: navigation, search
(Created page with "= HTML5 Video Hardware Acceleration = == MeeGo TV Hardware Capability == * Video Display Controller Architecture Image(vdc.PNG) * 4-5 Universal Pixel Plane for graphics an...")

Revision as of 11:22, 27 January 2012

Contents

HTML5 Video Hardware Acceleration

MeeGo TV Hardware Capability

  • Video Display Controller Architecture

Image(vdc.PNG)

  • 4-5 Universal Pixel Plane for graphics and video rendering
  • Hardware blender supports IAP and ARGB pixel format UPP
  • Two hardware decoders - H.264, VC1, MPEG2. support 2-way 1080p video decoding
  • Hardware Scaler
  • PVR SGX Graphics Core

Multi-plane Solution

Image(mp-solution.PNG)

  • Render Process:
    • Replace the FFMPEG based !WebMediaPlayer with UMMS based !UmmsWebMediaPlayer
    • Webkit calculates video destination area and transparent area.
  • Browser Process:
    • DBus bridge in browser to adapt security sandbox
    • Issue plane level transparency commands
  • Unified Multimedia Service
    • The actual playback engine
    • Playback and media control
    • DBus interface
    • Multi-session support
    • Multi media engines(Gstreamer, !OpenMax…)
  • mutter-meego-tv: Handle hints for transparency
    • Facts:
      • Browser rendered on X window
      • X rendered on above plane,
      • Hardware accelerated video is rendered on underneath plane.
      • X server does not handle alpha channel by default
      • Alpha channel is used in plane level with Pixel format ARGB
    • Solution: Windows manager handles the alpha channel when compositing
    • Result: See through the right area of X to show video

Video As Texture

Image(vat-solution.PNG)

  • Render & Browser processes co work to redirect playback commands to UMMS
  • UMMS is responsible for hardware accelerated video decoding and color conversion.
  • RGBA data is shared between UMMS and render process
  • Render process renders the texture to the video area.


Tradeoff

  • Multi-plane
    • Pursues maximized performance
    • Depend on wm, currently only mutter is enhanced.
    • Video/browser display memory separated, advanced feature not available
  • Video as Texture
    • Keep the integrity of the browser window’s display memory, which enables a lot of advanced HTML5 features.
    • Involve color conversion and memory copy that can be expensive for HD videos
Personal tools