1. 07 Aug, 2021 2 commits
    • Daniel Almeida's avatar
      media: vivpu: add virtual VPU driver · f0e6c85f
      Daniel Almeida authored
      
      
      Add a virtual VPU driver to aid userspace in testing stateless uAPI
      implementations for which no hardware is currently available.
      
      A userspace implementation can use vivpu to run a decoding loop even
      when no hardware is available or when the kernel uAPI for the codec
      has not been upstreamed yet. This can reveal bugs at an early stage.
      
      Also makes it possible to work on the kernel uAPI for a codec and
      a corresponding userspace implementation at the same time.
      Signed-off-by: Daniel Almeida's avatarDaniel Almeida <daniel.almeida@collabora.com>
      f0e6c85f
    • Daniel Almeida's avatar
      media: Add AV1 uAPI · 5ba2873b
      Daniel Almeida authored
      
      
      This patch adds the  AOMedia Video 1 (AV1) kernel uAPI.
      
      This design is based on currently available AV1 API implementations and
      aims to support the development of AV1 stateless video codecs
      on Linux.
      Signed-off-by: Daniel Almeida's avatarDaniel Almeida <daniel.almeida@collabora.com>
      5ba2873b
  2. 12 Jul, 2021 2 commits
    • Hans Verkuil's avatar
      v4l2-ctrls: add support for dynamically allocated arrays. · 7368a8aa
      Hans Verkuil authored and Daniel Almeida's avatar Daniel Almeida committed
      
      
      Implement support for dynamically allocated arrays.
      
      Most of the changes concern keeping track of the number of elements
      of the array and the number of elements allocated for the array and
      reallocating memory if needed.
      Signed-off-by: default avatarHans Verkuil <hverkuil-cisco@xs4all.nl>
      7368a8aa
    • Hans Verkuil's avatar
      videodev2.h: add V4L2_CTRL_FLAG_DYNAMIC_ARRAY · e5fb68e5
      Hans Verkuil authored and Daniel Almeida's avatar Daniel Almeida committed
      
      
      Add a new flag that indicates that this control is a dynamically sized
      array. Also document this flag.
      
      Currently dynamically sized arrays are limited to one dimensional arrays,
      but that might change in the future if there is a need for it.
      
      The initial use-case of dynamic arrays are stateless codecs. A frame
      can be divided in many slices, so you want to provide an array containing
      slice information for each slice. Typically the number of slices is small,
      but the standard allow for hundreds or thousands of slices. Dynamic arrays
      are a good solution since sizing the array for the worst case would waste
      substantial amounts of memory.
      Signed-off-by: default avatarHans Verkuil <hverkuil-cisco@xs4all.nl>
      e5fb68e5
  3. 17 Jun, 2021 36 commits