EME/Netflix content does not interact well with media controls such as media keys or bluetooth headset controls
Categories
(Core :: Audio/Video: Playback, defect, P3)
Tracking
()
People
(Reporter: bryce, Unassigned)
References
(Blocks 1 open bug)
Details
(Whiteboard: [media-netflix])
Creating a bug to track the following user report:
FYI I ran the other day into the following problem: I was watching something on Netflix and just removed my AirPod. Which properly paused the video thanks for Alastors work. But once I pluged the AirPod back into my ear I could not get the video to play again. I'm guessing that Widevine was not happy about something, but I don't know for sure.
So I closed the tab and re-opened it. Next time I paused by pressing the button on the AirPod first. That resulted in being able to resume.
I thought I share that experience here in case you have any outstanding bug reports where EME playback doesn't resume.
I don't have airpods to test this with at the moment. Would be useful to confirm if this takes place with other, similar bluetooth audio devices.
Reporter | ||
Comment 1•3 years ago
|
||
Updating this bug after some discussion where it sounds like Netflix may not be playing nicely with other headsets or keyboard based media keys. It's possible that the Netflix player's internal state is clashing with the media controls.
Comment 2•3 years ago
|
||
My Testing STR,
- Login Netflix and select a video to start (I chose this one)
- play video via pressing the
play
button from Netflix's player interface - once video started, press
pause
button from media keys (it could be on keyboard, headset or a virtual control interface) - try to start video again via Netflix's player UI (The
play
button on the bottom left)
Expected.
5. video starts playing again (video can still be resumed from media keys)
Actual.
5. video doesn't start playing
By performing above testing steps, I'm pretty sure this issue is caused by Netflix's player, not Firefox. I can also reproduce same issue on Chrome on my Windows 11.
When clicking the play
button from the Netflix's player, it didn't trigger any play invocation on the HTMLMediaElement, the reasonable assumption is that, Netflix's player doesn't handle the play change properly, so when users pause video from the places outside their player, some internal status won't be set properly, which blocks any future play invocaton from the play button.
In addition, I also checked Netflix's debugging console. When pressing play/pause
buttons from Netflix's player, it would show the below messages.
(pressing play)
9.497|0|I|Playback| Paused changed, From: true, To: false, MediaTime: 541.258
9.498|0|I|Playback| PresentingState changed, From: 3, To: 2, MediaTime: 541.258, AudioBufferLength: 238661, VideoBufferLength: 238617
(pressing pause)
12.016|0|I|Playback| Paused changed, From: false, To: true, MediaTime: 543.237
12.017|0|I|Playback| PresentingState changed, From: 2, To: 3, MediaTime: 543.397, AudioBufferLength: 236522, VideoBufferLength: 236478
But if we pause/resume video from media keys, the message would be like this. It only contains PresentingState changed
, but not Paused changed
. It seems indicating player itself doesn't know the playback has been changed by media control, so it couldn't resume the video from the play
button.
96.249|0|I|Playback| PresentingState changed, From: 3, To: 2, MediaTime: 543.437, AudioBufferLength: 236482, VideoBufferLength: 236438
98.309|0|I|Playback| PresentingState changed, From: 2, To: 3, MediaTime: 545.119, AudioBufferLength: 234800, VideoBufferLength: 234756
In addition, during my testing, sometime Netflix's play
button can work sucessfully along with the media keys, so I suspect there are some timing issue existing in Netflix's player.
I will report this issue to Netflix directly.
Comment 5•3 years ago
|
||
Reopen it because this issue hasn't been solved by Netflix and keep this open in order to set other similar issues duplicated.
Updated•3 years ago
|
Description
•