Move audio/video rendering and A/V sync out of MDSM

NEW
Unassigned

Status

()

defect
P3
normal
4 years ago
3 years ago

People

(Reporter: jwwang, Unassigned)

Tracking

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: [ft:conndevices])

This is required by TV projects and CDM which want to do rendering using specific hardware and manage A/V sync on their own.
Here is the plan:

1. Create an abstract class MediaSink to encapsulate the idea of audio/video rendering and manage A/V sync.

2. Create a subclass of MediaSink to wrap DecodedAudioDataSink. MDSM will still do video rendering on its own and sync video to the position reported by this MediaSink.

3. Create a subclass of MediaSink to wrap DecodedStream. MDSM will still do video rendering on its own and sync video to the position reported by this MediaSink. However, MDSM will no longer have to care about whether audio is captured or not.

4. Create a subclass of MediaSink to render both audio and video. MDSM will no longer render video but only update playback position according to the position reported by this MediaSink.

5. Create a subclass of MediaSink to render both audio and video using specific hardware per TV project's requirement.

6. Create a subclass of MediaSink to render encrypted content per CDM's requirement.
Depends on: 1199104
Depends on: 1199121
Depends on: 1199155
OS: Unspecified → Gonk (Firefox OS)
Priority: -- → P2
Depends on: 1199562
Depends on: 1202351
Depends on: 1202540
Depends on: 1194918
Depends on: 1172830
Blocks: 1206805
No longer blocks: 1206805
Whiteboard: [ft:conndevices]
Blocks: 1209776
Blocks: TV_dev_board
Mass change P2 -> P3
Priority: P2 → P3
You need to log in before you can comment on or make changes to this bug.