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

Issue 2767063002: 16-bit video upload to float: intermediate R16_EXT and copy to float. (Closed)

Created:
3 years, 9 months ago by aleksandar.stojiljkovic
Modified:
3 years, 7 months ago
CC:
chromium-reviews, mlamouri+watch-content_chromium.org, posciak+watch_chromium.org, chfremer+watch_chromium.org, blink-reviews-html_chromium.org, jam, mlamouri+watch-blink_chromium.org, eric.carlson_apple.com, haraken, feature-media-reviews_chromium.org, dglazkov+blink, darin-cc_chromium.org, blink-reviews, piman+watch_chromium.org, Srirama, blink-reviews-api_chromium.org, ccameron, qiankun
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

16-bit video upload to float: intermediate R16_EXT and copy to float. R16_EXT is supported on desktop core profile (OSX and Linux), and via OpenGL ES 3.1 GL_EXT_texture_norm16 extension (including ANGLE on Windows). Update khronos headers to get GL_R16_EXT definition. It is not exposed through WebGL but only used internally. Brings significant performance improvement, cutting the time spent on WebGL TexImage2D from ~1.2ms to ~0.2ms - see https://crbug.com/624436. BUG=624436 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel Review-Url: https://codereview.chromium.org/2767063002 Cr-Commit-Position: refs/heads/master@{#467924} Committed: https://chromium.googlesource.com/chromium/src/+/10751e1866092a059e6725361dfea8553b449f43

Patch Set 1 #

Total comments: 4

Patch Set 2 : update khronos headers #

Total comments: 2

Patch Set 3 : Rebase. Fix bug number, thanks Qiankun. #

Total comments: 7

Patch Set 4 : Rebase. Comments fix. Thanks kbr@. #

Total comments: 4

Patch Set 5 : Nit. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+3394 lines, -615 lines) Patch
M content/renderer/media/webmediaplayer_ms.h View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M content/renderer/media/webmediaplayer_ms.cc View 1 2 3 2 chunks +8 lines, -2 lines 0 comments Download
M content/test/data/media/depth_stream_test_utilities.js View 2 chunks +0 lines, -41 lines 0 comments Download
M content/test/data/media/getusermedia-depth-capture.html View 1 chunk +3 lines, -3 lines 0 comments Download
M gpu/command_buffer/common/capabilities.h View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M gpu/command_buffer/common/gles2_cmd_utils.cc View 1 2 chunks +3 lines, -0 lines 0 comments Download
M gpu/command_buffer/service/feature_info.h View 1 chunk +1 line, -0 lines 0 comments Download
M gpu/command_buffer/service/feature_info.cc View 1 chunk +13 lines, -0 lines 0 comments Download
M gpu/command_buffer/service/feature_info_unittest.cc View 1 chunk +9 lines, -0 lines 0 comments Download
M gpu/command_buffer/service/gles2_cmd_copy_texture_chromium.cc View 1 chunk +1 line, -0 lines 0 comments Download
M gpu/command_buffer/service/gles2_cmd_decoder.cc View 1 2 3 3 chunks +4 lines, -1 line 0 comments Download
M gpu/command_buffer/service/gles2_cmd_decoder_passthrough.cc View 1 2 1 chunk +1 line, -0 lines 0 comments Download
M gpu/command_buffer/service/texture_manager.cc View 1 2 3 1 chunk +3 lines, -0 lines 0 comments Download
M gpu/command_buffer/tests/gl_copy_texture_CHROMIUM_unittest.cc View 1 2 3 4 6 chunks +63 lines, -12 lines 0 comments Download
M gpu/ipc/common/gpu_command_buffer_traits_multi.h View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M media/renderers/skcanvas_video_renderer.h View 1 2 3 3 chunks +21 lines, -8 lines 0 comments Download
M media/renderers/skcanvas_video_renderer.cc View 1 2 3 4 chunks +70 lines, -10 lines 0 comments Download
M media/renderers/skcanvas_video_renderer_unittest.cc View 1 2 3 4 chunks +4 lines, -17 lines 0 comments Download
M third_party/WebKit/Source/core/html/HTMLVideoElement.h View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/Source/core/html/HTMLVideoElement.cpp View 1 2 3 2 chunks +3 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/public/platform/WebMediaPlayer.h View 1 2 3 1 chunk +5 lines, -4 lines 0 comments Download
M third_party/khronos/EGL/egl.h View 1 8 chunks +12 lines, -12 lines 0 comments Download
M third_party/khronos/EGL/eglext.h View 1 3 chunks +1048 lines, -447 lines 0 comments Download
M third_party/khronos/EGL/eglplatform.h View 1 6 chunks +12 lines, -4 lines 0 comments Download
M third_party/khronos/GLES2/gl2.h View 1 4 chunks +157 lines, -5 lines 0 comments Download
M third_party/khronos/GLES2/gl2ext.h View 1 50 chunks +1274 lines, -10 lines 0 comments Download
M third_party/khronos/GLES2/gl2platform.h View 1 1 chunk +17 lines, -9 lines 0 comments Download
M third_party/khronos/GLES3/gl3.h View 1 7 chunks +278 lines, -6 lines 0 comments Download
M third_party/khronos/GLES3/gl31.h View 1 9 chunks +347 lines, -3 lines 0 comments Download
M third_party/khronos/GLES3/gl3platform.h View 1 1 chunk +17 lines, -9 lines 0 comments Download
M third_party/khronos/KHR/khrplatform.h View 1 4 chunks +5 lines, -3 lines 0 comments Download
M third_party/khronos/README.chromium View 1 2 chunks +1 line, -6 lines 0 comments Download
M ui/gl/gl_bindings.h View 1 chunk +9 lines, -0 lines 0 comments Download

