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

Side by Side Diff: source/libvpx/vpx/vp8cx.h

Issue 592203002: libvpx: Pull from upstream (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/deps/third_party/libvpx/
Patch Set: Created 6 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
« no previous file with comments | « source/libvpx/vpx/svc_context.h ('k') | source/libvpx/vpx/vpx_encoder.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2010 The WebM project authors. All Rights Reserved. 2 * Copyright (c) 2010 The WebM project authors. All Rights Reserved.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license 4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source 5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found 6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may 7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree. 8 * be found in the AUTHORS file in the root of the source tree.
9 */ 9 */
10 #ifndef VPX_VP8CX_H_ 10 #ifndef VPX_VP8CX_H_
(...skipping 130 matching lines...) Expand 10 before | Expand all | Expand 10 after
141 * of motion estimation methods. Values greater than 0 will increase encoder 141 * of motion estimation methods. Values greater than 0 will increase encoder
142 * speed at the expense of quality. 142 * speed at the expense of quality.
143 * The full set of adjustments can be found in 143 * The full set of adjustments can be found in
144 * onyx_if.c:vp8_set_speed_features(). 144 * onyx_if.c:vp8_set_speed_features().
145 * \todo List highlights of the changes at various levels. 145 * \todo List highlights of the changes at various levels.
146 * 146 *
147 * \note Valid range: -16..16 147 * \note Valid range: -16..16
148 */ 148 */
149 VP8E_SET_CPUUSED = 13, 149 VP8E_SET_CPUUSED = 13,
150 VP8E_SET_ENABLEAUTOALTREF, /**< control function to enable vp8 to automa tic set and use altref frame */ 150 VP8E_SET_ENABLEAUTOALTREF, /**< control function to enable vp8 to automa tic set and use altref frame */
151 VP8E_SET_NOISE_SENSITIVITY, /**< control function to set noise sensitivit y */ 151 /*!\brief control function to set noise sensitivity
152 *
153 * 0: off, 1: OnYOnly, 2: OnYUV,
154 * 3: OnYUVAggressive, 4: Adaptive
155 */
156 VP8E_SET_NOISE_SENSITIVITY,
152 VP8E_SET_SHARPNESS, /**< control function to set sharpness */ 157 VP8E_SET_SHARPNESS, /**< control function to set sharpness */
153 VP8E_SET_STATIC_THRESHOLD, /**< control function to set the threshold fo r macroblocks treated static */ 158 VP8E_SET_STATIC_THRESHOLD, /**< control function to set the threshold fo r macroblocks treated static */
154 VP8E_SET_TOKEN_PARTITIONS, /**< control function to set the number of to ken partitions */ 159 VP8E_SET_TOKEN_PARTITIONS, /**< control function to set the number of to ken partitions */
155 VP8E_GET_LAST_QUANTIZER, /**< return the quantizer chosen by the 160 VP8E_GET_LAST_QUANTIZER, /**< return the quantizer chosen by the
156 encoder for the last frame using the i nternal 161 encoder for the last frame using the i nternal
157 scale */ 162 scale */
158 VP8E_GET_LAST_QUANTIZER_64, /**< return the quantizer chosen by the 163 VP8E_GET_LAST_QUANTIZER_64, /**< return the quantizer chosen by the
159 encoder for the last frame, using the 0..63 164 encoder for the last frame, using the 0..63
160 scale as used by the rc_*_quantizer co nfig 165 scale as used by the rc_*_quantizer co nfig
161 parameters */ 166 parameters */
(...skipping 28 matching lines...) Expand all
190 VP8E_SET_MAX_INTRA_BITRATE_PCT, 195 VP8E_SET_MAX_INTRA_BITRATE_PCT,
191 196
192 197
193 /* TODO(jkoleszar): Move to vp9cx.h */ 198 /* TODO(jkoleszar): Move to vp9cx.h */
194 VP9E_SET_LOSSLESS, 199 VP9E_SET_LOSSLESS,
195 VP9E_SET_TILE_COLUMNS, 200 VP9E_SET_TILE_COLUMNS,
196 VP9E_SET_TILE_ROWS, 201 VP9E_SET_TILE_ROWS,
197 VP9E_SET_FRAME_PARALLEL_DECODING, 202 VP9E_SET_FRAME_PARALLEL_DECODING,
198 VP9E_SET_AQ_MODE, 203 VP9E_SET_AQ_MODE,
199 VP9E_SET_FRAME_PERIODIC_BOOST, 204 VP9E_SET_FRAME_PERIODIC_BOOST,
205 /*!\brief control function to set noise sensitivity
206 *
207 * 0: off, 1: OnYOnly
208 */
209 VP9E_SET_NOISE_SENSITIVITY,
200 210
201 VP9E_SET_SVC, 211 VP9E_SET_SVC,
202 VP9E_SET_SVC_PARAMETERS, 212 VP9E_SET_SVC_PARAMETERS,
203 /*!\brief control function to set svc layer for spatial and temporal. 213 /*!\brief control function to set svc layer for spatial and temporal.
204 * \note Valid ranges: 0..#vpx_codec_enc_cfg::ss_number_layers for spatial 214 * \note Valid ranges: 0..#vpx_codec_enc_cfg::ss_number_layers for spatial
205 * layer and 0..#vpx_codec_enc_cfg::ts_number_layers for 215 * layer and 0..#vpx_codec_enc_cfg::ts_number_layers for
206 * temporal layer. 216 * temporal layer.
207 */ 217 */
208 VP9E_SET_SVC_LAYER_ID, 218 VP9E_SET_SVC_LAYER_ID,
209 VP9E_SET_TUNE_CONTENT 219 VP9E_SET_TUNE_CONTENT
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after
288 /*!\brief VP8 model tuning parameters 298 /*!\brief VP8 model tuning parameters
289 * 299 *
290 * Changes the encoder to tune for certain types of input material. 300 * Changes the encoder to tune for certain types of input material.
291 * 301 *
292 */ 302 */
293 typedef enum { 303 typedef enum {
294 VP8_TUNE_PSNR, 304 VP8_TUNE_PSNR,
295 VP8_TUNE_SSIM 305 VP8_TUNE_SSIM
296 } vp8e_tuning; 306 } vp8e_tuning;
297 307
298 /*!\brief vp9 svc parameters
299 *
300 * This defines parameters for svc encoding.
301 *
302 */
303 typedef struct vpx_svc_parameters {
304 unsigned int width; /**< width of current spatial layer */
305 unsigned int height; /**< height of current spatial layer */
306 int spatial_layer; /**< current spatial layer number - 0 = base */
307 int temporal_layer; /**< current temporal layer number - 0 = base */
308 int max_quantizer; /**< max quantizer for current layer */
309 int min_quantizer; /**< min quantizer for current layer */
310 int distance_from_i_frame; /**< frame number within current gop */
311 int lst_fb_idx; /**< last frame frame buffer index */
312 int gld_fb_idx; /**< golden frame frame buffer index */
313 int alt_fb_idx; /**< alt reference frame frame buffer index */
314 } vpx_svc_parameters_t;
315
316 /*!\brief vp9 svc layer parameters 308 /*!\brief vp9 svc layer parameters
317 * 309 *
318 * This defines the spatial and temporal layer id numbers for svc encoding. 310 * This defines the spatial and temporal layer id numbers for svc encoding.
319 * This is used with the #VP9E_SET_SVC_LAYER_ID control to set the spatial and 311 * This is used with the #VP9E_SET_SVC_LAYER_ID control to set the spatial and
320 * temporal layer id for the current frame. 312 * temporal layer id for the current frame.
321 * 313 *
322 */ 314 */
323 typedef struct vpx_svc_layer_id { 315 typedef struct vpx_svc_layer_id {
324 int spatial_layer_id; /**< Spatial layer id number. */ 316 int spatial_layer_id; /**< Spatial layer id number. */
325 int temporal_layer_id; /**< Temporal layer id number. */ 317 int temporal_layer_id; /**< Temporal layer id number. */
(...skipping 12 matching lines...) Expand all
338 */ 330 */
339 VPX_CTRL_USE_TYPE_DEPRECATED(VP8E_UPD_ENTROPY, int) 331 VPX_CTRL_USE_TYPE_DEPRECATED(VP8E_UPD_ENTROPY, int)
340 VPX_CTRL_USE_TYPE_DEPRECATED(VP8E_UPD_REFERENCE, int) 332 VPX_CTRL_USE_TYPE_DEPRECATED(VP8E_UPD_REFERENCE, int)
341 VPX_CTRL_USE_TYPE_DEPRECATED(VP8E_USE_REFERENCE, int) 333 VPX_CTRL_USE_TYPE_DEPRECATED(VP8E_USE_REFERENCE, int)
342 334
343 VPX_CTRL_USE_TYPE(VP8E_SET_ROI_MAP, vpx_roi_map_t *) 335 VPX_CTRL_USE_TYPE(VP8E_SET_ROI_MAP, vpx_roi_map_t *)
344 VPX_CTRL_USE_TYPE(VP8E_SET_ACTIVEMAP, vpx_active_map_t *) 336 VPX_CTRL_USE_TYPE(VP8E_SET_ACTIVEMAP, vpx_active_map_t *)
345 VPX_CTRL_USE_TYPE(VP8E_SET_SCALEMODE, vpx_scaling_mode_t *) 337 VPX_CTRL_USE_TYPE(VP8E_SET_SCALEMODE, vpx_scaling_mode_t *)
346 338
347 VPX_CTRL_USE_TYPE(VP9E_SET_SVC, int) 339 VPX_CTRL_USE_TYPE(VP9E_SET_SVC, int)
348 VPX_CTRL_USE_TYPE(VP9E_SET_SVC_PARAMETERS, vpx_svc_parameters_t *) 340 VPX_CTRL_USE_TYPE(VP9E_SET_SVC_PARAMETERS, void *)
349 VPX_CTRL_USE_TYPE(VP9E_SET_SVC_LAYER_ID, vpx_svc_layer_id_t *) 341 VPX_CTRL_USE_TYPE(VP9E_SET_SVC_LAYER_ID, vpx_svc_layer_id_t *)
350 342
351 VPX_CTRL_USE_TYPE(VP8E_SET_CPUUSED, int) 343 VPX_CTRL_USE_TYPE(VP8E_SET_CPUUSED, int)
352 VPX_CTRL_USE_TYPE(VP8E_SET_ENABLEAUTOALTREF, unsigned int) 344 VPX_CTRL_USE_TYPE(VP8E_SET_ENABLEAUTOALTREF, unsigned int)
353 VPX_CTRL_USE_TYPE(VP8E_SET_NOISE_SENSITIVITY, unsigned int) 345 VPX_CTRL_USE_TYPE(VP8E_SET_NOISE_SENSITIVITY, unsigned int)
354 VPX_CTRL_USE_TYPE(VP8E_SET_SHARPNESS, unsigned int) 346 VPX_CTRL_USE_TYPE(VP8E_SET_SHARPNESS, unsigned int)
355 VPX_CTRL_USE_TYPE(VP8E_SET_STATIC_THRESHOLD, unsigned int) 347 VPX_CTRL_USE_TYPE(VP8E_SET_STATIC_THRESHOLD, unsigned int)
356 VPX_CTRL_USE_TYPE(VP8E_SET_TOKEN_PARTITIONS, int) /* vp8e_token_partitions */ 348 VPX_CTRL_USE_TYPE(VP8E_SET_TOKEN_PARTITIONS, int) /* vp8e_token_partitions */
357 349
358 VPX_CTRL_USE_TYPE(VP8E_SET_ARNR_MAXFRAMES, unsigned int) 350 VPX_CTRL_USE_TYPE(VP8E_SET_ARNR_MAXFRAMES, unsigned int)
(...skipping 11 matching lines...) Expand all
370 VPX_CTRL_USE_TYPE(VP8E_SET_MAX_INTRA_BITRATE_PCT, unsigned int) 362 VPX_CTRL_USE_TYPE(VP8E_SET_MAX_INTRA_BITRATE_PCT, unsigned int)
371 363
372 VPX_CTRL_USE_TYPE(VP9E_SET_LOSSLESS, unsigned int) 364 VPX_CTRL_USE_TYPE(VP9E_SET_LOSSLESS, unsigned int)
373 365
374 VPX_CTRL_USE_TYPE(VP9E_SET_FRAME_PARALLEL_DECODING, unsigned int) 366 VPX_CTRL_USE_TYPE(VP9E_SET_FRAME_PARALLEL_DECODING, unsigned int)
375 367
376 VPX_CTRL_USE_TYPE(VP9E_SET_AQ_MODE, unsigned int) 368 VPX_CTRL_USE_TYPE(VP9E_SET_AQ_MODE, unsigned int)
377 369
378 VPX_CTRL_USE_TYPE(VP9E_SET_FRAME_PERIODIC_BOOST, unsigned int) 370 VPX_CTRL_USE_TYPE(VP9E_SET_FRAME_PERIODIC_BOOST, unsigned int)
379 371
372 VPX_CTRL_USE_TYPE(VP9E_SET_NOISE_SENSITIVITY, unsigned int)
373
380 VPX_CTRL_USE_TYPE(VP9E_SET_TUNE_CONTENT, int) /* vp9e_tune_content */ 374 VPX_CTRL_USE_TYPE(VP9E_SET_TUNE_CONTENT, int) /* vp9e_tune_content */
381 /*! @} - end defgroup vp8_encoder */ 375 /*! @} - end defgroup vp8_encoder */
382 #ifdef __cplusplus 376 #ifdef __cplusplus
383 } // extern "C" 377 } // extern "C"
384 #endif 378 #endif
385 379
386 #endif // VPX_VP8CX_H_ 380 #endif // VPX_VP8CX_H_
OLDNEW
« no previous file with comments | « source/libvpx/vpx/svc_context.h ('k') | source/libvpx/vpx/vpx_encoder.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698