Jetson nano で webRTC momo を使って 4K 出力 する。
セットアップ
書いてある通り、 Releases · shiguredo/momo · GitHub より momo-XXXX_ubuntu-XXXX_armv8_jetson.tar.gz をダウンロードし解凍。
テストするには、
$ ./momo --no-audio-device test
でmomoを実行し、 localhost:8080/html/test.html にブラウザでアクセス。
4K出力
セットアップ方法に記載されているIMX317を搭載した推奨カメラ を使用して4K出力を試す。
$ v4l2-ctl --set-ctrl=exposure_auto=1
を実行。
v4l2-ctlがインストールされていない場合はインストールする。
$ apt-get install v4l-utils
インストールできいない場合は、 www.it-swarm.dev
このあたりを参考に。 packages.ubuntu.com でパッケージ存在するのにインストールできないときは Ubuntu の Software&Updates でソフトウェア更新。
その後、
$ sudo add-apt-repository main $ sudo add-apt-repository universe $ sudo add-apt-repository restricted $ sudo add-apt-repository multiverse
を実行して $ apt-get install v4l-utils でインストールできるようになった。
その後、$ v4l2-ctl --set-ctrl=exposure_auto=1 を再度実行。
ayame モードで実行するには
./momo --no-audio-device --resolution 4K ayame wss://ayame-lite.shiguredo.jp/signaling XXXXXX
で起動。(XXXXX は wwsで接続する為のシグナリングID)
レシーブのhtmlで H264 を選択して接続を行う。
受信解像度を確認するには、chromeで chrome://webrtc-internals/ へアクセス。
RTCMediaStreamTrack_receiver_XX の frameWidth, frameHeight で受信時の解像度の確認ができる。
受信後
しばらく受信をしていると接続が切れることがある。
設定の必要な項目が他にもあるのか、jetsonの熱や処理の為なのか、原因は今の所わからず。
その他参考
https://www.youtube.com/watch?time_continue=61&v=z05bWtsgDPY&feature=emb_title
Raspberry Pi 4 と Momo と Ayame Lite でお手軽 WebRTC 配信 · GitHub
Jetson Nano 向け WebRTC Native Client Momo を公開しました - shiguredo - Medium