⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Changeset 248986 in webkit


Ignore:
Timestamp:
Aug 21, 2019, 6:25:41 PM (7 years ago)
Author:
Kocsen Chung
Message:

Cherry-pick r248952. rdar://problem/54579626

[iOS] HLS streams disappear from Now Playing when paused on the lock screen
https://bugs.webkit.org/show_bug.cgi?id=200951
<rdar://problem/54534301>

Reviewed by Eric Carlson.

The AVPlayerItemTracks will get recreated on occasion (during seeks, and when
changing buffering policy) which can result in a player which no longer reports
that it has audio, which in turn results in Now Playing no longer considering
the web page to be an eligable now playing application. Bridge this gap by also
taking AVPlayerItem.hasEnabledAudio into account when determining whether the
player has audio.

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm: (WebCore::MediaPlayerPrivateAVFoundationObjC::tracksChanged):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@248952 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Location:
branches/safari-608-branch/Source/WebCore
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/safari-608-branch/Source/WebCore/ChangeLog

    r248985 r248986  
     12019-08-21  Kocsen Chung  <kocsen_chung@apple.com>
     2
     3        Cherry-pick r248952. rdar://problem/54579626
     4
     5    [iOS] HLS streams disappear from Now Playing when paused on the lock screen
     6    https://bugs.webkit.org/show_bug.cgi?id=200951
     7    <rdar://problem/54534301>
     8   
     9    Reviewed by Eric Carlson.
     10   
     11    The AVPlayerItemTracks will get recreated on occasion (during seeks, and when
     12    changing buffering policy) which can result in a player which no longer reports
     13    that it has audio, which in turn results in Now Playing no longer considering
     14    the web page to be an eligable now playing application. Bridge this gap by also
     15    taking AVPlayerItem.hasEnabledAudio into account when determining whether the
     16    player has audio.
     17   
     18    * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
     19    (WebCore::MediaPlayerPrivateAVFoundationObjC::tracksChanged):
     20   
     21   
     22    git-svn-id: https://svn.webkit.org/repository/webkit/trunk@248952 268f45cc-cd09-0410-ab3c-d52691b4dbfc
     23
     24    2019-08-21  Jer Noble  <jer.noble@apple.com>
     25
     26            [iOS] HLS streams disappear from Now Playing when paused on the lock screen
     27            https://bugs.webkit.org/show_bug.cgi?id=200951
     28            <rdar://problem/54534301>
     29
     30            Reviewed by Eric Carlson.
     31
     32            The AVPlayerItemTracks will get recreated on occasion (during seeks, and when
     33            changing buffering policy) which can result in a player which no longer reports
     34            that it has audio, which in turn results in Now Playing no longer considering
     35            the web page to be an eligable now playing application. Bridge this gap by also
     36            taking AVPlayerItem.hasEnabledAudio into account when determining whether the
     37            player has audio.
     38
     39            * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
     40            (WebCore::MediaPlayerPrivateAVFoundationObjC::tracksChanged):
     41
    1422019-08-21  Kocsen Chung  <kocsen_chung@apple.com>
    243
  • branches/safari-608-branch/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm

    r247331 r248986  
    18371837        hasVideo |= (m_visualGroup && m_visualGroup->selectedOption());
    18381838
     1839        // HLS streams will occasionally recreate all their tracks; during seek and after
     1840        // buffering policy changes. "debounce" notifications which result in no enabled
     1841        // audio tracks by also taking AVPlayerItem.hasEnabledAudio into account when determining
     1842        // whethere there is any audio present.
     1843        hasAudio |= m_cachedHasEnabledAudio;
     1844
    18391845        // Always says we have video if the AVPlayerLayer is ready for diaplay to work around
    18401846        // an AVFoundation bug which causes it to sometimes claim a track is disabled even
Note: See TracChangeset for help on using the changeset viewer.