如何将图像从网页传输到Native Client应用程序?

时间:2012-07-13 01:07:42

标签: google-nativeclient

我想知道如何将图像从网页传输到Native Client应用程序。

我有两个主要用例: 1.)用户从其文件系统上传图像 2.)从网络摄像头捕获图像并保存在画布元素

我查看了imageData下的文档,但我不确定如何使用它,或者这是否是正确的方法。

我也知道我们可以使用消息框架来传递数据,但我不确定该方法对于至少640x480的图像是否有效。

2 个答案:

答案 0 :(得分:1)

是的,您可以通过PostMessage API将图像数据从JS传输到NaCl。

var imageData = context.getImageData(0, 0, this.canvas.width, this.canvas.height);
NaClModule.postMessage(imageData.data.buffer);

此外,您实际上可以将fileBlob URL传递给NaCl(也可以通过postmessage),并使用pp :: GetURL API直接获取文件。这将允许您在JS中弹出文件选择器,并让NaCl加载文件,而不是让JS加载它,并将其传递。

答案 1 :(得分:0)

您应该检查Nacl端口中的Nacl-mount。您可以使用http2mount类从服务器加载图像文件。但是,截至目前,我认为没有办法从Nacl访问Camera。他们还没有发布相机api。