広告

Oculus Go のブラウザで HLS をネイティブ再生する話

Oculus Go の中身は Android で、ブラウザとして Google Chrome を使用しているということをウェブで知りました。ということは HLS (HTTP Live Streaming) のストリームをネイティブ再生できるな、ということで、Oculus Go 32GB を購入してみました。7/2 の午前に公式サイトで注文して 7/3 の午後に発送され、7/6 の午後に FedEx で届きました (いずれも日本時間)。なお、支払いにはダイナースカードも使えました。

実際に Oculus Go のブラウザの User Agent を確認してみると、Android 7.1.2 の Chrome 61.0 でした。

ブラウザで HLS のストリームを HTML5 の video タグでネイティブ再生すると、こんな感じです。


© copyright Blender Foundation | durian.blender.org

全画面表示すると、こんな感じです。キャプチャだと上下に空白があるのですが、実際は、けっこう没入感がすごいです。目の前が一面スクリーンになります。


© copyright Blender Foundation | durian.blender.org

HLS のストリームを流すシステムは、自作の拙作アプリケーションです。何をしているかというと、単にビデオファイルや Webcam やキャプチャデバイスの出力を FFmpeg でリアルタイムに HLS のフォーマットに変換しながら流しているだけのものです。Apple デバイスと Microsoft Edge 向けには HEVC/H.265/AAC/fMP4、それ以外のデバイスには H.264/AAC/MPEG2-TS で流します。今回は Android なので後者です。ちなみにこの UML っぽい図は PlantUML を使って描いたのですが、UML をテキストで記述してバージョン管理できる非常に優れものです。

Oculus Go は、画面を画像でキャプチャするだけでなく、録画という形で動画でもキャプチャできます。今回、このシステムを使って HLS 再生した一部始終が下記の動画キャプチャです。Oculus Go でキャプチャしたそのままで何も手を加えていないので、動画のサイズが 90 MBくらいあります。モバイル環境では再生しないほうがよいです。ちなみに、Oculus Go でキャプチャした動画は、macOS の場合、USB で接続し、Android File Transfer で転送することができます。動画がやや傾いているのは、たぶん眠くて首を傾けていたからだと思います。


© copyright Blender Foundation | durian.blender.org

この価格でこの機能なデバイスそのものもすごいのですが、リモコンがけっこう斬新でした。また、セットアップはスマホのアプリを使って行うのですが、それも実に綺麗な流れでストレスゼロでした。それから、スマホみたいな小さな画面に過度な解像度はいらないという声をたまに耳にしますが、Oculus Go の画面を見ていると、まだまださらなる高精細が必要だなという、人間の飽くなき欲求みたいなものを感じました。

広告

Oculus Go

Posted by admin