| Index: ppapi/thunk/ppb_video_encoder_api.h
|
| diff --git a/ppapi/thunk/ppb_video_encoder_api.h b/ppapi/thunk/ppb_video_encoder_api.h
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..b049efa0b1301a835fff4e62c4c7f2742d4f2df7
|
| --- /dev/null
|
| +++ b/ppapi/thunk/ppb_video_encoder_api.h
|
| @@ -0,0 +1,52 @@
|
| +// Copyright (c) 2015 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +#ifndef PPAPI_THUNK_PPB_VIDEO_ENCODER_API_H_
|
| +#define PPAPI_THUNK_PPB_VIDEO_ENCODER_API_H_
|
| +
|
| +#include "ppapi/c/pp_codecs.h"
|
| +#include "ppapi/c/ppb_video_encoder.h"
|
| +#include "ppapi/thunk/ppapi_thunk_export.h"
|
| +
|
| +namespace ppapi {
|
| +
|
| +class TrackedCallback;
|
| +
|
| +namespace thunk {
|
| +
|
| +class PPAPI_THUNK_EXPORT PPB_VideoEncoder_API {
|
| + public:
|
| + virtual ~PPB_VideoEncoder_API() {}
|
| +
|
| + virtual int32_t GetSupportedProfiles(
|
| + const PP_ArrayOutput& output,
|
| + const scoped_refptr<TrackedCallback>& callback) = 0;
|
| + virtual int32_t Initialize(
|
| + PP_VideoFrame_Format input_format,
|
| + const PP_Size* input_visible_size,
|
| + PP_VideoProfile output_profile,
|
| + uint32_t initial_bitrate,
|
| + PP_HardwareAcceleration acceleration,
|
| + const scoped_refptr<TrackedCallback>& callback) = 0;
|
| + virtual int32_t GetFramesRequired() = 0;
|
| + virtual int32_t GetFrameCodedSize(PP_Size* size) = 0;
|
| + virtual int32_t GetVideoFrame(
|
| + PP_Resource* video_frame,
|
| + const scoped_refptr<TrackedCallback>& callback) = 0;
|
| + virtual int32_t Encode(PP_Resource video_frame,
|
| + PP_Bool force_keyframe,
|
| + const scoped_refptr<TrackedCallback>& callback) = 0;
|
| + virtual int32_t GetBitstreamBuffer(
|
| + PP_BitstreamBuffer* bitstream_buffer,
|
| + const scoped_refptr<TrackedCallback>& callback) = 0;
|
| + virtual void RecycleBitstreamBuffer(
|
| + const PP_BitstreamBuffer* bitstream_buffer) = 0;
|
| + virtual void RequestEncodingParametersChange(uint32_t bitrate,
|
| + uint32_t framerate) = 0;
|
| +};
|
| +
|
| +} // namespace thunk
|
| +} // namespace ppapi
|
| +
|
| +#endif // PPAPI_THUNK_PPB_VIDEO_ENCODER_API_H_
|
|
|