Open Bug 1199098 Opened 5 years ago Updated 4 years ago

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

Categories

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

Unspecified
Gonk (Firefox OS)
defect

Tracking

()

People

(Reporter: jwwang, Unassigned)

References

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
Whiteboard: [ft:conndevices]
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.