Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(185)

Unified Diff: source/libvpx/vp9/decoder/vp9_dthread.c

Issue 996503002: libvpx: Pull from upstream (Closed) Base URL: https://chromium.googlesource.com/chromium/deps/libvpx.git@master
Patch Set: Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « source/libvpx/vp9/decoder/vp9_decoder.h ('k') | source/libvpx/vp9/encoder/vp9_aq_cyclicrefresh.c » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: source/libvpx/vp9/decoder/vp9_dthread.c
diff --git a/source/libvpx/vp9/decoder/vp9_dthread.c b/source/libvpx/vp9/decoder/vp9_dthread.c
index d2a2b819c702e9cd593cf70490762a1fcf5b8f5d..be2e6cd15ef663949cf9d2e2c7d07ac9f7eb6977 100644
--- a/source/libvpx/vp9/decoder/vp9_dthread.c
+++ b/source/libvpx/vp9/decoder/vp9_dthread.c
@@ -38,9 +38,15 @@ void vp9_frameworker_unlock_stats(VP9Worker *const worker) {
void vp9_frameworker_signal_stats(VP9Worker *const worker) {
#if CONFIG_MULTITHREAD
FrameWorkerData *const worker_data = worker->data1;
- // TODO(hkuang): Investigate using broadcast or signal.
+
+// TODO(hkuang): Fix the pthread_cond_broadcast in windows wrapper.
+#if defined(_WIN32) && !HAVE_PTHREAD_H
pthread_cond_signal(&worker_data->stats_cond);
#else
+ pthread_cond_broadcast(&worker_data->stats_cond);
+#endif
+
+#else
(void)worker;
#endif
}
@@ -144,44 +150,22 @@ void vp9_frameworker_copy_context(VP9Worker *const dst_worker,
&src_worker_data->stats_mutex);
}
- // src worker may have already finished decoding a frame and swapped the mi.
- // TODO(hkuang): Remove following code after implenment no ModeInfo decoding.
- if (src_worker_data->frame_decoded) {
- dst_cm->prev_mip = src_cm->prev_mip;
- dst_cm->prev_mi = src_cm->prev_mi;
- } else {
- dst_cm->prev_mip = src_cm->mip;
- dst_cm->prev_mi = src_cm->mi;
- }
-
dst_cm->last_frame_seg_map = src_cm->seg.enabled ?
src_cm->current_frame_seg_map : src_cm->last_frame_seg_map;
dst_worker_data->pbi->need_resync = src_worker_data->pbi->need_resync;
vp9_frameworker_unlock_stats(src_worker);
- dst_worker_data->pbi->prev_buf =
- src_worker_data->pbi->common.show_existing_frame ?
- NULL : src_worker_data->pbi->cur_buf;
-
dst_cm->prev_frame = src_cm->show_existing_frame ?
src_cm->prev_frame : src_cm->cur_frame;
dst_cm->last_width = !src_cm->show_existing_frame ?
src_cm->width : src_cm->last_width;
dst_cm->last_height = !src_cm->show_existing_frame ?
src_cm->height : src_cm->last_height;
- dst_cm->display_width = src_cm->display_width;
- dst_cm->display_height = src_cm->display_height;
dst_cm->subsampling_x = src_cm->subsampling_x;
dst_cm->subsampling_y = src_cm->subsampling_y;
+ dst_cm->frame_type = src_cm->frame_type;
dst_cm->last_show_frame = !src_cm->show_existing_frame ?
src_cm->show_frame : src_cm->last_show_frame;
- dst_cm->last_frame_type = src_cm->last_frame_type;
- dst_cm->frame_type = src_cm->frame_type;
- dst_cm->y_dc_delta_q = src_cm->y_dc_delta_q;
- dst_cm->uv_dc_delta_q = src_cm->uv_dc_delta_q;
- dst_cm->uv_ac_delta_q = src_cm->uv_ac_delta_q;
- dst_cm->base_qindex = src_cm->base_qindex;
-
for (i = 0; i < REF_FRAMES; ++i)
dst_cm->ref_frame_map[i] = src_cm->next_ref_frame_map[i];
« no previous file with comments | « source/libvpx/vp9/decoder/vp9_decoder.h ('k') | source/libvpx/vp9/encoder/vp9_aq_cyclicrefresh.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698