<div dir="ltr"><div><div><div><div><div>Hi,<br><br></div>vlVaQueryImageFormats (or vlVdpVideoSurfaceQueryGetPutBitsYCbCrCapabilities) implementation call pscreen->is_video_format_supported with input profile equal to PIPE_VIDEO_PROFILE_UNKNOWN.<br><br></div>Problem is that "nouveau_vp3_screen_video_supported" or "rvid_is_format_supported" will returns several formats: NV12, YV12, YUYV, UYVY, BGRA because it fallback to call vl_video_buffer_is_format_supported.<br><br></div>Whereas these 2 functions would have return PIPE_FORMAT_NV12 if input profile is not PIPE_VIDEO_PROFILE_UNKNOWN.<br><br></div>So I wonder if nouveau_vp3_screen_video_supported should just return PIPE_FORMAT_NV12 in all cases. (same for rvid_is_format_supported)<br></div><div>Am I missing something ?<br></div><div><br></div>What is the purpose of checking PIPE_VIDEO_PROFILE_UNKNOWN : <a href="http://cgit.freedesktop.org/mesa/mesa/tree/src/gallium/drivers/nouveau/nouveau_vp3_video.c#n486">http://cgit.freedesktop.org/mesa/mesa/tree/src/gallium/drivers/nouveau/nouveau_vp3_video.c#n486</a> and <a href="http://cgit.freedesktop.org/mesa/mesa/tree/src/gallium/drivers/radeon/radeon_video.c#n323">http://cgit.freedesktop.org/mesa/mesa/tree/src/gallium/drivers/radeon/radeon_video.c#n323</a> ?<br><div><div><br></div><div>Thx<br></div><div>Julien<br><br></div><div>vaapi spec for vaQueryImageFormats: <a href="http://cgit.freedesktop.org/libva/tree/va/va.h#n2349">http://cgit.freedesktop.org/libva/tree/va/va.h#n2349</a><br></div><div>vdpau spec for vdpVideoSurfaceQueryGetPutBitsYCbCrCapabilities: <a href="http://cgit.freedesktop.org/~aplattner/libvdpau/tree/include/vdpau/vdpau.h#n1526">http://cgit.freedesktop.org/~aplattner/libvdpau/tree/include/vdpau/vdpau.h#n1526</a><br></div><div><br></div></div></div>