spa: libcamera: source: use enum types

Use the appropriate enum types instead of bare `uint32_t`,
this provides better type safety in C++.
This commit is contained in:
Barnabás Pőcze 2025-07-12 18:28:23 +02:00 committed by Wim Taymans
parent f53ac8d57c
commit 0ea7dc9f19

View file

@ -70,7 +70,7 @@ struct port {
struct spa_fraction rate = {};
StreamConfiguration streamConfig;
uint32_t memtype = 0;
spa_data_type memtype = SPA_DATA_Invalid;
uint32_t buffers_blocks = 1;
struct buffer buffers[MAX_BUFFERS];
@ -374,9 +374,9 @@ static int spa_libcamera_clear_buffers(struct impl *impl, struct port *port)
struct format_info {
PixelFormat pix;
uint32_t format;
uint32_t media_type;
uint32_t media_subtype;
spa_video_format format;
spa_media_type media_type;
spa_media_subtype media_subtype;
};
#define MAKE_FMT(pix,fmt,mt,mst) { pix, SPA_VIDEO_FORMAT_ ##fmt, SPA_MEDIA_TYPE_ ##mt, SPA_MEDIA_SUBTYPE_ ##mst }
@ -432,7 +432,7 @@ static const struct format_info *find_format_info_by_media_type(uint32_t type,
for (i = startidx; i < SPA_N_ELEMENTS(format_info); i++) {
if ((format_info[i].media_type == type) &&
(format_info[i].media_subtype == subtype) &&
(format == 0 || format_info[i].format == format))
(format == SPA_VIDEO_FORMAT_UNKNOWN || format_info[i].format == format))
return &format_info[i];
}
return NULL;