Have VP8/VP9 decoder wrapper to detect change of stream content

RESOLVED FIXED in Firefox 65

Status

()

enhancement
P2
normal
RESOLVED FIXED
8 months ago
6 months ago

People

(Reporter: jya, Assigned: jya)

Tracking

unspecified
mozilla65
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox65 fixed)

Details

Attachments

(7 attachments)

Assignee

Description

8 months ago
For H264 content we have the H264Converter which will analyse the raw bitstream and if needed recreate a new H264 converter.

We don't have such mechanism for VP8 and VP9 and so when the content change decoders not handling content change (e.g. all but libvpx) will cause a decoding error.

Ideally we could make the H264Converter codec independent, a generic wrapper handling vp8, vp9 and h264.

This task is required in order to use the playback VP8 or VP9 decoder with WebRTC
Priority: -- → P2
Assignee

Updated

7 months ago
See Also: → 1498788
Assignee

Updated

7 months ago
See Also: → 1482059
Assignee

Comment 1

7 months ago
So that we can later expand and use it for other codecs.
Assignee

Comment 2

7 months ago
For AVC1 content (where the SPS/PPS is provided out of band), we would use VideoInfo has found in the container's metadata which may not always be correct.
Likely the reason on why we had bug 1498788 (decoded sample size didn't match the video config's dimensions)

We also always set the MediaRawData::mTrackInfo member for all samples, not just the first one as it's the right thing to do.

Depends on D10907
Assignee

Comment 3

7 months ago
This ensures that the test always work whenever the sample contains an extradata that is different to the info specified in the VideoInfo.

Depends on D10908
Assignee

Comment 6

7 months ago
This is now done in the MediaChangeMonitor.

Depends on D10912
Assignee

Comment 7

7 months ago
Because why not...

Depends on D10913

Comment 8

7 months ago
Pushed by jyavenard@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/aecd59f2fb30
P1. Abstract H264Converter. r=bryce
https://hg.mozilla.org/integration/autoland/rev/06c764a40a02
P2. Always ensure the provided VideoConfig exactly match the content. r=bryce
https://hg.mozilla.org/integration/autoland/rev/e8e4842ca7bf
P3. Improve out of band SPS change detection. r=bryce
https://hg.mozilla.org/integration/autoland/rev/80643ce074f6
P4. Rework and simplify code flow. r=bryce
https://hg.mozilla.org/integration/autoland/rev/9b18bd5c4c8b
P5. Add VPXChangeMonitor and detect VPx inband resolution change. r=bryce
https://hg.mozilla.org/integration/autoland/rev/4e832384a464
P6. Remove resolution detection in webm demuxer. r=bryce
https://hg.mozilla.org/integration/autoland/rev/f91c9161f993
P7. Check for in-band profile VP9 change, r=bryce

Updated

7 months ago
Depends on: 1506076
Assignee

Updated

6 months ago
Depends on: 1505882
You need to log in before you can comment on or make changes to this bug.