Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(464)

Unified Diff: ppapi/native_client/src/untrusted/pnacl_irt_shim/pnacl_shim.c

Issue 365153003: Pepper: add PPB_VideoEncoder interface (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: update API to prevent the user from dealing with buffer management Created 6 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « ppapi/cpp/video_encoder_client.cc ('k') | ppapi/ppapi_shared.gypi » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ppapi/native_client/src/untrusted/pnacl_irt_shim/pnacl_shim.c
diff --git a/ppapi/native_client/src/untrusted/pnacl_irt_shim/pnacl_shim.c b/ppapi/native_client/src/untrusted/pnacl_irt_shim/pnacl_shim.c
index 9e7ea185f082564ae980358c0dc1068b9aa2be6a..c512d03c7d33ab0938863a3b5abbbe17a8e012f6 100644
--- a/ppapi/native_client/src/untrusted/pnacl_irt_shim/pnacl_shim.c
+++ b/ppapi/native_client/src/untrusted/pnacl_irt_shim/pnacl_shim.c
@@ -50,6 +50,7 @@
#include "ppapi/c/ppb_var_array_buffer.h"
#include "ppapi/c/ppb_var_dictionary.h"
#include "ppapi/c/ppb_video_decoder.h"
+#include "ppapi/c/ppb_video_encoder.h"
#include "ppapi/c/ppb_websocket.h"
#include "ppapi/c/ppp_messaging.h"
#include "ppapi/c/private/ppb_content_decryptor_private.h"
@@ -142,6 +143,7 @@ static struct __PnaclWrapperInfo Pnacl_WrapperInfo_PPB_VarArray_1_0;
static struct __PnaclWrapperInfo Pnacl_WrapperInfo_PPB_VarArrayBuffer_1_0;
static struct __PnaclWrapperInfo Pnacl_WrapperInfo_PPB_VarDictionary_1_0;
static struct __PnaclWrapperInfo Pnacl_WrapperInfo_PPB_VideoDecoder_0_1;
+static struct __PnaclWrapperInfo Pnacl_WrapperInfo_PPB_VideoEncoder_0_1;
static struct __PnaclWrapperInfo Pnacl_WrapperInfo_PPB_WebSocket_1_0;
static struct __PnaclWrapperInfo Pnacl_WrapperInfo_PPP_Messaging_1_0;
static struct __PnaclWrapperInfo Pnacl_WrapperInfo_PPB_AudioInput_Dev_0_3;
@@ -1913,6 +1915,35 @@ static int32_t Pnacl_M36_PPB_VideoDecoder_Reset(PP_Resource video_decoder, struc
/* End wrapper methods for PPB_VideoDecoder_0_1 */
+/* Begin wrapper methods for PPB_VideoEncoder_0_1 */
+
+static PP_Resource Pnacl_M37_PPB_VideoEncoder_Create(PP_Instance instance) {
+ const struct PPB_VideoEncoder_0_1 *iface = Pnacl_WrapperInfo_PPB_VideoEncoder_0_1.real_iface;
+ return iface->Create(instance);
+}
+
+static PP_Bool Pnacl_M37_PPB_VideoEncoder_IsVideoEncoder(PP_Resource resource) {
+ const struct PPB_VideoEncoder_0_1 *iface = Pnacl_WrapperInfo_PPB_VideoEncoder_0_1.real_iface;
+ return iface->IsVideoEncoder(resource);
+}
+
+static int32_t Pnacl_M37_PPB_VideoEncoder_Initialize(PP_Resource video_encoder, PP_Resource graphics3d_context, const struct PP_VideoEncoderParams* params, void* user_data, PPB_VideoEncoder_Ready_Func callback) {
+ const struct PPB_VideoEncoder_0_1 *iface = Pnacl_WrapperInfo_PPB_VideoEncoder_0_1.real_iface;
+ return iface->Initialize(video_encoder, graphics3d_context, params, user_data, callback);
+}
+
+static int32_t Pnacl_M37_PPB_VideoEncoder_Encode(PP_Resource video_encoder, uint32_t encode_id, const struct PP_VideoEncoderPicture* picture, PP_Bool force_keyframe, struct PP_CompletionCallback* callback) {
+ const struct PPB_VideoEncoder_0_1 *iface = Pnacl_WrapperInfo_PPB_VideoEncoder_0_1.real_iface;
+ return iface->Encode(video_encoder, encode_id, picture, force_keyframe, *callback);
+}
+
+static int32_t Pnacl_M37_PPB_VideoEncoder_Reset(PP_Resource video_encoder, struct PP_CompletionCallback* callback) {
+ const struct PPB_VideoEncoder_0_1 *iface = Pnacl_WrapperInfo_PPB_VideoEncoder_0_1.real_iface;
+ return iface->Reset(video_encoder, *callback);
+}
+
+/* End wrapper methods for PPB_VideoEncoder_0_1 */
+
/* Not generating wrapper methods for PPB_VideoFrame_0_1 */
/* Not generating wrapper methods for PPB_View_1_0 */
@@ -2018,6 +2049,8 @@ static void Pnacl_M14_PPP_Messaging_HandleMessage(PP_Instance instance, struct P
/* Not generating wrapper methods for PPP_MouseLock_1_0 */
+/* Not generating wrapper methods for PPP_VideoEncoder_0_1 */
+
/* Not generating wrapper methods for PPB_BrokerTrusted_0_2 */
/* Not generating wrapper methods for PPB_BrokerTrusted_0_3 */
@@ -4794,6 +4827,14 @@ static const struct PPB_VideoDecoder_0_1 Pnacl_Wrappers_PPB_VideoDecoder_0_1 = {
.Reset = (int32_t (*)(PP_Resource video_decoder, struct PP_CompletionCallback callback))&Pnacl_M36_PPB_VideoDecoder_Reset
};
+static const struct PPB_VideoEncoder_0_1 Pnacl_Wrappers_PPB_VideoEncoder_0_1 = {
+ .Create = (PP_Resource (*)(PP_Instance instance))&Pnacl_M37_PPB_VideoEncoder_Create,
+ .IsVideoEncoder = (PP_Bool (*)(PP_Resource resource))&Pnacl_M37_PPB_VideoEncoder_IsVideoEncoder,
+ .Initialize = (int32_t (*)(PP_Resource video_encoder, PP_Resource graphics3d_context, const struct PP_VideoEncoderParams* params, void* user_data, PPB_VideoEncoder_Ready_Func callback))&Pnacl_M37_PPB_VideoEncoder_Initialize,
+ .Encode = (int32_t (*)(PP_Resource video_encoder, uint32_t encode_id, const struct PP_VideoEncoderPicture* picture, PP_Bool force_keyframe, struct PP_CompletionCallback callback))&Pnacl_M37_PPB_VideoEncoder_Encode,
+ .Reset = (int32_t (*)(PP_Resource video_encoder, struct PP_CompletionCallback callback))&Pnacl_M37_PPB_VideoEncoder_Reset
+};
+
/* Not generating wrapper interface for PPB_VideoFrame_0_1 */
/* Not generating wrapper interface for PPB_View_1_0 */
@@ -4835,6 +4876,8 @@ static const struct PPP_Messaging_1_0 Pnacl_Wrappers_PPP_Messaging_1_0 = {
/* Not generating wrapper interface for PPP_MouseLock_1_0 */
+/* Not generating wrapper interface for PPP_VideoEncoder_0_1 */
+
/* Not generating wrapper interface for PPB_BrokerTrusted_0_2 */
/* Not generating wrapper interface for PPB_BrokerTrusted_0_3 */
@@ -5763,6 +5806,12 @@ static struct __PnaclWrapperInfo Pnacl_WrapperInfo_PPB_VideoDecoder_0_1 = {
.real_iface = NULL
};
+static struct __PnaclWrapperInfo Pnacl_WrapperInfo_PPB_VideoEncoder_0_1 = {
+ .iface_macro = PPB_VIDEOENCODER_INTERFACE_0_1,
+ .wrapped_iface = (const void *) &Pnacl_Wrappers_PPB_VideoEncoder_0_1,
+ .real_iface = NULL
+};
+
static struct __PnaclWrapperInfo Pnacl_WrapperInfo_PPB_WebSocket_1_0 = {
.iface_macro = PPB_WEBSOCKET_INTERFACE_1_0,
.wrapped_iface = (const void *) &Pnacl_Wrappers_PPB_WebSocket_1_0,
@@ -6165,6 +6214,7 @@ static struct __PnaclWrapperInfo *s_ppb_wrappers[] = {
&Pnacl_WrapperInfo_PPB_VarArrayBuffer_1_0,
&Pnacl_WrapperInfo_PPB_VarDictionary_1_0,
&Pnacl_WrapperInfo_PPB_VideoDecoder_0_1,
+ &Pnacl_WrapperInfo_PPB_VideoEncoder_0_1,
&Pnacl_WrapperInfo_PPB_WebSocket_1_0,
&Pnacl_WrapperInfo_PPB_AudioInput_Dev_0_3,
&Pnacl_WrapperInfo_PPB_AudioInput_Dev_0_4,
« no previous file with comments | « ppapi/cpp/video_encoder_client.cc ('k') | ppapi/ppapi_shared.gypi » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698