[vlc-commits] [Git][videolan/vlc][master] 2 commits: lib: picture: add rgba format
Felix Paul Kühne (@fkuehne)
gitlab at videolan.org
Fri Nov 21 05:32:32 UTC 2025
Felix Paul Kühne pushed to branch master at VideoLAN / VLC
Commits:
dfecd32a by Pierre Lamot at 2025-11-21T06:08:10+01:00
lib: picture: add rgba format
- - - - -
3bf92cc6 by Pierre Lamot at 2025-11-21T06:08:10+01:00
test: add test for rbga picture format
- - - - -
4 changed files:
- include/vlc/libvlc_picture.h
- lib/picture.c
- test/Makefile.am
- test/libvlc/meson.build
Changes:
=====================================
include/vlc/libvlc_picture.h
=====================================
@@ -36,6 +36,7 @@ typedef enum libvlc_picture_type_t
libvlc_picture_Png,
libvlc_picture_Jpg,
libvlc_picture_WebP,
+ libvlc_picture_Rgba,
} libvlc_picture_type_t;
/**
=====================================
lib/picture.c
=====================================
@@ -73,6 +73,7 @@ libvlc_picture_t* libvlc_picture_new( vlc_object_t* p_obj, picture_t* input,
[libvlc_picture_Png] = VLC_CODEC_PNG,
[libvlc_picture_Argb] = VLC_CODEC_ARGB,
[libvlc_picture_WebP] = VLC_CODEC_WEBP,
+ [libvlc_picture_Rgba] = VLC_CODEC_RGBA,
};
assert(ARRAY_SIZE(table) > type && table[type] != 0);
vlc_fourcc_t format = table[type];
@@ -191,7 +192,7 @@ libvlc_picture_type_t libvlc_picture_type( const libvlc_picture_t* pic )
unsigned int libvlc_picture_get_stride( const libvlc_picture_t *pic )
{
- assert( pic->type == libvlc_picture_Argb );
+ assert( pic->type == libvlc_picture_Argb || pic->type == libvlc_picture_Rgba );
return pic->fmt.i_width * 4;
}
=====================================
test/Makefile.am
=====================================
@@ -14,6 +14,7 @@ check_PROGRAMS = \
test_libvlc_media \
test_libvlc_media_callback \
test_libvlc_media_thumbnail_argb \
+ test_libvlc_media_thumbnail_rgba \
test_libvlc_media_thumbnail_jpeg \
test_libvlc_media_thumbnail_png \
test_libvlc_media_thumbnail_webp \
@@ -138,6 +139,9 @@ test_libvlc_media_callback_LDADD = $(LIBVLCCORE) $(LIBVLC)
test_libvlc_media_thumbnail_argb_SOURCES = libvlc/media_thumbnail.c
test_libvlc_media_thumbnail_argb_LDADD = $(LIBVLCCORE) $(LIBVLC)
test_libvlc_media_thumbnail_argb_CPPFLAGS = $(AM_CPPFLAGS) -DTEST_THUMB_TYPE=libvlc_picture_Argb -DTEST_REQUIRED_MODULES=\"avcodec\"
+test_libvlc_media_thumbnail_rgba_SOURCES = libvlc/media_thumbnail.c
+test_libvlc_media_thumbnail_rgba_LDADD = $(LIBVLCCORE) $(LIBVLC)
+test_libvlc_media_thumbnail_rgba_CPPFLAGS = $(AM_CPPFLAGS) -DTEST_THUMB_TYPE=libvlc_picture_Rgba -DTEST_REQUIRED_MODULES=\"avcodec\"
test_libvlc_media_thumbnail_png_SOURCES = libvlc/media_thumbnail.c
test_libvlc_media_thumbnail_png_LDADD = $(LIBVLCCORE) $(LIBVLC)
test_libvlc_media_thumbnail_png_CPPFLAGS = $(AM_CPPFLAGS) -DTEST_THUMB_TYPE=libvlc_picture_Png -DTEST_REQUIRED_MODULES=\"png\"
=====================================
test/libvlc/meson.build
=====================================
@@ -39,6 +39,19 @@ vlc_tests += {
'module_depends': ['demux_mock', 'swscale', 'avcodec'],
}
+vlc_tests += {
+ 'name' : 'test_libvlc_media_thumbnail_rgba',
+ 'sources' : files('media_thumbnail.c'),
+ 'link_with' : [libvlc, libvlccore],
+ 'suite' : ['libvlc', 'test_libvlc_media_thumbnail'],
+ 'c_args' : [
+ '-DTEST_THUMB_TYPE=libvlc_picture_Rgba',
+ '-DTEST_REQUIRED_MODULES="avcodec"',
+ ],
+ 'module_depends': ['demux_mock', 'swscale', 'avcodec'],
+}
+
+
vlc_tests += {
'name' : 'test_libvlc_media_thumbnail_jpeg',
'sources' : files('media_thumbnail.c'),
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/03de19324f58ee8e2efa8c8a408d7c43848b8794...3bf92cc6c756abcc5ad43c59382a0deb2ec39cf5
--
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/03de19324f58ee8e2efa8c8a408d7c43848b8794...3bf92cc6c756abcc5ad43c59382a0deb2ec39cf5
You're receiving this email because of your account on code.videolan.org.
VideoLAN code repository instance
More information about the vlc-commits
mailing list