[prev in list] [next in list] [prev in thread] [next in thread] 

List:       xine-devel
Subject:    Re: [xine-devel] [PATCH] add grabbing functionality of last
From:       Christophe Thommeret <hftom () free ! fr>
Date:       2010-04-14 12:58:51
Message-ID: 201004141458.51908.hftom () free ! fr
[Download RAW message or body]

Le jeudi 8 avril 2010 17:29:16, Andreas Auras a écrit :
> Hi,
> 
> this patch added grabbing functionality of last displayed output frame to
>  the vdpau output driver. In contrast to the already existing
>  'xine_get_current_frame_data' feature the propose of this new feature is
>  to grab the displayed image exactly as it is shown by the output device
>  after OSD is rendered into the video frame, color correction,
>  deinterlacing and other post processing steps have been applied.
> The grabbed image is returned in RGB format.
> Defining a subwindow of source image and scaling of source image to a user
>  defined grab size is also supported.
> 
> The new interface is implemented by extending the protocol of
>  'xine_post_send_gui_data'. A short usage description can be found in file
>  'xine.h'.
> 
> For smooth operation of frame displaying and (heavy) parallel frame
>  grabbing the vdpau display queue length, which is actually fixed at size
>  2, could be increased by configuration. There is a new configuration
>  parameter 'video.output.vdpau_display_queue_length' with default value of
>  2. Increasing this parameter by 1 should almost be enought.
> 
> Andreas
> 

Andreas, Darren,

Increasing the number of output surfaces can sometimes help for slow hardware, 
so i was on the way to add a configurable NOUTPUTSURFACE. This patch 
implementing it, i have some remarks in order to make it a bit better in that 
matter:

1) NVidia's implementation supporting up to 8 queued surfaces, maybe 
NOUTPUTSURFACE could be set to 8 (and renamed to MAXOUTPUTSURFACE).
Then vdp_output_surface_create failure should be fatal only for the first 2 
surfaces (videomem could be unavailable for further surfaces).

2) I think it's better to register a range insteed of a num, with min=2, 
max=8, default=2.

3) It may be a good idea to handle config callback. Haven't checked if this can 
be done easily, though.

Other than that, i haven't checked the new feature itself and leave it up to 
you.

-- 
Christophe Thommeret



------------------------------------------------------------------------------
Download Intel&#174; Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
xine-devel mailing list
xine-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/xine-devel

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic