[FFmpeg-cvslog] r18923 - trunk/libavcodec/h264.c
conrad
subversion
Sun May 24 05:39:20 CEST 2009
Author: conrad
Date: Sun May 24 05:39:20 2009
New Revision: 18923
Log:
H264: Don't deblock if alpha or beta is 0.
This ensures that the MMX loop filter is always bitexact with the C version.
Modified:
trunk/libavcodec/h264.c
Modified: trunk/libavcodec/h264.c
==============================================================================
--- trunk/libavcodec/h264.c Sun May 24 01:32:29 2009 (r18922)
+++ trunk/libavcodec/h264.c Sun May 24 05:39:20 2009 (r18923)
@@ -6003,6 +6003,7 @@ static void filter_mb_edgev( H264Context
const int index_a = qp + h->slice_alpha_c0_offset;
const int alpha = (alpha_table+52)[index_a];
const int beta = (beta_table+52)[qp + h->slice_beta_offset];
+ if (alpha ==0 || beta == 0) return;
if( bS[0] < 4 ) {
int8_t tc[4];
@@ -6019,6 +6020,7 @@ static void filter_mb_edgecv( H264Contex
const int index_a = qp + h->slice_alpha_c0_offset;
const int alpha = (alpha_table+52)[index_a];
const int beta = (beta_table+52)[qp + h->slice_beta_offset];
+ if (alpha ==0 || beta == 0) return;
if( bS[0] < 4 ) {
int8_t tc[4];
@@ -6187,6 +6189,7 @@ static void filter_mb_edgeh( H264Context
const int index_a = qp + h->slice_alpha_c0_offset;
const int alpha = (alpha_table+52)[index_a];
const int beta = (beta_table+52)[qp + h->slice_beta_offset];
+ if (alpha ==0 || beta == 0) return;
if( bS[0] < 4 ) {
int8_t tc[4];
@@ -6204,6 +6207,7 @@ static void filter_mb_edgech( H264Contex
const int index_a = qp + h->slice_alpha_c0_offset;
const int alpha = (alpha_table+52)[index_a];
const int beta = (beta_table+52)[qp + h->slice_beta_offset];
+ if (alpha ==0 || beta == 0) return;
if( bS[0] < 4 ) {
int8_t tc[4];
More information about the ffmpeg-cvslog
mailing list