On Fri, 2014-05-09 at 03:45 -0600, Gwenole Beauchesne wrote:
> Hi,
> 
> 2014-05-06 6:44 GMT+02:00 Xu, Guangxin <guangxin...@intel.com>:
> > Hi Yakui
> > This will introduce side effect to normal case. It will search string in 
> > environment list. No matter INTEL_DECODE_BENCH defined or not.
> 
> Yes, agreed. We cannot introduce changes in the VA driver, and nowhere
> else either for sanity, that rely on environment variables. If you
> don't want to use vaPutSurface(), then just don't use vaPutSurface()
> and call vaSyncSurface() instead. :)

Thanks for your comment. The better solution is to use the vaSyncSurface
instead of vaPutSurface in the upper-middleware or application. But in
such case we will have to change the upper-middleware or application.
(And my intention is only to test the expected result without updating
the upper-middelware or application).

The getenv will take some time to search string in environment list. But
compared with the rendering/decoding time, this time almost can be
ignored. 

Anyway, please ignore my patch. (In fact my patch is only for the test
purpose.).


> 
> For mplayer purposes, there is a per-VO options mechanism that could
> be used for example to notify the VO to not render at all. I don't say
> that option exist, it needs to be written, but there is infrastructure
> for per-VO options. That's the recommended way to do.
> 
> An alternative would be to use `ffmpeg' with VA/DRM backend. Though, I
> don't know what you intend to benchmark to begin with.
> 
> Regards,
> Gwenole.
> 
> > -----Original Message-----
> > From: Libva [mailto:libva-boun...@lists.freedesktop.org] On Behalf Of Zhao 
> > Yakui
> > Sent: Tuesday, May 6, 2014 12:36 PM
> > To: Xiang, Haihao
> > Cc: z...@freedesktop.org; libva@lists.freedesktop.org
> > Subject: Re: [Libva] [PATCH Libva-intel-driver] Add one option of bypassing 
> > rendering function to test decoding
> >
> > On Mon, 2014-05-05 at 22:19 -0600, Xiang, Haihao wrote:
> >> It would be better not to call vaPutSurface() in your benchmark if you
> >> want to ignore rendering.
> >
> > Thanks for your review.
> >
> > It is also one solution. Currently the bench test is based on the 
> > mplayer-vaapi. In such case it is not easy to bypass the vaPutSurface.
> > At the same time it also needs to add the function of waiting for the 
> > completion of decoding.
> >
> >>
> >> Thanks
> >> Haihao
> >>
> >>
> >> > From: Zhao Yakui <yakui.z...@intel.com>
> >> >
> >> > Signed-off-by: Zhao Yakui <yakui.z...@intel.com>
> >> > ---
> >> >  src/i965_drv_video.h  | 3 +++
> >> >  src/i965_output_dri.c | 4 ++++
> >> >  2 files changed, 7 insertions(+)
> >> >
> >> > diff --git a/src/i965_drv_video.h b/src/i965_drv_video.h index
> >> > 0e32f7d..70755d2 100644
> >> > --- a/src/i965_drv_video.h
> >> > +++ b/src/i965_drv_video.h
> >> > @@ -432,6 +432,9 @@ extern VAStatus i965_CreateSurfaces(VADriverContextP 
> >> > ctx,
> >> >                      int format,
> >> >                      int num_surfaces,
> >> >                      VASurfaceID *surfaces);
> >> > +extern VAStatus i965_SyncSurface(VADriverContextP ctx,
> >> > +                                 VASurfaceID render_target);
> >> > +
> >> >
> >> >  #define I965_SURFACE_MEM_NATIVE             0
> >> >  #define I965_SURFACE_MEM_GEM_FLINK          1
> >> > diff --git a/src/i965_output_dri.c b/src/i965_output_dri.c index
> >> > 717ee9a..645a7d1 100644
> >> > --- a/src/i965_output_dri.c
> >> > +++ b/src/i965_output_dri.c
> >> > @@ -140,6 +140,10 @@ i965_put_surface_dri(
> >> >      if (!obj_surface || !obj_surface->bo)
> >> >          return VA_STATUS_SUCCESS;
> >> >
> >> > +    if (getenv("INTEL_DECODE_BENCH")) {
> >> > +        i965_SyncSurface(ctx, surface);
> >> > +        return VA_STATUS_SUCCESS;
> >> > +    }
> >> >      _i965LockMutex(&i965->render_mutex);
> >> >
> >> >      dri_drawable = dri_vtable->get_drawable(ctx, (Drawable)draw);
> >>
> >>
> >
> >
> > _______________________________________________
> > Libva mailing list
> > Libva@lists.freedesktop.org
> > http://lists.freedesktop.org/mailman/listinfo/libva
> > _______________________________________________
> > Libva mailing list
> > Libva@lists.freedesktop.org
> > http://lists.freedesktop.org/mailman/listinfo/libva


_______________________________________________
Libva mailing list
Libva@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libva

Reply via email to