Commit b75e10d5 authored by Loren Merritt's avatar Loren Merritt

vismv didn't display 8x8 mvs in H.264

Originally committed as revision 4000 to svn://svn.ffmpeg.org/ffmpeg/trunk
parent e21f3983
...@@ -582,7 +582,7 @@ static inline void fill_caches(H264Context *h, int mb_type, int for_deblock){ ...@@ -582,7 +582,7 @@ static inline void fill_caches(H264Context *h, int mb_type, int for_deblock){
if(IS_INTER(mb_type) || (IS_DIRECT(mb_type) && h->direct_spatial_mv_pred)){ if(IS_INTER(mb_type) || (IS_DIRECT(mb_type) && h->direct_spatial_mv_pred)){
int list; int list;
for(list=0; list<2; list++){ for(list=0; list<2; list++){
if((!IS_8X8(mb_type)) && !USES_LIST(mb_type, list) && !IS_DIRECT(mb_type) && !for_deblock){ if(!USES_LIST(mb_type, list) && !IS_DIRECT(mb_type) && !for_deblock){
/*if(!h->mv_cache_clean[list]){ /*if(!h->mv_cache_clean[list]){
memset(h->mv_cache [list], 0, 8*5*2*sizeof(int16_t)); //FIXME clean only input? clean at all? memset(h->mv_cache [list], 0, 8*5*2*sizeof(int16_t)); //FIXME clean only input? clean at all?
memset(h->ref_cache[list], PART_NOT_AVAILABLE, 8*5*sizeof(int8_t)); memset(h->ref_cache[list], PART_NOT_AVAILABLE, 8*5*sizeof(int8_t));
...@@ -1239,7 +1239,7 @@ static inline void write_back_motion(H264Context *h, int mb_type){ ...@@ -1239,7 +1239,7 @@ static inline void write_back_motion(H264Context *h, int mb_type){
for(list=0; list<2; list++){ for(list=0; list<2; list++){
int y; int y;
if((!IS_8X8(mb_type)) && !USES_LIST(mb_type, list)){ if(!USES_LIST(mb_type, list)){
if(1){ //FIXME skip or never read if mb_type doesnt use it if(1){ //FIXME skip or never read if mb_type doesnt use it
for(y=0; y<4; y++){ for(y=0; y<4; y++){
*(uint64_t*)s->current_picture.motion_val[list][b_xy + 0 + y*h->b_stride]= *(uint64_t*)s->current_picture.motion_val[list][b_xy + 0 + y*h->b_stride]=
......
...@@ -353,8 +353,8 @@ static const PMbInfo p_mb_type_info[5]={ ...@@ -353,8 +353,8 @@ static const PMbInfo p_mb_type_info[5]={
{MB_TYPE_16x16|MB_TYPE_P0L0 , 1}, {MB_TYPE_16x16|MB_TYPE_P0L0 , 1},
{MB_TYPE_16x8 |MB_TYPE_P0L0|MB_TYPE_P1L0, 2}, {MB_TYPE_16x8 |MB_TYPE_P0L0|MB_TYPE_P1L0, 2},
{MB_TYPE_8x16 |MB_TYPE_P0L0|MB_TYPE_P1L0, 2}, {MB_TYPE_8x16 |MB_TYPE_P0L0|MB_TYPE_P1L0, 2},
{MB_TYPE_8x8 , 4}, {MB_TYPE_8x8 |MB_TYPE_P0L0|MB_TYPE_P1L0, 4},
{MB_TYPE_8x8 |MB_TYPE_REF0 , 4}, {MB_TYPE_8x8 |MB_TYPE_P0L0|MB_TYPE_P1L0|MB_TYPE_REF0, 4},
}; };
static const PMbInfo p_sub_mb_type_info[4]={ static const PMbInfo p_sub_mb_type_info[4]={
...@@ -387,7 +387,7 @@ static const PMbInfo b_mb_type_info[23]={ ...@@ -387,7 +387,7 @@ static const PMbInfo b_mb_type_info[23]={
{MB_TYPE_8x16 |MB_TYPE_P0L0|MB_TYPE_P0L1 |MB_TYPE_P1L1, 2, }, {MB_TYPE_8x16 |MB_TYPE_P0L0|MB_TYPE_P0L1 |MB_TYPE_P1L1, 2, },
{MB_TYPE_16x8 |MB_TYPE_P0L0|MB_TYPE_P0L1|MB_TYPE_P1L0|MB_TYPE_P1L1, 2, }, {MB_TYPE_16x8 |MB_TYPE_P0L0|MB_TYPE_P0L1|MB_TYPE_P1L0|MB_TYPE_P1L1, 2, },
{MB_TYPE_8x16 |MB_TYPE_P0L0|MB_TYPE_P0L1|MB_TYPE_P1L0|MB_TYPE_P1L1, 2, }, {MB_TYPE_8x16 |MB_TYPE_P0L0|MB_TYPE_P0L1|MB_TYPE_P1L0|MB_TYPE_P1L1, 2, },
{MB_TYPE_8x8 , 4, }, {MB_TYPE_8x8 |MB_TYPE_P0L0|MB_TYPE_P0L1|MB_TYPE_P1L0|MB_TYPE_P1L1, 4, },
}; };
static const PMbInfo b_sub_mb_type_info[13]={ static const PMbInfo b_sub_mb_type_info[13]={
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment