omxplayerでmjpeg streamを表示する
以前作ったPicameraを使った軽量ストリーミングサーバの映像を、LCDを取り付けてある別のRaspberryPiに表示したかったのでやってみた。
LCDは「Waveshare 1.3inch LCD HAT」を使っている。
最初、以下のようなオプションを付けて実行してみたところ、LCDが真っ黒になったまま応答しなくなってしまった。
omxplayer -r --live -b 'http://host:port/stream.mjpg'
omxplayerを停止してもLCDが復旧せず、再起動してようやく直る状態になってしまった。
Githubのissueにも同じ現象が挙がっていた。
このissueでは最終的にgstreamerを使って再生するようにしたと書かれていたが、omxplayerでなんとか再生したかったので色々試してみたところ、オプションをなしにすれば再生できるようになった。
omxplayer 'http://host:port/stream.mjpg'
数秒の遅延はあるけどCPU使用率は15%ほどでカメラ映像を流しっぱにできるようになった。