Disable frame dropper for screenshare mode.
BUG=1466 Review URL: https://webrtc-codereview.appspot.com/1170004 git-svn-id: http://webrtc.googlecode.com/svn/trunk@3629 4adac7df-926f-26a2-2b94-8c16560cd09d
This commit is contained in:
@ -37,6 +37,7 @@ DefaultTemporalLayers::DefaultTemporalLayers(int numberOfTemporalLayers,
|
||||
}
|
||||
|
||||
bool DefaultTemporalLayers::ConfigureBitrates(int bitrateKbit,
|
||||
int max_bitrate_kbit,
|
||||
int framerate,
|
||||
vpx_codec_enc_cfg_t* cfg) {
|
||||
switch (number_of_temporal_layers_) {
|
||||
|
||||
@ -27,6 +27,7 @@ class DefaultTemporalLayers : public TemporalLayers {
|
||||
virtual int EncodeFlags(uint32_t timestamp);
|
||||
|
||||
virtual bool ConfigureBitrates(int bitrate_kbit,
|
||||
int max_bitrate_kbit,
|
||||
int framerate,
|
||||
vpx_codec_enc_cfg_t* cfg);
|
||||
|
||||
|
||||
@ -66,7 +66,7 @@ TEST(TemporalLayersTest, 2Layers) {
|
||||
DefaultTemporalLayers tl(2, 0);
|
||||
vpx_codec_enc_cfg_t cfg;
|
||||
CodecSpecificInfoVP8 vp8_info;
|
||||
tl.ConfigureBitrates(500, 30, &cfg);
|
||||
tl.ConfigureBitrates(500, 500, 30, &cfg);
|
||||
|
||||
int expected_flags[16] = { kTemporalUpdateLastAndGoldenRefAltRef,
|
||||
kTemporalUpdateGoldenWithoutDependencyRefAltRef,
|
||||
@ -106,7 +106,7 @@ TEST(TemporalLayersTest, 3Layers) {
|
||||
DefaultTemporalLayers tl(3, 0);
|
||||
vpx_codec_enc_cfg_t cfg;
|
||||
CodecSpecificInfoVP8 vp8_info;
|
||||
tl.ConfigureBitrates(500, 30, &cfg);
|
||||
tl.ConfigureBitrates(500, 500, 30, &cfg);
|
||||
|
||||
int expected_flags[16] = { kTemporalUpdateLastAndGoldenRefAltRef,
|
||||
kTemporalUpdateNoneNoRefGolden,
|
||||
@ -146,7 +146,7 @@ TEST(TemporalLayersTest, 4Layers) {
|
||||
DefaultTemporalLayers tl(4, 0);
|
||||
vpx_codec_enc_cfg_t cfg;
|
||||
CodecSpecificInfoVP8 vp8_info;
|
||||
tl.ConfigureBitrates(500, 30, &cfg);
|
||||
tl.ConfigureBitrates(500, 500, 30, &cfg);
|
||||
int expected_flags[16] = {
|
||||
kTemporalUpdateLast,
|
||||
kTemporalUpdateNone,
|
||||
@ -186,7 +186,7 @@ TEST(TemporalLayersTest, KeyFrame) {
|
||||
DefaultTemporalLayers tl(3, 0);
|
||||
vpx_codec_enc_cfg_t cfg;
|
||||
CodecSpecificInfoVP8 vp8_info;
|
||||
tl.ConfigureBitrates(500, 30, &cfg);
|
||||
tl.ConfigureBitrates(500, 500, 30, &cfg);
|
||||
|
||||
int expected_flags[8] = {
|
||||
kTemporalUpdateLastAndGoldenRefAltRef,
|
||||
|
||||
@ -31,6 +31,7 @@ class TemporalLayers {
|
||||
virtual int EncodeFlags(uint32_t timestamp) = 0;
|
||||
|
||||
virtual bool ConfigureBitrates(int bitrate_kbit,
|
||||
int max_bitrate_kbit,
|
||||
int framerate,
|
||||
vpx_codec_enc_cfg_t* cfg) = 0;
|
||||
|
||||
|
||||
@ -113,7 +113,8 @@ int VP8EncoderImpl::SetRates(uint32_t new_bitrate_kbit,
|
||||
config_->rc_target_bitrate = new_bitrate_kbit; // in kbit/s
|
||||
|
||||
#if WEBRTC_LIBVPX_VERSION >= 971
|
||||
temporal_layers_->ConfigureBitrates(new_bitrate_kbit, new_framerate, config_);
|
||||
temporal_layers_->ConfigureBitrates(new_bitrate_kbit, codec_.maxBitrate,
|
||||
new_framerate, config_);
|
||||
#endif
|
||||
codec_.maxFramerate = new_framerate;
|
||||
|
||||
@ -190,8 +191,8 @@ int VP8EncoderImpl::InitEncode(const VideoCodec* inst,
|
||||
config_->rc_target_bitrate = inst->startBitrate; // in kbit/s
|
||||
|
||||
#if WEBRTC_LIBVPX_VERSION >= 971
|
||||
temporal_layers_->ConfigureBitrates(inst->startBitrate, inst->maxFramerate,
|
||||
config_);
|
||||
temporal_layers_->ConfigureBitrates(inst->startBitrate, inst->maxBitrate,
|
||||
inst->maxFramerate, config_);
|
||||
#endif
|
||||
// setting the time base of the codec
|
||||
config_->g_timebase.num = 1;
|
||||
|
||||
Reference in New Issue
Block a user