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

Side by Side Diff: ffmpeg/source/patched-ffmpeg/libavcodec/vp8.h

Issue 8341002: VP8: fix up handling of segmentation_maps in reference frames. (Closed) Base URL: svn://chrome-svn/chrome/trunk/deps/third_party
Patch Set: merge Created 9 years, 2 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /** 1 /**
2 * VP8 compatible video decoder 2 * VP8 compatible video decoder
3 * 3 *
4 * Copyright (C) 2010 David Conrad 4 * Copyright (C) 2010 David Conrad
5 * Copyright (C) 2010 Ronald S. Bultje 5 * Copyright (C) 2010 Ronald S. Bultje
6 * Copyright (C) 2010 Jason Garrett-Glaser 6 * Copyright (C) 2010 Jason Garrett-Glaser
7 * 7 *
8 * This file is part of FFmpeg. 8 * This file is part of FFmpeg.
9 * 9 *
10 * FFmpeg is free software; you can redistribute it and/or 10 * FFmpeg is free software; you can redistribute it and/or
(...skipping 112 matching lines...) Expand 10 before | Expand all | Expand 10 after
123 uint8_t simple; 123 uint8_t simple;
124 uint8_t level; 124 uint8_t level;
125 uint8_t sharpness; 125 uint8_t sharpness;
126 } filter; 126 } filter;
127 127
128 VP8Macroblock *macroblocks; 128 VP8Macroblock *macroblocks;
129 VP8FilterStrength *filter_strength; 129 VP8FilterStrength *filter_strength;
130 130
131 uint8_t *intra4x4_pred_mode_top; 131 uint8_t *intra4x4_pred_mode_top;
132 uint8_t intra4x4_pred_mode_left[4]; 132 uint8_t intra4x4_pred_mode_left[4];
133 uint8_t *segmentation_map;
134 133
135 /** 134 /**
136 * Macroblocks can have one of 4 different quants in a frame when 135 * Macroblocks can have one of 4 different quants in a frame when
137 * segmentation is enabled. 136 * segmentation is enabled.
138 * If segmentation is disabled, only the first segment's values are used. 137 * If segmentation is disabled, only the first segment's values are used.
139 */ 138 */
140 struct { 139 struct {
141 // [0] - DC qmul [1] - AC qmul 140 // [0] - DC qmul [1] - AC qmul
142 int16_t luma_qmul[2]; 141 int16_t luma_qmul[2];
143 int16_t luma_dc_qmul[2]; ///< luma dc-only block quant 142 int16_t luma_dc_qmul[2]; ///< luma dc-only block quant
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after
230 * All coefficients are contained in separate arith coding contexts. 229 * All coefficients are contained in separate arith coding contexts.
231 * There can be 1, 2, 4, or 8 of these after the header context. 230 * There can be 1, 2, 4, or 8 of these after the header context.
232 */ 231 */
233 int num_coeff_partitions; 232 int num_coeff_partitions;
234 VP56RangeCoder coeff_partition[8]; 233 VP56RangeCoder coeff_partition[8];
235 DSPContext dsp; 234 DSPContext dsp;
236 VP8DSPContext vp8dsp; 235 VP8DSPContext vp8dsp;
237 H264PredContext hpc; 236 H264PredContext hpc;
238 vp8_mc_func put_pixels_tab[3][3][3]; 237 vp8_mc_func put_pixels_tab[3][3][3];
239 AVFrame frames[5]; 238 AVFrame frames[5];
239
240 /**
241 * A list of segmentation_map buffers that are to be free()'ed in
242 * the next decoding iteration. We can't free() them right away
243 * because the map may still be used by subsequent decoding threads.
244 * Unused if frame threading is off.
245 */
246 uint8_t *segmentation_maps[5];
247 int num_maps_to_be_freed;
248 int maps_are_invalid;
240 } VP8Context; 249 } VP8Context;
241 250
242 #endif /* AVCODEC_VP8_H */ 251 #endif /* AVCODEC_VP8_H */
OLDNEW
« no previous file with comments | « ffmpeg/patches/to_upstream/42_vp8_fix_segmentation_maps.patch ('k') | ffmpeg/source/patched-ffmpeg/libavcodec/vp8.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698