# HG changeset patch # User arpi # Date 1018559220 0 # Node ID e01c664def748fcda7f120d62141bfafeb1a8f57 # Parent 0b301fec999a49f7bcadcc7d6106cd9dea372d44 VFCAP added diff -r 0b301fec999a -r e01c664def74 libvo/mga_common.c --- a/libvo/mga_common.c Thu Apr 11 20:56:17 2002 +0000 +++ b/libvo/mga_common.c Thu Apr 11 21:07:00 2002 +0000 @@ -223,7 +223,7 @@ case IMGFMT_UYVY: // case IMGFMT_RGB|24: // case IMGFMT_BGR|24: - return 1; + return 3 | VFCAP_OSD|VFCAP_HWSCALE_UP|VFCAP_HWSCALE_DOWN; } return 0; } diff -r 0b301fec999a -r e01c664def74 libvo/video_out_internal.h --- a/libvo/video_out_internal.h Thu Apr 11 20:56:17 2002 +0000 +++ b/libvo/video_out_internal.h Thu Apr 11 21:07:00 2002 +0000 @@ -21,6 +21,8 @@ * */ +#include "../libmpcodecs/vfcap.h" + static uint32_t control(uint32_t request, void *data, ...); static uint32_t config(uint32_t width, uint32_t height, uint32_t d_width, uint32_t d_height, uint32_t fullscreen, char *title, diff -r 0b301fec999a -r e01c664def74 libvo/vo_mpegpes.c --- a/libvo/vo_mpegpes.c Thu Apr 11 20:56:17 2002 +0000 +++ b/libvo/vo_mpegpes.c Thu Apr 11 21:07:00 2002 +0000 @@ -496,9 +496,9 @@ static uint32_t query_format(uint32_t format) { - if(format==IMGFMT_MPEGPES) return 1|256; + if(format==IMGFMT_MPEGPES) return 3|VFCAP_TIMER; #ifdef USE_LIBFAME - if(format==IMGFMT_YV12) return 1|256; + if(format==IMGFMT_YV12) return 1|VFCAP_TIMER|VFCAP_OSD; #endif return 0; } diff -r 0b301fec999a -r e01c664def74 libvo/vo_vesa.c --- a/libvo/vo_vesa.c Thu Apr 11 20:56:17 2002 +0000 +++ b/libvo/vo_vesa.c Thu Apr 11 21:07:00 2002 +0000 @@ -445,7 +445,7 @@ { if(verbose > 2) printf("vo_vesa: query_format was called: %x (%s)\n",format,vo_format_name(format)); - return 1; /* due new SwScale code */ + return 1 | VFCAP_OSD | VFCAP_SWSCALE; /* due new SwScale code */ } static void paintBkGnd( void ) diff -r 0b301fec999a -r e01c664def74 libvo/vo_x11.c --- a/libvo/vo_x11.c Thu Apr 11 20:56:17 2002 +0000 +++ b/libvo/vo_x11.c Thu Apr 11 21:07:00 2002 +0000 @@ -569,9 +569,9 @@ if (IMGFMT_IS_BGR(format)) { if (IMGFMT_BGR_DEPTH(format) == vo_depthonscreen) - return 0x1|0x2|0x4; + return 3|VFCAP_OSD|VFCAP_SWSCALE|VFCAP_FLIP; else - return 0x1|0x4; + return 1|VFCAP_OSD|VFCAP_SWSCALE|VFCAP_FLIP; } switch( format ) @@ -585,7 +585,7 @@ case IMGFMT_I420: case IMGFMT_IYUV: case IMGFMT_YV12: - return 0x1|0x4; + return 1|VFCAP_OSD|VFCAP_SWSCALE; } return 0; } diff -r 0b301fec999a -r e01c664def74 libvo/vo_xv.c --- a/libvo/vo_xv.c Thu Apr 11 20:56:17 2002 +0000 +++ b/libvo/vo_xv.c Thu Apr 11 21:07:00 2002 +0000 @@ -707,13 +707,11 @@ return VO_FALSE; } - static uint32_t query_format(uint32_t format) { - int flag=1; + int flag=3|VFCAP_HWSCALE_UP|VFCAP_HWSCALE_DOWN|VFCAP_OSD; // FIXME! check for DOWN /* check image formats */ - fo = XvListImageFormats(mDisplay, xv_port, (int*)&formats); - if(format==IMGFMT_BGR24){ format=IMGFMT_YV12;flag|=2;} // conversion! + if(format==IMGFMT_BGR24){ format=IMGFMT_YV12;flag&=~2;flag|=VFCAP_FLIP;} // conversion! for(i = 0; i < formats; i++){ // printf("Xvideo image format: 0x%x (%4.4s) %s\n", fo[i].id,(char*)&fo[i].id, (fo[i].format == XvPacked) ? "packed" : "planar"); if (fo[i].id == format) return flag; //xv_format = fo[i].id; @@ -792,6 +790,8 @@ return -1; } + fo = XvListImageFormats(mDisplay, xv_port, (int*)&formats); + return 0; } diff -r 0b301fec999a -r e01c664def74 libvo/vosub_vidix.c --- a/libvo/vosub_vidix.c Thu Apr 11 20:56:17 2002 +0000 +++ b/libvo/vosub_vidix.c Thu Apr 11 21:07:00 2002 +0000 @@ -31,6 +31,7 @@ #include "video_out.h" #include "../mp_image.h" +#include "../libmpcodecs/vfcap.h" #define NUM_FRAMES VID_PLAY_MAXFRAMES /* Temporary: driver will overwrite it */ #define UNUSED(x) ((void)(x)) /* Removes warning about unused arguments */ @@ -361,12 +362,12 @@ vo_server->draw_slice = vidix_draw_slice_swYV12; forced_fourcc=IMGFMT_YUY2; printf("vosub_vidix: WARNING!!! Using YV12 to YUY2 SW convertion\n"); - return 0x02; + return VFCAP_CSP_SUPPORTED|VFCAP_HWSCALE_UP|VFCAP_HWSCALE_DOWN; } } - return 0 ; + return 0; } - return 0x2; /* hw support without conversion */ + return VFCAP_CSP_SUPPORTED|VFCAP_CSP_SUPPORTED_BY_HW|VFCAP_HWSCALE_UP|VFCAP_HWSCALE_DOWN; } int vidix_grkey_support(void)