https://www.cnblogs.com/wytings/p/5951317.html: 关于使用Android新版Camera即Camera2的使用介绍 暨解决Camera.PreviewCallback和MediaRecorder无法同时进行
https://blog.csdn.net/yanzi1225627/article/details/7738736
在view的派生类中获得显示屏的方向的方法:
view.getContext () : 这个是View类中提供的方法,在继承了View的类中才可以调用,返回的是当前View运行在哪个Activity Context中。context.getResources().getConfiguration().orientation;//获取屏幕方向int类型,1:portrait,2:landscape
public long mShutterLag;
这个是快门延迟public long mShutterToPictureDisplayedTime;
public long mPictureDisplayedToJpegCallbackTime;
private long mRawPictureCallbackTime;
private long mJpegPictureCallbackTime;
https://bbs.csdn.net/topics/390973738?page=1
android相机Camera.Parameters所有的参数值 https://blog.csdn.net/malong8888/article/details/47806423
一个Opencv控制相机的例子的部分代码:
package org.opencv.samples.tutorial3;
import java.io.FileOutputStream;
import java.util.List;
import org.opencv.android.JavaCameraView;
import android.content.Context;
import android.hardware.Camera;
import android.hardware.Camera.PictureCallback;
import android.hardware.Camera.Size;
import android.util.AttributeSet;
import android.util.Log;
public class Tutorial3View extends JavaCameraView implements PictureCallback {
private static final String TAG = "Tutorial3Activity";
private String mPictureFileName;
public Tutorial3View(Context context, AttributeSet attrs) {
super(context, attrs);
}
protected boolean connectCamera(int width, int height) {
boolean b = super.connectCamera( width, height ) ;
List<Size> sizList = mCamera.getParameters().getSupportedPictureSizes() ;
Log.i(TAG , "support Picture Size:" + sizList) ;
for (Size sz : sizList ) {
Log.i(TAG , "Pic size:" + sz.width + 'x' + sz.height ) ;
if ( sz.width == 4608 && sz.height == 2592 ) {
Camera.Parameters params = mCamera.getParameters();
params.setPictureSize(sz.width , sz.height) ;
mCamera.setParameters( params );
//break ;
}
}
sizList = mCamera.getParameters().getSupportedPreviewSizes() ;
Log.i(TAG , "support preview :" + sizList) ;
for (Size sz : sizList ) {
Log.i(TAG, "Preview size:" + sz.width + 'x' + sz.height);
}
return b ;
}
...
log:
2019-07-18 10:44:16.822 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: support Picture Size:
2019-07-18 10:44:16.822 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Pic size:4608x3456
2019-07-18 10:44:16.822 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Pic size:4608x2592
2019-07-18 10:44:17.080 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Pic size:4160x3120
2019-07-18 10:44:17.080 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Pic size:4000x3000
2019-07-18 10:44:17.080 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Pic size:3840x2160
2019-07-18 10:44:17.080 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Pic size:3264x2448
2019-07-18 10:44:17.080 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Pic size:3200x2400
2019-07-18 10:44:17.080 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Pic size:2976x2976
2019-07-18 10:44:17.080 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Pic size:2592x1944
2019-07-18 10:44:17.081 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Pic size:2592x1458
2019-07-18 10:44:17.081 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Pic size:2688x1512
2019-07-18 10:44:17.081 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Pic size:2592x1458
2019-07-18 10:44:17.081 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Pic size:2016x1512
2019-07-18 10:44:17.081 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Pic size:2048x1536
2019-07-18 10:44:17.081 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Pic size:1920x1080
2019-07-18 10:44:17.081 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Pic size:1600x1200
2019-07-18 10:44:17.081 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Pic size:1440x1080
2019-07-18 10:44:17.081 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Pic size:1280x960
2019-07-18 10:44:17.081 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Pic size:1280x768
2019-07-18 10:44:17.081 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Pic size:1280x720
2019-07-18 10:44:17.082 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Pic size:1024x768
2019-07-18 10:44:17.082 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Pic size:800x600
2019-07-18 10:44:17.082 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Pic size:864x480
2019-07-18 10:44:17.082 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Pic size:800x480
2019-07-18 10:44:17.082 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Pic size:720x480
2019-07-18 10:44:17.082 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Pic size:640x480
2019-07-18 10:44:17.082 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Pic size:640x360
2019-07-18 10:44:17.082 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Pic size:480x360
2019-07-18 10:44:17.082 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Pic size:480x320
2019-07-18 10:44:17.082 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Pic size:352x288
2019-07-18 10:44:17.082 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Pic size:320x240
2019-07-18 10:44:17.082 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Pic size:176x144
2019-07-18 10:44:17.090 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: support preview :
2019-07-18 10:44:17.091 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Preview size:1920x1080
2019-07-18 10:44:17.091 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Preview size:1440x1080
2019-07-18 10:44:17.091 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Preview size:1280x960
2019-07-18 10:44:17.091 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Preview size:1280x720
2019-07-18 10:44:17.091 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Preview size:864x480
2019-07-18 10:44:17.091 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Preview size:800x480
2019-07-18 10:44:17.091 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Preview size:768x432
2019-07-18 10:44:17.091 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Preview size:720x480
2019-07-18 10:44:17.091 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Preview size:640x640
2019-07-18 10:44:17.091 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Preview size:640x480
2019-07-18 10:44:17.091 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Preview size:640x360
2019-07-18 10:44:17.091 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Preview size:576x432
2019-07-18 10:44:17.092 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Preview size:480x360
2019-07-18 10:44:17.092 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Preview size:480x320
2019-07-18 10:44:17.092 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Preview size:384x288
2019-07-18 10:44:17.092 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Preview size:352x288
2019-07-18 10:44:17.092 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Preview size:320x240
2019-07-18 10:44:17.092 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Preview size:240x160
2019-07-18 10:44:17.092 17369-17369/org.opencv.samples.tutorial3 I/Tutorial3Activity: Preview size:176x144