Commit 76510654 authored by Ilya Nikolaevskiy's avatar Ilya Nikolaevskiy Committed by Commit Bot

Propagate VideoFrameFeedback to wrapped media::VideoFrame

This will allow WebrtcVideoFrameAdapter to set feedback.
Currently, it may get a wrapped frame in some cases.
WebrtcVideoFrameAdapter is a logical place to attach feedback, since it's
the wrapper of VideoFrame available inside WebRTC.

Bug: chromium:1134073
Change-Id: Id955609dc00d4555294cd39192b55db66ac8f72a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2440513
Auto-Submit: Ilya Nikolaevskiy <ilnik@chromium.org>
Commit-Queue: Dale Curtis <dalecurtis@chromium.org>
Reviewed-by: default avatarDale Curtis <dalecurtis@chromium.org>
Cr-Commit-Position: refs/heads/master@{#812700}
parent 79fb6c26
...@@ -1299,6 +1299,12 @@ VideoFrame::~VideoFrame() { ...@@ -1299,6 +1299,12 @@ VideoFrame::~VideoFrame() {
std::move(mailbox_holders_release_cb_).Run(release_sync_token); std::move(mailbox_holders_release_cb_).Run(release_sync_token);
} }
// Someone might be monitoring original wrapped frame for feedback.
// Ensure all accumulated feedback is propagated to the original frame.
if (wrapped_frame_) {
wrapped_frame_->feedback()->Combine(feedback_);
}
for (auto& callback : done_callbacks_) for (auto& callback : done_callbacks_)
std::move(callback).Run(); std::move(callback).Run();
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment