|
Support stream textures with the synchronous compositor
This adds a thread-safe StreamTextureManager for GLInProcessContext.
It further adds some plumbing for the webkit thread to be able
to create a StreamTextureFactory from the main thread (see render_view_impl.cc)
with the ability to extract the thread-safe SurfaceTexture(Bridge) for a given stream.
This is nothing but a crazy amount of plumbing to achieve this:
- StreamTexture::Update() i.e. SurfaceTexture::updateTexImage needs to happen on the GL thread
with a current context
- The StreamTextureFactory and Proxy are referenced from the WebmediaPlayer instance which lives on
the main thread
- The callback for invalidating the video is posted to the
compositor thread directly (here: UI thread) bypassing the main thread
BUG= 239760
NOTRY=True
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=219057
Total comments: 10
Total comments: 2
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+524 lines, -21 lines) |
Patch |
 |
M |
content/browser/android/in_process/synchronous_compositor_impl.cc
|
View
|
1
2
3
4
5
6
|
5 chunks |
+89 lines, -3 lines |
0 comments
|
Download
|
 |
M |
content/common/gpu/stream_texture_manager_android.h
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
content/renderer/android/synchronous_compositor_factory.h
|
View
|
|
2 chunks |
+3 lines, -0 lines |
0 comments
|
Download
|
 |
M |
content/renderer/media/android/stream_texture_factory_android_synchronous_impl.h
|
View
|
1
2
3
4
|
2 chunks |
+27 lines, -2 lines |
0 comments
|
Download
|
 |
M |
content/renderer/media/android/stream_texture_factory_android_synchronous_impl.cc
|
View
|
1
2
3
|
1 chunk |
+150 lines, -6 lines |
0 comments
|
Download
|
 |
M |
content/renderer/render_view_impl.cc
|
View
|
1
2
3
4
5
|
2 chunks |
+4 lines, -2 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/client/gl_in_process_context.h
|
View
|
1
2
3
4
5
|
2 chunks |
+11 lines, -0 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/client/gl_in_process_context.cc
|
View
|
1
2
3
4
5
|
3 chunks |
+16 lines, -0 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/service/in_process_command_buffer.h
|
View
|
1
2
3
4
5
|
3 chunks |
+18 lines, -0 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/service/in_process_command_buffer.cc
|
View
|
1
2
3
4
5
|
3 chunks |
+25 lines, -2 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/service/stream_texture_manager.h
|
View
|
|
2 chunks |
+1 line, -3 lines |
0 comments
|
Download
|
 |
A |
gpu/command_buffer/service/stream_texture_manager_in_process_android.h
|
View
|
1
2
3
4
5
|
1 chunk |
+75 lines, -0 lines |
0 comments
|
Download
|
 |
A |
gpu/command_buffer/service/stream_texture_manager_in_process_android.cc
|
View
|
|
1 chunk |
+92 lines, -0 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer/service/stream_texture_manager_mock.h
|
View
|
1
2
3
4
5
|
1 chunk |
+2 lines, -2 lines |
0 comments
|
Download
|
 |
M |
gpu/command_buffer_service.gypi
|
View
|
1
2
3
4
5
|
1 chunk |
+2 lines, -0 lines |
0 comments
|
Download
|
 |
M |
webkit/common/gpu/webgraphicscontext3d_in_process_command_buffer_impl.h
|
View
|
1
|
1 chunk |
+3 lines, -0 lines |
0 comments
|
Download
|
 |
M |
webkit/common/gpu/webgraphicscontext3d_in_process_command_buffer_impl.cc
|
View
|
1
|
1 chunk |
+5 lines, -0 lines |
0 comments
|
Download
|
Total messages: 13 (0 generated)
|