Closed Bug 1859880 Opened 11 months ago Closed 11 months ago

Investigate using VPXDecoder for decoding VP9 in WebRTC

Categories

(Core :: WebRTC: Audio/Video, task, P2)

task

Tracking

()

RESOLVED FIXED
120 Branch
Tracking Status
firefox120 --- fixed

People

(Reporter: pehrsons, Assigned: pehrsons)

References

(Depends on 1 open bug, Blocks 2 open bugs)

Details

Attachments

(4 files)

There are several issues with decoding VP9 SVC streams with MediaDataDecoder codecs. Both FFmpegVideoDecoder and AppleVTDecoder have issues reported on them.

We could use libwebrtc's libvpx decoder as that is basically the libwebrtc reference codec. It runs in the content process however.

The MediaDataDecoder stack also has VPXDecoder which IIRC can handle SVC just as well, and would run in the RDD process. Let's verify this and see if we can make it the default in webrtc.

There are reports that Apple's VideoToolbox VP9 decoder, which is always in
hardware, cannot always decode SVC streams properly. For now disable it for all
low-latency VP9 decoding -- this is mainly WebRTC.

There are reports that FFmpegVideoDecoder cannot always decode SVC streams
properly. For now disable it for all low-latency VP9 decoding -- this is mainly
WebRTC.

This patch should fix hw decode with WebRTC for all codecs supported by WMF.

WMFVideoMFTManager cannot decode SVC streams with multiple spatial layers.
For now disable it for low-latency VP9 decoding -- this is mainly WebRTC.

Depends on D191447

Pushed by pehrsons@gmail.com:
https://hg.mozilla.org/integration/autoland/rev/dfc1f56553ae
Don't use AppleVTDecoder for VP9 in WebRTC. r=media-playback-reviewers,webrtc-reviewers,padenot,jib
https://hg.mozilla.org/integration/autoland/rev/6691b076a6a2
Don't use FFmpegVideoDecoder for VP9 in WebRTC. r=media-playback-reviewers,webrtc-reviewers,padenot,jib
https://hg.mozilla.org/integration/autoland/rev/8b79442bf220
Fix hw decode of WebRTC streams with WMF on Windows. r=media-playback-reviewers,padenot
https://hg.mozilla.org/integration/autoland/rev/2653ea413889
Don't use WMFVideoMFTManager for VP9 in WebRTC. r=media-playback-reviewers,webrtc-reviewers,padenot,jib

Backed out for causing bustages on FFmpegDecoderModule.h

Backout link

Push with failures

Failure log

Flags: needinfo?(apehrson)

A rebase issue.

Flags: needinfo?(apehrson)
Pushed by pehrsons@gmail.com:
https://hg.mozilla.org/integration/autoland/rev/015c26be53dd
Don't use AppleVTDecoder for VP9 in WebRTC. r=media-playback-reviewers,webrtc-reviewers,padenot,jib
https://hg.mozilla.org/integration/autoland/rev/f3322110cf34
Don't use FFmpegVideoDecoder for VP9 in WebRTC. r=media-playback-reviewers,webrtc-reviewers,padenot,jib
https://hg.mozilla.org/integration/autoland/rev/7e8153f9bf53
Fix hw decode of WebRTC streams with WMF on Windows. r=media-playback-reviewers,padenot
https://hg.mozilla.org/integration/autoland/rev/0546c85daa8d
Don't use WMFVideoMFTManager for VP9 in WebRTC. r=media-playback-reviewers,webrtc-reviewers,padenot,jib
Depends on: 1863752
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: