Open Bug 937460 Opened 11 years ago Updated 2 years ago

Media Recording - Change opus encoder to use Opus Multistream API

Categories

(Core :: Audio/Video: Recording, defect, P3)

defect

Tracking

()

People

(Reporter: rlin, Unassigned)

References

(Blocks 1 open bug)

Details

If we want to record multi audio channels media stream, we should use this API to pruoduce multistream opus.
Note that Opus only supports up to 8 channels in fixed surround configurations. We need to figure how to pass surround mapping information from media streams.
Summary of a brief conversation with roc:

MediaStreams have tracks. Each track can have more than one channel.

I suggested mixing _tracks_ together inside the MediaEncoder object. Roc things we should encode multi-track media streams as multi-track opus files. We can do that, but it depends on the use case which you want.

In any case, we can't currently make multi-track media streams so we don't have to support this now.

WebAudio has a 'speakers' vs 'discrete' property describing how the _channels_ are to be interpreted. Opus can handle up to 6 (or 8) channels in the 'speakers' case, and up to 255 in the 'discrete' case. To support multichannel, we need to pass this flag through the MediaStream to the encoder so it can mark the files correctly.
Assignee: nobody → rlin
Component: Video/Audio → Video/Audio: Recording
Free this if anyone wants.
Assignee: rlin → nobody
Rank: 25
Priority: -- → P2
Rank: 25 → 27
Mass change P2->P3 to align with new Mozilla triage process.
Priority: P2 → P3
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.