Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(64)

Issue 863083002: [cast] Add optional VideoEncoder method to flush frames. (Closed)

Created:
5 years, 11 months ago by jfroy
Modified:
5 years, 10 months ago
CC:
chromium-reviews, hclam+watch_chromium.org, imcheng+watch_chromium.org, hguihot+watch_chromium.org, jasonroberts+watch_google.com, avayvod+watch_chromium.org, pwestin+watch_google.com, feature-media-reviews_chromium.org, miu+watch_chromium.org, hubbe+watch_chromium.org, mikhal+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

[cast] Add optional VideoEncoder method to flush frames. This patch adds EmitFrames() to VideoEncoder. The method is documented as indicating that the encoder should produce all the frames that it may be buffering for analysis. This patch modifies VideoSender::InsertRawVideoFrame() to call EmitFrames() when a frames is dropped because the in-flight frames duration exceeds the target playout delay. This patch provides an implementation of EmitFrames() for the VideoToolbox H.264 encoder, which buffers frames for analysis as described in the bug. It also uses the existing max_number_of_video_buffers_used field in VideoConfig to set the upper bound on the encoder's frame window. BUG=450798 R=hclam, miu, DaleCurtis, Robert Sesek Committed: https://crrev.com/2c176764c9300863a30e028417ee5c6a5aadc6ad Cr-Commit-Position: refs/heads/master@{#313643}

Patch Set 1 #

Total comments: 2

Patch Set 2 : Remove unrelated changes that belong in a different CL. #

Patch Set 3 : Add documentation for VideoConfig::max_number_of_video_buffers_used #

Total comments: 1

Patch Set 4 : Update comment on EmitFrames() #

Patch Set 5 : Rebase #

Patch Set 6 : Rebase #

Unified diffs Side-by-side diffs Delta from patch set Stats (+72 lines, -1 line) Patch
M media/base/mac/videotoolbox_glue.h View 2 chunks +4 lines, -0 lines 0 comments Download
M media/base/mac/videotoolbox_glue.mm View 5 chunks +15 lines, -0 lines 0 comments Download
M media/cast/cast_config.h View 1 2 1 chunk +13 lines, -1 line 0 comments Download
M media/cast/sender/h264_vt_encoder.h View 1 chunk +1 line, -0 lines 0 comments Download
M media/cast/sender/h264_vt_encoder.cc View 1 2 3 4 5 2 chunks +20 lines, -0 lines 0 comments Download
M media/cast/sender/video_encoder.h View 1 2 3 1 chunk +8 lines, -0 lines 0 comments Download
M media/cast/sender/video_encoder.cc View 1 chunk +3 lines, -0 lines 0 comments Download
M media/cast/sender/video_sender.cc View 1 2 3 4 5 1 chunk +8 lines, -0 lines 0 comments Download

Messages

Total messages: 21 (6 generated)
jfroy
5 years, 11 months ago (2015-01-21 23:14:51 UTC) #1
jfroy
+ rsesek, DaleCurtis
5 years, 11 months ago (2015-01-21 23:20:00 UTC) #3
miu
https://codereview.chromium.org/863083002/diff/1/media/cast/sender/h264_vt_encoder.cc File media/cast/sender/h264_vt_encoder.cc (right): https://codereview.chromium.org/863083002/diff/1/media/cast/sender/h264_vt_encoder.cc#newcode340 media/cast/sender/h264_vt_encoder.cc:340: video_config.max_number_of_video_buffers_used); VideoSenderConfig::max_number_of_video_buffers_used means something completely different from how you're ...
5 years, 11 months ago (2015-01-21 23:24:27 UTC) #4
jfroy
On 2015/01/21 23:24:27, miu wrote: > https://codereview.chromium.org/863083002/diff/1/media/cast/sender/h264_vt_encoder.cc > File media/cast/sender/h264_vt_encoder.cc (right): > > https://codereview.chromium.org/863083002/diff/1/media/cast/sender/h264_vt_encoder.cc#newcode340 > ...
5 years, 11 months ago (2015-01-21 23:36:58 UTC) #5
miu
lgtm On 2015/01/21 23:36:58, jfroy wrote: > On 2015/01/21 23:24:27, miu wrote: > > Will ...
5 years, 11 months ago (2015-01-22 01:07:18 UTC) #6
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/863083002/50001
5 years, 11 months ago (2015-01-22 18:05:12 UTC) #8
commit-bot: I haz the power
Try jobs failed on following builders: chromium_presubmit on tryserver.chromium.linux (http://build.chromium.org/p/tryserver.chromium.linux/builders/chromium_presubmit/builds/37634) Try jobs failed on following ...
5 years, 11 months ago (2015-01-22 18:14:11 UTC) #10
jfroy
Missing LGTM from media/base owner, unrelated test (PolicyPathParserTests.AllPlatformVariables) is failing on mac_chromium_rel_ng, and unrelated tests ...
5 years, 11 months ago (2015-01-22 19:45:54 UTC) #11
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/863083002/70001
5 years, 11 months ago (2015-01-26 18:53:03 UTC) #13
commit-bot: I haz the power
Try jobs failed on following builders: chromium_presubmit on tryserver.chromium.linux (http://build.chromium.org/p/tryserver.chromium.linux/builders/chromium_presubmit/builds/38342)
5 years, 11 months ago (2015-01-26 18:59:58 UTC) #15
jfroy
Woops, I didn't mean to CQ this :/
5 years, 11 months ago (2015-01-26 19:01:22 UTC) #16
DaleCurtis
Lgtm
5 years, 10 months ago (2015-01-28 23:41:33 UTC) #17
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/863083002/90001
5 years, 10 months ago (2015-01-28 23:44:56 UTC) #19
commit-bot: I haz the power
Committed patchset #6 (id:90001)
5 years, 10 months ago (2015-01-29 00:49:00 UTC) #20
commit-bot: I haz the power
5 years, 10 months ago (2015-01-29 00:49:54 UTC) #21
Message was sent while issue was closed.
Patchset 6 (id:??) landed as
https://crrev.com/2c176764c9300863a30e028417ee5c6a5aadc6ad
Cr-Commit-Position: refs/heads/master@{#313643}

Powered by Google App Engine
This is Rietveld 408576698