[webkit-changes] [WebKit/WebKit] 6f89f7: Overlapping VTTCues carried by InbandTextTrack (Le...

Eric Carlson noreply at github.com
Mon Jul 24 11:46:08 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 6f89f7891c5c2c079ee58270d0bc96c8457e4475
      https://github.com/WebKit/WebKit/commit/6f89f7891c5c2c079ee58270d0bc96c8457e4475
  Author: Eric Carlson <eric.carlson at apple.com>
  Date:   2023-07-24 (Mon, 24 Jul 2023)

  Changed paths:
    A LayoutTests/http/tests/media/hls/track-in-band-multiple-cues-expected.txt
    A LayoutTests/http/tests/media/hls/track-in-band-multiple-cues.html
    A LayoutTests/http/tests/media/resources/hls/multiple-cues-per-sample/master.m3u8
    A LayoutTests/http/tests/media/resources/hls/multiple-cues-per-sample/multiple0.vtt
    A LayoutTests/http/tests/media/resources/hls/multiple-cues-per-sample/multiple1.vtt
    A LayoutTests/http/tests/media/resources/hls/multiple-cues-per-sample/test-0.ts
    A LayoutTests/http/tests/media/resources/hls/multiple-cues-per-sample/test-1.ts
    A LayoutTests/http/tests/media/resources/hls/multiple-cues-per-sample/video.m3u8
    A LayoutTests/http/tests/media/resources/hls/multiple-cues-per-sample/vtt.m3u8
    M Source/WebCore/html/track/InbandGenericTextTrack.cpp
    M Source/WebCore/html/track/InbandGenericTextTrack.h
    M Source/WebCore/html/track/InbandTextTrack.h
    M Source/WebCore/html/track/TextTrackCue.h
    M Source/WebCore/platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp

  Log Message:
  -----------
  Overlapping VTTCues carried by InbandTextTrack (LegibleOutput) does not handle correctly
https://bugs.webkit.org/show_bug.cgi?id=251771
rdar://105372930

Reviewed by Jer Noble.

Parse every cue in each CMSampleBuffer provided the the AVPlayerItemLegibleOutput delegate,
not just the first one.

* LayoutTests/http/tests/media/hls/track-in-band-multiple-cues-expected.txt: Added.
* LayoutTests/http/tests/media/hls/track-in-band-multiple-cues.html: Added.
* LayoutTests/http/tests/media/resources/hls/multiple-cues-per-sample/master.m3u8: Added.
* LayoutTests/http/tests/media/resources/hls/multiple-cues-per-sample/multiple0.vtt: Added.
* LayoutTests/http/tests/media/resources/hls/multiple-cues-per-sample/multiple1.vtt: Added.
* LayoutTests/http/tests/media/resources/hls/multiple-cues-per-sample/test-0.ts: Added.
* LayoutTests/http/tests/media/resources/hls/multiple-cues-per-sample/test-1.ts: Added.
* LayoutTests/http/tests/media/resources/hls/multiple-cues-per-sample/video.m3u8: Added.
* LayoutTests/http/tests/media/resources/hls/multiple-cues-per-sample/vtt.m3u8: Added.

* Source/WebCore/html/track/InbandGenericTextTrack.cpp:
(WebCore::InbandGenericTextTrack::cueToExtend): Look for an existing cue with the same
contents and start time and duration within the allowed delta.
(WebCore::InbandGenericTextTrack::newCuesParsed): Use cueToExtend.
* Source/WebCore/html/track/InbandGenericTextTrack.h:
* Source/WebCore/html/track/InbandTextTrack.h:
* Source/WebCore/html/track/TextTrackCue.h:

* Source/WebCore/platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:
(WebCore::InbandTextTrackPrivateAVF::processNativeSamples): There may be more than one
cue in each CMSampleBuffer.

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




More information about the webkit-changes mailing list