[vlc-devel] [PATCH 1/6] chroma: chain: suggest *->CVPI conversion

Alexandre Janniaux ajanni at videolabs.io
Tue Jun 9 18:43:55 CEST 2020


When generating pictures with VLC_CODEC_CVPX_BGRA as i_chroma, the core
will add the following conversion:

    CVPB -> BGRA -> I422 -> I420

Instead, by hinting that it could use VLC_CODEC_CVPX_I420, we get the
following conversion chain:

    CVPB -> CVPI -> I420

Which has the benefit to never use swscale while avoiding an additional
conversion, and transform the last conversion into only a memory
mapping.
---
 modules/video_chroma/chain.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/modules/video_chroma/chain.c b/modules/video_chroma/chain.c
index af110ec761..4fba1bdebc 100644
--- a/modules/video_chroma/chain.c
+++ b/modules/video_chroma/chain.c
@@ -74,6 +74,12 @@ static void EsFormatMergeSize( es_format_t *p_dst,
     VLC_CODEC_I420_16L \
 
 static const vlc_fourcc_t pi_allowed_chromas_yuv[] = {
+
+#ifdef __APPLE__
+    /* Conversion from CVPB to CVPI */
+    VLC_CODEC_CVPX_I420,
+#endif
+
     VLC_CODEC_I420,
     VLC_CODEC_I422,
     ALLOWED_CHROMAS_YUV10,
-- 
2.27.0



More information about the vlc-devel mailing list