public void surfaceChanged(SurfaceHolder holder, int format, int w, int h) {
        Camera.Parameters parameters = mCamera.getParameters();
        parameters.setPreviewSize(w, h);
        mCamera.setParameters(parameters);
        mCamera.startPreview();
        mCamera.setPreviewCallback(new PreviewCallback() {
        public void onPreviewFrame(byte[] _data, Camera _camera) {  
             bitbyte=_data;
             Log.i("Preview Class", _data.length+"");
             try {
              CameraPreview.UdpClient.sendmessage(_data);                                  
    } catch (IOException e) {
    
    }
            }
        });
    }

-------------------------------------------------------------------------------------------------------------------------------

 public void sendmessage(byte[] buf) throws IOException {
  InetAddress addr = InetAddress.getByName(destAddr);       //destAddr는 아이피 String 객체입니다
  DatagramPacket packet = new DatagramPacket(buf, buf.length,addr,destPort);
  socket.send(packet);
 }

 -----------------------------------------------------------------------------------------------------------------------------------

이때 buf 바이트 배열에 정상적으로 값이 들어오는것은 확인했습니다.

그리고 UDP 소켓통신으로 값을 날렸는데 날라가지 않습니다. 그래서

Log.i("test",""+buf.lenght);  로 배열의 크기를 출렸했더니 576000이 나오더군요.

아무래도 배열의 크기가 너무 커서 한꺼번에 안 날라가는것 같은데.

이 문제를 어떻게 해결해야 할까요.

 

제가 생각한 해결법은 배열의 크기를 잘라서 각각 날린후 받는쪽에서

다시 합친후 화면을 구성한는 방법을 생각했었는데

이 방법 외에 다른 방법이 있는지..

혹은 이 방법을 쓴다면 어떤식으로 구현을 해야할지..

벌써 2~3주째 이부분에서 막혀서 너무 막막합니다.