Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 2ec3e23f7d3507e520fdeafc50a06e8373d79c68
      
https://github.com/WebKit/WebKit/commit/2ec3e23f7d3507e520fdeafc50a06e8373d79c68
  Author: Jean-Yves Avenard <[email protected]>
  Date:   2023-01-17 (Tue, 17 Jan 2023)

  Changed paths:
    M LayoutTests/http/tests/media/fairplay/eme2016.js
    M LayoutTests/platform/mac/TestExpectations

  Log Message:
  -----------
  REGRESSION(254254@main): [ macOS ] 
http/tests/media/fairplay/fps-mse-unmuxed-multiple-keys.html is a constant 
failure
https://bugs.webkit.org/show_bug.cgi?id=244928
rdar://99693593

Reviewed by Jer Noble.

In the EME event summary 
(https://www.w3.org/TR/encrypted-media/#dom-evt-encrypted) we read as 
pre-conditions that the encrypted event is to be fired once readyState is 
greater than HAVE_METADATA

In Initialisation Data encountered algorithm 
(https://www.w3.org/TR/encrypted-media/#initdata-encountered)
 The Initialization Data Encountered algorithm queues an encrypted event for 
Initialization Data encounterd in the media data. Requests to run this 
algorithm include a target HTMLMediaElement object.

The following steps are run:

    Let the media element be the specified HTMLMediaElement object.

    Let initDataType be the empty string.

    Let initData be null.

    If the media data is CORS-same-origin and not mixed content, run the 
following steps:

        Let initDataType be the string representing the Initialization Data 
Type of the Initialization Data.

        Let initData be the Initialization Data.
    Note

    While the media element may allow loading of "Optionally-blockable Content" 
[MIXED-CONTENT], the user agent MUST NOT expose Initialization Data from such 
media data to the application.

    Queue a task to create an event named encrypted that does not bubble and is 
not cancellable using the MediaEncryptedEvent interface with its type attribute 
set to encrypted and its isTrusted attribute initialized to true, and dispatch 
it at the media element.

    The event interface MediaEncryptedEvent has:
        initDataType = initDataType

        initData = initData

There doesn’t seem to be any explicit requirements that the MediaSource 
updateend event is to be fired before the encrypted event, test should be 
modified to cater for this scenario

Adjust the test so that the updateend can be fired at anytime.

* LayoutTests/http/tests/media/fairplay/eme2016.js:
(async fetchAndAppend):
(async fetchAppendAndWaitForEncrypted):
* LayoutTests/platform/mac/TestExpectations:

Canonical link: https://commits.webkit.org/259010@main


_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to