| Index: source/libvpx/vp9/encoder/vp9_encoder.h
|
| ===================================================================
|
| --- source/libvpx/vp9/encoder/vp9_encoder.h (revision 290053)
|
| +++ source/libvpx/vp9/encoder/vp9_encoder.h (working copy)
|
| @@ -37,7 +37,7 @@
|
| #include "vp9/encoder/vp9_svc_layercontext.h"
|
| #include "vp9/encoder/vp9_tokenize.h"
|
| #include "vp9/encoder/vp9_variance.h"
|
| -#if CONFIG_DENOISING
|
| +#if CONFIG_VP9_TEMPORAL_DENOISING
|
| #include "vp9/encoder/vp9_denoiser.h"
|
| #endif
|
|
|
| @@ -134,7 +134,7 @@
|
| BIT_DEPTH bit_depth;
|
| int width; // width of data passed to the compressor
|
| int height; // height of data passed to the compressor
|
| - double framerate; // set to passed in framerate
|
| + double init_framerate; // set to passed in framerate
|
| int64_t target_bandwidth; // bandwidth to be used in kilobits per second
|
|
|
| int noise_sensitivity; // pre processing blur: recommendation 0
|
| @@ -143,6 +143,7 @@
|
| unsigned int rc_max_intra_bitrate_pct;
|
|
|
| MODE mode;
|
| + int pass;
|
|
|
| // Key Framing Operations
|
| int auto_key; // autodetect cut scenes and set the keyframes
|
| @@ -232,6 +233,7 @@
|
| #endif
|
|
|
| vp8e_tuning tuning;
|
| + vp9e_tune_content content;
|
| } VP9EncoderConfig;
|
|
|
| static INLINE int is_lossless_requested(const VP9EncoderConfig *cfg) {
|
| @@ -296,14 +298,13 @@
|
|
|
| int zbin_mode_boost;
|
| int zbin_mode_boost_enabled;
|
| - int active_arnr_frames; // <= cpi->oxcf.arnr_max_frames
|
| - int active_arnr_strength; // <= cpi->oxcf.arnr_max_strength
|
|
|
| int64_t last_time_stamp_seen;
|
| int64_t last_end_time_stamp_seen;
|
| int64_t first_time_stamp_ever;
|
|
|
| RATE_CONTROL rc;
|
| + double framerate;
|
|
|
| vp9_coeff_count coef_counts[TX_SIZES][PLANE_TYPES];
|
|
|
| @@ -312,9 +313,6 @@
|
| MBGRAPH_FRAME_STATS mbgraph_stats[MAX_LAG_BUFFERS];
|
| int mbgraph_n_frames; // number of frames filled in the above
|
| int static_mb_pct; // % forced skip mbs by segmentation
|
| -
|
| - int pass;
|
| -
|
| int ref_frame_flags;
|
|
|
| SPEED_FEATURES sf;
|
| @@ -430,7 +428,7 @@
|
| int multi_arf_enabled;
|
| int multi_arf_last_grp_enabled;
|
|
|
| -#if CONFIG_DENOISING
|
| +#if CONFIG_VP9_TEMPORAL_DENOISING
|
| VP9_DENOISER denoiser;
|
| #endif
|
| } VP9_COMP;
|
| @@ -462,9 +460,6 @@
|
| int vp9_copy_reference_enc(VP9_COMP *cpi, VP9_REFFRAME ref_frame_flag,
|
| YV12_BUFFER_CONFIG *sd);
|
|
|
| -int vp9_get_reference_enc(VP9_COMP *cpi, int index,
|
| - YV12_BUFFER_CONFIG **fb);
|
| -
|
| int vp9_set_reference_enc(VP9_COMP *cpi, VP9_REFFRAME ref_frame_flag,
|
| YV12_BUFFER_CONFIG *sd);
|
|
|
| @@ -535,10 +530,16 @@
|
|
|
| void vp9_apply_encoding_flags(VP9_COMP *cpi, vpx_enc_frame_flags_t flags);
|
|
|
| +static INLINE int is_spatial_svc(const struct VP9_COMP *const cpi) {
|
| + return cpi->use_svc &&
|
| + cpi->svc.number_temporal_layers == 1 &&
|
| + cpi->svc.number_spatial_layers > 1;
|
| +}
|
| +
|
| static INLINE int is_altref_enabled(const VP9_COMP *const cpi) {
|
| return cpi->oxcf.mode != REALTIME && cpi->oxcf.lag_in_frames > 0 &&
|
| (cpi->oxcf.play_alternate &&
|
| - (!(cpi->use_svc && cpi->svc.number_temporal_layers == 1) ||
|
| + (!is_spatial_svc(cpi) ||
|
| cpi->oxcf.ss_play_alternate[cpi->svc.spatial_layer_id]));
|
| }
|
|
|
| @@ -551,8 +552,8 @@
|
| : 0];
|
| }
|
|
|
| -static INLINE int get_chessboard_index(const VP9_COMMON *cm) {
|
| - return cm->current_video_frame % 2;
|
| +static INLINE int get_chessboard_index(const int frame_index) {
|
| + return frame_index & 0x1;
|
| }
|
|
|
| #ifdef __cplusplus
|
|
|