[vlc-commits] fourcc: no YUV fallback for VDPAU chromas

Thomas Guillem git at videolan.org
Fri Feb 3 15:05:55 CET 2017


vlc | branch: master | Thomas Guillem <thomas at gllm.fr> | Fri Feb  3 14:36:41 2017 +0100| [faa5a38a4c00614f687a5e25c137ca239c0786cd] | committer: Thomas Guillem

fourcc: no YUV fallback for VDPAU chromas

Since these VDPAU chromas are considered as YUV, vlc_fourcc_GetYUVFallback()
was returning the default list of YUV chromas. This caused vouts to accept
these VDPAU chromas and fail later in the chain conversion.

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=faa5a38a4c00614f687a5e25c137ca239c0786cd
---

 src/misc/fourcc.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/src/misc/fourcc.c b/src/misc/fourcc.c
index b448beb..6083e9a 100644
--- a/src/misc/fourcc.c
+++ b/src/misc/fourcc.c
@@ -365,6 +365,16 @@ static const vlc_fourcc_t p_I444_16B_fallback[] = {
     VLC_CODEC_I444_16B, VLC_CODEC_I444_16L, VLC_CODEC_FALLBACK_444_16, 0
 };
 
+/* No fallback for VDPAU chromas since there is no VDPAU -> YUV filter */
+static const vlc_fourcc_t p_VDPAU_VIDEO_420_fallback[] = {
+    VLC_CODEC_VDPAU_VIDEO_420, 0
+};
+static const vlc_fourcc_t p_VDPAU_VIDEO_422_fallback[] = {
+    VLC_CODEC_VDPAU_VIDEO_422, 0
+};
+static const vlc_fourcc_t p_VDPAU_VIDEO_444_fallback[] = {
+    VLC_CODEC_VDPAU_VIDEO_444, 0
+};
 
 static const vlc_fourcc_t p_I440_fallback[] = {
     VLC_CODEC_I440,
@@ -445,6 +455,9 @@ static const vlc_fourcc_t *pp_YUV_fallback[] = {
     p_UYVY_fallback,
     p_VYUY_fallback,
     p_NV12_fallback,
+    p_VDPAU_VIDEO_420_fallback,
+    p_VDPAU_VIDEO_422_fallback,
+    p_VDPAU_VIDEO_444_fallback,
 
 
     NULL,



More information about the vlc-commits mailing list