問題タブ [mjpeg]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - MJPEG ストリーミングとデコード
IP カメラから JPEG 画像を受信したい (RTSP 経由)。このためにcvCreateFileCapture_FFMPEG
、OpenCVで試しました。しかし、ffmpeg はストリーミングの MJPEG 形式に問題があるようで (ストリーミング情報を自動的に検出しようとするため)、次のエラーが発生します。
そこで、ストリーミングに live555 を使用することにしました。これまでのところ、ストリーミングを確立し、openRTSP を介して (デコードされていない) 画像をキャプチャすることができました。
問題は、OpenCV などのアプリケーションでこれを行う方法です。OpenCV で openRTSP を使用して画像を取得し、JPEG 形式で保存するにはどうすればよいですか?
openRTSP からのデータをバッファ (または名前付きパイプ) に送信してから、OpenCV のIplImage
. しかし、これを行う方法がわかりません。
この問題に関するヘルプや提案をいただければ幸いです。次の質問のいずれかに対する回答が必要です。
- ffmpeg の自動ストリーム情報の検出を無効にして、独自の形式 (mjpeg) を指定するにはどうすればよいですか?
- OpenCVでopenRTSPを使用するにはどうすればよいですか?
よろしく、
node.js - node.jsで作成されたmjpegストリームの場合、別の形式でエンコードしてからストリーミングするにはどうすればよいですか?
multipart/x-mixed-replaceデータをブラウザーにストリーミングするnodejsを使用して小さなアプリケーションを作成します。
このデータは画像データを使用して作成されますが、画像データは時間の経過とともに変化する可能性があるため、ブラウザではビデオのように見えます。画像データはウェブカメラから作成されるため、ブラウザではライブストリーミングのように見えます。
しかし、パフォーマンスはあまり良くありません。
私は他のいくつかのアプローチを試しました:-最初に:socket.ioを使用して画像をブラウザにプッシュします。ここでは画像からbase64データを使用し(このデータをプッシュします)、ブラウザで画像を再作成します(jpeg):正常に動作します。ただし、クライアントは1つまたは2つだけです。_ 2番目:ブラウザからnodejsサーバーへのポーリングを使用します。これは私が好きではありません。
これがコードです:(nodejsサーバーのコードの一部)私はexpressを使用してhttpサーバーを作成します:
イベント「imagen_recibida」が発生すると、ディスクからイメージを読み取り、ブラウザにデータを書き込みます。
したがって、2つの質問:
これのパフォーマンスを改善するためのアプローチはありますか?(画像をディスクに書き込んでから、ブラウザに送信するために読み取るのは良いトリックとは思えません)
パフォーマンスを向上させるためにこれを別の形式にエンコードする方法はありますか?
どうもありがとう。
PD:RPC呼び出しを介して別の関数の別のプロセスから画像データを受信するため、画像はディスクに書き込まれ、次に読み取られてブラウザーに送信されます。
android - MJPEG の改善
Mjpeg をダウンロードしてストリーミングするために、ここAndroid と MJPEGからこのコードを取得しました。1つのビデオでは見た目も機能も問題ありません。
ただし、複数の MJpeg ビデオを同時にストリーミングして画面に表示しようとすると、パフォーマンスが大幅に低下します。
複数のストリームに対してこれを行うためのより良い方法、またはパフォーマンスを向上させるために実装することができる改善を誰もが推奨しますか? 現在のところ、かなり遅く、受け入れられません。
xcode - Mac で MJPEG 形式でビデオをストリーミングする方法
MAC で MJPEG 形式でビデオをストリーミングするにはどうすればよいですか。QuickTimeのQt-kit APIを使用しています。
webcam - libvlc api を使用してウェブカメラからストリーミング ビデオ フォーマットを設定するにはどうすればよいですか?
ウェブカメラを使用してストリーミングを取得するアプリケーションを開発しています. このために libvlc api を使用しました. ウェブカメラからストリーミングできます. しかし, YUYV 形式でストリームを取得していますが, ストリーミングが必要です. MJPEG形式なので、libvlcでストリーミング形式を設定する方法を誰か助けてもらえますか?
android - Motorola Atrix の一貫性のないプレビュー フレーム
JPEG 画像のストリーム (MJPEG ストリーム) をリモート PC に送信するアプリケーションを開発しています。カメラ パラメータでプレビュー フレーム レートを変更できません。どのレートを設定しても、カメラは 15 fps のフレームしか表示しないようです。最初は、画像を圧縮してからデータを送信したためだと思いました。しかし、最初の圧縮された JPEG 画像を保存し、onPreviewFrame 関数が呼び出されるたびにその画像を送信するデバッグ インスタンスを作成しました。その結果、信頼できる 15 fps が得られますが、私は 30 fps に設定しています。なぜfpsがそれほど一貫していないのか、誰にも考えがありますか? すべてのプレビュー フレームを圧縮して Wi-Fi 経由で送信するように設定すると、5 ~ 40 FPS のレートが得られ、あちこちでジャンプします。
これが私のプレビュー用のコードです(フルスクリーンでカメラをセットアップします)
}
そして、これは同じJPEGを何度も送信するための私のデバッグサンプルです
誰かが効率を改善するためのアイデアを持っていますか? これはすべてのデバイスで発生しますか? 私はAndroid 2.2を実行しています。どんなアイデアでも大歓迎です。
*編集 Preview クラス全体を追加
android - Androidでコーデックを使用するには?
私は Android の初心者です。データ転送を高速化するために、サーフェス ビューを使用してキャプチャした生のバイトを MJPEG などの他の形式に変換する方法があるかどうかを知りたいです。
どんな助けでも大歓迎です。どうもありがとう。
iphone - Windows ウェブカメラを iPhone にストリーミング
Windows ウェブカメラ DirectShow から iPhone ブラウザにビデオ (オーディオなし) をストリーミングしようとしています。VLC を使用してビデオを HTTP 経由で MJPEG ストリームにトランスコードし、ブラウザで開きたいと考えています。
この VLC コマンドを使用してこれを実行しようとしました: vlc -vvv dshow:// :sout=#transcode{vcodec=MJPG,vb=2000,scale=1}:duplicate{dst=std{access=http,mux=mpjpeg, dst=192.168.1.178:8080/stream.mpjpg}}
このストリームをモバイル Safari で開こうとすると、「Safari ではファイルを開けません」というメッセージが表示されます。
ウェブカメラを iPhone に正常にストリーミングするための提案はありますか? 上記のコードを変更するための提案、またはこのトランスコーディングとストリーミングを実行するソフトウェア ソリューションの提案を探しています。
ありがとうございました。
iphone - [UIImage initWithData:] でエラー/警告を取得する方法
[UIImage initWithData:] を使用して UIImageView の JPEG を生成したい RTSP/UDP 経由の MJPEG ストリームがあります。ほとんどの場合、これで問題なく動作しますが、画像が破損し、次のようなログ メッセージが表示されることがあります。
私の質問は次のとおりです。そのようなメッセージが発生したことを(実行時に)どのように確認できますか?残念ながら「initWithData」にはエラー出力がありません。他に方法はありますか?
ありがとうございました。
編集: この場合、initWithData は nil ではなく、有効な UIImage オブジェクトを返します。
c# - WPF および MJPEG デコーダーのヘルプ
これは少し長いショットかもしれませんが、次のようになります。WPF プロジェクトがあり、MJPEG ビデオをストリーミングする必要があります。http://mjpeg.codeplex.com/のライブラリは、数少ない PnP オプションの 1 つです。単一のストリームを表示するのに最適です。しかし、ある URI から 2 番目の URI に切り替えようとすると、最終結果として、WPF ページの同じ画像オブジェクトにインターレースされた両方のストリームからフレームが取得されます。どちらのストリームもライブであり、前のストリームの単なるキャッシュではありません。
私が何を試しても、最初のストリームが消えないように見え、デコーダーのストップストリームメソッドはブール値を設定する以外に何もしません。
これは、私がライブラリをどのように使用しているかの擬似コードです。私は何か間違ったことをしていますか?
デコーダーの作成者に返事を書きましたが、返事はありません。このライブラリを使用した他の誰かがこれを明らかにできることを願っています。