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

Issue 365153003: Pepper: add PPB_VideoEncoder interface (Closed)

Created:
6 years, 5 months ago by llandwerlin-old
Modified:
6 years, 5 months ago
CC:
chromium-reviews, yusukes+watch_chromium.org, tzik, binji+watch_chromium.org, jam, raymes+watch_chromium.org, asvitkine+watch_chromium.org, teravest+watch_chromium.org, darin-cc_chromium.org, nfullagar1, piman+watch_chromium.org, noelallen1, Sam Clegg, ihf+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Project:
chromium
Visibility:
Public.

Description

Pepper: add PPB_VideoEncoder interface The purpose of this extension is to give the ability for applications using the Pepper API to encode video frames drawn using OpenGL. A typical use case would be to encode frames composed of different video streams and/or graphic elements. The application is expected to draw into offscreen textures and send these textures to the encoder through the PPB_VideoEncoder interface. The encoder then returns bitstream buffers using PPB_Buffer_Dev. These buffers have to be discarded once the application has processed them. The application will be notified through the initialization step of how many textures need to be allocated in order to feed the encoder at all time. The encoder will notify the application once a video texture has been processed and can be reused by the application. This new PPB_VideoEncoder interface tries to reproduce the same patterns as the PPB_VideoDecoder interface. BUG=390964

Patch Set 1 #

Patch Set 2 : Integrate bbudge's feedback #

Patch Set 3 : update API to prevent the user from dealing with buffer management #

