Open Bug 1300455 Opened 5 years ago Updated 2 years ago

[meta] Multiple channel support on playback

Categories

(Core :: Audio/Video: Playback, enhancement, P3)

enhancement

Tracking

()

People

(Reporter: chunmin, Assigned: chunmin)

References

(Depends on 2 open bugs)

Details

(Keywords: feature, meta)

This is a meta bug for audio 5.1 support on playback
Assignee: nobody → cchang
Depends on: 1073786
Keywords: feature
Summary: Support audio 5.1 on playback → [meta]Support audio 5.1 on playback
Summary: [meta]Support audio 5.1 on playback → [meta] multiple channel support on playback
The Gecko's AudioConverter downmix the audio data which has more than two channels into stereo or mono[0] before passing it to cubeb. The reason to do that is because cubeb has no multi-channel support. Once cubeb implements multi-channel support and mixing mechanism, there is no need to downmix first in gecko.

We should move the downmix mechanism from gecko into cubeb one by one on each platform. If we implement the multi-channel support on Windows, then we should disallow the downmix mechanism in gecko on Windows and let cubeb to do that job. The downmix in gecko will be removed until the multi-channel support is implemented on each backend. 

[0] http://searchfox.org/mozilla-central/rev/d98418da69edeb1f2f8e6f3840157fae1512f89b/dom/media/AudioConverter.cpp#160-216
To keep the stability, we should bypass the AudioConverter's downmix/upmix on Windows first and keep intact on other platforms. This can narrow down the effects when the bugs come but give us necessary information to revise. Once it's stable, we could apply this feature to other backends.

I'll open another bug to track this issue.
Depends on: 1321502
The overview of multiple channel support is updated here: https://wiki.mozilla.org/Media/multichannel
Summary: [meta] multiple channel support on playback → [meta] Multiple channel support on playback
Depends on: 1323659
Keywords: meta
Depends on: 1287672
Depends on: 1338012
Depends on: 1343791
Type: defect → enhancement
You need to log in before you can comment on or make changes to this bug.