DescriptionIntroduce a client minimum picture pool size
When using the video decoder PPAPI, the most recent version of the ARC extension requires there to be a certain minimum number of picture buffers in flight (allocated but not released). Without a larger pool, ARC video decoding will stall trying to allocate more decoded picture frames than are available by default.
This patch creates a new DEV interface version for the VideoDecoder PPAPI. The new interface simply adds a single new argument to VideoDecoder::Initialize() so that a PPAPI client indicate the minimum number of pictures it needs to function.
In order to implement this minium picture count, the meaning of the ProvidePictureBuffers() interface call used by the video decoder implementations has changed slightly. After making the call to ProvidePictureBuffers() with a given picture buffer size, the subsequent callback via AssignPictureBuffers() includes a std::vector of buffers that might be larger than requested.
I've adjusted the various implementations to handle this change -- most of them previously assumed and asserted that the count was the same.
In particular this meant moving some code around in the V4L2 implementations since they also do some internal allocations based on the number of picture buffers that actually end up being chosen.
BUG=485775
Committed: https://crrev.com/9dd55e546c4de8767e83fc4065fa2c8352abb47f
Cr-Commit-Position: refs/heads/master@{#344391}
Patch Set 1 #Patch Set 2 : #Patch Set 3 : #
Total comments: 2
Patch Set 4 : #Patch Set 5 : Moved buffer choice logic to pepper_video_decoder_host.cc and updated decoder implementations to al… #Patch Set 6 : Documented actual may be larger than requested count. #
Total comments: 1
Patch Set 7 : Switch to Dev channel interface. But *NOT* dev/ppb_video_decoder_dev.idl #
Total comments: 2
Patch Set 8 : #
Total comments: 3
Patch Set 9 : #
Total comments: 9
Patch Set 10 : #Patch Set 11 : Rebased to origin/lkgr #Patch Set 12 : Trivial fix for the "*_only_ng" bot compile error #Patch Set 13 : Add crbug.com/520323 to a TODO comment; PPB_VideoDecoder_1_1 M44 -> M46 in .idl; ppapi/generators/g… #Patch Set 14 : Dropped generated ppapi files not due to my change (clang-format upgrade in 23eca7d) #Patch Set 15 : Updated native_client_sdk/src/examples/api/video_decode to match #
Total comments: 7
Patch Set 16 : Moved range checking min_picture_count from proxy to host code. #
Total comments: 2
Patch Set 17 : Moved constant to shared header, validate min_picture_size now in resource proxy as well as host co… #Messages
Total messages: 74 (22 generated)
|