Open Bug 1901364 Opened 4 months ago Updated 6 days ago

Add Support for Spatial Audio on MacOS + Airpods headphones

Categories

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

Firefox 126
defect

Tracking

()

People

(Reporter: ic2f4cp4, Unassigned)

Details

Attachments

(1 file)

Attached image firefox_vs_safari.jpg

User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:126.0) Gecko/20100101 Firefox/126.0

Steps to reproduce:

(1) Use a Mac with macOS Monterey or higher, with Apple Airpods headphones connected
(2) Open some audio content in Firefox browser, for example https://youtu.be/luFGI13Mv8o
(3) You will see that MacOS shows that Spatial Audio is Not Available. When you open the same video in the Safari browser (or in supported third-party apps like Infuse), Mac will allow you to apply a Spatial Audio effect.

Actual results:

Firefox does not support Spatial Audio

Expected results:

Firefox on a Mac will allow Spatial Audio to be played on supported headphones, like the Safari browser

Please also provide additional information:
(A) I understand from this commit that support should be added by switching to Apple's new AVFoundation driver
(B) apple docs: https://developer.apple.com/videos/play/wwdc2021/10265/

I see my user agent looks like this: User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:126.0) Gecko/20100101 Firefox/126.0
Firefox is installed in a MacBook Pro M1 Pro

The commit I talk about at the end of "Please also provide additional information" is this: https://github.com/mpv-player/mpv/commit/1ed8607292ae4f9eafd041d304ad68740ffd3fd7

The Bugbug bot thinks this bug should belong to the 'Core::Audio/Video: Playback' component, and is moving the bug to that component. Please correct in case you think the bot is wrong.

Component: Untriaged → Audio/Video: Playback
Product: Firefox → Core

Is there any news?

It would be an important feature to add in Firefox to avoid necessarily using Safari when listening to videos or music with the AirPods Pro

Flags: needinfo?(jmathies)
Blocks: media-triage
Status: UNCONFIRMED → NEW
Ever confirmed: true
Flags: needinfo?(jmathies)

The severity field is not set for this bug.
:jimm, could you have a look please?

For more information, please visit BugBot documentation.

Flags: needinfo?(jmathies)
Severity: -- → S2
Flags: needinfo?(jmathies) → needinfo?(padenot)

Added this to the 2024 planning doc for assessment / tracking.

Severity: S2 → S3
No longer blocks: media-triage
Flags: needinfo?(padenot)

Is there any news?

Blocks: media-triage

Is there any news?

Flags: needinfo?(jmathies)
No longer blocks: media-triage
Flags: needinfo?(jmathies)

How long would it take to implement spatial audio? Some time ago you had shared Apple's documentation.

Flags: needinfo?(apehrson)

We are not working on this but contributions are always welcome.

Flags: needinfo?(apehrson)

I'm a developer too. In case I want to contribute, I wouldn't know which repository to commit to, or even how to compile Firefox. Can you give me some tips? Thank you very much

Flags: needinfo?(apehrson)

Firefox is pretty heavy to build, but the process is quite streamlined. Start here: https://firefox-source-docs.mozilla.org/setup/index.html
We use a dedicated library for platform specific audio code: cubeb. The mac backend we use lives in a separate repo: cubeb-coreaudio-rs. As the name implies it is written in rust and talks to CoreAudio.

Easiest way to get going would probably be to make a manual test case for your scenario. You could use the manual test_tone to get started. Set up a 5.1 stream with tones so you can differentiate the channels, and make it play until there's user input, or similar.

If you have questions it might be easiest to reach out in #media on Matrix.

Flags: needinfo?(apehrson)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: