Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[Cocoa] sampleBufferContentKeySessionSupportEnabled: Not enqueueing f…
…rames during "pending" key state means key state never progresses beyond "pending" https://bugs.webkit.org/show_bug.cgi?id=266284 rdar://119557042 Reviewed by Eric Carlson. When the state of the AVContentKeyRequest/AVContentKey is "pending", the AVContentKeySession is waiting to be connected with an AVSampleBufferDisplayLayer before updating that state to "usable" or "restricted". The API contract when the sampleBufferContentKeySessionSupportEnabled path is enabled is that the client will not enqueue samples for display unless it knows there is a usable key for that sample. However, due to this behavior, the request/key is stuck in the "pending" state. Work around this behavior by still enqueueing samples when in the "pending" state, and in fact, only block enqueueing samples when the key is in a known-failed state. * Source/WebCore/platform/graphics/avfoundation/objc/CDMInstanceFairPlayStreamingAVFObjC.mm: (WebCore::CDMInstanceFairPlayStreamingAVFObjC::isAnyKeyUsable const): Canonical link: https://commits.webkit.org/271944@main
- Loading branch information