[webkit-changes] [WebKit/WebKit] 2ec3e2: REGRESSION(254254 at main): [ macOS ] http/tests/medi...

Jean-Yves Avenard noreply at github.com
Tue Jan 17 17:00:42 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 2ec3e23f7d3507e520fdeafc50a06e8373d79c68
      https://github.com/WebKit/WebKit/commit/2ec3e23f7d3507e520fdeafc50a06e8373d79c68
  Author: Jean-Yves Avenard <jya at apple.com>
  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 at 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




More information about the webkit-changes mailing list