web-dev-qa-db-ja.com

iOSでライブカメラストリームを読み取るためのgetUserMedia()の代替ですか?

QuaggaJSを使用して、デバイスのカメラストリームから直接バーコードを読み取るモバイルバーコードスキャナーを構築しています。デスクトップ/ Androidでは正常に動作しますが、iOSではまったく動作しません。

最初の調査から、iOSはSafariまたはiOSを介してWebRTC/getUserMediaをサポートしていないことがわかりましたChrome(下記の関連リンク))カメラストリーム。

この質問 iOSでの静止画像のキャプチャについても見てきましたが、提供されている答えは静止画像のキャプチャのみであり、ストリームをリアルタイムで読み取るためのものではありません。

私の質問-iOSカメラからストリームを取得する他の方法はありますか?おそらく、getUserMediaを使用しないQuaggaJS以外の代替ライブラリですか?私はJavaScriptに精通していないので、getUserMedia以外のカメラストリームにアクセスする方法があるかどうかはわかりません。

「いいえ」はここで受け入れられる答えです。私は単に、ガイダンスを提供してくれるより経験豊富な人を探しています。


付録/関連リンク:

navigator.getUserMedia代替API for iOS safariモバイルブラウザー?

https://www.quora.com/Why-is-navigator-getUserMedia-not-supported-in-Safari

https://bloggeek.me/webrtc-Apple-or-Microsoft/

HTML5:getUserMedia iOSの問題?

12
Brian Mansfield

2017年のアップデート:Apple getUserMediaがついにサポートされることが発表されましたiOS11

2019年8月の更新:Safariでのみ機能し、いかなる種類のWebViewでも機能しません。コメントをありがとう@Klathmon。

11
wildpeaks

QuaggaJSページには、質問に答える機能互換性マトリックスがあります。

enter image description here

getusermediaはiOSサファリではサポートされていません。

QuaggaJSドキュメントに従って( https://github.com/serratus/quaggaJS#browser-support

Quaggaは、すべてのブラウザでまだ実装されていない最新のWeb-APIを多数利用しています。 Quaggaが動作する2つのモードがあります。

  1. 静止画像の分析と

  2. カメラを使用してライブストリームから画像をデコードする。後者には、MediaDevices APIの存在が必要です。各モードで使用されるWeb-APIの互換性を追跡できます。

    • 静止画像
    • ライブストリーム

ライブストリームモードはサポートされていないため、iOSでは静止画像モードを使用することをお勧めします。

5
manishg