Disable denoise filter for Arm, as it is not optimized enough yet.

BUG=https://code.google.com/p/chrome-os-partner/issues/detail?id=16318
TEST=none
Review URL: https://webrtc-codereview.appspot.com/968008

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3195 4adac7df-926f-26a2-2b94-8c16560cd09d
This commit is contained in:
fbarchard@google.com 2012-11-29 09:01:21 +00:00
parent cde46fa5d2
commit 662651ac95

View File

@ -269,7 +269,7 @@ int VP8EncoderImpl::InitEncode(const VideoCodec* inst,
cpu_speed_ = -6; cpu_speed_ = -6;
break; break;
} }
#ifdef WEBRTC_ANDROID #if defined(WEBRTC_ARCH_ARM)
// On mobile platform, always set to -12 to leverage between cpu usage // On mobile platform, always set to -12 to leverage between cpu usage
// and video quality // and video quality
cpu_speed_ = -12; cpu_speed_ = -12;
@ -294,8 +294,11 @@ int VP8EncoderImpl::InitAndSetControlSettings(const VideoCodec* inst) {
vpx_codec_control(encoder_, VP8E_SET_CPUUSED, cpu_speed_); vpx_codec_control(encoder_, VP8E_SET_CPUUSED, cpu_speed_);
vpx_codec_control(encoder_, VP8E_SET_TOKEN_PARTITIONS, vpx_codec_control(encoder_, VP8E_SET_TOKEN_PARTITIONS,
static_cast<vp8e_token_partitions>(token_partitions_)); static_cast<vp8e_token_partitions>(token_partitions_));
#if !defined(WEBRTC_ARCH_ARM)
// TODO(fbarchard): Enable Noise reduction for ARM once optimized.
vpx_codec_control(encoder_, VP8E_SET_NOISE_SENSITIVITY, vpx_codec_control(encoder_, VP8E_SET_NOISE_SENSITIVITY,
inst->codecSpecific.VP8.denoisingOn ? 1 : 0); inst->codecSpecific.VP8.denoisingOn ? 1 : 0);
#endif
#if WEBRTC_LIBVPX_VERSION >= 971 #if WEBRTC_LIBVPX_VERSION >= 971
vpx_codec_control(encoder_, VP8E_SET_MAX_INTRA_BITRATE_PCT, vpx_codec_control(encoder_, VP8E_SET_MAX_INTRA_BITRATE_PCT,
rc_max_intra_target_); rc_max_intra_target_);
@ -626,7 +629,7 @@ int VP8DecoderImpl::InitDecode(const VideoCodec* inst, int number_of_cores) {
cfg.h = cfg.w = 0; // set after decode cfg.h = cfg.w = 0; // set after decode
vpx_codec_flags_t flags = 0; vpx_codec_flags_t flags = 0;
#if (WEBRTC_LIBVPX_VERSION >= 971) && !defined(WEBRTC_ANDROID) #if (WEBRTC_LIBVPX_VERSION >= 971) && !defined(WEBRTC_ARCH_ARM)
flags = VPX_CODEC_USE_POSTPROC; flags = VPX_CODEC_USE_POSTPROC;
if (inst->codecSpecific.VP8.errorConcealmentOn) { if (inst->codecSpecific.VP8.errorConcealmentOn) {
flags |= VPX_CODEC_USE_ERROR_CONCEALMENT; flags |= VPX_CODEC_USE_ERROR_CONCEALMENT;
@ -640,7 +643,7 @@ int VP8DecoderImpl::InitDecode(const VideoCodec* inst, int number_of_cores) {
return WEBRTC_VIDEO_CODEC_MEMORY; return WEBRTC_VIDEO_CODEC_MEMORY;
} }
#if (WEBRTC_LIBVPX_VERSION >= 971) && !defined(WEBRTC_ANDROID) #if (WEBRTC_LIBVPX_VERSION >= 971) && !defined(WEBRTC_ARCH_ARM)
vp8_postproc_cfg_t ppcfg; vp8_postproc_cfg_t ppcfg;
ppcfg.post_proc_flag = VP8_DEMACROBLOCK | VP8_DEBLOCK; ppcfg.post_proc_flag = VP8_DEMACROBLOCK | VP8_DEBLOCK;
// Strength of deblocking filter. Valid range:[0,16] // Strength of deblocking filter. Valid range:[0,16]
@ -681,7 +684,7 @@ int VP8DecoderImpl::Decode(const EncodedImage& input_image,
} }
#endif #endif
#if (WEBRTC_LIBVPX_VERSION >= 971) && !defined(WEBRTC_ANDROID) #if (WEBRTC_LIBVPX_VERSION >= 971) && !defined(WEBRTC_ARCH_ARM)
if (!mfqe_enabled_ && codec_specific_info && if (!mfqe_enabled_ && codec_specific_info &&
codec_specific_info->codecSpecific.VP8.temporalIdx > 0) { codec_specific_info->codecSpecific.VP8.temporalIdx > 0) {
// Enable MFQE if we are receiving layers. // Enable MFQE if we are receiving layers.