[prev in list] [next in list] [prev in thread] [next in thread] 

List:       xine-cvslog
Subject:    [xine-cvs] CVS: xine-lib/src/post/planar expand.c,1.15,1.16
From:       Jason Tackaberry <tack () users ! sourceforge ! net>
Date:       2006-08-27 16:27:54
Message-ID: E1GHNUI-000336-V2 () sc8-pr-cvs10 ! sourceforge ! net
[Download RAW message or body]

Update of /cvsroot/xine/xine-lib/src/post/planar
In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv11279

Modified Files:
	expand.c 
Log Message:
Fix bug where incorrect aspect ratio was being passed to post plugins up
the pipeline.


Index: expand.c
===================================================================
RCS file: /cvsroot/xine/xine-lib/src/post/planar/expand.c,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -r1.15 -r1.16
--- expand.c	27 Jan 2006 07:46:14 -0000	1.15
+++ expand.c	27 Aug 2006 16:27:52 -0000	1.16
@@ -106,6 +106,7 @@
 static vo_frame_t    *expand_get_frame(xine_video_port_t *port_gen, uint32_t width, 
 				       uint32_t height, double ratio, 
 				       int format, int flags);
+static int            expand_draw(vo_frame_t *frame, xine_stream_t *stream);
 
 /* overlay manager intercept check */
 static int            expand_intercept_ovl(post_video_port_t *port);
@@ -155,6 +156,7 @@
   
   port = _x_post_intercept_video_port(&this->post, video_target[0], &input, &output);
   port->new_port.get_frame     = expand_get_frame;
+  port->new_frame->draw        = expand_draw;
   port->intercept_ovl          = expand_intercept_ovl;
   port->new_manager->add_event = expand_overlay_add_event;
   
@@ -241,6 +243,20 @@
 }
 
 
+static int expand_draw(vo_frame_t *frame, xine_stream_t *stream)
+{
+    post_video_port_t *port = (post_video_port_t *)frame->port;
+    post_expand_t *this = (post_expand_t *)port->post;
+    int skip;
+
+    frame->ratio = this->aspect;
+    _x_post_frame_copy_down(frame, frame->next);
+    skip = frame->next->draw(frame->next, stream);
+    _x_post_frame_copy_up(frame, frame->next);
+    return skip;
+}
+
+
 static vo_frame_t *expand_get_frame(xine_video_port_t *port_gen, uint32_t width, 
 				    uint32_t height, double ratio, 
 				    int format, int flags)
@@ -275,7 +291,7 @@
      * from the decoders by modifying the pointers to and
      * the size of the drawing area */
     frame->height = height;
-    frame->ratio  = this->aspect;
+    frame->ratio  = ratio;
     switch (format) {
     case XINE_IMGFMT_YV12:
       /* paint top bar */


-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Xine-cvslog mailing list
Xine-cvslog@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/xine-cvslog
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic