Webでスマホカメラを使おうとしてハマった話
機械学習のデータ収集のため、スマホで画像を取得&増幅してサーバへせっせと送るWebアプリを作っていたのですが、久しぶりに動かそうとすると
Failed to execute 'createObjectURL' on 'URL'
とかいって動かない。
なんだそりゃ?何も変えてないぞ。ソースは以下を参考にして組んだもの。
いろいろ調べてみると、原因は「Google Chrome」だった。
Google Chromeでは、window.URL.createObjectURL
は廃止予定だと。
実装方法
Chrome
video.srcObject = stream;
Chrome以外
video.src = window.URL.createObjectURL(stream);
Webアプリを作っていると、こういうことにしょっちゅうぶつかるなぁ。