diff options
author | thembrown <thembrown@gmail.com> | 2016-03-14 15:25:09 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-03-14 22:26:38 +0000 |
commit | 10fd187c1de8dff86eb165deaecec7a5b5f6cc36 (patch) | |
tree | 1b399a52d2d5585d0e4da00e5ddaeee539dcf002 | |
parent | 04445e7446501142f247f307e93985731763ddbd (diff) | |
download | chromium_src-10fd187c1de8dff86eb165deaecec7a5b5f6cc36.zip chromium_src-10fd187c1de8dff86eb165deaecec7a5b5f6cc36.tar.gz chromium_src-10fd187c1de8dff86eb165deaecec7a5b5f6cc36.tar.bz2 |
Force keyframes every 100 frames.
Old behavior forced keyframes every 30000 frames. This makes it prohibitively
expensive to seek in a resulting video (without re-encoding), as this might
require decoding up to 30000 frames. Forcing more keyframes makes seeking much
more efficient.
BUG=594241
Review URL: https://codereview.chromium.org/1782043003
Cr-Commit-Position: refs/heads/master@{#381090}
-rw-r--r-- | content/renderer/media/video_track_recorder.cc | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/content/renderer/media/video_track_recorder.cc b/content/renderer/media/video_track_recorder.cc index 295209a..9cbd91f 100644 --- a/content/renderer/media/video_track_recorder.cc +++ b/content/renderer/media/video_track_recorder.cc @@ -326,9 +326,11 @@ void VideoTrackRecorder::VpxEncoder::ConfigureEncoding(const gfx::Size& size) { // Note that due to http://crbug.com/440223, it might be necessary to force a // key frame after 10,000frames since decoding fails after 30,000 non-key // frames. + // Forcing a keyframe in regular intervals also allows seeking in the + // resulting recording with decent performance. codec_config_.kf_mode = VPX_KF_AUTO; codec_config_.kf_min_dist = 0; - codec_config_.kf_max_dist = 30000; + codec_config_.kf_max_dist = 100; // Do not saturate CPU utilization just for encoding. On a lower-end system // with only 1 or 2 cores, use only one thread for encoding. On systems with |