Closed Bug 1063883 Opened 10 years ago Closed 10 years ago

OMX h.264 encoder doesn't handle resolution changes in mid-stream

Categories

(Core :: WebRTC: Audio/Video, defect)

ARM
Gonk (Firefox OS)
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla35
blocking-b2g 2.0+
Tracking Status
firefox33 --- wontfix
firefox34 --- fixed
firefox35 --- fixed
b2g-v2.0 --- fixed
b2g-v2.0M --- fixed
b2g-v2.1 --- fixed
b2g-v2.2 --- fixed

People

(Reporter: jesup, Assigned: jesup)

References

(Blocks 1 open bug)

Details

(Whiteboard: [caf priority: p2][CR 715378])

Attachments

(2 files)

[Blocking Requested - why for this release]: blocks 2.0+ bug/patch landing +++ This bug was initially created as a clone of Bug #1059765 +++ The OMX H.264 encoder reconfigures on a resolution change, but: 1) in contrast to stream start, it merges SPS/PPS/iframe in one buffer 2) it doesn't set the CODECCONFIG flag on the single-buffer SPS/PPS/iframe 3) if the size isn't a multiple of 16 in both dimensions, green (or maybe random) is inserted
focused on OMX h.264; it may be useful for allowing downscales while avoiding odd resolutions (and we should also look to see if that odd requirement can be relaxed now)
Attachment #8485360 - Flags: review?(pkerr)
Attachment #8485356 - Flags: review?(pkerr)
Attachment #8485356 - Flags: review?(gpascutto)
Comment on attachment 8485360 [details] [diff] [review] use multiples of macroblocks for qm_select downscaling I'll take either reviewer for both patches
Attachment #8485360 - Flags: review?(gpascutto)
Attachment #8485356 - Flags: review?(pkerr) → review+
Attachment #8485360 - Flags: review?(pkerr) → review+
You may want to create a bug to keep track of your embedded comments about using the divisor to handle odd frame sizes for other codecs, etc.
Attachment #8485356 - Flags: review?(gpascutto)
Attachment #8485360 - Flags: review?(gpascutto)
No longer blocks: WebRTC-OpenH264
Comment on attachment 8485356 [details] [diff] [review] In H.264 OMX HW make resolution changes work (SPS/PPS/iframe in one buffer) This is for both patches on this bug (without the "force to macroblock boundary, when 320x240 is cut to 240x180, you end up with a stripe of green on the edge. with the patch it goes to 256x192 and has no stripe. We need it on Aurora/34 for 2.1 [Approval Request Comment] Bug caused by (feature/regressing bug #): H.264 OMX User impact if declined: inability to enable the content analysis for h.264, especially to allow the quality to track bandwidth available. Testing completed: Tested here and by Jay Wang at QC Risk to taking this patch (and alternatives if risky): We'd have to simply disable the resolution changes part of it (and leave fps adjustment only), which if bandwidth dropped to ~100K/s might cause quality to suffer a lot and/or frames per second to drop to annoying levels. String or UUID changes made by this patch: none
Attachment #8485356 - Flags: approval-mozilla-b2g32?
Attachment #8485356 - Flags: approval-mozilla-aurora?
blocking-b2g: 2.0? → 2.0+
Attachment #8485356 - Flags: approval-mozilla-b2g32?
Attachment #8485356 - Flags: approval-mozilla-b2g32+
Attachment #8485356 - Flags: approval-mozilla-aurora?
Attachment #8485356 - Flags: approval-mozilla-aurora+
Whiteboard: [openh264-uplift] → [CR 715378][openh264-uplift]
Whiteboard: [CR 715378][openh264-uplift] → [caf priority: p2][CR 715378][openh264-uplift]
Whiteboard: [caf priority: p2][CR 715378][openh264-uplift] → [caf priority: p2][CR 715378]
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: