Currently, frame grabbing aborts when requested for accelerated image formats.
By using a vo_driver provided frame procedure to retrieve image data, frame
grabbing can be implemented for accelerated frames too. In case a vo_driver
doesn't provide this functionality, _x_get_current_frame_data() no longer
aborts when it is asked to provide image data. It will drop an error message
as before and return a "green" YV12 image.
1 file changed, 36 insertions(+), 12 deletions(-)
src/xine-engine/xine.c | 48 ++++++++++++++++++++++++++++++++++++------------
Frame grabbing didn't work for frame image formats besides YV12 and YUY2 as decoded data
is not stored in accelarated frames. Some acceleration APIs allow to read back decoded
image data in the common standard formats mentioned above. The new procedure allows the
vo_driver to provide a way for retrieving image data which can later be utilized by
_x_get_current_frame_data() to implement frame grabbing for accelerated frames.
1 file changed, 8 insertions(+)
include/xine/video_out.h | 8 ++++++++