summaryrefslogtreecommitdiff
path: root/vp9/encoder/vp9_firstpass.c
diff options
context:
space:
mode:
authorYunqing Wang <yunqingwang@google.com>2014-11-21 11:11:06 -0800
committerYunqing Wang <yunqingwang@google.com>2014-11-24 17:57:38 -0800
commitedbd61e1362978150b5681125d93cb2bffbb5c53 (patch)
treed9b9d651da0b22861bc326244ad4ba6826b5081b /vp9/encoder/vp9_firstpass.c
parent60ef6c073556b75fe46754a6ae5ca1008ffea8b4 (diff)
downloadlibvpx-edbd61e1362978150b5681125d93cb2bffbb5c53.tar
libvpx-edbd61e1362978150b5681125d93cb2bffbb5c53.tar.gz
libvpx-edbd61e1362978150b5681125d93cb2bffbb5c53.tar.bz2
libvpx-edbd61e1362978150b5681125d93cb2bffbb5c53.zip
vp9_ethread: modify VP9_COMP structure
This patch modified struct VP9_COMP. Created a struct ThreadData to include data that need to be copied for each thread. In multiple thread case, one thread processes one tile. all threads share one copy of VP9_COMP, (refer to VP9_COMP *cpi in the code) but each thread has its own copy of ThreadData, (refer to ThreadData *td in the code). Therefore, within the scope of encode_tiles(), both cpi and td need to be passed as function parameters. In single thread case, the FRAME_COUNTS pointer in ThreadData points to "counts" in VP9_COMMON. Change-Id: Ib37908b2d8e2c0f4f9c18f38017df5ce60e8b13e
Diffstat (limited to 'vp9/encoder/vp9_firstpass.c')
-rw-r--r--vp9/encoder/vp9_firstpass.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/vp9/encoder/vp9_firstpass.c b/vp9/encoder/vp9_firstpass.c
index 8f14d4c8e..74f5efbec 100644
--- a/vp9/encoder/vp9_firstpass.c
+++ b/vp9/encoder/vp9_firstpass.c
@@ -450,13 +450,13 @@ static void set_first_pass_params(VP9_COMP *cpi) {
void vp9_first_pass(VP9_COMP *cpi, const struct lookahead_entry *source) {
int mb_row, mb_col;
- MACROBLOCK *const x = &cpi->mb;
+ MACROBLOCK *const x = &cpi->td.mb;
VP9_COMMON *const cm = &cpi->common;
MACROBLOCKD *const xd = &x->e_mbd;
TileInfo tile;
struct macroblock_plane *const p = x->plane;
struct macroblockd_plane *const pd = xd->plane;
- const PICK_MODE_CONTEXT *ctx = &cpi->pc_root->none;
+ const PICK_MODE_CONTEXT *ctx = &cpi->td.pc_root->none;
int i;
int recon_yoffset, recon_uvoffset;