Hi Haihao,
I'm not talking about DRI here.
Please look at va_x11.h. There is an API call to vaPutSurface() which is
a pure X11 interface call that applications don't even need to know
about the DRI. That call has cliprect information,
I understand what you mean.
and can easily be
dealt with by modifying the vertex buffer.
I also understand what you are talking about.
I think I've even seen a patch online that someone wrote to fix this
quite a few years back too.
Our driver only supports direct rendering, so DRI2 is required for
va/x11(currently DRI3 isn't supported). An application only renders the image in
the back buffer with DRI2, the display server will copy/render the content from
the back buffer to the front buffer. The display server isn't aware of the
cliprects with DRI2, the content outside the cliprects will be copied too, hence
you might not get what you want
Thanks
Haihao
>
> Alan.
>
>
> On 06/03/17 02:38, Xiang, Haihao wrote:
> > Hi Alan,
> >
> > cliprects are used to determine what parts of the window should be redrawn
> > to
> > handle overlapping windows and drm needs these information. Since DRI2,
> > cliprects aren't used any more and DRI is deprecated.
> >
> > Thanks
> > Haihao
> >
> >
> > > Hi Mark,
> > >
> > > That's not always possible when DRI3 isn't available, or EGL.
> > >
> > > It's easy to claim it's a toy interface, but the API is there and
it
> > > looks pretty simple to fix it too.
> > >
> > > Alan.
> > >
> > >
> > > On 02/03/17 00:08, Mark Thompson wrote:
> > > > Hi Alan,
> > > >
> > > > If you want to do anything sophisticated with rendering then you will
be
> > > > much better off using another API more suited to it - pick out the
DRM
> > > > object for the surface with vaAcquireBuffer() and deal with it
somewhere
> > > > else (e.g. X11 via DRI3, EGL via
> > > > EGL_EXT_image_dma_buf_import). Rendering
> > > > is not really in-scope for VAAPI - consequently, vaPutSurface() is
> > > > mostly a
> > > > toy interface and of little value beyond testing.
> > > >
> > > > - Mark
> > > >
> > > > On 01/03/17 08:23, Alan Hourihane wrote:
> > > > > Hi Haihao,
> > > > >
> > > > > But the vaPutSurface() API shows there is cliprect functionality,
and
> > > > > looking at the Intel driver it completely ignores cliprects. What
does
> > > > > vaPutSurface() have anything to do with DRI, it's an X11
interface as
> > > > > detailed in va_x11.h ?
> > > > >
> > > > > Also, the Intel driver always clears the drawable, and it should
be
> > > > > tied
> > > > > to the VA_CLEAR_DRAWABLE flag and only clear when that is
specified.
> > > > >
> > > > > Alan.
> > > > >
> > > > > On 01/03/17 03:09, Xiang, Haihao wrote:
> > > > > > Hi Alan,
> > > > > >
> > > > > > On X11, there are no longer cliprect with DRI2, cliprect
is
> > > > > > available
> > > > > > with DRI.
> > > > > >
> > > > > > Thanks
> > > > > > Haihao
> > > > > >
> > > > > >
> > > > > > > Hi,
> > > > > > >
> > > > > > > I'm using libva-1.7.3 and libva-intel-driver-1.7.3
and the
> > > > > > > putsurface
> > > > > > > test program with the -c option for testing cliprect
> > > > > > > functionality,
> > > > > > > but
> > > > > > > the test app is showing the cliprects don't work on
my Haswell
> > > > > > > box.
> > > > > > >
> > > > > > > Anyone else see this ?
> > > > > > >
> > > > > > > Thanks,
> > > > > > >
> > > > > > > Alan.
> > > > _______________________________________________
> > > > intel-vaapi-media mailing list
> > > > intel-vaapi-media(a)lists.01.org
> > > >
https://lists.01.org/mailman/listinfo/intel-vaapi-media
> > > _______________________________________________
> > > intel-vaapi-media mailing list
> > > intel-vaapi-media(a)lists.01.org
> > >
https://lists.01.org/mailman/listinfo/intel-vaapi-media
>