Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: dcf4f5aba6923c6d069e22770dd0141a9d864d6d
      
https://github.com/WebKit/WebKit/commit/dcf4f5aba6923c6d069e22770dd0141a9d864d6d
  Author: Andy Estes <aes...@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


_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to