[webkit-changes] [WebKit/WebKit] c8652a: REGRESSION (271599 at main): espn.com: Closed caption...

Jean-Yves Avenard noreply at github.com
Thu Feb 22 13:29:42 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: c8652ac395bcb1ba6247679ecc18fb04d2c041e2
      https://github.com/WebKit/WebKit/commit/c8652ac395bcb1ba6247679ecc18fb04d2c041e2
  Author: Jean-Yves Avenard <jya at apple.com>
  Date:   2024-02-22 (Thu, 22 Feb 2024)

  Changed paths:
    A LayoutTests/http/tests/media/hls/track-webvtt-multitracks-expected.txt
    A LayoutTests/http/tests/media/hls/track-webvtt-multitracks.html
    A LayoutTests/http/tests/media/resources/hls/test-webvtt-multitracks.m3u8
    M Source/WebCore/platform/graphics/avfoundation/InbandMetadataTextTrackPrivateAVF.cpp
    M Source/WebCore/platform/graphics/avfoundation/InbandMetadataTextTrackPrivateAVF.h
    M Source/WebCore/platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp
    M Source/WebCore/platform/graphics/avfoundation/InbandTextTrackPrivateAVF.h
    M Source/WebCore/platform/graphics/avfoundation/objc/InbandTextTrackPrivateAVFObjC.h
    M Source/WebCore/platform/graphics/avfoundation/objc/InbandTextTrackPrivateAVFObjC.mm
    M Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm
    M Source/WebCore/platform/graphics/avfoundation/objc/OutOfBandTextTrackPrivateAVF.h

  Log Message:
  -----------
  REGRESSION (271599 at main): espn.com: Closed captions aren't displaying in videos
https://bugs.webkit.org/show_bug.cgi?id=269847
rdar://122842659

Reviewed by Eric Carlson.

In this video, we had 2 text tracks, all with a track id of 0.
The reasons for this is that it contained a InbandMetadataTextTrack and a InbandTextTrack
and the MediaPlayerPrivateAVFoundation weren't assigning them unique trackID which
would confuse the search in the hash table trying to match a TrackID to a track.

A TrackID for an inband text track is an abstract concept, it doesn't reflect anything
relevant to the user (Except that it must be unique).
We only need that TrackID to be unique between all the tracks in a given MediaPlayer.

So we assign them a unique TrackID at creation.

Add a HLS file that contains both a metadata and a subtitle track and ensure
that cues are added to the proper one.

* LayoutTests/http/tests/media/hls/track-webvtt-multitracks-expected.txt: Added.
* LayoutTests/http/tests/media/hls/track-webvtt-multitracks.html: Added.
* LayoutTests/http/tests/media/resources/hls/test-webvtt-multitracks.m3u8: Added.
* Source/WebCore/platform/graphics/avfoundation/InbandMetadataTextTrackPrivateAVF.cpp:
(WebCore::InbandMetadataTextTrackPrivateAVF::create):
(WebCore::InbandMetadataTextTrackPrivateAVF::InbandMetadataTextTrackPrivateAVF):
* Source/WebCore/platform/graphics/avfoundation/InbandMetadataTextTrackPrivateAVF.h:
* Source/WebCore/platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:
(WebCore::InbandTextTrackPrivateAVF::InbandTextTrackPrivateAVF):
* Source/WebCore/platform/graphics/avfoundation/InbandTextTrackPrivateAVF.h:
* Source/WebCore/platform/graphics/avfoundation/objc/InbandTextTrackPrivateAVFObjC.h:
(WebCore::InbandTextTrackPrivateAVFObjC::create):
* Source/WebCore/platform/graphics/avfoundation/objc/InbandTextTrackPrivateAVFObjC.mm:
(WebCore::InbandTextTrackPrivateAVFObjC::InbandTextTrackPrivateAVFObjC):
(WebCore::InbandTextTrackPrivateAVFObjC::id const): Deleted.
* Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::processMediaSelectionOptions):
(WebCore::MediaPlayerPrivateAVFoundationObjC::processMetadataTrack):
* Source/WebCore/platform/graphics/avfoundation/objc/OutOfBandTextTrackPrivateAVF.h:
(WebCore::OutOfBandTextTrackPrivateAVF::create):
(WebCore::OutOfBandTextTrackPrivateAVF::OutOfBandTextTrackPrivateAVF):

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



To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications


More information about the webkit-changes mailing list