DescriptionMediaRecorder: wire the bitRate settings in Blink and content (2nd go)
(This is a refry of https://crrev.com/1566263002 with
the bitrate allocation algorithm in Blink ISO Chrome).
Original description: --------------------------------------
This CL updates MediaRecorderOptions to reflect the bitrate
settings in the spec [1]. Those params are wired all the way
down to {Video,Audio}TrackEncoder where they are used to
configure libvpx and opus, resp.
If param |bitsPerSecond| overrides the other two if specified
and the spec leaves down to the UA to divide its value among
video and audio: this CL allocates 90% to video and 10% to audio.
Also added a DCHECK for opus #channels and sampling rate,
which opus hardcode-limits in a pretty clumsy way (feast
your eyes in [2]).
--------------------------------------------------------------
Diffs with this previous CL:
- Chrome gets just the consolidated audio and video bit rates.
- The bit rate calculation micro algorithm is in MediaRecorder.cpp
- Added a LayoutTest checking for throwing when the rates
are too high.
BUG=575301
[1] https://rawgit.com/w3c/mediacapture-record/master/MediaRecorder.html#MediaRecorderOptions
[2] https://code.google.com/p/chromium/codesearch#chromium/src/third_party/opus/src/src/opus_encoder.c&sq=package:chromium&type=cs&l=169
BUG=575301
Committed: https://crrev.com/8408d85eedde8c47e73ed6aea331dfa28088c16d
Cr-Commit-Position: refs/heads/master@{#370772}
Patch Set 1 #
Total comments: 18
Patch Set 2 : peter@s comments #
Total comments: 10
Patch Set 3 : comments addressed. Added TODO for unsigned->signed change #
Total comments: 1
Messages
Total messages: 30 (17 generated)
|