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

Issue 426873004: Pass decoded picture size from VDA to client (Closed)

Created:
6 years, 4 months ago by kcwu
Modified:
6 years, 4 months ago
CC:
chromium-reviews, posciak+watch_chromium.org, jam, mcasas+watch_chromium.org, sievers+watch_chromium.org, jbauman+watch_chromium.org, feature-media-reviews_chromium.org, darin-cc_chromium.org, kalyank, piman+watch_chromium.org, danakj+watch_chromium.org, wjia+watch_chromium.org
Project:
chromium
Visibility:
Public.

Description

Pass decoded picture size from VDA to client Some of the VDAs, like DXVA and AVDA, don't distinguish between visible size and coded size. And given GVD is always been used with container, we should keep using size from config in GVD. BUG=390048 TEST=Manually tested: flash player using youtube. html5 player with resolution 1280x720 and 1216x684, h264 and vp8. apprtc with resolution 640x480 and 636x476. All tests are performed on both daisy and link. R=hshi@chromium.org, posciak@chromium.org Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=291187

Patch Set 1 #

Patch Set 2 : use gfx::Size #

Total comments: 15

Patch Set 3 : revise #

Patch Set 4 : handle visible size in VideoDecoderShim #

Patch Set 5 : git cl format #

Total comments: 12

Patch Set 6 : revise #

Total comments: 8

Patch Set 7 : revert my zero check for encoded size #

Patch Set 8 : fix build on mac #

Total comments: 3

Patch Set 9 : validate picture size #

Total comments: 3

Patch Set 10 : validate picture size in GpuVideoDecoder, too #

Patch Set 11 : simplify size checking #

Total comments: 3

Patch Set 12 : revise log message #

Total comments: 8

Patch Set 13 : address ddorwin's comments #

Total comments: 2

Patch Set 14 : rename picture.size to visible_size #

Patch Set 15 : change visible_size to visible_rect; add comments for visible_rect validation #

Total comments: 4

Patch Set 16 : revise comments #

Patch Set 17 : fix win/mac build #

Patch Set 18 : fix android build #

Unified diffs Side-by-side diffs Delta from patch set Stats (+100 lines, -64 lines) Patch
M content/common/gpu/client/gpu_video_decode_accelerator_host.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +3 lines, -1 line 0 comments Download
M content/common/gpu/client/gpu_video_decode_accelerator_host.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +4 lines, -2 lines 0 comments Download
M content/common/gpu/gpu_messages.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +4 lines, -3 lines 0 comments Download
M content/common/gpu/media/android_video_decode_accelerator.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +4 lines, -3 lines 0 comments Download
M content/common/gpu/media/dxva_video_decode_accelerator.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +2 lines, -1 line 0 comments Download
M content/common/gpu/media/gpu_video_decode_accelerator.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +2 lines, -1 line 0 comments Download
M content/common/gpu/media/v4l2_video_decode_accelerator.cc View 1 2 3 4 1 chunk +2 lines, -2 lines 0 comments Download
M content/common/gpu/media/vaapi_video_decode_accelerator.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +4 lines, -1 line 0 comments Download
M content/common/gpu/media/vt_video_decode_accelerator.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +2 lines, -1 line 0 comments Download
M content/renderer/media/rtc_video_decoder.h View 1 2 3 4 5 3 chunks +2 lines, -13 lines 0 comments Download
M content/renderer/media/rtc_video_decoder.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 6 chunks +21 lines, -23 lines 0 comments Download
M content/renderer/pepper/pepper_video_decoder_host.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +2 lines, -0 lines 0 comments Download
M content/renderer/pepper/ppb_video_decoder_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +2 lines, -0 lines 0 comments Download
M content/renderer/pepper/video_decoder_shim.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 6 chunks +17 lines, -10 lines 0 comments Download
M media/filters/gpu_video_decoder.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +14 lines, -0 lines 0 comments Download
M media/video/picture.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 3 chunks +10 lines, -1 line 0 comments Download
M media/video/picture.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +5 lines, -2 lines 0 comments Download

Messages

