收藏
回答

CameraContext.onCameraFrame API设计方式存在缺陷?

在真机(小米6)上大量实测后,发现获取camera frame数据,小程序设计为推送帧数据到js引擎之中的方式(测试为30帧速度,即每秒推送30个任务过来)。

这会导致,一旦js引擎存在密集计算型任务正在执行(比如使用asm/wasm做处理),推送过来的这些回调任务就会堆积。

既然使用了onCameraFrame接口,那很多应用场景就是图像计算处理。

此时当用户点击交互时,点击事件也被堆积在后面,导致程序一直不能响应事件。

这在交互体验上就是大问题。

希望能把推送的API设计,优化为js主动拉取的方式,这就能很好的避免这个问题。

最后一次编辑于  2019-09-04
回答关注问题邀请回答
收藏

3 个回答

  • 微信技术专员 - Rex
    微信技术专员 - Rex
    2019-09-04

    你可以每隔2帧计算一次

    2019-09-04
    有用
    回复 2
    • Taco Tuesday
      Taco Tuesday
      2019-11-11
      你好,请问怎么隔帧处理
      2019-11-11
      回复
    • L²⁰²¹
      L²⁰²¹
      2020-10-14
      设置个变量Index。每次收到帧 index++ 判断(indexed %2 === 0)就好了呀
      2020-10-14
      回复
  • 淡定
    淡定
    2019-12-09

    目前好像没有办法做到实时AR的程度, 小程序端都不能做到30fps的将视频帧画面绘制到canvas上,处理帧率在10fps以下,使用node.js接收onCameraFrame的buffer,因为buffer过大,接收数据延迟也在100ms左右,不知道阿玛尼的案例是如何实现的,感觉很可能是微信官方开的绿色通道吧

    2019-12-09
    有用
    回复
  • Kenn Zhang
    Kenn Zhang
    2019-09-04

    emmm.....我也刚刚发了一个相关的帖子 https://developers.weixin.qq.com/community/develop/doc/000ec21c2181f8c8b8197daf856400?highLine=onCameraFrame

    2019-09-04
    有用
    回复
登录 后发表内容
问题标签