commit f257ace949d9f4da4714f06bb74d0e391f4003c8
parent 88fd2bce08d43b7c91744fc23fe1db33cfa5d30b
Author: Michael Froman <mfroman@mozilla.com>
Date: Mon, 5 Jan 2026 17:07:47 +0000
Bug 2007457 - fix our usage of rid after libwebrtc's update. r=bwc
Differential Revision: https://phabricator.services.mozilla.com/D277391
Diffstat:
2 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/dom/media/webrtc/jsapi/RTCEncodedVideoFrame.cpp b/dom/media/webrtc/jsapi/RTCEncodedVideoFrame.cpp
@@ -110,8 +110,8 @@ void RTCEncodedVideoFrame::InitMetadata() {
// The metadata timestamp is different, and not presently present in the
// libwebrtc types
- if (!videoFrame.GetRid().empty()) {
- mRid = Some(videoFrame.GetRid().c_str());
+ if (videoFrame.Rid().has_value() && !videoFrame.Rid()->empty()) {
+ mRid = Some(videoFrame.Rid()->c_str());
}
}
diff --git a/dom/media/webrtc/jsapi/RTCRtpScriptTransformer.cpp b/dom/media/webrtc/jsapi/RTCRtpScriptTransformer.cpp
@@ -311,9 +311,11 @@ void RTCRtpScriptTransformer::TransformFrame(
auto* videoFrame =
static_cast<webrtc::TransformableVideoFrameInterface*>(aFrame.get());
if (videoFrame->IsKeyFrame()) {
- ResolveGenerateKeyFramePromises(videoFrame->GetRid(),
- videoFrame->GetTimestamp());
- if (!videoFrame->GetRid().empty() &&
+ MOZ_ASSERT(videoFrame->Rid().has_value());
+ ResolveGenerateKeyFramePromises(
+ videoFrame->Rid().value_or(std::string()),
+ videoFrame->GetTimestamp());
+ if (videoFrame->Rid().has_value() && !videoFrame->Rid()->empty() &&
videoFrame->Metadata().GetSimulcastIdx() == 0) {
ResolveGenerateKeyFramePromises("", videoFrame->GetTimestamp());
}