mirror of https://git.ffmpeg.org/ffmpeg.git
Dont calculate any surrounding MVs for temporal MBs
Originally committed as revision 21793 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
0d88ff4ce0
commit
da452acac6
|
@ -947,7 +947,7 @@ static void fill_decode_caches(H264Context *h, int mb_type){
|
||||||
}
|
}
|
||||||
|
|
||||||
#if 1
|
#if 1
|
||||||
if(IS_INTER(mb_type) || IS_DIRECT(mb_type)){
|
if(IS_INTER(mb_type) || (IS_DIRECT(mb_type) && h->direct_spatial_mv_pred)){
|
||||||
int list;
|
int list;
|
||||||
for(list=0; list<h->list_count; list++){
|
for(list=0; list<h->list_count; list++){
|
||||||
if(!USES_LIST(mb_type, list) && !IS_DIRECT(mb_type)){
|
if(!USES_LIST(mb_type, list) && !IS_DIRECT(mb_type)){
|
||||||
|
@ -958,6 +958,8 @@ static void fill_decode_caches(H264Context *h, int mb_type){
|
||||||
}*/
|
}*/
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
assert(!(IS_DIRECT(mb_type) && !h->direct_spatial_mv_pred));
|
||||||
|
|
||||||
h->mv_cache_clean[list]= 0;
|
h->mv_cache_clean[list]= 0;
|
||||||
|
|
||||||
if(USES_LIST(top_type, list)){
|
if(USES_LIST(top_type, list)){
|
||||||
|
@ -990,9 +992,6 @@ static void fill_decode_caches(H264Context *h, int mb_type){
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if((IS_DIRECT(mb_type) && !h->direct_spatial_mv_pred))
|
|
||||||
continue;
|
|
||||||
|
|
||||||
if(USES_LIST(topleft_type, list)){
|
if(USES_LIST(topleft_type, list)){
|
||||||
const int b_xy = h->mb2b_xy[topleft_xy] + 3 + h->b_stride + (topleft_partition & 2*h->b_stride);
|
const int b_xy = h->mb2b_xy[topleft_xy] + 3 + h->b_stride + (topleft_partition & 2*h->b_stride);
|
||||||
const int b8_xy= h->mb2b8_xy[topleft_xy] + 1 + (topleft_partition & h->b8_stride);
|
const int b8_xy= h->mb2b8_xy[topleft_xy] + 1 + (topleft_partition & h->b8_stride);
|
||||||
|
|
Loading…
Reference in New Issue