Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: fb8ef258b72323f5a2a22423d33330ad3e03ec54 https://github.com/WebKit/WebKit/commit/fb8ef258b72323f5a2a22423d33330ad3e03ec54 Author: Andy Estes <aes...@apple.com> Date: 2024-08-30 (Fri, 30 Aug 2024)
Changed paths: M Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml M Source/WTF/wtf/PlatformHave.h M Source/WTF/wtf/PlatformUse.h M Source/WebCore/Modules/encryptedmedia/MediaKeySession.cpp M Source/WebCore/page/SettingsBase.cpp M Source/WebCore/page/SettingsBase.h M Source/WebCore/platform/audio/cocoa/MediaSessionManagerCocoa.h M Source/WebCore/platform/audio/cocoa/MediaSessionManagerCocoa.mm M Source/WebCore/platform/graphics/avfoundation/objc/CDMInstanceFairPlayStreamingAVFObjC.mm M Source/WebCore/platform/graphics/avfoundation/objc/CDMSessionAVContentKeySession.mm M Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm M Source/WebCore/platform/graphics/avfoundation/objc/SourceBufferParserAVFObjC.mm M Source/WebCore/platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm M Source/WebKit/GPUProcess/GPUProcess.cpp M Source/WebKit/GPUProcess/GPUProcessCreationParameters.h M Source/WebKit/GPUProcess/GPUProcessCreationParameters.serialization.in M Source/WebKit/GPUProcess/GPUProcessPreferences.cpp M Source/WebKit/GPUProcess/GPUProcessPreferences.h M Source/WebKit/GPUProcess/GPUProcessPreferences.serialization.in Log Message: ----------- [macOS] Enable modern AVContentKeySession support https://bugs.webkit.org/show_bug.cgi?id=271092 rdar://124719590 Reviewed by Jer Noble. - For clarity, renamed SampleBufferContentKeySessionSupportEnabled to ShouldUseModernAVContentKeySession and promoted its status to Preview on macOS. - Introduced USE(MODERN_AVCONTENTKEYSESSION) and enabled it starting on macOS 14.4, since that is the minimum OS version where AVContentKeySession is usable by WebKit. - Checked for entitlements to determine if AVSampleBufferAttachContentKey is supported rather than merely checking if the GPU process is an extension. - Removed the duplicative HAVE(AVCONTENTKEYSPECIFICER) and simplified the definition of HAVE(AVCONTENTKEYREQUEST_COMPATIBILITY_MODE). * Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml: * Source/WTF/wtf/PlatformHave.h: * Source/WTF/wtf/PlatformUse.h: * Source/WebCore/Modules/encryptedmedia/MediaKeySession.cpp: (WebCore::MediaKeySession::keyGroupingStrategy const): * Source/WebCore/page/SettingsBase.cpp: (WebCore::SettingsBase::shouldUseModernAVContentKeySessionChanged): (WebCore::SettingsBase::sampleBufferContentKeySessionSupportEnabledChanged): Deleted. * Source/WebCore/page/SettingsBase.h: * Source/WebCore/platform/audio/cocoa/MediaSessionManagerCocoa.h: * Source/WebCore/platform/audio/cocoa/MediaSessionManagerCocoa.mm: (WebCore::MediaSessionManagerCocoa::setShouldUseModernAVContentKeySession): (WebCore::MediaSessionManagerCocoa::shouldUseModernAVContentKeySession): (WebCore::MediaSessionManagerCocoa::setSampleBufferContentKeySessionSupportEnabled): Deleted. (WebCore::MediaSessionManagerCocoa::sampleBufferContentKeySessionSupportEnabled): Deleted. * Source/WebCore/platform/graphics/avfoundation/objc/CDMInstanceFairPlayStreamingAVFObjC.mm: (WebCore::CDMInstanceFairPlayStreamingAVFObjC::contentKeySession): (WebCore::CDMInstanceSessionFairPlayStreamingAVFObjC::protectionStatusForRequest const): (WebCore::CDMInstanceSessionFairPlayStreamingAVFObjC::ensureSessionOrGroup): * Source/WebCore/platform/graphics/avfoundation/objc/CDMSessionAVContentKeySession.mm: (WebCore::CDMSessionAVContentKeySession::contentKeySession): * Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm: (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVAssetForURL): * Source/WebCore/platform/graphics/avfoundation/objc/SourceBufferParserAVFObjC.mm: (WebCore::SourceBufferParserAVFObjC::SourceBufferParserAVFObjC): * Source/WebCore/platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm: (WebCore::supportsAttachContentKey): (WebCore::shouldAddContentKeyRecipients): (WebCore::SourceBufferPrivateAVFObjC::didProvideContentKeyRequestInitializationDataForTrackID): (WebCore::SourceBufferPrivateAVFObjC::needsVideoLayer const): (WebCore::SourceBufferPrivateAVFObjC::attemptToDecrypt): (WebCore::SourceBufferPrivateAVFObjC::canEnqueueSample): (WebCore::SourceBufferPrivateAVFObjC::attachContentKeyToSampleIfNeeded): (WebCore::sampleBufferRenderersSupportKeySession): Deleted. * Source/WebKit/GPUProcess/GPUProcess.cpp: (WebKit::GPUProcess::updateGPUProcessPreferences): * Source/WebKit/GPUProcess/GPUProcessCreationParameters.h: * Source/WebKit/GPUProcess/GPUProcessCreationParameters.serialization.in: * Source/WebKit/GPUProcess/GPUProcessPreferences.cpp: (WebKit::GPUProcessPreferences::copyEnabledWebPreferences): * Source/WebKit/GPUProcess/GPUProcessPreferences.h: * Source/WebKit/GPUProcess/GPUProcessPreferences.serialization.in: * Source/WebKit/Shared/WebPreferencesDefaultValues.h: Canonical link: https://commits.webkit.org/282990@main To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes