From 29aee11d7d5f5df3c430324e31bb2436ce17a9eb Mon Sep 17 00:00:00 2001 From: Julian Scheel Date: Sun, 30 Nov 2008 20:29:04 +0000 Subject: Add imgfmt and vo_cap to headers. --- include/xine.h.in | 1 + 1 file changed, 1 insertion(+) (limited to 'include') diff --git a/include/xine.h.in b/include/xine.h.in index 33844a0e2..3bbfb7667 100644 --- a/include/xine.h.in +++ b/include/xine.h.in @@ -482,6 +482,7 @@ int xine_get_current_frame_data (xine_stream_t *stream, #define XINE_IMGFMT_YUY2 (('2'<<24)|('Y'<<16)|('U'<<8)|'Y') #define XINE_IMGFMT_XVMC (('C'<<24)|('M'<<16)|('v'<<8)|'X') #define XINE_IMGFMT_XXMC (('C'<<24)|('M'<<16)|('x'<<8)|'X') +#define XINE_IMGFMT_VDPAU (('U'<<32)|('A'<<24)|('P'<<16)|('D'<<8)|'V') /* get current xine's virtual presentation timestamp (1/90000 sec) * note: this is mostly internal data. -- cgit v1.2.3 From a2e278c82f3ceb787f4946bf5eb8a0ceabedd84d Mon Sep 17 00:00:00 2001 From: Christophe Thommeret Date: Mon, 1 Dec 2008 18:24:19 +0000 Subject: Enable display of XINE_IMGFMT_VDPAU. --- include/xine.h.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'include') diff --git a/include/xine.h.in b/include/xine.h.in index 3bbfb7667..ced7a8757 100644 --- a/include/xine.h.in +++ b/include/xine.h.in @@ -482,7 +482,7 @@ int xine_get_current_frame_data (xine_stream_t *stream, #define XINE_IMGFMT_YUY2 (('2'<<24)|('Y'<<16)|('U'<<8)|'Y') #define XINE_IMGFMT_XVMC (('C'<<24)|('M'<<16)|('v'<<8)|'X') #define XINE_IMGFMT_XXMC (('C'<<24)|('M'<<16)|('x'<<8)|'X') -#define XINE_IMGFMT_VDPAU (('U'<<32)|('A'<<24)|('P'<<16)|('D'<<8)|'V') +#define XINE_IMGFMT_VDPAU (('A'<<24)|('P'<<16)|('D'<<8)|'V') /* get current xine's virtual presentation timestamp (1/90000 sec) * note: this is mostly internal data. -- cgit v1.2.3 From 92d89235ad1e8a413422947b92b957a5453950ea Mon Sep 17 00:00:00 2001 From: Julian Scheel Date: Sat, 27 Dec 2008 17:20:17 +0000 Subject: Initial support for ARGB overlay. --- include/xine.h.in | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'include') diff --git a/include/xine.h.in b/include/xine.h.in index ced7a8757..79db9024e 100644 --- a/include/xine.h.in +++ b/include/xine.h.in @@ -2200,6 +2200,13 @@ void xine_osd_get_palette (xine_osd_t *self, uint32_t *color, void xine_osd_set_palette (xine_osd_t *self, const uint32_t *const color, const uint8_t *const trans ) XINE_PROTECTED; + +/* + * set an argb buffer to be blended into video + * this is currently only supported with vdpau + */ +void xine_osd_set_argb_buffer(xine_osd_t *self, uint32_t *argb_buffer) XINE_PROTECTED; + /* * close osd rendering engine * loaded fonts are unloaded -- cgit v1.2.3 From 5c9bcbcefee17fdd254bcecd3865cd1a5202134b Mon Sep 17 00:00:00 2001 From: Julian Scheel Date: Sun, 28 Dec 2008 19:47:18 +0000 Subject: Fix argb overlay; allow partial buffer updates to improve performance. --- include/xine.h.in | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/xine.h.in b/include/xine.h.in index 79db9024e..f66ed0d3e 100644 --- a/include/xine.h.in +++ b/include/xine.h.in @@ -2205,7 +2205,8 @@ void xine_osd_set_palette (xine_osd_t *self, * set an argb buffer to be blended into video * this is currently only supported with vdpau */ -void xine_osd_set_argb_buffer(xine_osd_t *self, uint32_t *argb_buffer) XINE_PROTECTED; +void xine_osd_set_argb_buffer(xine_osd_t *self, uint32_t *argb_buffer, + int x, int y, int width, int height) XINE_PROTECTED; /* * close osd rendering engine -- cgit v1.2.3 From db791923958fd4c72f75d4fede7aff189ff879a2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Reinhard=20Ni=C3=9Fl?= Date: Fri, 2 Jan 2009 18:00:01 +0000 Subject: Add framegrabbing support; extend ARGB OSD interface. --- include/xine.h.in | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) (limited to 'include') diff --git a/include/xine.h.in b/include/xine.h.in index f66ed0d3e..e27a58e29 100644 --- a/include/xine.h.in +++ b/include/xine.h.in @@ -2134,8 +2134,10 @@ void xine_event_send (xine_stream_t *stream, const xine_event_t *event) XINE_PRO /* yellow text, black border, transparent background */ #define XINE_TEXTPALETTE_YELLOW_BLACK_TRANSPARENT 3 -#define XINE_OSD_CAP_FREETYPE2 0x0001 /* freetype2 support compiled in */ -#define XINE_OSD_CAP_UNSCALED 0x0002 /* unscaled overlays supp. by vo drv */ +#define XINE_OSD_CAP_FREETYPE2 0x0001 /* freetype2 support compiled in */ +#define XINE_OSD_CAP_UNSCALED 0x0002 /* unscaled overlays supp. by vo drv */ +#define XINE_OSD_CAP_CUSTOM_EXTENT 0x0004 /* hardware scaled to match video output window */ +#define XINE_OSD_CAP_ARGB_LAYER 0x0008 /* supports separate true color layer */ typedef struct xine_osd_s xine_osd_t; @@ -2203,10 +2205,24 @@ void xine_osd_set_palette (xine_osd_t *self, /* * set an argb buffer to be blended into video - * this is currently only supported with vdpau + * the buffer must exactly match the osd dimensions + * and stay valid while the osd is on screen. pass + * a NULL pointer to safely remove the buffer from + * the osd layer. only the dirty area will be + * updated on screen. for convinience the whole + * osd object will be considered dirty when setting + * a different buffer pointer. + * see also XINE_OSD_CAP_ARGB_LAYER */ void xine_osd_set_argb_buffer(xine_osd_t *self, uint32_t *argb_buffer, - int x, int y, int width, int height) XINE_PROTECTED; + int dirty_x, int dirty_y, int dirty_width, int dirty_height) XINE_PROTECTED; + +/* + * define extent of reference coordinate system + * for video resolution independent osds. + * see also XINE_OSD_CAP_CUSTOM_EXTENT + */ +void xine_osd_set_extent(xine_osd_t *self, int extent_width, int extent_height) XINE_PROTECTED; /* * close osd rendering engine -- cgit v1.2.3 From 012932581636f44ad0e991570f6ff069a8421619 Mon Sep 17 00:00:00 2001 From: Christophe Thommeret Date: Mon, 5 Jan 2009 07:20:47 +0000 Subject: Enable sharpness and noise_reduction; add an option for progressive_flag. --- include/xine.h.in | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/xine.h.in b/include/xine.h.in index e27a58e29..a2a658611 100644 --- a/include/xine.h.in +++ b/include/xine.h.in @@ -375,12 +375,13 @@ int xine_get_param (xine_stream_t *stream, int param) XINE_PROTECTED; #define XINE_PARAM_VO_TVMODE 0x0100000a /* ??? */ #define XINE_PARAM_VO_WINDOW_WIDTH 0x0100000f /* readonly */ #define XINE_PARAM_VO_WINDOW_HEIGHT 0x01000010 /* readonly */ +#define XINE_PARAM_VO_SHARPNESS 0x01000018 /* 0..65535 */ +#define XINE_PARAM_VO_NOISE_REDUCTION 0x01000019 /* 0..65535 */ #define XINE_PARAM_VO_CROP_LEFT 0x01000020 /* crop frame pixels */ #define XINE_PARAM_VO_CROP_RIGHT 0x01000021 /* crop frame pixels */ #define XINE_PARAM_VO_CROP_TOP 0x01000022 /* crop frame pixels */ #define XINE_PARAM_VO_CROP_BOTTOM 0x01000023 /* crop frame pixels */ - #define XINE_VO_ZOOM_STEP 100 #define XINE_VO_ZOOM_MAX 400 #define XINE_VO_ZOOM_MIN -85 -- cgit v1.2.3 From 152bbca94ab1e298c68a7b810222a5ae6f5a8808 Mon Sep 17 00:00:00 2001 From: Christophe Thommeret Date: Thu, 11 Jun 2009 01:06:33 +0100 Subject: video_window_overlay + vdpau_dispose fixes. --- include/xine.h.in | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'include') diff --git a/include/xine.h.in b/include/xine.h.in index a2a658611..854474de3 100644 --- a/include/xine.h.in +++ b/include/xine.h.in @@ -2139,6 +2139,7 @@ void xine_event_send (xine_stream_t *stream, const xine_event_t *event) XINE_PRO #define XINE_OSD_CAP_UNSCALED 0x0002 /* unscaled overlays supp. by vo drv */ #define XINE_OSD_CAP_CUSTOM_EXTENT 0x0004 /* hardware scaled to match video output window */ #define XINE_OSD_CAP_ARGB_LAYER 0x0008 /* supports separate true color layer */ +#define XINE_OSD_CAP_VIDEO_WINDOW 0x0010 /* can scale video to an area within osd extent */ typedef struct xine_osd_s xine_osd_t; @@ -2225,6 +2226,13 @@ void xine_osd_set_argb_buffer(xine_osd_t *self, uint32_t *argb_buffer, */ void xine_osd_set_extent(xine_osd_t *self, int extent_width, int extent_height) XINE_PROTECTED; +/* + * define area within osd extent to output + * video to while osd is on screen + * see also XINE_OSD_CAP_VIDEO_WINDOW + */ +void xine_osd_set_video_window(xine_osd_t *self, int window_x, int window_y, int window_width, int window_height) XINE_PROTECTED; + /* * close osd rendering engine * loaded fonts are unloaded -- cgit v1.2.3