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

Issue 2711133002: Step #1: Support pipelining codecs in VideoProcessor. (Closed)

Created:
3 years, 10 months ago by brandtr
Modified:
3 years, 9 months ago
CC:
webrtc-reviews_webrtc.org, tterriberry_mozilla.com, zhengzhonghou_agora.io, video-team_agora.io, stefan-webrtc, mflodman
Target Ref:
refs/heads/master
Project:
webrtc
Visibility:
Public.

Description

Support pipelining codecs in VideoProcessor. This CL removes most of the global frame state in VideoProcessor and replaces that with a vector of frame states. This is useful for pipelining codecs, where the encoded/decoded frame may not be immediately outputted after it has been sent to the codec. The callers (VideoProcessorIntegrationTest and video_quality_measurement) still call VideoProcessor in a sequential fashion. A follow-up CL will be submitted that enables batch mode in VideoProcessorIntegrationTest. Note that VideoProcessor is still not thread safe. Currently, we can run fairly well on Android due to the synchronicity of our MediaCodec wrapper, but we still cannot run on iOS due to async issues. This will be fixed in the future. BUG=webrtc:6634 Review-Url: https://codereview.webrtc.org/2711133002 Cr-Commit-Position: refs/heads/master@{#17084} Committed: https://chromium.googlesource.com/external/webrtc/+/17b958c041c519fef9d42113a556efc6931da87f

Patch Set 1 #

Patch Set 2 : Rebase. #

Total comments: 34

Patch Set 3 : clang-format #

Patch Set 4 : asapersson comments 1. #

Patch Set 5 : sprang comments 1. #

Patch Set 6 : Be less liberal about CHECKs. #

Patch Set 7 : Fix off-by-one error. #

Patch Set 8 : Reduce number of calls to NumberOfFrames(). #

Patch Set 9 : Rebase. #

Patch Set 10 : Tidy. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+233 lines, -178 lines) Patch
M webrtc/modules/video_coding/codecs/test/videoprocessor.h View 1 2 3 4 5 6 7 8 4 chunks +41 lines, -15 lines 0 comments Download
M webrtc/modules/video_coding/codecs/test/videoprocessor.cc View 1 2 3 4 5 6 7 8 9 10 chunks +192 lines, -163 lines 0 comments Download

Dependent Patchsets:

Messages

Total messages: 20 (10 generated)
brandtr
Step #1.
3 years, 10 months ago (2017-02-23 14:09:39 UTC) #3
brandtr
Rebase.
3 years, 9 months ago (2017-02-28 19:00:14 UTC) #4
åsapersson
https://codereview.webrtc.org/2711133002/diff/20001/webrtc/modules/video_coding/codecs/test/videoprocessor.cc File webrtc/modules/video_coding/codecs/test/videoprocessor.cc (right): https://codereview.webrtc.org/2711133002/diff/20001/webrtc/modules/video_coding/codecs/test/videoprocessor.cc#newcode122 webrtc/modules/video_coding/codecs/test/videoprocessor.cc:122: frame_infos_.reserve(kInitialFrameInfoSize); Could analysis_frame_reader_->NumberOfFrames() be used here. https://codereview.webrtc.org/2711133002/diff/20001/webrtc/modules/video_coding/codecs/test/videoprocessor.cc#newcode260 webrtc/modules/video_coding/codecs/test/videoprocessor.cc:260: FrameStatistic& ...
3 years, 9 months ago (2017-03-03 12:09:21 UTC) #5
sprang_webrtc
https://codereview.webrtc.org/2711133002/diff/20001/webrtc/modules/video_coding/codecs/test/videoprocessor.cc File webrtc/modules/video_coding/codecs/test/videoprocessor.cc (right): https://codereview.webrtc.org/2711133002/diff/20001/webrtc/modules/video_coding/codecs/test/videoprocessor.cc#newcode37 webrtc/modules/video_coding/codecs/test/videoprocessor.cc:37: // All foreman_* files in //resources are 300 frames ...
3 years, 9 months ago (2017-03-06 10:28:25 UTC) #6
brandtr
Thanks for feedback. Please take a second look. I have verified the changes by diffing ...
3 years, 9 months ago (2017-03-06 15:27:32 UTC) #7
sprang_webrtc
lgtm https://codereview.webrtc.org/2711133002/diff/20001/webrtc/modules/video_coding/codecs/test/videoprocessor.cc File webrtc/modules/video_coding/codecs/test/videoprocessor.cc (right): https://codereview.webrtc.org/2711133002/diff/20001/webrtc/modules/video_coding/codecs/test/videoprocessor.cc#newcode300 webrtc/modules/video_coding/codecs/test/videoprocessor.cc:300: RTC_CHECK_GE(last_encoded_frame_num_, 0); On 2017/03/06 15:27:31, brandtr wrote: > ...
3 years, 9 months ago (2017-03-06 17:21:38 UTC) #8
åsapersson
lgtm
3 years, 9 months ago (2017-03-07 08:25:42 UTC) #9
brandtr
Rebase.
3 years, 9 months ago (2017-03-07 08:59:56 UTC) #10
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.webrtc.org/2711133002/180001
3 years, 9 months ago (2017-03-07 09:39:28 UTC) #17
commit-bot: I haz the power
3 years, 9 months ago (2017-03-07 09:41:49 UTC) #20
Message was sent while issue was closed.
Committed patchset #10 (id:180001) as
https://chromium.googlesource.com/external/webrtc/+/17b958c041c519fef9d42113a...

Powered by Google App Engine
This is Rietveld 408576698