hi,
Please anyone tell me that when onPreviewFrame call it send first
frame of the preview to socket but when it callback it get exception
and does send any frame to socket, I want to send images from
onPreviewFrame continuously. Please tell me what's the reason, and
sorry for my English. Here is my code.
public void surfaceCreated(SurfaceHolder holder) {
// The Surface has been created, acquire the camera and tell it
where
// to draw.
//////////////////connection to server
try {
socket = new Socket("192.168.1.220", 8888);
obj = new ObjectOutputStream(socket.getOutputStream());
} catch (UnknownHostException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
camera = Camera.open();
try {
camera.setPreviewDisplay(holder);
camera.setPreviewCallback(new PreviewCallback() {
// Called for each frame previewed
// @SuppressWarnings("null")
public void onPreviewFrame(byte[] data, Camera camera) {
Camera.Parameters parameters = camera.getParameters();
int format = parameters.getPreviewFormat();
//YUV formats require more conversion
if (format == ImageFormat.NV21 /*|| format ==
ImageFormat.YUY2 || format == ImageFormat.NV16*/)
{
int w = parameters.getPreviewSize().width;
int h = parameters.getPreviewSize().height;
// Get the YuV image
YuvImage yuv_image = new YuvImage(data, format, w, h,
null);
// Convert YuV to Jpeg
Rect rect = new Rect(0, 0, w, h);
ByteArrayOutputStream output_stream = new
ByteArrayOutputStream();
yuv_image.compressToJpeg(rect, 100, output_stream);
byte[] byt=output_stream.toByteArray();
try
{
obj.writeObject(byt);
obj.flush();
}
catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
}
Preview.this.invalidate();
}
}
});
} catch (IOException e) {
e.printStackTrace();
}
}
Thanks and regards
umer
--
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en