Add option to configure error concealment and disable by default.

BUG=
TEST=

Review URL: https://webrtc-codereview.appspot.com/597005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2324 4adac7df-926f-26a2-2b94-8c16560cd09d
This commit is contained in:
stefan@webrtc.org 2012-05-30 11:25:00 +00:00
parent 327ada1cb0
commit dc257b5781
4 changed files with 7 additions and 1 deletions

View File

@ -514,6 +514,7 @@ struct VideoCodecVP8
VP8ResilienceMode resilience;
unsigned char numberOfTemporalLayers;
bool denoisingOn;
bool errorConcealmentOn;
};
// Unknown specific

View File

@ -70,6 +70,7 @@ class VideoProcessorIntegrationTest: public testing::Test {
config_.codec_settings->startBitrate = kBitRateKbps;
config_.codec_settings->width = kCIFWidth;
config_.codec_settings->height = kCIFHeight;
config_.codec_settings->codecSpecific.VP8.errorConcealmentOn = true;
frame_reader_ =
new webrtc::test::FrameReaderImpl(config_.input_filename,

View File

@ -613,7 +613,10 @@ int VP8Decoder::InitDecode(const VideoCodec* inst, int number_of_cores) {
vpx_codec_flags_t flags = 0;
#if WEBRTC_LIBVPX_VERSION >= 971
flags = VPX_CODEC_USE_ERROR_CONCEALMENT | VPX_CODEC_USE_POSTPROC;
flags = VPX_CODEC_USE_POSTPROC;
if (inst->codecSpecific.VP8.errorConcealmentOn) {
flags |= VPX_CODEC_USE_ERROR_CONCEALMENT;
}
#ifdef INDEPENDENT_PARTITIONS
flags |= VPX_CODEC_USE_INPUT_PARTITION;
#endif

View File

@ -174,6 +174,7 @@ VCMCodecDataBase::Codec(WebRtc_UWord8 listId, VideoCodec *settings)
settings->codecSpecific.VP8.resilience = kResilientStream;
settings->codecSpecific.VP8.numberOfTemporalLayers = 1;
settings->codecSpecific.VP8.denoisingOn = false;
settings->codecSpecific.VP8.errorConcealmentOn = false;
break;
}
#endif