add a read_frame_raw callback to the video_driver_t structure.

This commit is contained in:
aliaspider 2015-03-16 09:33:16 +01:00
parent 2063216705
commit 7a72d46f9a
16 changed files with 22 additions and 0 deletions

View File

@ -1966,6 +1966,7 @@ video_driver_t video_d3d = {
d3d_set_rotation,
d3d_viewport_info,
d3d_read_viewport,
NULL, /* read_frame_raw */
#ifdef HAVE_OVERLAY
d3d_get_overlay_interface,
#endif

View File

@ -769,6 +769,7 @@ video_driver_t video_dispmanx = {
dispmanx_gfx_set_rotation,
dispmanx_gfx_viewport_info,
dispmanx_gfx_read_viewport,
NULL, /* read_frame_raw */
#ifdef HAVE_OVERLAY
NULL, /* overlay_interface */

View File

@ -1673,6 +1673,7 @@ video_driver_t video_exynos = {
exynos_gfx_set_rotation,
exynos_gfx_viewport_info,
exynos_gfx_read_viewport,
NULL, /* read_frame_raw */
#ifdef HAVE_OVERLAY
NULL, /* overlay_interface */

View File

@ -3163,6 +3163,7 @@ video_driver_t video_gl = {
gl_viewport_info,
gl_read_viewport,
NULL, /* read_frame_raw */
#ifdef HAVE_OVERLAY
gl_get_overlay_interface,

View File

@ -1503,6 +1503,7 @@ video_driver_t video_gx = {
gx_set_rotation,
gx_viewport_info,
gx_read_viewport,
NULL, /* read_frame_raw */
#ifdef HAVE_OVERLAY
gx_get_overlay_interface,
#endif

View File

@ -130,6 +130,7 @@ video_driver_t video_null = {
null_gfx_set_rotation,
null_gfx_viewport_info,
null_gfx_read_viewport,
NULL, /* read_frame_raw */
#ifdef HAVE_OVERLAY
NULL, /* overlay_interface */

View File

@ -1171,6 +1171,7 @@ video_driver_t video_omap = {
omap_gfx_set_rotation,
omap_gfx_viewport_info,
omap_gfx_read_viewport,
NULL, /* read_frame_raw */
#ifdef HAVE_OVERLAY
NULL, /* overlay_interface */

View File

@ -973,6 +973,7 @@ video_driver_t video_psp1 = {
psp_set_rotation,
psp_viewport_info,
psp_read_viewport,
NULL, /* read_frame_raw */
#ifdef HAVE_OVERLAY
NULL,
#endif

View File

@ -769,6 +769,7 @@ video_driver_t video_sdl2 = {
sdl2_gfx_set_rotation,
sdl2_gfx_viewport_info,
sdl2_gfx_read_viewport,
NULL, /* read_frame_raw */
#ifdef HAVE_OVERLAY
NULL,
#endif

View File

@ -570,6 +570,7 @@ video_driver_t video_sdl = {
sdl_gfx_set_rotation,
sdl_gfx_viewport_info,
sdl_gfx_read_viewport,
NULL, /* read_frame_raw */
#ifdef HAVE_OVERLAY
NULL,
#endif

View File

@ -1496,6 +1496,7 @@ video_driver_t video_sunxi = {
sunxi_gfx_set_rotation,
sunxi_gfx_viewport_info,
NULL, /* read_viewport */
NULL, /* read_frame_raw */
#ifdef HAVE_OVERLAY
NULL, /* overlay_interface */

View File

@ -491,6 +491,7 @@ video_driver_t video_vg = {
vg_set_rotation,
vg_viewport_info,
vg_read_viewport,
NULL, /* read_frame_raw */
#ifdef HAVE_OVERLAY
NULL, /* overlay_interface */
#endif

View File

@ -329,6 +329,7 @@ video_driver_t video_xenon360 = {
xenon360_gfx_set_rotation,
xenon360_gfx_viewport_info,
xenon360_gfx_read_viewport,
NULL, /* read_frame_raw */
#ifdef HAVE_OVERLAY
NULL, /* overlay_interface */

View File

@ -937,6 +937,7 @@ video_driver_t video_xvideo = {
xv_set_rotation,
xv_viewport_info,
xv_read_viewport,
NULL, /* read_frame_raw */
#ifdef HAVE_OVERLAY
NULL, /* overlay_interface */
#endif

View File

@ -167,6 +167,13 @@ typedef struct video_driver
/* Reads out in BGR byte order (24bpp). */
bool (*read_viewport)(void *data, uint8_t *buffer);
/* Returns a pointer to a newly allocated buffer that can
* (and must) be passed to free() by the caller, containing a
* copy of the current raw frame in the active pixel format
* and sets width, height and pitch to the correct values. */
void* (*read_frame_raw)(void *data, unsigned *width,
unsigned *height, size_t *pitch);
#ifdef HAVE_OVERLAY
void (*overlay_interface)(void *data, const video_overlay_interface_t **iface);
#endif

View File

@ -977,6 +977,7 @@ static const video_driver_t video_thread = {
thread_set_rotation,
thread_viewport_info,
thread_read_viewport,
NULL, /* read_frame_raw */
#ifdef HAVE_OVERLAY
thread_get_overlay_interface, /* get_overlay_interface */
#endif