| Index: content/renderer/pepper/pepper_video_source_host.h
|
| diff --git a/content/renderer/pepper/pepper_video_source_host.h b/content/renderer/pepper/pepper_video_source_host.h
|
| index c2a873f80e136498222f55164f4a64d91c6402aa..263ee316ce83404a6fbff8a547e34431763e753b 100644
|
| --- a/content/renderer/pepper/pepper_video_source_host.h
|
| +++ b/content/renderer/pepper/pepper_video_source_host.h
|
| @@ -6,16 +6,21 @@
|
| #define CONTENT_RENDERER_PEPPER_PEPPER_VIDEO_SOURCE_HOST_H_
|
|
|
| #include "base/compiler_specific.h"
|
| +#include "base/memory/scoped_ptr.h"
|
| #include "base/memory/weak_ptr.h"
|
| #include "content/common/content_export.h"
|
| +#include "content/renderer/media/video_source_handler.h"
|
| #include "ppapi/c/pp_time.h"
|
| +#include "ppapi/host/host_message_context.h"
|
| #include "ppapi/host/resource_host.h"
|
|
|
| namespace content {
|
|
|
| class RendererPpapiHost;
|
|
|
| -class CONTENT_EXPORT PepperVideoSourceHost : public ppapi::host::ResourceHost {
|
| +class CONTENT_EXPORT PepperVideoSourceHost
|
| + : public ppapi::host::ResourceHost,
|
| + public content::FrameReaderInterface {
|
| public:
|
| PepperVideoSourceHost(RendererPpapiHost* host,
|
| PP_Instance instance,
|
| @@ -23,21 +28,34 @@ class CONTENT_EXPORT PepperVideoSourceHost : public ppapi::host::ResourceHost {
|
|
|
| virtual ~PepperVideoSourceHost();
|
|
|
| + // content::FrameReaderInterface implementation.
|
| + virtual bool GotFrame(cricket::VideoFrame* frame) OVERRIDE;
|
| +
|
| virtual int32_t OnResourceMessageReceived(
|
| const IPC::Message& msg,
|
| ppapi::host::HostMessageContext* context) OVERRIDE;
|
|
|
| private:
|
| + int32_t ConvertFrame(ppapi::HostResource* image_data_resource,
|
| + PP_TimeTicks* timestamp);
|
| + void SendFrame(const ppapi::HostResource& image_data_resource,
|
| + PP_TimeTicks timestamp,
|
| + int32_t result);
|
| +
|
| int32_t OnHostMsgOpen(ppapi::host::HostMessageContext* context,
|
| const std::string& stream_url);
|
| int32_t OnHostMsgGetFrame(ppapi::host::HostMessageContext* context);
|
| int32_t OnHostMsgClose(ppapi::host::HostMessageContext* context);
|
|
|
| RendererPpapiHost* renderer_ppapi_host_;
|
| + ppapi::host::ReplyMessageContext reply_context_;
|
|
|
| base::WeakPtrFactory<PepperVideoSourceHost> weak_factory_;
|
|
|
| - PP_TimeTicks last_timestamp_;
|
| + scoped_ptr<content::VideoSourceHandler> source_handler_;
|
| + std::string stream_url_;
|
| + scoped_ptr<cricket::VideoFrame> last_frame_;
|
| + bool get_frame_pending_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(PepperVideoSourceHost);
|
| };
|
|
|