動画配信のON/OFFを切り替えます。チェックを付けただけでは配信されません!実際に動画配信を行うためには、監視開始ボタンを押して、監視状態にしてください。動画の配信ポート番号を指定します。使用可能な値は0~65535ですが、自由に使える番号として決められているのは49152番以降と決められています。複数のカメラで動画配信を行う場合、既に使用されている番号とは異なる番号を指定してください。ワが画像を更新する間隔をミリ秒単位で指定します。ボタンをおして、監視を開始すると、動画が配信されます。配信された動画は、ウェブブラウザで見ることができます。下記のURLにアクセスすると、LiveCapture3から配信された動画を見ることができます。「http://192.168.11.10:55555/」にアクセスします。配信側のPCでFirewallを設定している場合は、指定したポート番号のInbound(受信)TCPを許可する必要があります。動画配信の仕様LiveCapture3では動画配信の為に、内部で簡易HTTPサーバを組み込んでします。このHTTPサーバでは、以下の3つのアクションに対応します。配信ルートURL(http://XXX.XXX.XXX.XXX:PPPP/)へアクセスが来た場合、LiveCapture3は、JavaScriptで記述されたHTMLページを返却します。このJavaScriptがブラウザで解釈され、動画受信ビューワとして動きます。ワの処理としては、指定された画像サイズ、更新間隔でJPEGを取得しに行く処理になっており、MotionJPEGストリームを受信する形ではありません。ブラウザは通常Keep-Aliveで取得しに来ますので、TCPセッションとしては最初の1本を使い続け、その中をJPEGが流れていく形ですので、見た目的にはほとんど動画として見えます。HTML5のCanvasを使って画像表示を行っていますので、ちらつきがないだけでなく、PCだけでなくスマホなど、HTML5対応のブラウザであれば見れると思います。JavaScriptのソースコードは、受信したブラウザ上で確認できますので、ご自由にコードを再利用していただいて構いません。したHTTPサーバを用意し、そこから4分割表示のJavaScriptを配信、画像受信URL部分をLiveCapture3の配信URLにすれば、4分割表示のビューワを実現することも可能です。「/SnapJpeg」に対してアクセスすると、その時の静止画(JPEG)を取得できます。引数として画像の幅(w)、高さ(h)を指定できます。画像サイズ500×250で静止画を取得する場合はhttp://192.168.11.10:55555/SnapJpeg?w=500&h=250にアクセスすると取得できます。サイズを指定しない場合はオリジナルサイズで返却されます。LiveCapture3から配信される受信ビューワは、この/SnapJpegを繰り返し使用することで実現しています。「/MotionJpeg」に対してアクセスすると、MotionJPEGストリームが返却されます。/SnapJpeg同様に、w/hでサイズを指定可能です。画像サイズ250×200でMotionJPEGを取得する場合はhttp://192.168.11.10:55555/MotionJpeg?w=250&h=200にアクセスします。Androidアプリなど、処理能力があるアプリケーションで受信する場合はこちらの方が良いと思います。実際、LiveCapture2では、(Appletですが)JavaでMotionJPEGを受信するビューワを配信していました。そのまま使えるコードではないと思いますが、参考になると思いますので、LiveCapture2で使用していたJavaApplet版のMotionJPEGビューワのソースコードを置いておきます。ご自由に改変してご使用くださって結構です。LiveCapture2のJavaApplet版MotionJPEGビューワのソースコードちなみに、MotionJPEGという動画フォーマットには定型フォーマットが存在しません。ビデオカメラなどではAVIコンテナにJPEGとLPCMを入れて、MotionJPEGと表記している物もありますし、MOV形式のMotionJPEGもあります。multipart/x-mixed-replaceを使用して複数のJPEGを連続して送ったりしています。JPEG画像の連続フレームで構成されたものは、すべてMotionJPEGと名乗っている状態です。Panasonicなど、主要メーカ製のネットワークカメラは、ほとんどがHTTP上のmultipartストリーミング形式になっており、LiveCapture2/LiveCapture3でもMotionJPEGは、この方式で配信しています。このmultipart/x-mixed-replaceというのは、Netscape社が提唱した、サーバからのプッシュ配信の為のものです。ブラウザ側は新たなpartが送られてきたら、表示中のものを破棄して新しいPartを表示する、という内容なのですが、あまり広まりませんでした。その為、通常のブラウザでこのContentTypeを処理できるものは存在しないと考えた方が良いと思います。(手元のFireFoxでは再生できましたが。)さらに、通常のブラウザでは、x-mixed-replaceだけでなく、multipart/*の解釈自体が定まっていません。いうことで、この形式のMotionJPEGを表示させるためには、サーバが一方的に送りつけてくるコマ送りJPEGを遅延なく受信⇒デコード⇒表示を繰り返し処理可能な能力をもったクライアントアプリケーションを作る必要があります。以下はLiveCapture3でのMotionJPEGの配信形式です。Panasonic製のネットワークカメラなども同様のフォーマットのMotionJPEGになっていますが、若干の差異があったりします。実際のクライアント側の作り方に関してですが、Multipart間のヘッダーの仕様も様々なので、ちゃんとpartを理解して受信するプログラムを記述するよりも、JPEG画像の開始コードと終了コードを目安に受信した方が接続性は上がると思います。返信お世話になります、松本説男と申します。最近、このソフトに興味を持ち先ずは監視動画や静止画の保存で動作確認など、基本中の基本から、ああでもない、こうでもないと、うまくいったり、いかなかったりを楽しんでいる最中です。昨日から、LAN内への配信設定により、2台目のPCからモニターしようとトライしているのですが、中々うまく行きません。受信側PCの設定でセキュリティーソフトの管理するファイアウォールとポートの項目内でポート番号を指定した番号で追加登録するまではできたのですが、ブラウザでの受信ではエラー状態は変わりませんでした。この様な状態で何かアドバイスやら、似た事例で参考になるようなQ&Aなどありませんでしょうか。スマホによる監視などにも興味あり、これからも関心を持って記事を読ませていただきます、よろしくお願いします。返信ファイアーウォールの設定は受信側PCではなく、送信側PC(LiveCapture3が入っているPC)で行う必要があります。配信側PCの送信設定で、LiveCapture3の配信ポート(TCP)を開いてみてください。コメントをキャンセルメールアドレスが公開されることはありません。