Closed Bug 1672087 Opened 4 years ago Closed 4 years ago

Handle RDD crashes smoothly

Categories

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

defect

Tracking

()

RESOLVED FIXED
85 Branch
Tracking Status
firefox85 --- fixed

People

(Reporter: jya, Assigned: jya)

References

(Blocks 1 open bug)

Details

Attachments

(2 files)

The GPU RemoteDecoder will handle the case where the GPU process crashed elegantly. The GPU process will be restarted, and if needed HW decoding will be disabled if it continues crashing.

Video playback will temporary pause and resume, the error being completely transparent to the video element.

The RDD process on the other hand, when crashing will just cause a decoding error and stop. It will be restarted the next time we need a new decoder.

This behaviour was sufficient when the RDD only managed software decoding, and would pretty much never crash.

Now that the RDD can do HW decoding and use GPU image surface, it has the same chances of crashing as the GPU process.

We need to have RDD crashes handled like the GPU crashes.

Severity: -- → S3
Priority: -- → P3
Assignee: nobody → jyavenard

The RDD process startup being asynchronous make the operation trivial. Unlike with the GPU process, we can immediately tell the MediaFormatDecoder that a new decoder is needed when the RDD died.

Recovery will immediately occur with little visible interruption.

Depends on D98570

Pushed by jyavenard@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/603841cbec35 P1. Remove unused value. r=mattwoodrow https://hg.mozilla.org/integration/autoland/rev/cb44922f2e7a P2. Recreate remote decoder when parent dies. r=mattwoodrow,bryce
Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → 85 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: