diff options
author | Miguel Freitas <miguelfreitas@users.sourceforge.net> | 2002-01-05 13:49:30 +0000 |
---|---|---|
committer | Miguel Freitas <miguelfreitas@users.sourceforge.net> | 2002-01-05 13:49:30 +0000 |
commit | f62c4a0fe12cba680523de4a8ade43693c8f73fe (patch) | |
tree | 387e68c1827a3f8c002ac83b57cfed69037aec4e | |
parent | 3d5d2d88a06a59d82cdcf962f82e58abe69cb9bc (diff) | |
download | xine-lib-f62c4a0fe12cba680523de4a8ade43693c8f73fe.tar.gz xine-lib-f62c4a0fe12cba680523de4a8ade43693c8f73fe.tar.bz2 |
XV_DOUBLE_BUFFER support, missing header on libspudec makefile
CVS patchset: 1339
CVS date: 2002/01/05 13:49:30
-rw-r--r-- | src/libspudec/Makefile.am | 2 | ||||
-rw-r--r-- | src/video_out/video_out_xv.c | 23 |
2 files changed, 23 insertions, 2 deletions
diff --git a/src/libspudec/Makefile.am b/src/libspudec/Makefile.am index 939609bf1..13a81a31c 100644 --- a/src/libspudec/Makefile.am +++ b/src/libspudec/Makefile.am @@ -9,7 +9,7 @@ lib_LTLIBRARIES = xineplug_decode_spu.la xineplug_decode_spu_la_SOURCES = spu.c xine_decoder.c nav_read.c xineplug_decode_spu_la_LDFLAGS = -avoid-version -module -noinst_HEADERS = spu.h nav_read.h bswap.h +noinst_HEADERS = spu.h nav_read.h bswap.h nav_types.h include_HEADERS = spu_decoder_api.h ## diff --git a/src/video_out/video_out_xv.c b/src/video_out/video_out_xv.c index ec6264fc3..8306ec79c 100644 --- a/src/video_out/video_out_xv.c +++ b/src/video_out/video_out_xv.c @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA * - * $Id: video_out_xv.c,v 1.86 2001/12/14 16:50:57 f1rmb Exp $ + * $Id: video_out_xv.c,v 1.87 2002/01/05 13:49:30 miguelfreitas Exp $ * * video_out_xv.c, X11 video extension interface for xine * @@ -1226,6 +1226,21 @@ static void xv_update_XV_FILTER(void *this_gen, cfg_entry_t *entry) printf("video_out_xv: bilinear scaling mode (XV_FILTER) = %d\n",xv_filter); } +static void xv_update_XV_DOUBLE_BUFFER(void *this_gen, cfg_entry_t *entry) +{ + xv_driver_t *this = (xv_driver_t *) this_gen; + Atom atom; + int xv_double_buffer; + + xv_double_buffer = entry->num_value; + + atom = XInternAtom (this->display, "XV_DOUBLE_BUFFER", False); + + XvSetPortAttribute (this->display, this->xv_port, atom, xv_double_buffer); + printf("video_out_xv: double buffering mode = %d\n",xv_double_buffer); +} + + vo_driver_t *init_video_out_plugin (config_values_t *config, void *visual_gen) { xv_driver_t *this; @@ -1419,6 +1434,12 @@ vo_driver_t *init_video_out_plugin (config_values_t *config, void *visual_gen) { "bilinear scaling mode (permedia 2/3)", NULL, xv_update_XV_FILTER, this); config->update_num(config,"video.XV_FILTER",xv_filter); + } else if(!strcmp(attr[k].name, "XV_DOUBLE_BUFFER")) { + int xv_double_buffer; + xv_double_buffer = config->register_bool (config, "video.XV_DOUBLE_BUFFER", 1, + "double buffer to sync video to the retrace", + NULL, xv_update_XV_DOUBLE_BUFFER, this); + config->update_num(config,"video.XV_DOUBLE_BUFFER",xv_double_buffer); } } } |