media decode and 2D composition Daniel Stone http://fooishbar.org - - PowerPoint PPT Presentation

media decode and 2d composition daniel stone http
SMART_READER_LITE
LIVE PREVIEW

media decode and 2D composition Daniel Stone http://fooishbar.org - - PowerPoint PPT Presentation

media decode and 2D composition Daniel Stone http://fooishbar.org not dmabuf ... presentation issues for media formats atomicity timing misc current video state of the art combine EGLImage and OpenMAX display with GLES, or X11's Xv EGL


slide-1
SLIDE 1

media decode and 2D composition Daniel Stone http://fooishbar.org

slide-2
SLIDE 2

not dmabuf ...

slide-3
SLIDE 3

presentation issues for media

slide-4
SLIDE 4

formats atomicity timing misc

slide-5
SLIDE 5

current video state of the art combine EGLImage and OpenMAX display with GLES, or X11's Xv

slide-6
SLIDE 6

EGL is a disaster image_external prevents useful scaling no timing information conversion/filtering not as good as overlays

slide-7
SLIDE 7

let's use overlays everywhere (or planes, sprites, cursors) ... but how?

slide-8
SLIDE 8

format negotiation how hard can it be?

slide-9
SLIDE 9

GStreamer: MIME type and FourCC V4L: FourCC DRM: different FourCC

slide-10
SLIDE 10

Wayland formats are per-protocol e.g. wl_drm uses DRM FourCC

slide-11
SLIDE 11

esoteric tiled planar YUV YUV full vs. clamped range RGB colourspaces MIME type is really handy for these

slide-12
SLIDE 12

atomicity think: scrolling content with video

slide-13
SLIDE 13

Wayland supports this with subsurfaces 'lock' a surface tree for atomic updates

slide-14
SLIDE 14

KMS nuclear pageflip implementation extant, not merged next steps unclear

slide-15
SLIDE 15

timing queuing / feedback / domains

slide-16
SLIDE 16

accuracy is crucial in media/broadcast

  • ne frame out every 24 hours
slide-17
SLIDE 17

queuing provide list of future flips & target times cancel queued flips (requires event)

  • r supercede / revise?
slide-18
SLIDE 18

some hardware provides a 'carousel' automatic switching between slots every 16ms cannot reliably implement this w/o carousel frame miss penalty: jump backwards

slide-19
SLIDE 19

prior art: EGL_NV_present_video target timing ranges arbitrary range of 'video slots'

  • nly GLX/WGL
slide-20
SLIDE 20

nothing in Wayland or KMS for this (yet) nuclear pageflip could be a good base?

slide-21
SLIDE 21

feedback assuming the worst: we will miss sometimes crucial to mitigate impact

slide-22
SLIDE 22

current DRM vblank events suffice work underway in Wayland EGL has none at all (and no events)

slide-23
SLIDE 23

domains which time domain do we use? hardware time bases are useless w/o query light queryable timer required for A/V sync

slide-24
SLIDE 24

currently require CLOCK_MONOTONIC would be brilliant to get hw timers ...

slide-25
SLIDE 25

wildcard: colourkeying falling back when you open a menu sucks required for STB

slide-26
SLIDE 26

wildcard: interlaced video ?! perhaps nuclear pageflip again?

slide-27
SLIDE 27

wildcard: sync/fences discussed tomorrow in Android Graphics need query/event to avoid blocking compositor

slide-28
SLIDE 28

wildcard: carousels strict 16ms switching between slots

slide-29
SLIDE 29

thanks