Closed Bug 1584501 Opened 5 years ago Closed 4 years ago

[MediaControl-Windows] Implement the SystemMediaTransportControls for Windows

Categories

(Core :: Widget: Win32, enhancement)

Desktop
Windows 10
enhancement
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla75
Tracking Status
firefox75 --- fixed

People

(Reporter: MeFisto94, Assigned: MeFisto94)

References

Details

Attachments

(1 file)

User Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:69.0) Gecko/20100101 Firefox/69.0

Steps to reproduce:

In order to fullfil 1572869, we have to implement the SystemMediaTransportControls.

Unfortunately this is a UWP API, so I don't know how easy we can wire this up, somehow it seems to be possible for non UWP Apps and chromium is also doing it, but they have a lot of abstraction in place.

Assignee: nobody → marc.streckfuss
Status: UNCONFIRMED → ASSIGNED
Component: Untriaged → Widget: Win32
Ever confirmed: true
OS: Unspecified → Windows 10
Product: Firefox → Core
Hardware: Unspecified → Desktop
Depends on: 1585472
Depends on: 1591288
Summary: Implement the SystemMediaTransportControls for Windows → [MediaControl-Windows] Implement the SystemMediaTransportControls for Windows

Hi, Marc, are you still working on this bug and bug 1353652? If not, do you mind I continue your work? Now my plan is that to implement the first version which only supports controlling media without providing metadata, because we haven't finished the part of updating correct media metadata from media session. So I would say to provide the basic information for both SMTC and MPRIS, which is using Firefox as artist name. Then, we would continue to work on providing other infomation later.

Flags: needinfo?(marc.streckfuss)

Hey Alastor,
Yes I am still working on this bug.
Apologizes for the delay, I had it on my list but got side-tracked, especially thinking that you guys still need to do some background work first. I should've answered the questions, though. I will do that right now, especially if that means we can have media keys working very soon.

Since there might be some webpages not transmitting any Metadata either, I would recommend some kind of title like (Metadata) not available, so that it's clear this is no bug, but that's just a quick idea. The downside would be that localization would be needed and I especially don't know how those APIs perform with Unicode/Non-ASCII.

Anyway, I'll do some refactoring and answering the questions on Phabricator now.

Flags: needinfo?(marc.streckfuss)

(In reply to Marc Streckfuß [:MeFisto94] from comment #4)

Since there might be some webpages not transmitting any Metadata either, I would recommend some kind of title like (Metadata) not available, so that it's clear this is no bug, but that's just a quick idea. The downside would be that localization would be needed and I especially don't know how those APIs perform with Unicode/Non-ASCII.

For that kinds of websites, I think we can use its website title as artist name, and its favicon as album cover. But for the first stage, I would like to simply show "Firefox" as artist name on the virtual controller, to indicate where this control come from.

simply show "Firefox" as artist name on the virtual controller, to indicate where this control come from.
With a Firefox logo? If so I'd need an official URL for that. I think it greatly improves "accessability" in that case, you immediately see what you control even without having to read.

On Twitch the current version doesn't work: When Pausing SMTC seems to be gone and thus pressing play again triggers my other media player in the background and manually trying to select Firefox as Player doesn't work. I have to check if there is any Assertion or Logging Output relevant to find out what the problem here is. I also have to check how this is on Linux, this WriteUp is just so I don't forget about it.

Edit: My Preliminary thinking is, that after pausing, the video element is essentially destroyed or replaced by a thumbnail and thus it falls out of the scope of our system.

Depends on: 1601144
Depends on: 1601508
No longer depends on: 1585472
Pushed by marc.streckfuss@gmail.com:
https://hg.mozilla.org/integration/autoland/rev/647e98de0262
Draft Implementation of the Windows SystemMediaTransportControl WinRT Interface r=alwu
Pushed by marc.streckfuss@gmail.com:
https://hg.mozilla.org/integration/autoland/rev/3dbd1e653555
Draft Implementation of the Windows SystemMediaTransportControl WinRT Interface r=alwu
Depends on: 1616800

Should be solved when 1616800 is merged.

Flags: needinfo?(marc.streckfuss)
Pushed by marc.streckfuss@gmail.com:
https://hg.mozilla.org/integration/autoland/rev/e1721c48538d
Draft Implementation of the Windows SystemMediaTransportControl WinRT Interface r=alwu
Status: ASSIGNED → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla75
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: