はじめに
現場にあるネットワークカメラ(IPカメラ)の動画をブラウザから確認したいというニーズがリモートワークやIoTの普及に伴い増えてきています。
従来、ネットワークカメラなどの映像を動画配信する場合には、ストリーミング用のプロトコルを使い、専用サーバーや専用クライアントという環境が必要でした。
近年モバイル端末の普及に伴い、手軽にブラウザからストリーミング動画を確認したいという要望が増えてくるのは自然な流れかと考えます
そこで、今回はローコード開発プラットフォームのリーダーでもあるOutSystemsを使い、手軽にネットワークカメラの映像をWebサーバーから配信することができるようになる LiveCamera(Forgeアプリ) についてご紹介します。
前提
ローコード開発基盤であるOutSystemsの基本的な知識がある人
ストリーミング技術
多くのネットワークカメラは、RTSP(リアルタイムストリーミングプロトコル)で動画を配信可能ですが、これはブラウザと直接やりとりすることができません。
そこで、アップル社が開発したHLS(HTTPライブストリーミング)のように、長い動画を細かく分割し使い慣れたWebサーバーからHTTPで動画配信可能な技術が生まれました。
その後、Google社が類似のテクノロジーとしてMPEG-DASHなどをリリースし多くの動画配信サービスでこれらの技術が採用されています。
HLSとは
HLSは、Apple社により開発されました。 この方式の特徴は、インデックスファイル(プレイリスト)と小さく分割したセグメントファイルを配信して動画を再生します。 セグメントファイルは、MPEG-4ビデオ、AACまたはMP3圧縮方式のオーディオファイルから生成できます。
LiveCamera
LiveCameraのモジュールは、こちらからダウンロードできます。
アーキテクチャ
LiveCameraは、ネットワークカメラからRTSP経由で動画を取得し、リアルタイムでHLS形式に変換することが可能です。これによりRTSP URLをサーバーに設定するだけですぐに映像をクライアントのブラウザから視聴出来るようになります。
利用方法
利用方法は簡単です。
一覧画面からストリームの新規登録時にRTSP URLを指定するだけです。 あとは、一覧画面上で「開始」ボタンをクリックすれば、配信が始まります。もちろん、複数動画を一斉に配信することも可能です。
なお、機能としてボタンひとつでクライアント端末で動画を録画したり、スナップショットを撮ることが出来ます。
また、動画配信部分Web Blockで部品化されているので、スクリーンに配置して動画配信を確認できるモバイルアプリケーションなどを簡単に開発することが可能となります。
RTSP例 TP-Link Inc.
rtsp://username:password@IP Address:554/stream1