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

Issue 1236663003: RTCVideoDecoder: Fixes for high resolutions and high pressure cases. (Closed)

Created:
5 years, 5 months ago by Pawel Osciak
Modified:
5 years, 5 months ago
CC:
chromium-reviews, mlamouri+watch-content_chromium.org, posciak+watch_chromium.org, jam, mcasas+watch_chromium.org, feature-media-reviews_chromium.org, darin-cc_chromium.org, mkwst+moarreviews-renderer_chromium.org, wjia+watch_chromium.org, tommi (sloooow) - chröme
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

RTCVideoDecoder: Fixes for high resolutions and high pressure cases. RTCVideoDecoder allocates SHM buffers up to kMaxNumSharedMemorySegments, using the currently requested size. However, if, after allocating kMaxNumSharedMemorySegments, an input buffer arrives with a size larger than the previously allocated, we will never allocate any more buffers to fit the new size, and will not decode anymore, waiting forever for new SHM buffers Separately, we allow 300 input buffers to be pended and expect to be able to catch up later on. However, if we are already 300 buffers behind, it is very unlikely that we ever would. Moreover, it's better for user experience to just catch up as fast as possible, dropping pending buffers. This modifies SHM buffer allocation to always allocate a fixed number of buffers, based on the currently requested size. If larger buffers are needed later on, we wait for all SHM buffers to be returned and reallocate with the new size. Also, allow only 8 pending buffers. This, together with 16 decode buffers, should be a deep enough pipeline. BUG=496349 TEST=apprtc, large Hangouts Committed: https://crrev.com/4a4514009cf31d4e7ae304d4c0dadda52d3d1516 Cr-Commit-Position: refs/heads/master@{#339787}

Patch Set 1 #

Total comments: 2
Unified diffs Side-by-side diffs Delta from patch set Stats (+73 lines, -62 lines) Patch
M content/renderer/media/rtc_video_decoder.h View 3 chunks +6 lines, -3 lines 0 comments Download
M content/renderer/media/rtc_video_decoder.cc View 7 chunks +67 lines, -59 lines 2 comments Download

Messages

Total messages: 16 (5 generated)
Pawel Osciak
ptal
5 years, 5 months ago (2015-07-17 10:28:22 UTC) #2
Ville-Mikko Rautio
https://codereview.chromium.org/1236663003/diff/1/content/renderer/media/rtc_video_decoder.cc File content/renderer/media/rtc_video_decoder.cc (right): https://codereview.chromium.org/1236663003/diff/1/content/renderer/media/rtc_video_decoder.cc#newcode764 content/renderer/media/rtc_video_decoder.cc:764: scoped_ptr<base::SharedMemory> shm = factories_->CreateSharedMemory(size); Earlier it was quaranteed that ...
5 years, 5 months ago (2015-07-17 11:26:15 UTC) #3
Pawel Osciak
https://codereview.chromium.org/1236663003/diff/1/content/renderer/media/rtc_video_decoder.cc File content/renderer/media/rtc_video_decoder.cc (right): https://codereview.chromium.org/1236663003/diff/1/content/renderer/media/rtc_video_decoder.cc#newcode764 content/renderer/media/rtc_video_decoder.cc:764: scoped_ptr<base::SharedMemory> shm = factories_->CreateSharedMemory(size); On 2015/07/17 11:26:15, Ville-Mikko Rautio ...
5 years, 5 months ago (2015-07-21 07:10:07 UTC) #4
wuchengli
lgtm
5 years, 5 months ago (2015-07-21 08:36:25 UTC) #5
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1236663003/1
5 years, 5 months ago (2015-07-21 11:15:22 UTC) #7
Pawel Osciak
dalecurtis@chromium.org: May I have owners please? Thanks.
5 years, 5 months ago (2015-07-21 11:15:43 UTC) #9
DaleCurtis
Since both WebRTC owners (tommi, perkj) are out I'll approve, but cc: tommi lgtm
5 years, 5 months ago (2015-07-21 18:19:32 UTC) #11
Pawel Osciak
On 2015/07/21 18:19:32, DaleCurtis wrote: > Since both WebRTC owners (tommi, perkj) are out I'll ...
5 years, 5 months ago (2015-07-21 23:52:52 UTC) #13
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1236663003/1
5 years, 5 months ago (2015-07-21 23:52:56 UTC) #14
commit-bot: I haz the power
Committed patchset #1 (id:1)
5 years, 5 months ago (2015-07-21 23:58:41 UTC) #15
commit-bot: I haz the power
5 years, 5 months ago (2015-07-21 23:59:32 UTC) #16
Message was sent while issue was closed.
Patchset 1 (id:??) landed as
https://crrev.com/4a4514009cf31d4e7ae304d4c0dadda52d3d1516
Cr-Commit-Position: refs/heads/master@{#339787}

Powered by Google App Engine
This is Rietveld 408576698