Closed Bug 1620071 Opened 5 years ago Closed 4 years ago

PiP is not working on Mixer.com

Categories

(Toolkit :: Video/Audio Controls, defect, P2)

Desktop
Unspecified
defect

Tracking

()

RESOLVED WONTFIX

People

(Reporter: adamopenweb, Unassigned)

References

(Blocks 1 open bug, )

Details

The PiP toggle doesn't appear consistently on this site and doesn't work when it does appear. Example stream: https://mixer.com/MirandaPings

Testing in Firefox 73-75 for MacOS.

Priority: -- → P2

On Mixer.com I'm seeing in the CSS:

.controlsContainer [hidden], .controlBar[hidden], .pictureInPictureToggleButton[hidden], .videocontrols[inDOMFullscreen] > .controlsContainer > .controlsOverlay > .pictureInPictureToggleButton {
    display: none;
}

Disabling this property the PiP icon displays but is not clickable.

The video is here on the main page:

<video class="spectre-video-element YC8umoqJ5rBISu9gQMwLl" playsinline="" autoplay=""></video>

The video controls need to be displayed before the PiP button will appear. You can't just hover the video and have the PiP icon show up. On this site the video controls only appear if you hover the mouse near the bottom of the video. I confirmed this behaviour on Edge (Chromium).

Oof, at first I was freaking out because I thought that this was page CSS finding a way to hide the toggle. Thankfully, however, this is the videocontrols.css that's loaded in the shadow root of the HTML video player:

https://searchfox.org/mozilla-central/rev/2fd8ffcf087bc59a8e5c962965bbb7bf230bcd28/toolkit/themes/shared/media/videocontrols.css#72-77

I looked into this. The problem appears to be that Mixer.com is setting the duration property of the <video> as the video plays. When it first starts, the duration is less than 45s, so we determine that the video should not show the toggle (based on the heuristics from bug 1547795).

According to https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaElement/duration, for livestreamed videos, the duration should be +Infinity.

The last issue is that the video has a srcObject set on it, which is something we don't currently support for PiP due to bug 1592539.

Depends on: 1592539

Mixer is shutting down, so I think we can close this report.

https://blog.mixer.com/2020/06/22/the-next-step-for-mixer/

Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.