summaryrefslogtreecommitdiffstats
path: root/webkit/plugins
diff options
context:
space:
mode:
authorfischman@chromium.org <fischman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-07-22 20:15:28 +0000
committerfischman@chromium.org <fischman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-07-22 20:15:28 +0000
commitf4edc3f0c16c2ef77fbce071d5a7fcf3a00a77c6 (patch)
tree9a46556854e698acf4d42297e398ca898b1436fa /webkit/plugins
parent6201e21a3f78df752d25f8ac4dd8a34e0c8e5139 (diff)
downloadchromium_src-f4edc3f0c16c2ef77fbce071d5a7fcf3a00a77c6.zip
chromium_src-f4edc3f0c16c2ef77fbce071d5a7fcf3a00a77c6.tar.gz
chromium_src-f4edc3f0c16c2ef77fbce071d5a7fcf3a00a77c6.tar.bz2
Re-added decoder id to PPP_VideoDecoder_Dev methods
This supports having multiple decoders per PP_Instance, which was removed as part of 92704. BUG=none TEST=gles2 works, trybots Review URL: http://codereview.chromium.org/7489012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@93691 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit/plugins')
-rw-r--r--webkit/plugins/ppapi/ppb_video_decoder_impl.cc17
-rw-r--r--webkit/plugins/ppapi/ppb_video_decoder_impl.h2
2 files changed, 13 insertions, 6 deletions
diff --git a/webkit/plugins/ppapi/ppb_video_decoder_impl.cc b/webkit/plugins/ppapi/ppb_video_decoder_impl.cc
index 2d517b6..ebde7ed 100644
--- a/webkit/plugins/ppapi/ppb_video_decoder_impl.cc
+++ b/webkit/plugins/ppapi/ppb_video_decoder_impl.cc
@@ -184,8 +184,10 @@ void PPB_VideoDecoder_Impl::ProvidePictureBuffers(
return;
PP_Size out_dim = PP_MakeSize(dimensions.width(), dimensions.height());
+ ScopedResourceId resource(this);
ppp_videodecoder_->ProvidePictureBuffers(
- instance()->pp_instance(), requested_num_of_buffers, out_dim);
+ instance()->pp_instance(), resource.id, requested_num_of_buffers,
+ out_dim);
}
void PPB_VideoDecoder_Impl::PictureReady(const media::Picture& picture) {
@@ -195,22 +197,26 @@ void PPB_VideoDecoder_Impl::PictureReady(const media::Picture& picture) {
PP_Picture_Dev output;
output.picture_buffer_id = picture.picture_buffer_id();
output.bitstream_buffer_id = picture.bitstream_buffer_id();
- ppp_videodecoder_->PictureReady(instance()->pp_instance(), output);
+ ScopedResourceId resource(this);
+ ppp_videodecoder_->PictureReady(
+ instance()->pp_instance(), resource.id, output);
}
void PPB_VideoDecoder_Impl::DismissPictureBuffer(int32 picture_buffer_id) {
if (!ppp_videodecoder_)
return;
+ ScopedResourceId resource(this);
ppp_videodecoder_->DismissPictureBuffer(
- instance()->pp_instance(), picture_buffer_id);
+ instance()->pp_instance(), resource.id, picture_buffer_id);
}
void PPB_VideoDecoder_Impl::NotifyEndOfStream() {
if (!ppp_videodecoder_)
return;
- ppp_videodecoder_->EndOfStream(instance()->pp_instance());
+ ScopedResourceId resource(this);
+ ppp_videodecoder_->EndOfStream(instance()->pp_instance(), resource.id);
}
void PPB_VideoDecoder_Impl::NotifyError(
@@ -218,11 +224,12 @@ void PPB_VideoDecoder_Impl::NotifyError(
if (!ppp_videodecoder_)
return;
+ ScopedResourceId resource(this);
// TODO(vrk): This is assuming VideoDecodeAccelerator::Error and
// PP_VideoDecodeError_Dev have identical enum values. There is no compiler
// assert to guarantee this. We either need to add such asserts or
// merge these two enums.
- ppp_videodecoder_->NotifyError(instance()->pp_instance(),
+ ppp_videodecoder_->NotifyError(instance()->pp_instance(), resource.id,
static_cast<PP_VideoDecodeError_Dev>(error));
}
diff --git a/webkit/plugins/ppapi/ppb_video_decoder_impl.h b/webkit/plugins/ppapi/ppb_video_decoder_impl.h
index 65c0116..a1e2f07 100644
--- a/webkit/plugins/ppapi/ppb_video_decoder_impl.h
+++ b/webkit/plugins/ppapi/ppb_video_decoder_impl.h
@@ -38,7 +38,7 @@ class PPB_VideoDecoder_Impl : public Resource,
// ResourceObjectBase overrides.
virtual PPB_VideoDecoder_API* AsPPB_VideoDecoder_API() OVERRIDE;
- // PPB_VideoDecoder implementation.
+ // PPB_VideoDecoder_API implementation.
virtual int32_t Initialize(PP_Resource context_id,
const PP_VideoConfigElement* dec_config,
PP_CompletionCallback callback) OVERRIDE;