[webkit-changes] [WebKit/WebKit] dcf4f5: [Cocoa] Adopt AVSampleBufferAttachContentKey
aestes
noreply at github.com
Tue Dec 12 22:06:00 PST 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: dcf4f5aba6923c6d069e22770dd0141a9d864d6d
https://github.com/WebKit/WebKit/commit/dcf4f5aba6923c6d069e22770dd0141a9d864d6d
Author: Andy Estes <aestes at apple.com>
Date: 2023-12-12 (Tue, 12 Dec 2023)
Changed paths:
M Source/WebCore/PAL/pal/cocoa/AVFoundationSoftLink.h
M Source/WebCore/PAL/pal/cocoa/AVFoundationSoftLink.mm
M Source/WebCore/platform/graphics/avfoundation/objc/CDMInstanceFairPlayStreamingAVFObjC.h
M Source/WebCore/platform/graphics/avfoundation/objc/CDMInstanceFairPlayStreamingAVFObjC.mm
M Source/WebCore/platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm
M Source/WebKit/Scripts/process-entitlements.sh
Log Message:
-----------
[Cocoa] Adopt AVSampleBufferAttachContentKey
https://bugs.webkit.org/show_bug.cgi?id=266289
rdar://115664955
Reviewed by Jer Noble.
Adopted AVSampleBufferAttachContentKey as a replacement to adding AVSampleBufferDisplayLayer and
AVSampleBufferAudioRenderer as content key recipients to an AVContentKeySession. This involves
finding the first content key that matches a sample's key by keyID, then attaching the key to the
sample prior to enqueueing it.
On macOS, this API requires the com.apple.private.coremedia.allow-fps-attachment entitlement; on iOS
it is enabled by an existing entitlement.
No new tests; covered by existing tests.
* Source/WebCore/PAL/pal/cocoa/AVFoundationSoftLink.h:
* Source/WebCore/PAL/pal/cocoa/AVFoundationSoftLink.mm:
* Source/WebCore/platform/graphics/avfoundation/objc/CDMInstanceFairPlayStreamingAVFObjC.h:
* Source/WebCore/platform/graphics/avfoundation/objc/CDMInstanceFairPlayStreamingAVFObjC.mm:
(WebCore::CDMInstanceFairPlayStreamingAVFObjC::attachContentKeyToSample):
(WebCore::CDMInstanceSessionFairPlayStreamingAVFObjC::contentKeyForSample):
(WebCore::CDMInstanceSessionFairPlayStreamingAVFObjC::attachContentKeyToSample):
* Source/WebCore/platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
(WebCore::SourceBufferPrivateAVFObjC::destroyRenderers):
(WebCore::SourceBufferPrivateAVFObjC::trackDidChangeEnabled):
(WebCore::SourceBufferPrivateAVFObjC::setCDMInstance):
(WebCore::SourceBufferPrivateAVFObjC::enqueueSample):
(WebCore::SourceBufferPrivateAVFObjC::enqueueSampleBuffer):
(WebCore::SourceBufferPrivateAVFObjC::setVideoLayer):
* Source/WebKit/Scripts/process-entitlements.sh:
Canonical link: https://commits.webkit.org/271966@main
More information about the webkit-changes
mailing list