-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Remove ParseSdpForH264ProfileLevelId defaulting introduced in https:/…
…/commits.webkit.org/266392@main https://bugs.webkit.org/show_bug.cgi?id=260467 rdar://problem/114311260 Reviewed by Eric Carlson. Before this patch, in case of bad or unsupported profile, we would downgrade to a default profile. We are now reporting the error back from RTCVideoEncoderH264 to LibWebRTCCodecsProxy then to LibWebRTCCodecs and RemoteVideoCodecFactory. This allows to notify WebCodecs JS that a particular profile is not supported. Covered by added test. * LayoutTests/http/wpt/webcodecs/H264-422-expected.txt: Added. * LayoutTests/http/wpt/webcodecs/H264-422.html: Added. * Source/ThirdParty/libwebrtc/Source/webrtc/api/video_codecs/h264_profile_level_id.cc: * Source/ThirdParty/libwebrtc/Source/webrtc/sdk/WebKit/WebKitEncoder.mm: (-[WK_RTCLocalVideoH264H265Encoder initWithCodecInfo:]): (webrtc::createLocalEncoder): * Source/ThirdParty/libwebrtc/Source/webrtc/sdk/objc/components/video_codec/RTCVideoEncoderH264.mm: (-[RTCVideoEncoderH264 initWithCodecInfo:]): * Source/WebKit/GPUProcess/webrtc/LibWebRTCCodecsProxy.h: * Source/WebKit/GPUProcess/webrtc/LibWebRTCCodecsProxy.messages.in: * Source/WebKit/GPUProcess/webrtc/LibWebRTCCodecsProxy.mm: (WebKit::LibWebRTCCodecsProxy::createEncoder): (WebKit::LibWebRTCCodecsProxy::releaseEncoder): (WebKit::LibWebRTCCodecsProxy::initializeEncoder): (WebKit::LibWebRTCCodecsProxy::encodeFrame): (WebKit::LibWebRTCCodecsProxy::flushEncoder): (WebKit::LibWebRTCCodecsProxy::setEncodeRates): (WebKit::LibWebRTCCodecsProxy::setSharedVideoFrameSemaphore): (WebKit::LibWebRTCCodecsProxy::setSharedVideoFrameMemory): * Source/WebKit/WebProcess/GPU/media/RemoteVideoCodecFactory.cpp: (WebKit::RemoteVideoCodecFactory::createEncoder): * Source/WebKit/WebProcess/GPU/webrtc/LibWebRTCCodecs.cpp: (WebKit::LibWebRTCCodecs::createEncoder): (WebKit::LibWebRTCCodecs::createEncoderAndWaitUntilReady): (WebKit::LibWebRTCCodecs::createEncoderInternal): * Source/WebKit/WebProcess/GPU/webrtc/LibWebRTCCodecs.h: Canonical link: https://commits.webkit.org/267193@main
- Loading branch information
Showing
11 changed files
with
78 additions
and
37 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
|
||
PASS Test H264 4.2.2 is not supported | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
<!DOCTYPE html> | ||
<html> | ||
<header> | ||
<script src='/resources/testharness.js'></script> | ||
<script src='/resources/testharnessreport.js'></script> | ||
</header> | ||
<body> | ||
<script> | ||
promise_test(async t => { | ||
const result = await VideoEncoder.isConfigSupported({ | ||
codec: "avc1.7A1032", | ||
width: 1920, | ||
height: 1280, | ||
avc: { format: "avc" }, | ||
}); | ||
assert_false(result.supported); | ||
}, 'Test H264 4.2.2 is not supported'); | ||
</script> | ||
</body> | ||
</html> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters