diff options
author | bbudge <bbudge@chromium.org> | 2014-09-16 16:29:44 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2014-09-16 23:29:55 +0000 |
commit | 71be5585c62dbb95d556ddc5ebc6e1f303cd1490 (patch) | |
tree | 6a30980758a5e5eb582fad1a01bc0d2ba35843f8 /ppapi/api | |
parent | 730652530d108372ef14f62b89665197628f7880 (diff) | |
download | chromium_src-71be5585c62dbb95d556ddc5ebc6e1f303cd1490.zip chromium_src-71be5585c62dbb95d556ddc5ebc6e1f303cd1490.tar.gz chromium_src-71be5585c62dbb95d556ddc5ebc6e1f303cd1490.tar.bz2 |
Move PPB_VideoDecoder from 'Dev' to Stable.
Notes for discussion:
1) This API provides a low level interface to Chrome's video decoders. Chrome's implementations differ by codec and platform. H264 and VPX expect very different formats, so the plugin must know details about these codecs. In particular, some parsing of the stream is required to extract the frames, and during Reset, the plugin may have to parse into the frames to find start points and make sure the decoder is in the proper state to resume. Some platforms may only provide software implementations. Software and hardware decoders have very different latency and throughput.
2) The PP_VideoPicture struct (in pp_codecs.idl) exposes low level details about the texture format of the decoded pictures so the plugin can render the textures. These are platform-specific.
GL_TEXTURE_2D is the standard one.
GL_TEXTURE_RECTANGLE_ARB will be used by Mac in the future (but is not yet used).
GL_TEXTURE_EXTERNAL_OES is used on ARM ChromeOS systems.
Plugins should be prepared to handle all of them.
3) The plugin continually calls GetPicture to pump the decoder. There is a little weirdness with Flush, where we signal the end of stream by returning PP_ERROR_ABORTED to the plugin's last GetPicture call.
BUG=281689
Review URL: https://codereview.chromium.org/540393003
Cr-Commit-Position: refs/heads/master@{#295174}
Diffstat (limited to 'ppapi/api')
-rw-r--r-- | ppapi/api/ppb_video_decoder.idl | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/ppapi/api/ppb_video_decoder.idl b/ppapi/api/ppb_video_decoder.idl index 58f9e55..848543c 100644 --- a/ppapi/api/ppb_video_decoder.idl +++ b/ppapi/api/ppb_video_decoder.idl @@ -10,8 +10,9 @@ [generate_thunk] label Chrome { - [channel=dev] M36 = 0.1, - [channel=dev] M39 = 0.2 + /** Though not labeled 'channel=dev', 0.1 is a still a 'Dev' only API. */ + M36 = 0.1, + M39 = 0.2 }; /** |