[x264-devel] commit: Fix regression in r1449 (Jason Garrett-Glaser )
git version control
git at videolan.org
Sat Feb 27 01:16:54 CET 2010
x264 | branch: master | Jason Garrett-Glaser <darkshikari at gmail.com> | Thu Feb 25 02:07:48 2010 -0800| [7eac2495b2d32d6328bf68abbc4bb67006a0737a] | committer: Jason Garrett-Glaser
Fix regression in r1449
Incorrectly placed thread MV check could result in rare thread MV internal errors, esp. with --non-deterministic.
These weren't fatal errors (x264 could recover and continue with slight compression loss).
> http://git.videolan.org/gitweb.cgi/x264.git/?a=commit;h=7eac2495b2d32d6328bf68abbc4bb67006a0737a
---
common/macroblock.c | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/common/macroblock.c b/common/macroblock.c
index b4d0bfb..0d4f155 100644
--- a/common/macroblock.c
+++ b/common/macroblock.c
@@ -286,9 +286,6 @@ static int x264_mb_predict_mv_direct16x16_spatial( x264_t *h )
return 1;
}
- if( !M64( mv ) || IS_INTRA( type_col ) || (ref[0]&&ref[1]) )
- return 1;
-
if( h->param.i_threads > 1
&& ( mv[0][1] > h->mb.mv_max_spel[1]
|| mv[1][1] > h->mb.mv_max_spel[1] ) )
@@ -301,6 +298,9 @@ static int x264_mb_predict_mv_direct16x16_spatial( x264_t *h )
return 0;
}
+ if( !M64( mv ) || IS_INTRA( type_col ) || (ref[0]&&ref[1]) )
+ return 1;
+
/* Don't do any checks other than the ones we have to, based
* on the size of the colocated partitions.
* Depends on the enum order: D_8x8, D_16x8, D_8x16, D_16x16 */
More information about the x264-devel
mailing list