DescriptionMove 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
Committed: https://crrev.com/71be5585c62dbb95d556ddc5ebc6e1f303cd1490
Cr-Commit-Position: refs/heads/master@{#295174}
Patch Set 1 #
Total comments: 2
Patch Set 2 : Keep 0.1 version for Dev only.x #
Total comments: 1
Messages
Total messages: 15 (2 generated)
|