Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package net.ytsweb.remail;
- import android.app.Fragment;
- import android.graphics.Bitmap;
- import android.graphics.BitmapFactory;
- import android.graphics.Color;
- import android.graphics.ImageFormat;
- import android.graphics.Rect;
- import android.graphics.YuvImage;
- import android.hardware.Camera;
- import android.hardware.Camera.Parameters;
- import android.hardware.Camera.Size;
- import android.media.MediaRecorder;
- import android.os.AsyncTask;
- import android.os.Bundle;
- import android.os.Handler;
- import android.util.Log;
- import android.view.LayoutInflater;
- import android.view.View;
- import android.view.ViewGroup;
- import android.widget.Button;
- import android.widget.FrameLayout;
- import org.apache.http.HttpResponse;
- import org.apache.http.client.HttpClient;
- import org.apache.http.client.methods.HttpGet;
- import org.apache.http.impl.client.DefaultHttpClient;
- import java.io.ByteArrayOutputStream;
- import java.io.IOException;
- import java.util.List;
- /**
- * Created by yehonatan on 18/09/14.
- */
- public class FragmentMain extends Fragment {
- private static final int MEDIA_TYPE_IMAGE = 1,
- MEDIA_TYPE_VIDEO = 2, RESOLUTION = 200;
- private Camera cam;
- private CameraPreview preview;
- private MediaRecorder mcorder;
- private boolean isRecording,
- isActive;
- private String binary, state;
- private int value, preValue;
- private Handler h;
- private ByteArrayOutputStream baos;
- private Camera.Size previewSize;
- private Bitmap bmap;
- private static final String TAG = "net.ytsweb.ReMail";
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- isActive = false;
- isRecording = false;
- h = new Handler();
- cam = getCameraInstance();
- cam.setDisplayOrientation(180);
- Parameters params = cam.getParameters();
- params.setAutoExposureLock(true);
- params.setJpegQuality(60);
- List<Size> sizes = params.getSupportedPictureSizes();
- Camera.Size size = sizes.get(sizes.size() - 1);
- Log.d(TAG, size.height+ " " + size.width);
- params.setPreviewSize(size.width, size.height);
- params.setPictureSize(size.width, size.height);
- cam.setParameters(params);
- cam.startPreview();
- // Convert to JPG
- previewSize = cam.getParameters().getPreviewSize();
- cam.setPreviewCallback(new Camera.PreviewCallback() {
- @Override
- public void onPreviewFrame(byte[] data, Camera camera) {
- if (startTokening && isActive) {
- YuvImage yuvimage = new YuvImage(data, ImageFormat.NV21, previewSize.width, previewSize.height, null);
- baos = new ByteArrayOutputStream();
- yuvimage.compressToJpeg(new Rect(0, 0, previewSize.width, previewSize.height), 80, baos);
- byte[] jdata = baos.toByteArray();
- // Convert to Bitmap
- bmap = BitmapFactory.decodeByteArray(jdata, 0, jdata.length);
- int r, g, b, pixel, count = 0;
- }
- }
- });
- preview=new CameraPreview(getActivity(),cam);
- }
- @Override
- public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
- super.onCreateView(inflater, container, savedInstanceState);
- View v = inflater.inflate(R.layout.fragment_main, container, false);
- FrameLayout f = (FrameLayout) v.findViewById(R.id.camera_preview);
- f.addView(preview);
- return v;
- }
- public void onPause() {
- cam.release();
- super.onPause();
- }
- /**
- * A safe way to get an instance of the Camera object.
- */
- public static Camera getCameraInstance() {
- Camera c = null;
- try {
- c = Camera.open(); // attempt to get a Camera instance
- c.setDisplayOrientation(90);
- } catch (Exception e) {
- Log.e(TAG, e.getMessage());
- }
- return c; // returns null if camera is unavailable
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment