在 iOS 上读取实时摄像机流的 getUserMedia() 替代方案?
Alternative to getUserMedia() for reading live camera stream on iOS?
我们正在使用 QuaggaJS 构建一个移动条码扫描仪,它可以直接从设备的相机流中读取条码。在 desktop/Android 上工作正常,但在 iOS.
上根本不起作用
根据初步研究,我发现 iOS 根本不支持通过 Safari 或 iOS Chrome(下面的相关链接)的 WebRTC/getUserMedia
,这是 QuaggaJS 用来读取相机流的。
我也在this question看到关于在iOS上捕获静止图像的信息,但提供的答案仅用于捕获静止图像,而不是用于实时读取流。
我的问题 - 有没有其他方法可以从 iOS 相机抓取流?也许有一个不使用 getUserMedia
的替代库而不是 QuaggaJS?我不太精通 Javascript,所以我不确定除了 getUserMedia
之外是否还有其他可能的方法来访问相机流。
A "no" 是一个可以接受的答案;我只是想找更有经验的人提供指导。
Appendix/related 链接:
navigator.getUserMedia alternative API for iOS safari mobile browser?
https://www.quora.com/Why-is-navigator-getUserMedia-not-supported-in-Safari
https://bloggeek.me/webrtc-apple-or-microsoft/
HTML5: getUserMedia iOS issue?
quaggaJS 页面有一个功能兼容性矩阵可以回答您的问题:
iOS Safari 不支持 getusermedia。
根据 quaggaJS 文档 (https://github.com/serratus/quaggaJS#browser-support)
Quagga 使用了许多尚未被所有浏览器实现的现代 Web-APIs。 Quagga 有两种运行模式:
分析静态图像和
使用相机解码来自 live-stream 的图像。后者需要 MediaDevices API 的存在。您可以跟踪每种模式所用 Web-APIs 的兼容性:
- 静态图片
- 直播
我建议您在 iOS 上使用静态图像模式,因为不支持直播模式。
2017 年更新:Apple 刚刚宣布 getUserMedia 最终将在 iOS11.
中得到支持
2019 年 8 月更新:仅适用于 Safari,不适用于任何类型的 WebView。感谢@Klathmon 的评论。
我们正在使用 QuaggaJS 构建一个移动条码扫描仪,它可以直接从设备的相机流中读取条码。在 desktop/Android 上工作正常,但在 iOS.
上根本不起作用根据初步研究,我发现 iOS 根本不支持通过 Safari 或 iOS Chrome(下面的相关链接)的 WebRTC/getUserMedia
,这是 QuaggaJS 用来读取相机流的。
我也在this question看到关于在iOS上捕获静止图像的信息,但提供的答案仅用于捕获静止图像,而不是用于实时读取流。
我的问题 - 有没有其他方法可以从 iOS 相机抓取流?也许有一个不使用 getUserMedia
的替代库而不是 QuaggaJS?我不太精通 Javascript,所以我不确定除了 getUserMedia
之外是否还有其他可能的方法来访问相机流。
A "no" 是一个可以接受的答案;我只是想找更有经验的人提供指导。
Appendix/related 链接:
navigator.getUserMedia alternative API for iOS safari mobile browser?
https://www.quora.com/Why-is-navigator-getUserMedia-not-supported-in-Safari
https://bloggeek.me/webrtc-apple-or-microsoft/
HTML5: getUserMedia iOS issue?
quaggaJS 页面有一个功能兼容性矩阵可以回答您的问题:
iOS Safari 不支持 getusermedia。
根据 quaggaJS 文档 (https://github.com/serratus/quaggaJS#browser-support)
Quagga 使用了许多尚未被所有浏览器实现的现代 Web-APIs。 Quagga 有两种运行模式:
分析静态图像和
使用相机解码来自 live-stream 的图像。后者需要 MediaDevices API 的存在。您可以跟踪每种模式所用 Web-APIs 的兼容性:
- 静态图片
- 直播
我建议您在 iOS 上使用静态图像模式,因为不支持直播模式。
2017 年更新:Apple 刚刚宣布 getUserMedia 最终将在 iOS11.
中得到支持2019 年 8 月更新:仅适用于 Safari,不适用于任何类型的 WebView。感谢@Klathmon 的评论。