Total messages: 60 (0 generated)
kcwu
PTAL. Notes 1. I cannot reproduce crbug/360262 #31, thus I don't know it works or ...
6 years, 4 months ago (2014-07-29 14:27:08 UTC) #1
Pawel Osciak
Initial comment before I go more in depth on this review: please use gfx::Size instead ...
6 years, 4 months ago (2014-07-31 11:50:26 UTC) #2
kcwu
On 2014/07/31 11:50:26, Pawel Osciak wrote: > Initial comment before I go more in depth ...
6 years, 4 months ago (2014-08-05 12:59:02 UTC) #3
hshi1
LGTM. Can you make this into M38? Thanks
6 years, 4 months ago (2014-08-08 17:42:00 UTC) #4
Pawel Osciak
Does this compile? You did not change PictureReady() in VideoDecodeAccelerator base class. Also, please run ...
6 years, 4 months ago (2014-08-10 00:02:22 UTC) #5
Pawel Osciak
Oh, forgot to add, please verify with both flash players and HTML5 player in the ...
6 years, 4 months ago (2014-08-10 00:04:50 UTC) #6
hshi1
On 2014/08/10 00:02:22, Pawel Osciak wrote: > Does this compile? You did not change PictureReady() ...
6 years, 4 months ago (2014-08-10 00:44:30 UTC) #7
Pawel Osciak
On 2014/08/10 00:44:30, hshi1 wrote: > On 2014/08/10 00:02:22, Pawel Osciak wrote: > > Does ...
6 years, 4 months ago (2014-08-10 00:58:27 UTC) #8
kcwu
https://codereview.chromium.org/426873004/diff/20001/content/renderer/media/rtc_video_decoder.cc File content/renderer/media/rtc_video_decoder.cc (right): https://codereview.chromium.org/426873004/diff/20001/content/renderer/media/rtc_video_decoder.cc#newcode208 content/renderer/media/rtc_video_decoder.cc:208: // encoded size is unknown?? On 2014/08/10 00:02:21, Pawel ...
6 years, 4 months ago (2014-08-12 03:50:47 UTC) #9
Pawel Osciak
https://codereview.chromium.org/426873004/diff/20001/content/renderer/media/rtc_video_decoder.cc File content/renderer/media/rtc_video_decoder.cc (right): https://codereview.chromium.org/426873004/diff/20001/content/renderer/media/rtc_video_decoder.cc#newcode208 content/renderer/media/rtc_video_decoder.cc:208: // encoded size is unknown?? On 2014/08/12 03:50:47, kcwu ...
6 years, 4 months ago (2014-08-12 04:05:07 UTC) #10
kcwu
https://codereview.chromium.org/426873004/diff/20001/content/common/gpu/media/vaapi_video_decode_accelerator.cc File content/common/gpu/media/vaapi_video_decode_accelerator.cc (right): https://codereview.chromium.org/426873004/diff/20001/content/common/gpu/media/vaapi_video_decode_accelerator.cc#newcode377 content/common/gpu/media/vaapi_video_decode_accelerator.cc:377: tfp_picture->size())); On 2014/08/10 00:02:21, Pawel Osciak wrote: > Please ...
6 years, 4 months ago (2014-08-12 04:48:06 UTC) #11
Pawel Osciak
https://codereview.chromium.org/426873004/diff/20001/content/renderer/media/rtc_video_decoder.cc File content/renderer/media/rtc_video_decoder.cc (right): https://codereview.chromium.org/426873004/diff/20001/content/renderer/media/rtc_video_decoder.cc#newcode208 content/renderer/media/rtc_video_decoder.cc:208: // encoded size is unknown?? On 2014/08/12 04:48:06, kcwu ...
6 years, 4 months ago (2014-08-12 04:59:24 UTC) #12
kcwu
Addressed all comments. Ran git cl format as well. I will do more testing now. ...
6 years, 4 months ago (2014-08-12 07:31:12 UTC) #13
Pawel Osciak
Please also update CL message as per my previous comment. Thanks. https://codereview.chromium.org/426873004/diff/80001/content/renderer/media/rtc_video_decoder.cc File content/renderer/media/rtc_video_decoder.cc (right): ...
6 years, 4 months ago (2014-08-12 08:50:41 UTC) #14
kcwu
Tested many scenarios, all work well. https://codereview.chromium.org/426873004/diff/80001/content/renderer/media/rtc_video_decoder.cc File content/renderer/media/rtc_video_decoder.cc (right): https://codereview.chromium.org/426873004/diff/80001/content/renderer/media/rtc_video_decoder.cc#newcode199 content/renderer/media/rtc_video_decoder.cc:199: // Note this ...
6 years, 4 months ago (2014-08-13 14:27:20 UTC) #15
Pawel Osciak
https://codereview.chromium.org/426873004/diff/80001/content/renderer/media/rtc_video_decoder.cc File content/renderer/media/rtc_video_decoder.cc (right): https://codereview.chromium.org/426873004/diff/80001/content/renderer/media/rtc_video_decoder.cc#newcode199 content/renderer/media/rtc_video_decoder.cc:199: // Note this may not work because encoded size ...
6 years, 4 months ago (2014-08-14 07:15:36 UTC) #16
kcwu
https://codereview.chromium.org/426873004/diff/80001/content/renderer/media/rtc_video_decoder.cc File content/renderer/media/rtc_video_decoder.cc (right): https://codereview.chromium.org/426873004/diff/80001/content/renderer/media/rtc_video_decoder.cc#newcode199 content/renderer/media/rtc_video_decoder.cc:199: // Note this may not work because encoded size ...
6 years, 4 months ago (2014-08-14 12:31:02 UTC) #17
Pawel Osciak
lgtm
6 years, 4 months ago (2014-08-15 04:03:29 UTC) #18
kcwu
The CQ bit was checked by kcwu@chromium.org
6 years, 4 months ago (2014-08-15 04:16:53 UTC) #19
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/kcwu@chromium.org/426873004/120001
6 years, 4 months ago (2014-08-15 04:20:10 UTC) #20
kcwu
The CQ bit was unchecked by kcwu@chromium.org
6 years, 4 months ago (2014-08-15 04:22:32 UTC) #21
kcwu
add owner reviewers. @jln, security review content/common/gpu/gpu_messages.h @teravest: pepper file: content/renderer/pepper/video_decoder_shim.cc @kbr: gpu/* @ddorwin: *accelerator* ...
6 years, 4 months ago (2014-08-15 07:37:13 UTC) #22
jln (very slow on Chromium)
https://codereview.chromium.org/426873004/diff/140001/media/video/picture.cc File media/video/picture.cc (right): https://codereview.chromium.org/426873004/diff/140001/media/video/picture.cc#newcode30 media/video/picture.cc:30: size_(size) { What happens here if an attacker supplies ...
6 years, 4 months ago (2014-08-15 18:07:08 UTC) #23
Ken Russell (switch to Gerrit)
gpu/ portions LGTM assuming jln's security questions are addressed. One question. https://codereview.chromium.org/426873004/diff/140001/media/video/picture.h File media/video/picture.h (right): ...
6 years, 4 months ago (2014-08-15 22:59:26 UTC) #24
Pawel Osciak
On 2014/08/15 18:07:08, jln wrote: > https://codereview.chromium.org/426873004/diff/140001/media/video/picture.cc > File media/video/picture.cc (right): > > https://codereview.chromium.org/426873004/diff/140001/media/video/picture.cc#newcode30 > ...
6 years, 4 months ago (2014-08-16 23:02:24 UTC) #25
kcwu
On 2014/08/16 23:02:24, Pawel Osciak wrote: > On 2014/08/15 18:07:08, jln wrote: > > https://codereview.chromium.org/426873004/diff/140001/media/video/picture.cc ...
6 years, 4 months ago (2014-08-18 07:01:54 UTC) #26
kcwu
https://codereview.chromium.org/426873004/diff/140001/media/video/picture.h File media/video/picture.h (right): https://codereview.chromium.org/426873004/diff/140001/media/video/picture.h#newcode77 media/video/picture.h:77: // Picture contained in the PictureBuffer. On 2014/08/15 22:59:26, ...
6 years, 4 months ago (2014-08-18 07:02:04 UTC) #27
Pawel Osciak
We should verify in GVD as well. I guess we can't do that in ppapi ...
6 years, 4 months ago (2014-08-18 07:13:30 UTC) #28
kcwu
https://codereview.chromium.org/426873004/diff/160001/content/renderer/media/rtc_video_decoder.cc File content/renderer/media/rtc_video_decoder.cc (right): https://codereview.chromium.org/426873004/diff/160001/content/renderer/media/rtc_video_decoder.cc#newcode363 content/renderer/media/rtc_video_decoder.cc:363: bool valid_picture_size = (0 <= picture.size().width() && On 2014/08/18 ...
6 years, 4 months ago (2014-08-18 07:28:48 UTC) #29
Pawel Osciak
On 2014/08/18 07:28:48, kcwu wrote: > https://codereview.chromium.org/426873004/diff/160001/content/renderer/media/rtc_video_decoder.cc > File content/renderer/media/rtc_video_decoder.cc (right): > > https://codereview.chromium.org/426873004/diff/160001/content/renderer/media/rtc_video_decoder.cc#newcode363 > ...
6 years, 4 months ago (2014-08-18 07:38:25 UTC) #30
kcwu
Thanks. All comments are addressed. PTAL https://codereview.chromium.org/426873004/diff/160001/content/renderer/media/rtc_video_decoder.cc File content/renderer/media/rtc_video_decoder.cc (right): https://codereview.chromium.org/426873004/diff/160001/content/renderer/media/rtc_video_decoder.cc#newcode363 content/renderer/media/rtc_video_decoder.cc:363: bool valid_picture_size = ...
6 years, 4 months ago (2014-08-18 07:52:39 UTC) #31
Pawel Osciak
looks good, did you sanity test? https://codereview.chromium.org/426873004/diff/200001/content/renderer/media/rtc_video_decoder.cc File content/renderer/media/rtc_video_decoder.cc (right): https://codereview.chromium.org/426873004/diff/200001/content/renderer/media/rtc_video_decoder.cc#newcode367 content/renderer/media/rtc_video_decoder.cc:367: << " from ...
6 years, 4 months ago (2014-08-18 07:59:03 UTC) #32
kcwu
Yes, tested flash,youtube, and apprtc on link again https://codereview.chromium.org/426873004/diff/200001/content/renderer/media/rtc_video_decoder.cc File content/renderer/media/rtc_video_decoder.cc (right): https://codereview.chromium.org/426873004/diff/200001/content/renderer/media/rtc_video_decoder.cc#newcode367 content/renderer/media/rtc_video_decoder.cc:367: << ...
6 years, 4 months ago (2014-08-18 08:07:18 UTC) #33
Pawel Osciak
https://codereview.chromium.org/426873004/diff/200001/content/renderer/media/rtc_video_decoder.cc File content/renderer/media/rtc_video_decoder.cc (right): https://codereview.chromium.org/426873004/diff/200001/content/renderer/media/rtc_video_decoder.cc#newcode367 content/renderer/media/rtc_video_decoder.cc:367: << " from GPU"; On 2014/08/18 08:07:18, kcwu wrote: ...
6 years, 4 months ago (2014-08-18 08:12:23 UTC) #34
teravest
lgtm
6 years, 4 months ago (2014-08-18 14:14:13 UTC) #35
ddorwin
https://codereview.chromium.org/426873004/diff/220001/content/renderer/media/rtc_video_decoder.cc File content/renderer/media/rtc_video_decoder.cc (right): https://codereview.chromium.org/426873004/diff/220001/content/renderer/media/rtc_video_decoder.cc#newcode199 content/renderer/media/rtc_video_decoder.cc:199: // Note this may not work because encoded size ...
6 years, 4 months ago (2014-08-18 16:26:38 UTC) #36
kcwu
https://codereview.chromium.org/426873004/diff/220001/content/renderer/media/rtc_video_decoder.cc File content/renderer/media/rtc_video_decoder.cc (right): https://codereview.chromium.org/426873004/diff/220001/content/renderer/media/rtc_video_decoder.cc#newcode199 content/renderer/media/rtc_video_decoder.cc:199: // Note this may not work because encoded size ...
6 years, 4 months ago (2014-08-18 17:33:06 UTC) #37
ddorwin
Thanks. One nit. LG, but I asked sandersd to take a look since he is ...
6 years, 4 months ago (2014-08-18 18:50:08 UTC) #38
sandersd (OOO until July 31)
For VT VDA, the API actually does report a visible rect and natural size (I've ...
6 years, 4 months ago (2014-08-19 00:02:51 UTC) #39
ddorwin
lgtm % sandersd's comments.
6 years, 4 months ago (2014-08-19 00:08:13 UTC) #40
jln (very slow on Chromium)
On 2014/08/18 07:01:54, kcwu wrote: > On 2014/08/16 23:02:24, Pawel Osciak wrote: > > The ...
6 years, 4 months ago (2014-08-19 00:11:34 UTC) #41
kcwu
On 2014/08/19 00:02:51, sandersd wrote: > For VT VDA, the API actually does report a ...
6 years, 4 months ago (2014-08-19 03:17:16 UTC) #42
chromium-reviews
> Regarding to VT VDA, I only found coded_size_ and texture_size_ in > vt_video_decode_accelerator. Where ...
6 years, 4 months ago (2014-08-19 06:49:38 UTC) #43
kcwu
@sandersd Thanks for your information. I changed visible_size to visible_rect. @jln I added comments in ...
6 years, 4 months ago (2014-08-19 09:45:49 UTC) #44
ddorwin
content/renderer/media/ and media/ LGTM with nits. https://codereview.chromium.org/426873004/diff/280001/content/renderer/media/rtc_video_decoder.cc File content/renderer/media/rtc_video_decoder.cc (right): https://codereview.chromium.org/426873004/diff/280001/content/renderer/media/rtc_video_decoder.cc#newcode361 content/renderer/media/rtc_video_decoder.cc:361: // Validate picture ...
6 years, 4 months ago (2014-08-19 15:19:29 UTC) #45
kcwu
@jln, please take another look. https://codereview.chromium.org/426873004/diff/280001/content/renderer/media/rtc_video_decoder.cc File content/renderer/media/rtc_video_decoder.cc (right): https://codereview.chromium.org/426873004/diff/280001/content/renderer/media/rtc_video_decoder.cc#newcode361 content/renderer/media/rtc_video_decoder.cc:361: // Validate picture size ...
6 years, 4 months ago (2014-08-20 06:22:35 UTC) #46
jln (very slow on Chromium)
content/common/gpu/gpu_messages.h lgtm
6 years, 4 months ago (2014-08-20 22:40:51 UTC) #47
hshi1
The CQ bit was checked by hshi@chromium.org
6 years, 4 months ago (2014-08-20 22:43:36 UTC) #48
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/kcwu@chromium.org/426873004/300001
6 years, 4 months ago (2014-08-20 22:45:20 UTC) #49
commit-bot: I haz the power
FYI, CQ is re-trying this CL (attempt #1). The failing builders are: linux_gpu on tryserver.chromium.gpu ...
6 years, 4 months ago (2014-08-20 23:41:25 UTC) #50
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 4 months ago (2014-08-20 23:45:57 UTC) #51
commit-bot: I haz the power
Try jobs failed on following builders: linux_gpu on tryserver.chromium.gpu (http://build.chromium.org/p/tryserver.chromium.gpu/builders/linux_gpu/builds/55278) android_clang_dbg on tryserver.chromium.linux (http://build.chromium.org/p/tryserver.chromium.linux/builders/android_clang_dbg/builds/8040)
6 years, 4 months ago (2014-08-20 23:45:58 UTC) #52
kcwu
The CQ bit was checked by kcwu@chromium.org
6 years, 4 months ago (2014-08-21 08:15:01 UTC) #53
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/kcwu@chromium.org/426873004/300001
6 years, 4 months ago (2014-08-21 08:16:12 UTC) #54
kcwu
The CQ bit was unchecked by kcwu@chromium.org
6 years, 4 months ago (2014-08-21 08:17:24 UTC) #55
kcwu
The CQ bit was checked by kcwu@chromium.org
6 years, 4 months ago (2014-08-21 13:27:59 UTC) #56
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/kcwu@chromium.org/426873004/340001
6 years, 4 months ago (2014-08-21 13:28:57 UTC) #57
commit-bot: I haz the power
Committed patchset #18 (340001) as 291187
6 years, 4 months ago (2014-08-21 21:19:35 UTC) #58
jennyz
A revert of this CL (patchset #18) has been created in https://codereview.chromium.org/485103007/ by jennyz@chromium.org. The ...
6 years, 4 months ago (2014-08-21 23:01:24 UTC) #59
hshi1
6 years, 4 months ago (2014-08-21 23:08:17 UTC) #60
Message was sent while issue was closed.
On 2014/08/21 23:01:24, jennyz wrote:
> A revert of this CL (patchset #18) has been created in
> https://codereview.chromium.org/485103007/ by mailto:jennyz@chromium.org.
> 
> The reason for reverting is: This cl broke the daisy (chromium) build.
>
http://build.chromium.org/p/chromiumos.chromium/builders/Daisy%20%28chromium%....

kcwu@: unfortunately the build breakage is not caught by CQ trybots. The build
error is for ARM only (gpu/media/v4l2_video_decode_accelerator.cc is only built
for ARM).

Powered by Google App Engine
This is Rietveld 408576698