Closed Bug 1404241 Opened 2 years ago Closed 2 years ago

OSX High Sierra Playback Issues - bufferStalledError when hardware acceleration is enabled

Categories

(Core :: Audio/Video: Playback, defect)

defect
Not set

Tracking

()

RESOLVED WORKSFORME
Tracking Status
firefox-esr52 --- affected
firefox55 --- affected
firefox56 --- ?
firefox57 --- ?
firefox58 --- ?

People

(Reporter: jya, Unassigned)

References

(Blocks 1 open bug, )

Details

from:
https://github.com/video-dev/hls.js/issues/1369


    Link to playable M3U8 file: https://stream.ec.nau.edu/live/amlst:channelfour/playlist.m3u8
    Hls.js version: 0.8.4
    Browser name/version: Chrome 61.0.3163.100 (Official Build) (64-bit), Firefox 55.0.3 (64-bit)
    OS name/version: OSX 10.13 (public release)

Steps to reproduce

    Using OSX 10.13, launch Chrome (or Firefox)
    Visit https://video-dev.github.io/hls.js/demo
    Enter stream, attempt to play

Expected behavior

Click on play, video plays immediately
Actual behavior

What actually happened
Click on play, warnings {type: "mediaError", details: "bufferStalledError", fatal: false, buffer: 61.391667} spawn in console, video plays after 15 seconds. On Firefox. behavior is similar with this in the log: The video playback was aborted due to a corruption problem or because the video used features your browser did not support - NS_ERROR_DOM_MEDIA_FATAL_ERR (0x806e0005), although playback eventually starts.

This does not happen on OSX 10.12.6, only 10.13. These versions of Chrome and Firefox playback normally on 10.12.6 as well as Windows 10. It seems isolated to 10.13 only. I've tried baseline and main h264 3.1 and 4.1 live streams, the behavior is largely the same.


From comments, video plays fine when you disable hardware acceleration. This occur on both chrome and firefox.

HLS.js starts by seeking to buffered.start(0). If you remove that seek, then playback is okay.

Need to investigate what's going on.

My guess is a Apple Video Toolbox regression or how we use it... but let's not jump to conclusion yet.
I have macOS 10.13. The video automatically starts playing for me without any delay in Firefox 55-58. AFAICT, I have hardware acceleration enabled (media.hardware-video-decoding.enabled = true).

The video does not start playing automatically in Safari, but it will play without delay after I click the play button.

The video does not start playing automatically in Chrome 61, but will play with a 15 second delay after I click the play button.

Direct link to the HLS.js demo player with the playlist:

https://video-dev.github.io/hls.js/demo/?src=https%3A%2F%2Fstream.ec.nau.edu%2Flive%2Famlst%3Achannelfour%2Fplaylist.m3u8&enableStreaming=true&autoRecoverError=true&enableWorker=true&dumpfMP4=false&levelCapping=-1&defaultAudioCodec=undefined
I've found exactly the same behviour as described above.

don't think there's any issue specific to 10.13 here.

I can reproduce video corruption when changing streams, but I see the same thing in Safari, likely because the keyframes aren't I-Frame here but SEI recovery point (so it takes a few frames for the video to settle).


Chrome stalls.

Probably can close as WFM.
Chrome only issue.
Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.