Add VP9 denoiser test to videoprocessor_integrationtest.
TBR=stefan@webrtc.org BUG= Review URL: https://webrtc-codereview.appspot.com/43599004 Cr-Commit-Position: refs/heads/master@{#8622} git-svn-id: http://webrtc.googlecode.com/svn/trunk@8622 4adac7df-926f-26a2-2b94-8c16560cd09d
This commit is contained in:
parent
1d88394bcb
commit
16a87b97f9
@ -703,6 +703,28 @@ TEST_F(VideoProcessorIntegrationTest,
|
|||||||
rc_metrics);
|
rc_metrics);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// VP9: Run with no packet loss and denoiser on. One key frame (first frame).
|
||||||
|
TEST_F(VideoProcessorIntegrationTest, ProcessNoLossDenoiserOnVP9) {
|
||||||
|
// Bitrate and frame rate profile.
|
||||||
|
RateProfile rate_profile;
|
||||||
|
SetRateProfilePars(&rate_profile, 0, 500, 30, 0);
|
||||||
|
rate_profile.frame_index_rate_update[1] = kNbrFramesShort + 1;
|
||||||
|
rate_profile.num_frames = kNbrFramesShort;
|
||||||
|
// Codec/network settings.
|
||||||
|
CodecConfigPars process_settings;
|
||||||
|
SetCodecParameters(&process_settings, kVideoCodecVP9, 0.0f, -1, 1, false,
|
||||||
|
true, true, false);
|
||||||
|
// Metrics for expected quality.
|
||||||
|
QualityMetrics quality_metrics;
|
||||||
|
SetQualityMetrics(&quality_metrics, 36.8, 35.8, 0.92, 0.91);
|
||||||
|
// Metrics for rate control.
|
||||||
|
RateControlMetrics rc_metrics[1];
|
||||||
|
SetRateControlMetrics(rc_metrics, 0, 0, 40, 20, 10, 20, 0);
|
||||||
|
ProcessFramesAndVerify(quality_metrics,
|
||||||
|
rate_profile,
|
||||||
|
process_settings,
|
||||||
|
rc_metrics);
|
||||||
|
}
|
||||||
|
|
||||||
// TODO(marpan): Add temporal layer test for VP9, once changes are in
|
// TODO(marpan): Add temporal layer test for VP9, once changes are in
|
||||||
// vp9 wrapper for this.
|
// vp9 wrapper for this.
|
||||||
|
@ -223,11 +223,12 @@ int VP9EncoderImpl::InitAndSetControlSettings(const VideoCodec* inst) {
|
|||||||
// The number tile columns will be capped by the encoder based on image size
|
// The number tile columns will be capped by the encoder based on image size
|
||||||
// (minimum width of tile column is 256 pixels, maximum is 4096).
|
// (minimum width of tile column is 256 pixels, maximum is 4096).
|
||||||
vpx_codec_control(encoder_, VP9E_SET_TILE_COLUMNS, (config_->g_threads >> 1));
|
vpx_codec_control(encoder_, VP9E_SET_TILE_COLUMNS, (config_->g_threads >> 1));
|
||||||
// TODO(marpan): Enable in future libvpx roll: waiting for SSE2 optimization.
|
#if !defined(WEBRTC_ARCH_ARM)
|
||||||
// #if !defined(WEBRTC_ARCH_ARM)
|
// Note denoiser is still off by default until further testing/optimization,
|
||||||
// vpx_codec_control(encoder_, VP9E_SET_NOISE_SENSITIVITY,
|
// i.e., codecSpecific.VP9.denoisingOn == 0.
|
||||||
// inst->codecSpecific.VP9.denoisingOn ? 1 : 0);
|
vpx_codec_control(encoder_, VP9E_SET_NOISE_SENSITIVITY,
|
||||||
// #endif
|
inst->codecSpecific.VP9.denoisingOn ? 1 : 0);
|
||||||
|
#endif
|
||||||
inited_ = true;
|
inited_ = true;
|
||||||
return WEBRTC_VIDEO_CODEC_OK;
|
return WEBRTC_VIDEO_CODEC_OK;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user