Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Decompiled by Jad v1.5.8e. Copyright 2001 Pavel Kouznetsov.
- // Jad home page: http://www.geocities.com/kpdus/jad.html
- // Decompiler options: braces fieldsfirst space lnc
- package skype;
- import android.hardware.Camera;
- import android.media.CamcorderProfile;
- import android.media.MediaRecorder;
- import android.os.Handler;
- import android.os.Looper;
- import android.os.Message;
- import java.io.File;
- import java.util.logging.Logger;
- // Referenced classes of package com.skype.android.media:
- // Camcorder, CameraControl, DeviceProfile, SurfaceWrapper,
- // CamcorderCallback, Size
- public class MediaRecorderCamcorder
- implements MediaRecorder.OnErrorListener, MediaRecorder.OnInfoListener, Handler.Callback, Camcorder
- {
- protected static Logger a = Logger.getLogger("SkypeMedia");
- private CameraControl cameraControl;
- private DeviceProfile deviceProfile;
- private CamcorderCallback camcorderCallback;
- private MediaRecorder mediaRecorder;
- private File file;
- private boolean isRecording;
- private int maxDuration;
- private int audioSource;
- private Handler j;
- private int videoBitrate;
- private int audioBitrate;
- public MediaRecorderCamcorder(CameraControl cameracontrol, DeviceProfile deviceprofile)
- {
- videoBitrate = -1;
- audioBitrate = -1;
- cameraControl = cameracontrol;
- deviceProfile = deviceprofile;
- audioSource = 5;
- j = new Handler(Looper.getMainLooper(), this);
- }
- private void releaseMediaRecorder()
- {
- if (mediaRecorder == null)
- {
- break MISSING_BLOCK_LABEL_38;
- }
- if (isRecording)
- {
- mediaRecorder.stop();
- }
- mediaRecorder.release();
- mediaRecorder = null;
- isRecording = false;
- return;
- IllegalStateException illegalstateexception;
- illegalstateexception;
- illegalstateexception.printStackTrace();
- throw new RuntimeException(illegalstateexception);
- Exception exception;
- exception;
- mediaRecorder.release();
- mediaRecorder = null;
- throw exception;
- }
- public final void a()
- {
- releaseMediaRecorder();//Release
- int cameraId = cameraControl.j(); //ID de la cámara
- CamcorderProfile camcorderprofile = deviceProfile.a(deviceProfile, cameraId); //Carga perfil en orden 480P>high>QVGA>LOW según disponibilidad
- if (maxDuration > 0)
- {
- camcorderprofile.duration = maxDuration;
- }
- mediaRecorder = new MediaRecorder();
- mediaRecorder.setOnErrorListener(this);
- mediaRecorder.setOnInfoListener(this);
- Camera camera = cameraControl.h();//Abre la cámara
- camera.unlock();
- mediaRecorder.setCamera(camera);
- mediaRecorder.setAudioSource(audioSource); //Camcorder
- mediaRecorder.setVideoSource(1); //Camera
- Camera.Parameters parameters = cameraControl.l(); //Saca los parámetros de la cámara
- if (videoBitrate > 0)
- {
- camcorderprofile.videoBitRate = videoBitrate;
- }
- if (audioBitrate > 0)
- {
- camcorderprofile.audioBitRate = audioBitrate;
- }
- deviceProfile.a(camcorderprofile, parameters);
- mediaRecorder.setProfile(camcorderprofile);
- mediaRecorder.setOrientationHint(cameraControl.n());
- if (!deviceProfile.a())
- {
- android.view.Surface surface = cameraControl.m().a();
- mediaRecorder.setPreviewDisplay(surface);
- }
- if (file.exists())
- {
- try
- {
- if (!file.delete())
- {
- a.warning((new StringBuilder("delete ")).append(file.getAbsolutePath()).append(" returned false").toString());
- }
- }
- catch (Exception exception1)
- {
- exception1.printStackTrace();
- if (camcorderCallback != null)
- {
- camcorderCallback.onException(exception1);
- }
- }
- }
- mediaRecorder.setOutputFile(file.getAbsolutePath());
- try
- {
- mediaRecorder.prepare();
- }
- catch (Exception exception)
- {
- exception.printStackTrace();
- if (camcorderCallback != null)
- {
- camcorderCallback.onException(exception);
- }
- }
- mediaRecorder.start();
- isRecording = true;
- }
- public final void b()
- {
- releaseMediaRecorder();
- j.removeMessages(3);
- j.sendEmptyMessageDelayed(3, 200L);
- }
- public boolean handleMessage(Message message)
- {
- switch (message.what)
- {
- default:
- return false;
- case 3: // '\003'
- break;
- }
- if (file != null && file.exists())
- {
- a.info((new StringBuilder("recorded: ")).append(file.getAbsolutePath()).toString());
- if (camcorderCallback != null)
- {
- camcorderCallback.onFileRecorded(file);
- file = null;
- }
- }
- return true;
- }
- public void onError(MediaRecorder mediarecorder, int i1, int j1)
- {
- Logger logger = a;
- Object aobj[] = new Object[2];
- aobj[0] = Integer.valueOf(i1);
- aobj[1] = Integer.valueOf(j1);
- logger.warning(String.format("onError %d %d", aobj));
- if (camcorderCallback != null)
- {
- camcorderCallback.onError(i1);
- }
- }
- public void onInfo(MediaRecorder mediarecorder, int i1, int j1)
- {
- Logger logger = a;
- Object aobj[] = new Object[2];
- aobj[0] = Integer.valueOf(i1);
- aobj[1] = Integer.valueOf(j1);
- logger.info(String.format("onInfo %d %d", aobj));
- }
- public void setAudioBitRate(int i1)
- {
- audioBitrate = i1;
- }
- public void setAudioSource(int i1)
- {
- audioSource = i1;
- }
- public void setCamcorderCallback(CamcorderCallback camcordercallback)
- {
- camcorderCallback = camcordercallback;
- }
- public void setCameraFacing(int i1)
- {
- }
- public void setMaxDuration(int i1)
- {
- maxDuration = i1;
- }
- public void setRecordingFile(File file)
- {
- if (file == null)
- {
- throw new IllegalArgumentException("null file");
- } else
- {
- this.file = file;
- return;
- }
- }
- public void setTargetVideoSize(Size size)
- {
- }
- public void setVideoBitRate(int i1)
- {
- videoBitrate = i1;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement