首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >c++媒体流的N-API连续回调

c++媒体流的N-API连续回调
EN

Stack Overflow用户
提问于 2018-06-12 10:32:45
回答 2查看 1.3K关注 0票数 3

我正在尝试为c++媒体播放器创建一个节点接口。在解码帧时,有一个允许我访问帧数据的事件,我正试图将其导入节点。但我似乎想不出如何使这种功能与节点api中可用的函数一起工作。目前,我的方法是找出一种推送机制,将数据从c++获取到javascript,我所需要的只是初始化javascript中的回调,因为它看起来更优雅。如果失败,我可以在js中创建一个轮询循环来检查是否有新的帧数据,但它似乎效率较低。

我尝试过使用工作,方法是在execute参数函数中创建一个lambda函数,这将允许我为每个帧回调调用回调,但随后得到以下错误:

代码语言:javascript
复制
Fatal error in HandleScope::HandleScope
Entering the V8 API without proper locking in place

我很可能不正确地处理这个问题,这是我第一次使用n.

欢迎任何帮助,谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-06-13 04:14:35

该问题主要与不能访问事件循环主线程之外的V8 (JavaScript)内存有关。如果要创建异步线程,默认情况下,您也要创建一个新的内存堆栈。

幸运的是,一个允许使用函数 (例如这里)进行线程安全访问的修补程序正在进行中。

在此之前,有一个标头仅C++包,它与C++ N包装器集成得很好

票数 4
EN

Stack Overflow用户

发布于 2020-02-13 08:23:24

Napi-addon-api正在更新。这是使用Napi::ThreadSafeFunction的一种好方法。医生和例子。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50815038

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档