相关疑难解决方法(0)

Android:单击按钮时切换相机

我有一个名为switchCamera的方法,我试图在点击按钮时从前向后切换相机,在一个平滑的过渡中.当我打电话给这个方法时,我的应用程序冻结了 - 我知道我做的不对.有人可以帮我从这里出去吗?

任何帮助深表感谢.

public void switchCamera(){
    int camNum = 0;
    camNum = Camera.getNumberOfCameras();
    int camBackId = Camera.CameraInfo.CAMERA_FACING_BACK;
    int camFrontId = Camera.CameraInfo.CAMERA_FACING_FRONT;

    Camera.CameraInfo currentCamInfo = new Camera.CameraInfo();

    //if camera is running
    if (camera != null){
        //and there is more than one camera
        if (camNum > 1){
            //stop current camera
            camera.stopPreview();
            camera.setPreviewCallback(null);
            //camera.takePicture(null, null, PictureCallback);
            camera.release();
            camera = null;
            //stop surfaceHolder?

            if (currentCamInfo.facing == Camera.CameraInfo.CAMERA_FACING_FRONT){
                //switch camera to back camera
                camera=Camera.open(camBackId);
            }
            else{
                //switch camera to front camera
                camera=Camera.open(camFrontId);
            }
            //switch …
Run Code Online (Sandbox Code Playgroud)

java camera android button

38
推荐指数
2
解决办法
4万
查看次数

在Android中,是否可以更改相机(从前到后)并仍然保持录制?

这是我的问题:).如果我使用带有MediaRecorder的前置摄像头开始录制,然后切换到后置摄像头,是否可以使用相同的视频文件继续录制?此外,是否可以同时录制两个摄像机?

camera android mediarecorder

11
推荐指数
1
解决办法
3386
查看次数

Android Camera2 API切换后置摄像头

我正在创建一个使用新camera2 API捕获视频的自定义相机.

我的代码强力地由谷歌提供的代码启发在这里.我的相机预览有一个按钮,可以从后摄像头切换到前摄像头,然后从前摄像头切换到后摄像头.默认情况下,使用后置摄像头启动"摄像头预览"活动.

出于某种原因,当我第一次点击"开关/交换相机"按钮,它会带来前面的相机,但是每次我再次点击时,开关/交换都不再起作用了:预览(在前置摄像头上)稍微褪色,就像发生了什么事情一样,但它仍然保留在当前选择的(前置)摄像头上.

这是我的代码:

在a中RecordVideoFragment,在onViewCreated:

//  Switch camera button
        switchCameraButton = (ImageButton) view.findViewById(R.id.button_switch_camera);
        // Listener for Switch cameras button
        switchCameraButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                switchCameras();
            }
        });
Run Code Online (Sandbox Code Playgroud)

这是switchCameras()功能:

private void  switchCameras() {
        mCameraOpenCloseLock.release();
        mCameraDevice.close();

        CameraManager mCameraManager = (CameraManager) getActivity().getSystemService(Context.CAMERA_SERVICE);
        try {
            String mCameraId = mCameraManager.getCameraIdList()[0];
            if (mCameraId.equals("0")) {   // If currently on FRONT camera (0 = CameraCharacteristics.LENS_FACING_FRONT)
                mCameraId = "1";           // switch to BACK camera …
Run Code Online (Sandbox Code Playgroud)

camera android camera2 android-camera2

10
推荐指数
2
解决办法
1万
查看次数

使用MediaRecorder android时如何在前后摄像头之间切换

如果有人知道如何在使用MediaRecorder时在前后摄像头之间切换.我为这个函数定义了一个按钮,但是不知道如何定义onclickListener.

总活动如下:

import java.io.File;
import java.io.IOException;

import android.app.Activity;
import android.content.Intent;
import android.content.pm.ActivityInfo;
import android.hardware.Camera;
import android.media.MediaRecorder;
import android.os.Bundle;
import android.os.Environment;
import android.util.Log;
import android.view.SurfaceHolder;
import android.view.SurfaceView;
import android.view.View;
import android.view.Window;
import android.view.WindowManager;
import android.view.SurfaceHolder.Callback;
import android.view.View.OnClickListener;
import android.widget.Button;

public class Test_cameraActivity extends Activity implements Callback {

    // Camera variables to fiddle with video preview.
    // private Camera cam;
    // Viewholders etc
    private SurfaceHolder recordViewHolder;
    private SurfaceView recordSurface;
    private int width, height;
    // Button
    private Button recordBut;
    private Button switchBut;
    private …
Run Code Online (Sandbox Code Playgroud)

camera android switch-statement mediarecorder

5
推荐指数
2
解决办法
9638
查看次数