vp9_loop_filter_frame_mt: pass VP9LfSync directly

a step towards removing the pbi dependency

Change-Id: I10747b325e81c172f5e67031ea5159159fc26e91
This commit is contained in:
James Zern 2014-08-31 12:21:42 -07:00
parent ff3ae42d8c
commit eb3fdfba09
3 changed files with 6 additions and 4 deletions

View File

@ -1563,7 +1563,8 @@ void vp9_decode_frame(VP9Decoder *pbi,
if (!xd->corrupted) {
// If multiple threads are used to decode tiles, then we use those threads
// to do parallel loopfiltering.
vp9_loop_filter_frame_mt(new_fb, pbi, cm, cm->lf.filter_level, 0);
vp9_loop_filter_frame_mt(&pbi->lf_row_sync, new_fb, pbi, cm,
cm->lf.filter_level, 0);
}
} else {
*p_data_end = decode_tiles(pbi, data + first_partition_size, data_end);

View File

@ -133,11 +133,11 @@ static int loop_filter_row_worker(TileWorkerData *const tile_data,
// VP9 decoder: Implement multi-threaded loopfilter that uses the tile
// threads.
void vp9_loop_filter_frame_mt(YV12_BUFFER_CONFIG *frame,
void vp9_loop_filter_frame_mt(VP9LfSync *lf_sync,
YV12_BUFFER_CONFIG *frame,
VP9Decoder *pbi, VP9_COMMON *cm,
int frame_filter_level,
int y_only) {
VP9LfSync *const lf_sync = &pbi->lf_row_sync;
const VP9WorkerInterface *const winterface = vp9_get_worker_interface();
// Number of superblock rows and cols
const int sb_rows = mi_cols_aligned_to_sb(cm->mi_rows) >> MI_BLOCK_SIZE_LOG2;

View File

@ -49,7 +49,8 @@ void vp9_loop_filter_alloc(VP9LfSync *lf_sync, VP9_COMMON *cm, int rows,
void vp9_loop_filter_dealloc(VP9LfSync *lf_sync);
// Multi-threaded loopfilter that uses the tile threads.
void vp9_loop_filter_frame_mt(YV12_BUFFER_CONFIG *frame,
void vp9_loop_filter_frame_mt(VP9LfSync *lf_sync,
YV12_BUFFER_CONFIG *frame,
struct VP9Decoder *pbi,
struct VP9Common *cm,
int frame_filter_level,