#include <assert.h> staticINLINEvoid Scale2Ratio(int mode, int *hr, int *hs) { switch (mode) { case VP8E_NORMAL:
*hr = 1;
*hs = 1; break; case VP8E_FOURFIVE:
*hr = 4;
*hs = 5; break; case VP8E_THREEFIVE:
*hr = 3;
*hs = 5; break; case VP8E_ONETWO:
*hr = 1;
*hs = 2; break; default:
*hr = 1;
*hs = 1;
assert(0); break;
}
}
typedefstruct { /* 4 versions of bitstream defined: *0bestquality/slowestdecode,3lowestquality/fastestdecode
*/ int Version; int Width; int Height; struct vpx_rational timebase; /* In either kilobits per second or bits per second, depending on which *copyofoxcfthisisin. *-ctx->oxcf.target_bandwidthisinkilobitspersecond.See *set_vp8e_config(). *-ctx->cpi->oxcf.target_bandwidthinisbitspersecond.See *vp8_change_config().
*/ unsignedint target_bandwidth;
/* Parameter used for applying denoiser. *Fortemporaldenoiser:noise_sensitivity=0meansoff, *noise_sensitivity=1meanstemporaldenoiseronforYchannelonly, *noise_sensitivity=2meanstemporaldenoiseronforallchannels. *noise_sensitivity=3meansaggressivedenoisingmode. *noise_sensitivity>=4meansadaptivedenoisingmode. *Temporaldenoiserisenabledviatheconfigurationoption: *CONFIG_TEMPORAL_DENOISING. *Forspatialdenoiser:noise_sensitivitycontrolstheamountof *pre-processingblur:noise_sensitivity=0meansoff. *Spatialdenoiserinvokedunder!CONFIG_TEMPORAL_DENOISING.
*/ int noise_sensitivity;
/* parameter used for sharpening output: recommendation 0: */ int Sharpness; int cpu_used; unsignedint rc_max_intra_bitrate_pct; /* percent of rate boost for golden frame in CBR mode. */ unsignedint gf_cbr_boost_pct; unsignedint screen_content_mode;
/* Key Framing Operations */ int auto_key; /* automatically detect cut scenes */ int key_freq; /* maximum distance to key frame. */
/* lagged compression (if allow_lag == 0 lag_in_frames is ignored) */ int allow_lag; int lag_in_frames; /* how many frames lag before we start encoding */
/* *DATARATECONTROLOPTIONS
*/
int end_usage; /* vbr or cbr */
/* buffer targeting aggressiveness */ int under_shoot_pct; int over_shoot_pct;
/* controlling quality */ int fixed_q; int worst_allowed_q; int best_allowed_q; int cq_level;
/* allow internal resizing */ int allow_spatial_resampling; int resample_down_water_mark; int resample_up_water_mark;
/* allow internal frame rate alterations */ int allow_df; int drop_frames_water_mark;
/* two pass datarate control */ int two_pass_vbrbias; int two_pass_vbrmin_section; int two_pass_vbrmax_section;
/* *ENDDATARATECONTROLOPTIONS
*/
/* these parameters aren't to be used in final build don't use!!! */ int play_alternate; int alt_freq; int alt_q; int key_q; int gold_q;
int multi_threaded; /* how many threads to run the encoder on */ int token_partitions; /* how many token partitions to create */
/* early breakout threshold: for video conf recommend 800 */ int encode_breakout;
/* Bitfield defining the error resiliency features to enable. *Canprovidedecodableframesafterlossesinprevious *framesanddecodablepartitionsafterlossesinthesameframe.
*/ unsignedint error_resilient_mode;
int arnr_max_frames; int arnr_strength; int arnr_type;
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.