[v5,0/4] apps: cam: sdl_sink: Support more RGB and YUV formats
mbox series

Message ID 20250506105827.506569-1-barnabas.pocze@ideasonboard.com
Headers show
Series
  • apps: cam: sdl_sink: Support more RGB and YUV formats
Related show

Message

Barnabás Pőcze May 6, 2025, 10:58 a.m. UTC
Add support for more RGB and YUV formats in the SDL sink.

changes in v5:
  * conditionally use the platform-independent "X" variants
    of pixelformats as they first appeared in SDL 2.29.1

changes in v4:
  * separate format mapping from texture creation

changes in v3:
  * move SDLTexture1Plane implementation from header
  * add copyright notice

changes in v2:
  * support more formats, not just RGB888, BGR888
  * don't specify area to be updated explicitly when calling `SDL_Update{NV,}Texture()`

v4: https://patchwork.libcamera.org/cover/23301/
v3: https://patchwork.libcamera.org/cover/23267/
v2: https://patchwork.libcamera.org/cover/23262/
v1: https://patchwork.libcamera.org/cover/23196/

Barnabás Pőcze (4):
  apps: cam: sdl_texture: Take list of buffers in span
  apps: cam: sdl_texture: Drop `&rect_` from `SDL_Update{NV,}Texture()`
    call
  apps: cam: sdl_texture: Add `SDLTexture1Plane`
  apps: cam: sdl_sink: Support more single-plane formats

 src/apps/cam/meson.build            |  1 +
 src/apps/cam/sdl_sink.cpp           | 61 +++++++++++++++++++++++------
 src/apps/cam/sdl_texture.h          |  4 +-
 src/apps/cam/sdl_texture_1plane.cpp | 17 ++++++++
 src/apps/cam/sdl_texture_1plane.h   | 18 +++++++++
 src/apps/cam/sdl_texture_mjpg.cpp   |  2 +-
 src/apps/cam/sdl_texture_mjpg.h     |  2 +-
 src/apps/cam/sdl_texture_yuv.cpp    | 14 +------
 src/apps/cam/sdl_texture_yuv.h      |  9 +----
 9 files changed, 92 insertions(+), 36 deletions(-)
 create mode 100644 src/apps/cam/sdl_texture_1plane.cpp
 create mode 100644 src/apps/cam/sdl_texture_1plane.h

--
2.49.0