Yehonatan

Main

Oct 5th, 2014
254
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.11 KB | None | 0 0
  1. package net.ytsweb.remail;
  2.  
  3. import android.app.Fragment;
  4. import android.graphics.Bitmap;
  5. import android.graphics.BitmapFactory;
  6. import android.graphics.Color;
  7. import android.graphics.ImageFormat;
  8. import android.graphics.Rect;
  9. import android.graphics.YuvImage;
  10. import android.hardware.Camera;
  11. import android.hardware.Camera.Parameters;
  12. import android.hardware.Camera.Size;
  13. import android.media.MediaRecorder;
  14. import android.os.AsyncTask;
  15. import android.os.Bundle;
  16. import android.os.Handler;
  17. import android.util.Log;
  18. import android.view.LayoutInflater;
  19. import android.view.View;
  20. import android.view.ViewGroup;
  21. import android.widget.Button;
  22. import android.widget.FrameLayout;
  23.  
  24. import org.apache.http.HttpResponse;
  25. import org.apache.http.client.HttpClient;
  26. import org.apache.http.client.methods.HttpGet;
  27. import org.apache.http.impl.client.DefaultHttpClient;
  28.  
  29. import java.io.ByteArrayOutputStream;
  30. import java.io.IOException;
  31. import java.util.List;
  32.  
  33. /**
  34.  * Created by yehonatan on 18/09/14.
  35.  */
  36. public class FragmentMain extends Fragment {
  37.  
  38.     private static final int MEDIA_TYPE_IMAGE = 1,
  39.             MEDIA_TYPE_VIDEO = 2, RESOLUTION = 200;
  40.     private Camera cam;
  41.     private CameraPreview preview;
  42.     private MediaRecorder mcorder;
  43.     private boolean isRecording,
  44.             isActive;
  45.     private String binary, state;
  46.     private int value, preValue;
  47.     private Handler h;
  48.     private ByteArrayOutputStream baos;
  49.     private Camera.Size previewSize;
  50.     private Bitmap bmap;
  51.  
  52.  
  53.     private static final String TAG = "net.ytsweb.ReMail";
  54.  
  55.     public void onCreate(Bundle savedInstanceState) {
  56.         super.onCreate(savedInstanceState);
  57.  
  58.  
  59.  
  60.         isActive = false;
  61.         isRecording = false;
  62.         h = new Handler();
  63.         cam = getCameraInstance();
  64.         cam.setDisplayOrientation(180);
  65.         Parameters params = cam.getParameters();
  66.         params.setAutoExposureLock(true);
  67.         params.setJpegQuality(60);
  68.         List<Size> sizes = params.getSupportedPictureSizes();
  69.  
  70.         Camera.Size size = sizes.get(sizes.size() - 1);
  71.         Log.d(TAG, size.height+ " " + size.width);
  72.         params.setPreviewSize(size.width, size.height);
  73.         params.setPictureSize(size.width, size.height);
  74.  
  75.         cam.setParameters(params);
  76.         cam.startPreview();
  77.  
  78.         // Convert to JPG
  79.         previewSize  = cam.getParameters().getPreviewSize();
  80.  
  81.         cam.setPreviewCallback(new Camera.PreviewCallback() {
  82.  
  83.             @Override
  84.             public void onPreviewFrame(byte[] data, Camera camera) {
  85.                 if (startTokening && isActive) {
  86.  
  87.                     YuvImage yuvimage = new YuvImage(data, ImageFormat.NV21, previewSize.width, previewSize.height, null);
  88.                     baos = new ByteArrayOutputStream();
  89.                     yuvimage.compressToJpeg(new Rect(0, 0, previewSize.width, previewSize.height), 80, baos);
  90.                     byte[] jdata = baos.toByteArray();
  91.  
  92. // Convert to Bitmap
  93.                     bmap = BitmapFactory.decodeByteArray(jdata, 0, jdata.length);
  94.                     int r, g, b, pixel, count = 0;
  95.  
  96.  
  97.  
  98.                 }
  99.             }
  100.         });
  101.     preview=new CameraPreview(getActivity(),cam);
  102.  
  103. }
  104.  
  105.     @Override
  106.     public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
  107.         super.onCreateView(inflater, container, savedInstanceState);
  108.         View v = inflater.inflate(R.layout.fragment_main, container, false);
  109.  
  110.  
  111.         FrameLayout f = (FrameLayout) v.findViewById(R.id.camera_preview);
  112.         f.addView(preview);
  113.  
  114.        
  115.  
  116.         return v;
  117.     }
  118.  
  119.     public void onPause() {
  120.         cam.release();
  121.         super.onPause();
  122.  
  123.     }
  124.  
  125.     /**
  126.      * A safe way to get an instance of the Camera object.
  127.      */
  128.     public static Camera getCameraInstance() {
  129.         Camera c = null;
  130.         try {
  131.             c = Camera.open(); // attempt to get a Camera instance
  132.             c.setDisplayOrientation(90);
  133.         } catch (Exception e) {
  134.             Log.e(TAG, e.getMessage());
  135.         }
  136.         return c; // returns null if camera is unavailable
  137.     }
  138.  
  139. }
Advertisement
Add Comment
Please, Sign In to add comment