Do not proxy VideoSendStreamImpl::OnVideoLayersAllocationUpdated

OnVideoLayersAllocationUpdated is handled on the encoder task queue in
order to not race with OnEncodedImage callbacks.

Bug: webrtc:12000
Change-Id: I1c9a450cce819a7a0f8827aa0bb675c37350a0c2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/200880
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Per Kjellander <perkj@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32935}
This commit is contained in:
Per Kjellander 2021-01-07 19:37:00 +01:00 committed by Commit Bot
parent 6afa794b6e
commit da06e8f6bd

View File

@ -481,15 +481,8 @@ void VideoSendStreamImpl::OnBitrateAllocationUpdated(
void VideoSendStreamImpl::OnVideoLayersAllocationUpdated(
VideoLayersAllocation allocation) {
if (!worker_queue_->IsCurrent()) {
auto ptr = weak_ptr_;
worker_queue_->PostTask([allocation = std::move(allocation), ptr] {
if (!ptr.get())
return;
ptr->OnVideoLayersAllocationUpdated(allocation);
});
return;
}
// OnVideoLayersAllocationUpdated is handled on the encoder task queue in
// order to not race with OnEncodedImage callbacks.
rtp_video_sender_->OnVideoLayersAllocationUpdated(allocation);
}