Add RequestKeyFrame with Pli to RtcpTransceiver

Add support for reduced size mode.

Bug: webrtc:8239
Change-Id: I1d646f0d7848af6632c9204ce5b96ae24cfc0ad3
Reviewed-on: https://webrtc-review.googlesource.com/23681
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20812}
This commit is contained in:
Danil Chapovalov
2017-11-21 11:08:53 +01:00
committed by Commit Bot
parent de939432dc
commit a7e418cd5f
7 changed files with 156 additions and 22 deletions

View File

@ -90,4 +90,18 @@ void RtcpTransceiver::UnsetRemb() {
});
}
void RtcpTransceiver::RequestKeyFrame(std::vector<uint32_t> ssrcs) {
// TODO(danilchap): Replace with lambda with move capture when available.
struct RequestKeyFrameClosure {
void operator()() {
if (ptr)
ptr->RequestKeyFrame(ssrcs);
}
rtc::WeakPtr<RtcpTransceiverImpl> ptr;
std::vector<uint32_t> ssrcs;
};
task_queue_->PostTask(RequestKeyFrameClosure{ptr_, std::move(ssrcs)});
}
} // namespace webrtc