Unified diffs Side-by-side diffs Delta from patch set Stats (+1077 lines, -1 line) Patch
M AUTHORS View 1 chunk +1 line, -0 lines 0 comments Download
M chrome/browser/component_updater/ppapi_utils.cc View 1 2 1 chunk +1 line, -0 lines 0 comments Download
M content/renderer/pepper/plugin_module.cc View 1 2 1 chunk +1 line, -0 lines 0 comments Download
M content/renderer/pepper/resource_creation_impl.h View 1 chunk +1 line, -0 lines 0 comments Download
M content/renderer/pepper/resource_creation_impl.cc View 1 chunk +4 lines, -0 lines 0 comments Download
M native_client_sdk/src/libraries/ppapi/library.dsc View 1 2 3 chunks +3 lines, -0 lines 0 comments Download
M native_client_sdk/src/libraries/ppapi_cpp/library.dsc View 1 2 3 chunks +4 lines, -1 line 0 comments Download
M ppapi/BUILD.gn View 1 chunk +2 lines, -0 lines 0 comments Download
A ppapi/api/ppb_video_encoder.idl View 1 2 1 chunk +205 lines, -0 lines 0 comments Download
A ppapi/api/ppp_video_encoder.idl View 1 2 1 chunk +62 lines, -0 lines 0 comments Download
A ppapi/c/ppb_video_encoder.h View 1 2 1 chunk +228 lines, -0 lines 0 comments Download
A ppapi/c/ppp_video_encoder.h View 1 2 1 chunk +86 lines, -0 lines 0 comments Download
A ppapi/cpp/video_encoder.h View 1 2 1 chunk +124 lines, -0 lines 0 comments Download
A ppapi/cpp/video_encoder.cc View 1 2 1 chunk +78 lines, -0 lines 0 comments Download
A ppapi/cpp/video_encoder_client.h View 1 2 1 chunk +38 lines, -0 lines 0 comments Download
A ppapi/cpp/video_encoder_client.cc View 1 2 1 chunk +48 lines, -0 lines 0 comments Download
M ppapi/native_client/src/untrusted/pnacl_irt_shim/pnacl_shim.c View 1 2 8 chunks +50 lines, -0 lines 0 comments Download
M ppapi/ppapi_shared.gypi View 1 2 1 chunk +2 lines, -0 lines 0 comments Download
M ppapi/ppapi_sources.gypi View 2 chunks +3 lines, -0 lines 0 comments Download
M ppapi/proxy/interface_list.cc View 1 2 1 chunk +1 line, -0 lines 0 comments Download
M ppapi/proxy/resource_creation_proxy.h View 1 chunk +1 line, -0 lines 0 comments Download
M ppapi/proxy/resource_creation_proxy.cc View 1 chunk +5 lines, -0 lines 0 comments Download
M ppapi/shared_impl/resource.h View 1 chunk +1 line, -0 lines 0 comments Download
M ppapi/thunk/interfaces_ppb_public_dev_channel.h View 1 2 1 chunk +1 line, -0 lines 0 comments Download
A ppapi/thunk/ppb_video_encoder_api.h View 1 2 1 chunk +36 lines, -0 lines 0 comments Download
A ppapi/thunk/ppb_video_encoder_thunk.cc View 1 2 1 chunk +89 lines, -0 lines 0 comments Download
M ppapi/thunk/resource_creation_api.h View 1 chunk +1 line, -0 lines 0 comments Download
M tools/metrics/histograms/histograms.xml View 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 18 (0 generated)
llandwerlin-old
Here is a CL just for the PPB_VideoEncoder API.
6 years, 5 months ago (2014-07-04 10:36:38 UTC) #1
bbudge
Just a few high level comments based on the issue description and the IDL file. ...
6 years, 5 months ago (2014-07-04 16:22:17 UTC) #2
llandwerlin-old
On 2014/07/04 16:22:17, bbudge (OOO July 1-8) wrote: > Just a few high level comments ...
6 years, 5 months ago (2014-07-04 16:46:40 UTC) #3
bbudge
On 2014/07/04 16:46:40, llandwerlin wrote: > On 2014/07/04 16:22:17, bbudge (OOO July 1-8) wrote: > ...
6 years, 5 months ago (2014-07-09 17:10:37 UTC) #4
llandwerlin-old
On 2014/07/09 17:10:37, bbudge (OOO July 1-8) wrote: > > Yes, this is how the ...
6 years, 5 months ago (2014-07-09 17:17:42 UTC) #5
bbudge
On 2014/07/09 17:17:42, llandwerlin wrote: > On 2014/07/09 17:10:37, bbudge (OOO July 1-8) wrote: > ...
6 years, 5 months ago (2014-07-09 17:26:43 UTC) #6
llandwerlin-old
On 2014/07/09 17:26:43, bbudge wrote: > On 2014/07/09 17:17:42, llandwerlin wrote: > > On 2014/07/09 ...
6 years, 5 months ago (2014-07-15 18:58:56 UTC) #7
dmichael (off chromium)
On 2014/07/15 18:58:56, llandwerlin wrote: > On 2014/07/09 17:26:43, bbudge wrote: > > On 2014/07/09 ...
6 years, 5 months ago (2014-07-15 20:39:07 UTC) #8
bbudge
Kind of implicit in my comment (2) was that PPB_VideoDecoder avoids the use of a ...
6 years, 5 months ago (2014-07-15 20:53:06 UTC) #9
llandwerlin-old
On 2014/07/15 20:53:06, bbudge wrote: > Kind of implicit in my comment (2) was that ...
6 years, 5 months ago (2014-07-15 21:54:53 UTC) #10
bbudge
On 2014/07/15 21:54:53, llandwerlin wrote: > On 2014/07/15 20:53:06, bbudge wrote: > > Kind of ...
6 years, 5 months ago (2014-07-16 15:52:54 UTC) #11
llandwerlin-old
On 2014/07/16 15:52:54, bbudge wrote: > On 2014/07/15 21:54:53, llandwerlin wrote: Thanks a lot of ...
6 years, 5 months ago (2014-07-17 14:59:34 UTC) #12
bbudge
On 2014/07/17 14:59:34, llandwerlin wrote: > On 2014/07/16 15:52:54, bbudge wrote: > > On 2014/07/15 ...
6 years, 5 months ago (2014-07-17 17:41:25 UTC) #13
bbudge
Some information from an internal email thread on issues with a PPAPI VideoEncoder: ---------------- On ...
6 years, 5 months ago (2014-07-17 18:07:10 UTC) #14
dmichael (off chromium)
Hmm, I'm feeling myself leaning towards piman@'s way of thinking about this. I think it's ...
6 years, 5 months ago (2014-07-18 20:15:49 UTC) #15
llandwerlin-old
On 2014/07/18 20:15:49, dmichael wrote: > Hmm, I'm feeling myself leaning towards piman@'s way of ...
6 years, 5 months ago (2014-07-19 18:33:14 UTC) #16
joshtriplett
Following up on several of these points: One of the major reasons to use GL ...
6 years, 5 months ago (2014-07-21 15:02:50 UTC) #17
joshtriplett
6 years, 5 months ago (2014-07-21 15:10:02 UTC) #18
The problem is that we're shipping Chrome hardware *today* that has hardware
video encoding capabilities, but we have absolutely no way for applications to
make use of that.  That leaves applications stuck with undesirable alternatives
like embedding ffmpeg in NaCl, which introduces numerous problems in addition to
poor performance and battery life.

Powered by Google App Engine
This is Rietveld 408576698