| Index: media/cast/video_sender/fake_software_video_encoder.cc
|
| diff --git a/media/cast/video_sender/fake_software_video_encoder.cc b/media/cast/video_sender/fake_software_video_encoder.cc
|
| index 01a3ccef51ab210ffffcb738f984c9417202c599..ee8fe0fd00c52e445570808f5a21c186c08a640b 100644
|
| --- a/media/cast/video_sender/fake_software_video_encoder.cc
|
| +++ b/media/cast/video_sender/fake_software_video_encoder.cc
|
| @@ -13,10 +13,13 @@
|
| namespace media {
|
| namespace cast {
|
|
|
| -FakeSoftwareVideoEncoder::FakeSoftwareVideoEncoder()
|
| - : next_frame_is_key_(true),
|
| +FakeSoftwareVideoEncoder::FakeSoftwareVideoEncoder(
|
| + const VideoSenderConfig& video_config)
|
| + : video_config_(video_config),
|
| + next_frame_is_key_(true),
|
| frame_id_(0),
|
| - frame_id_to_reference_(0) {
|
| + frame_id_to_reference_(0),
|
| + frame_size_(0) {
|
| }
|
|
|
| FakeSoftwareVideoEncoder::~FakeSoftwareVideoEncoder() {}
|
| @@ -37,17 +40,18 @@ bool FakeSoftwareVideoEncoder::Encode(
|
| }
|
|
|
| base::DictionaryValue values;
|
| - values.Set("key", base::Value::CreateBooleanValue(
|
| - encoded_image->dependency == transport::EncodedFrame::KEY));
|
| - values.Set("id", base::Value::CreateIntegerValue(encoded_image->frame_id));
|
| - values.Set("ref", base::Value::CreateIntegerValue(
|
| - encoded_image->referenced_frame_id));
|
| + values.SetBoolean("key",
|
| + encoded_image->dependency == transport::EncodedFrame::KEY);
|
| + values.SetInteger("ref", encoded_image->referenced_frame_id);
|
| + values.SetInteger("id", encoded_image->frame_id);
|
| + values.SetInteger("size", frame_size_);
|
| + values.SetString("data", std::string(frame_size_, ' '));
|
| base::JSONWriter::Write(&values, &encoded_image->data);
|
| return true;
|
| }
|
|
|
| void FakeSoftwareVideoEncoder::UpdateRates(uint32 new_bitrate) {
|
| - // TODO(hclam): Implement bitrate control.
|
| + frame_size_ = new_bitrate / video_config_.max_frame_rate / 8;
|
| }
|
|
|
| void FakeSoftwareVideoEncoder::GenerateKeyFrame() {
|
|
|