需求是不借助微信或者其他app,纯H5调用手机摄像头来识别二维码。
大佬们有好的方案吗?我看有借助插件的,还有video播放,然后chanvas画的但是好像挺卡的
需求是不借助微信或者其他app,纯H5调用手机摄像头来识别二维码。
大佬们有好的方案吗?我看有借助插件的,还有video播放,然后chanvas画的但是好像挺卡的
13 回答13.1k 阅读
8 回答3k 阅读
3 回答1.5k 阅读✓ 已解决
2 回答5.3k 阅读✓ 已解决
5 回答1.6k 阅读
3 回答2.4k 阅读✓ 已解决
5 回答1.9k 阅读✓ 已解决
之前正好做过,简单讲下做法。
mediaDevices.getUserMedia
接口调用用户摄像头stream
attach 到一个 video 元素上播放出来drawImage
定时把视频画面画到这个 canvas 上以上许多步骤可以省略,比如说直接找一个第三方识别二维码库,比如 https://github.com/nimiq/qr-s...,可以帮你解决很多问题。
性能问题没怎么遇到,播放个视频对大部分机型还是ok的,把视频数据画到 canvas 上也还好,然后识别这块可能稍微复杂点,一般找第三方库处理,有些会用到 Web Worker 提高性能,总的来说可以接受,体验也不错~
做的时候要注意下兼容性,
mediaDevices.getUserMedia
需要 Chrome 53+ / iOS 11+。