~/talk

Implementing a Stateless V4L2 Decoder Driver: Architecture and Lessons Learned

Talkat Open Source Summit Korea 2026 · on Tuesday, 2026-08-11· at 17:15· Orchid 1· [security]
links:none on file
slides:none on file

A stateless V4L2 decoder driver for Chips&Media VPU is implemented and upstreamed; GStreamer plugins and kernel driver live in mainline and support H.264, HEVC, VP9, AV1 and MPEG‑2. Userspace parses SPS/PPS and per‑frame slice headers, packages controls via the media_request API, and queues paired input/output buffers; driver allocates DPB-sized capture buffers, manages reference frames and DPP slots, sends addresses to VPU, and uses IRQs to complete frames. Encoder support remains RFC stage.

AI-written summary · about

  1. 0:00Stateless V4L2 decoders intro
  2. 1:06Stateful vs stateless decoding
  3. 2:33GStreamer and kernel roles
  4. 5:05GStreamer pipeline for stateless
  5. 6:07Plugin init and hardware negotiation
  6. 7:10Frame vs slice decoding
  7. 8:14Negotiation flow in stateless
  8. 9:20Bitstream buffer processing
  9. 11:29Media requests to V4L2 driver
  10. 12:32VISL virtual driver overview
  11. 14:00Decoded Picture Buffer management
  12. 15:24Output picture handling
  13. 16:09Current stateless decoder status
  14. 17:35VISL driver capabilities
  15. 18:17Kernel driver call sequence
  16. 19:40Implementation details
  17. 21:26Software architecture diagram
  18. 22:10Hardware: stateful vs stateless
  19. 22:53Media frameworks comparison
  20. 24:17Summary of stateless decoders
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.