webcam経由で2人のクライアントが話すことができるjavaでアプリを書いてみたいと思います。それが動作する方法は、両方のクライアントが指定されたフレームレート(1秒あたり20秒)で写真を撮った後、サイズと解像度を減らした後、UDPパケットを介して他のクライアントに送信するWebカメラに接続することです。私の質問は - 私はそれ自身のデータグラムパケットですべての画像を送信する必要がありますか?私は彼らが最大で0.5キロバイトしか保持できないことを読んだので、すべての写真はそんなに削減されるべきですか?それとも、私はそれをいくつかのパケットに分割する必要がありますか?UDP経由で画像を送信する
答えて
更新する必要があるものだけを転送するアルゴリズム/コーデックを使用する代わりに、画像全体を送信してもよろしいですか?
2番目のオプションを選択した場合は、this previous questionのアイデアを参考にして、既に使用済みのテスト済みのライブラリを使用してください。もし私がそれをしなければならなかったら私はVLC java bindingsと一緒に行くと思います。特定の目的(ビットレート、品質など)に最適なコーデックを評価する必要があります。
画像を送信したいのであれば、udpデータグラムに分割することをお勧めします。パケットが来たときにクライアントがイメージを再構築できるように、何らかの方法で番号付け/タグ付けする必要がありますあなたがそれらを送信するのと同じ順序で)、また、あなたは、パケットのいくつかが到着しなかったとき(クライアントは画像を破棄し、前のパケットを要求するなど)、クライアントが何をする必要があるか考える必要があります。
udpデータグラムの最大サイズも最適なオプションではないかもしれませんが、サーバークライアントはアルゴリズムの実装を行い、伝送の速度に応じてUDPフレームサイズをネゴシエートする必要があります。
あなたがしなければならないことは、ビデオストリームのエンコードです。ネットワーク層はそのままにして、断片化させてください。
また、UDP経由でビデオを送信している場合は、2秒程度ごとにキーフレームを送信することをお勧めします。
各フレームを独自の画像として送信しないでください。ビデオコンプレッサーを使用してください。
私はどこから始めるべきですか?私は正しい方向に向かって指摘する必要があります。 –
- 1. androidからXML経由で画像を送信する
- 2. ブルートゥースアンドロイド経由でテキストと画像を送受信する方法
- 3. ブルートゥース経由で画像を送受信するiOS
- 4. ChromeのXHR経由で画像ファイルを送信する
- 5. Actionscript 3:ソケット経由で画像を送信する
- 6. websocket経由で画像を受信
- 7. WhatsApp経由で特定の受信者に画像を送信する(Android)
- 8. UDP経由でRTP経由でRAWデータを送信するにはどうすればよいですか?
- 9. JavaでUDPを使用してネットワーク経由でオブジェクトを送信する
- 10. ASIHTTPRequest経由でWebブラウザに送信された画像を表示する
- 11. POST経由の画像返信
- 12. HTTPS経由でHTTP経由でクッキーを送信する
- 13. プログラムでBluetooth経由で画像を転送する
- 14. udpで大きな画像ファイルを送信できません
- 15. 3G経由のゲームセンター(GameKit)経由でデータを送受信する
- 16. シリアルポート経由でデータを送信する
- 17. ソケット経由でファイルを送信する
- 18. ネットワーク経由でkeypressesを送信する
- 19. gifをmms経由で送信する
- 20. ストリーム経由でファイルを送信する
- 21. ネットワーク経由でオブジェクトを送信する
- 22. java経由でSMSを送信する
- 23. iphoneからBluetooth経由で画像ファイルを送信していますか?
- 24. 画像をFAX「サウンド」に変換し、Twilio経由で送信しますか?
- 25. AJAX経由でYouTube動画メタデータを送信する方法
- 26. Bluetooth経由でJavaFXとAndroidを転送する画像
- 27. HttpGet経由で長い文字列(Base64でエンコードされた画像)を送信
- 28. AndroidはWi-Fi経由でJavaクライアントにUDPパケットを送信します
- 29. ませUDPパケットは、私はUDPを使用してLAN経由で画像を送信しようとしているVB.Net
- 30. Javascript:Javascript経由で画像をロードする
UDPデータグラムは64Kまで送信できます。しかし、下位レイヤ2(イーサネット)によっては、このデータグラムは多くのIPフラグメントに分割されます。フラグメント化されたパケットは受信ホストで組み立て直されますが、フラグメントの1つが失われた場合、すべてのUDPパケットは失われます。 – jfg956