summaryrefslogtreecommitdiff
path: root/src/video_out/xvmc_mocomp.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/video_out/xvmc_mocomp.c')
-rw-r--r--src/video_out/xvmc_mocomp.c37
1 files changed, 11 insertions, 26 deletions
diff --git a/src/video_out/xvmc_mocomp.c b/src/video_out/xvmc_mocomp.c
index 94c6e9906..ca6873ccb 100644
--- a/src/video_out/xvmc_mocomp.c
+++ b/src/video_out/xvmc_mocomp.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: xvmc_mocomp.c,v 1.1 2004/09/28 18:49:40 miguelfreitas Exp $
+ * $Id: xvmc_mocomp.c,v 1.2 2004/10/03 12:36:15 totte67 Exp $
*
* XvMC image support by Jack Kelliher
*/
@@ -236,31 +236,16 @@ void xxmc_xvmc_proc_macro_block(int x, int y, int mb_type, int motion_type,
fflush(stdout);
#endif
- if (picture_coding_type == XINE_PICT_B_TYPE)
- xvmc_render_macro_blocks(
- current_frame,
- backward_ref_frame,
- forward_ref_frame,
- picture_structure,
- second_field ? XVMC_SECOND_FIELD : 0,
- mbs);
- if (picture_coding_type == XINE_PICT_P_TYPE)
- xvmc_render_macro_blocks(
- current_frame,
- NULL,
- forward_ref_frame,
- picture_structure,
- second_field ? XVMC_SECOND_FIELD : 0,
- mbs);
- if (picture_coding_type == XINE_PICT_I_TYPE)
- xvmc_render_macro_blocks(
- current_frame,
- NULL,
- NULL,
- picture_structure,
- second_field ? XVMC_SECOND_FIELD : 0,
- mbs);
-
+ xvmc_render_macro_blocks(
+ current_frame,
+ (picture_coding_type == XINE_PICT_B_TYPE) ?
+ backward_ref_frame : NULL,
+ (picture_coding_type != XINE_PICT_I_TYPE) ?
+ forward_ref_frame : NULL,
+ picture_structure,
+ second_field ? XVMC_SECOND_FIELD : 0,
+ mbs);
+
mbs->num_blocks = 0;
mbs->macroblockptr = mbs->macroblockbaseptr;
mbs->xine_mc.blockptr = mbs->xine_mc.blockbaseptr;