No, my purpose is not to save to SD Card, My purpose is to capture video from android camera and as i captured the video(not complete video, like frames) send live to server and server will save it to file. Is Mediarecorder will help me to do this?
thanks Date: Sun, 27 Nov 2011 23:18:10 +0530 Subject: Re: [android-developers] Please help me!!! how to create video file on server side by send onPreviewFrames byte array From: raghavs...@androidactivist.org To: android-developers@googlegroups.com I didn't quite understand your explanation. From what I get, you are saving images to the SD Card, and then send those images in a byte array to your server and want to save it as a video file? From what I have learnt so far in this world, image files don't arbitrarily convert themselves to video files. It would be easier for you to record the entire video and then send it after the recording has finished to the server. Thanks On Sun, Nov 27, 2011 at 11:11 PM, Muhammad UMER <muhammad.ume...@hotmail.com> wrote: working means, server create an image file but when i open it, it will not show me an image as I write on sd card and FTP is to send file I don't want to send a file, I am sending an onpreviewfram byte array that is in jpeg format to server and then save it to image file. basically my project is to capture video from the android camera and send it to TCP socket and server will receive this video in a a file. thanks Date: Sun, 27 Nov 2011 22:30:13 +0530 Subject: Re: [android-developers] Please help me!!! how to create video file on server side by send onPreviewFrames byte array From: raghavs...@androidactivist.org To: android-developers@googlegroups.com What do you mean by not working? Are you getting a specific error? What does the LogCat say? Try adding breakpoints to your code. Also, in my personal opinion, it would be easier to send the images via HTTP or FTP. See this for FTP upload: http://stackoverflow.com/questions/6464456/how-do-you-upload-images-to-an-ftp-server-within-an-android-app. On Sun, Nov 27, 2011 at 10:23 PM, Muhammad UMER <muhammad.ume...@hotmail.com> wrote: Hi Raghav, Thanks for your reply, I am using the TCP socket to send data to my server.i am writing image files continuously to sd card is perfet. but send this to server is not working. /////// Here is my client side code public void onPreviewFrame(byte[] data, Camera camera) { // <11> 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(); FileOutputStream outStream = null; try { /////// this work perfect for sd card //outStream = new FileOutputStream(String.format( // "/sdcard/%d.jpg", System.currentTimeMillis())); //outStream.write(byt); //outStream.close(); // this method write byte array to socket sendBytes(byt, 0, byt.length); Log.d(TAG, "onPreviewFrame - wrote bytes: " + data.length); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } finally { } Preview.this.invalidate(); // Convert from Jpeg to Bitmap //bmap = BitmapFactory.decodeByteArray(output_stream.toByteArray(), 0, output_stream.size()); } ////////// sending byte array to server public void sendBytes(byte[] myByteArray, int start, int len) throws IOException { if (len < 0) throw new IllegalArgumentException("Negative length not allowed"); if (start < 0 || start >= myByteArray.length) throw new IndexOutOfBoundsException("Out of bounds: " + start); // Other checks if needed. // May be better to save the streams in the support class; // just like the socket variable. DataOutputStream dos = new DataOutputStream(socket.getOutputStream()); //BufferedOutputStream imagebos = new BufferedOutputStream(dos); dos.writeInt(len); if (len > 0) { /// this will write to socket imagebos.write(myByteArray, start, len); } } ////// here is server side code ///////// while(dataInputStream.readInt() > 0 ) { //// reading from client ////read from client in byte array int len = dataInputStream.readInt(); byte[] data = new byte[2800000]; //// how to specify the length in run time if (len > 0) { dataInputStream.readFully(data); //dataInputStream.read(data); System.out.println("message: " + data); } //// write this data array on a file FileOutputStream fos = new FileOutputStream("image.jpg", true); ObjectOutputStream out = new ObjectOutputStream(fos); out.write(data); out.flush(); out.close(); fos.close(); } the server side code is correct or not but the file is not in correct formate, please tell me if i am doing wrong. Also tell me is it correct method to combine the images file to create a video? Please correct me if i m doing wrong Thanks umer Date: Sun, 27 Nov 2011 18:36:34 +0530 Subject: Re: [android-developers] Please help me!!! how to create video file on server side by send onPreviewFrames byte array From: raghavs...@androidactivist.org To: android-developers@googlegroups.com Use any one of the numerous methods to send the files to your server (HTTP, FTP etc). You can use something on the server to combine them into a video. What you do on the server is not part of the Android SDK, and hence doesn't belong on the list. Thansk On Sun, Nov 27, 2011 at 6:29 PM, muhammad.ume...@hotmail.com <muhammad.ume...@hotmail.com> wrote: Hi, i am able to create images on sd card with onPreviewFrame by converting the raw byte array to Yuvimage and then compressing it to jpeg format and then write in a file. this work perfectly. but i want to send these preview frames to server and recored in a video file. please help me, I m stuck here 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 android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -- Raghav Sood http://www.androidactivist.org/ - Authorhttp://www.appaholics.in/ - Founder -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -- Raghav Sood http://www.androidactivist.org/ - Authorhttp://www.appaholics.in/ - Founder -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -- Raghav Sood http://www.androidactivist.org/ - Authorhttp://www.appaholics.in/ - Founder -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en