1

私はクライアントとサーバーを含むAndroidアプリに取り組んでおり、クライアントアプリはカメラでキャプチャしたデータをサーバーに送信して処理し、サーバーは結果をクライアントに返して表示します。現在のバージョンでは、データの送信に TCP を使用しているため、コードには次のようなものが含まれています。

クライアント側:

send(){
  Socket socket = new Socket();
  DataOutputStream outputStream = new DataoutputStream(socket.getOutPutStream());
  outputStream.writeUTF(...)
  ...
  outputStream.write(data);
  outputSteram.flush();
  ...
}

receive(){
   DataInputStream dataInputStream = new DataInputStream(...);
   ...
   dataInputStream.readFully(data, 0, length);
   ...
}

サーバ側:

...
serverDataInputStream.readFully(data,0,length);
//process data
...

serverDataOutputStream.write(reply)
...

UDP を使用するようにこれを変更しようとしましたが、クライアントからサーバーに送信されるデータは UDP パケットの最大サイズよりもはるかに大きいため、クライアントでデータを断片化し、サーバーで手動で再構築する必要があります。面倒すぎることが判明。

RTP がデータの断片化を処理することを知っているので、これを RTP に変更したいと思います。しばらくグーグルで調べたところ、次の情報が見つかりまし 。 sipua/ui/VideoCamera.java

そして、これらの 2 つの投稿は、私がやっていることと非常によく似ています: Android Camera RTSP/RTP Stream? Android カメラから送信する RTP パケットの作成

ただし、投稿には限られたサンプル コードが含まれているだけです。詳細とサンプル コードをここに投稿できる人はいますか? Java および Android プログラミングの経験はあまりありません。したがって、詳細な例または段階的な説明は非常に高く評価されます!

ありがとうございました!

4

0 に答える 0