summaryrefslogtreecommitdiff
path: root/vp9
diff options
context:
space:
mode:
authorJames Zern <jzern@google.com>2014-09-09 16:48:43 -0700
committerGerrit Code Review <gerrit@gerrit.golo.chromium.org>2014-09-09 16:48:43 -0700
commit6d65cb1552193b02a216136cb73d6a8b98e459ae (patch)
tree5e503583f91918d300644b6d8bf8f85fd60bf6b0 /vp9
parent89ffda0ddf6c8abc044b308cf36dcec883b36977 (diff)
parenta46ca6ec00aa0a8bdb0e0fff4ddd2db4257b3cbf (diff)
downloadlibvpx-6d65cb1552193b02a216136cb73d6a8b98e459ae.tar
libvpx-6d65cb1552193b02a216136cb73d6a8b98e459ae.tar.gz
libvpx-6d65cb1552193b02a216136cb73d6a8b98e459ae.tar.bz2
libvpx-6d65cb1552193b02a216136cb73d6a8b98e459ae.zip
Merge changes I660c1b7f,Id3cdf6b6
* changes: vp9_loop_filter_frame_mt: defer allocations vp9_loop_filter_alloc: reorder parameters
Diffstat (limited to 'vp9')
-rw-r--r--vp9/decoder/vp9_dthread.c10
-rw-r--r--vp9/decoder/vp9_dthread.h4
2 files changed, 6 insertions, 8 deletions
diff --git a/vp9/decoder/vp9_dthread.c b/vp9/decoder/vp9_dthread.c
index b82ea6a79..1572aa4ab 100644
--- a/vp9/decoder/vp9_dthread.c
+++ b/vp9/decoder/vp9_dthread.c
@@ -145,15 +145,13 @@ void vp9_loop_filter_frame_mt(YV12_BUFFER_CONFIG *frame,
const int num_workers = MIN(pbi->max_threads & ~1, tile_cols);
int i;
- // Allocate memory used in thread synchronization.
- // This always needs to be done even if frame_filter_level is 0.
+ if (!frame_filter_level) return;
+
if (!lf_sync->sync_range || cm->last_height != cm->height) {
vp9_loop_filter_dealloc(lf_sync);
- vp9_loop_filter_alloc(cm, lf_sync, sb_rows, cm->width);
+ vp9_loop_filter_alloc(lf_sync, cm, sb_rows, cm->width);
}
- if (!frame_filter_level) return;
-
vp9_loop_filter_frame_init(cm, frame_filter_level);
// Initialize cur_sb_col to -1 for all SB rows.
@@ -216,7 +214,7 @@ static int get_sync_range(int width) {
}
// Allocate memory for lf row synchronization
-void vp9_loop_filter_alloc(VP9_COMMON *cm, VP9LfSync *lf_sync, int rows,
+void vp9_loop_filter_alloc(VP9LfSync *lf_sync, VP9_COMMON *cm, int rows,
int width) {
lf_sync->rows = rows;
#if CONFIG_MULTITHREAD
diff --git a/vp9/decoder/vp9_dthread.h b/vp9/decoder/vp9_dthread.h
index 8b02ef71e..b1fbdeb74 100644
--- a/vp9/decoder/vp9_dthread.h
+++ b/vp9/decoder/vp9_dthread.h
@@ -42,8 +42,8 @@ typedef struct VP9LfSyncData {
} VP9LfSync;
// Allocate memory for loopfilter row synchronization.
-void vp9_loop_filter_alloc(struct VP9Common *cm, VP9LfSync *lf_sync,
- int rows, int width);
+void vp9_loop_filter_alloc(VP9LfSync *lf_sync, VP9_COMMON *cm, int rows,
+ int width);
// Deallocate loopfilter synchronization related mutex and data.
void vp9_loop_filter_dealloc(VP9LfSync *lf_sync);