Messages

Total messages: 66 (45 generated)
aleksandar.stojiljkovic
kbr@chromium.org: Please review changes in gpu/* third_party/WebKit/Source/* kinuko@chromium.org: Please review changes in content/* third_party/WebKit/public/platform/WebMediaPlayer.h hubbe@chromium.org: ...
3 years, 8 months ago (2017-03-31 12:46:48 UTC) #32
hubbe
https://codereview.chromium.org/2767063002/diff/160001/media/renderers/skcanvas_video_renderer.cc File media/renderers/skcanvas_video_renderer.cc (right): https://codereview.chromium.org/2767063002/diff/160001/media/renderers/skcanvas_video_renderer.cc#newcode931 media/renderers/skcanvas_video_renderer.cc:931: target, texture, gl, frame, 0x822A /*GL_R16_EXT*/, GL_RED, I think ...
3 years, 8 months ago (2017-03-31 17:05:27 UTC) #34
aleksandar.stojiljkovic
On 2017/03/31 17:05:27, hubbe wrote: > https://codereview.chromium.org/2767063002/diff/160001/media/renderers/skcanvas_video_renderer.cc > File media/renderers/skcanvas_video_renderer.cc (right): > > https://codereview.chromium.org/2767063002/diff/160001/media/renderers/skcanvas_video_renderer.cc#newcode931 > ...
3 years, 8 months ago (2017-03-31 19:20:11 UTC) #35
Ken Russell (switch to Gerrit)
On 2017/03/31 19:20:11, aleksandar.stojiljkovic wrote: > On 2017/03/31 17:05:27, hubbe wrote: > > > https://codereview.chromium.org/2767063002/diff/160001/media/renderers/skcanvas_video_renderer.cc ...
3 years, 8 months ago (2017-03-31 23:02:05 UTC) #36
Ken Russell (switch to Gerrit)
I only had time to skim the code right now; it generally seems OK but ...
3 years, 8 months ago (2017-03-31 23:39:30 UTC) #37
aleksandar.stojiljkovic
On 2017/03/31 23:02:05, Ken Russell wrote: > On 2017/03/31 19:20:11, aleksandar.stojiljkovic wrote: > > On ...
3 years, 8 months ago (2017-04-02 11:28:12 UTC) #43
aleksandar.stojiljkovic
https://codereview.chromium.org/2767063002/diff/160001/media/renderers/skcanvas_video_renderer.cc File media/renderers/skcanvas_video_renderer.cc (right): https://codereview.chromium.org/2767063002/diff/160001/media/renderers/skcanvas_video_renderer.cc#newcode917 media/renderers/skcanvas_video_renderer.cc:917: // not widely supported. It is used on Windows, ...
3 years, 8 months ago (2017-04-02 11:28:29 UTC) #44
qiankun
https://codereview.chromium.org/2767063002/diff/180001/gpu/command_buffer/service/gles2_cmd_decoder.cc File gpu/command_buffer/service/gles2_cmd_decoder.cc (right): https://codereview.chromium.org/2767063002/diff/180001/gpu/command_buffer/service/gles2_cmd_decoder.cc#newcode16555 gpu/command_buffer/service/gles2_cmd_decoder.cc:16555: // TODO(aleksandar.stojiljkovic): Use sized internal formats: crbug.com/662644 Did you ...
3 years, 8 months ago (2017-04-10 09:43:27 UTC) #46
aleksandar.stojiljkovic
Rebased. In previous patch, also hardcoded constant issue was resolved. Decided to bundle the headers ...
3 years, 8 months ago (2017-04-11 21:33:27 UTC) #47
Ken Russell (switch to Gerrit)
LGTM assuming you add a WebGL conformance test verifying that it's not possible to allocate ...
3 years, 8 months ago (2017-04-20 01:47:07 UTC) #48
kinuko
content/ lgtm
3 years, 7 months ago (2017-04-26 02:23:48 UTC) #49
aleksandar.stojiljkovic
hubbe@, PTAL https://codereview.chromium.org/2767063002/diff/200001/gpu/command_buffer/service/feature_info.cc File gpu/command_buffer/service/feature_info.cc (right): https://codereview.chromium.org/2767063002/diff/200001/gpu/command_buffer/service/feature_info.cc#newcode1306 gpu/command_buffer/service/feature_info.cc:1306: validators_.texture_unsized_internal_format.AddValue(GL_RED_EXT); On 2017/04/20 01:47:06, Ken Russell wrote: ...
3 years, 7 months ago (2017-04-26 13:29:40 UTC) #50
hubbe
good overall, just a few minor nits https://codereview.chromium.org/2767063002/diff/220001/gpu/command_buffer/tests/gl_copy_texture_CHROMIUM_unittest.cc File gpu/command_buffer/tests/gl_copy_texture_CHROMIUM_unittest.cc (right): https://codereview.chromium.org/2767063002/diff/220001/gpu/command_buffer/tests/gl_copy_texture_CHROMIUM_unittest.cc#newcode573 gpu/command_buffer/tests/gl_copy_texture_CHROMIUM_unittest.cc:573: return false; ...
3 years, 7 months ago (2017-04-26 18:09:32 UTC) #51
aleksandar.stojiljkovic
https://codereview.chromium.org/2767063002/diff/220001/gpu/command_buffer/tests/gl_copy_texture_CHROMIUM_unittest.cc File gpu/command_buffer/tests/gl_copy_texture_CHROMIUM_unittest.cc (right): https://codereview.chromium.org/2767063002/diff/220001/gpu/command_buffer/tests/gl_copy_texture_CHROMIUM_unittest.cc#newcode573 gpu/command_buffer/tests/gl_copy_texture_CHROMIUM_unittest.cc:573: return false; On 2017/04/26 18:09:31, hubbe wrote: > Why ...
3 years, 7 months ago (2017-04-26 19:04:50 UTC) #52
hubbe
lgtm
3 years, 7 months ago (2017-04-26 19:19:18 UTC) #53
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2767063002/240001
3 years, 7 months ago (2017-04-27 05:56:08 UTC) #56
commit-bot: I haz the power
Try jobs failed on following builders: chromium_presubmit on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromium_presubmit/builds/421826)
3 years, 7 months ago (2017-04-27 06:05:58 UTC) #58
aleksandar.stojiljkovic
file://ipc/SECURITY_OWNERS review needed for gpu/ipc/common/gpu_command_buffer_traits_multi.h nasko@chromium.org PTAL gpu/ipc/common/gpu_command_buffer_traits_multi.h Thanks.
3 years, 7 months ago (2017-04-27 06:59:04 UTC) #60
nasko
gpu/ipc/common/gpu_command_buffer_traits_multi.h LGTM
3 years, 7 months ago (2017-04-27 23:16:31 UTC) #61
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2767063002/240001
3 years, 7 months ago (2017-04-28 05:00:06 UTC) #63
commit-bot: I haz the power
3 years, 7 months ago (2017-04-28 07:55:27 UTC) #66
Message was sent while issue was closed.
Committed patchset #5 (id:240001) as
https://chromium.googlesource.com/chromium/src/+/10751e1866092a059e6725361dfe...

Powered by Google App Engine
This is Rietveld 408576698