Closed
Bug 1015029
Opened 11 years ago
Closed 11 years ago
8x10 OMX H.264 encoder doesn't support Constant bitrate config
Categories
(Core :: WebRTC: Audio/Video, defect)
Tracking
()
RESOLVED
FIXED
mozilla32
People
(Reporter: jesup, Assigned: jesup)
References
Details
Attachments
(1 file)
13.93 KB,
patch
|
jhlin
:
review+
|
Details | Diff | Splinter Review |
The 8x10 H.264 OMX encoder doesn't support OMX_Video_ControlRateConstant and you get Variable bitrate if you try to use it. The only viable candidate is OMX_Video_ControlRateConstantSkipFrames, which is CBR with frame-skipping after an IDR to keep the bitrate average ok.
This requires reworking the encode queue logic to account for the frame skipping. There is also a bug in the encoder or stagefright where the input timestamps don't appear in the output, so the code using timestamps is ifdef'd off.
Assignee | ||
Comment 1•11 years ago
|
||
Assignee | ||
Updated•11 years ago
|
Attachment #8427515 -
Flags: review?(jolin)
Comment 2•11 years ago
|
||
Comment on attachment 8427515 [details] [diff] [review]
Use OMX_VIDEO_ControlRateConstantSkipFrames mode for H.264 OMX encoder
Review of attachment 8427515 [details] [diff] [review]:
-----------------------------------------------------------------
::: media/webrtc/signaling/src/media-conduit/WebrtcOMXH264VideoCodec.cpp
@@ +579,5 @@
> CODEC_LOGD("OMX: (encode no output available this time)");
> return false;
> }
>
> + uint32_t target_timestamp = (timeUs * 90ll) / 1000; // us -> 90KHz
s/target_timestamp/targetTimestamp/g
@@ +596,5 @@
> webrtc::EncodedImage encoded(output.Elements(), output.Length(),
> output.Capacity());
> encoded._frameType = (isParamSets || isIFrame) ?
> webrtc::kKeyFrame : webrtc::kDeltaFrame;
> + EncodedFrame input_frame;
s/input_frame/inputFrame/g
Attachment #8427515 -
Flags: review?(jolin) → review+
Assignee | ||
Comment 3•11 years ago
|
||
Green try on the mass of patches -
https://tbpl.mozilla.org/?tree=Try&rev=36fed02b8193
Assignee | ||
Comment 4•11 years ago
|
||
Target Milestone: --- → mozilla32
Comment 5•11 years ago
|
||
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•