2017-05-16 274 views
0

目前正在使用xamarin android上的條形碼掃描儀。我正在使用Google視覺API。用谷歌視覺設置攝像頭分辨率android

cameraSource = new CameraSource 
     .Builder(this, barcodeDetector) 
     .SetRequestedPreviewSize(1920, 1080) 
     .Build(); 

這是我用來構建相機視圖的代碼。 如果我理解正確,SetRequestedPreviewSize用於在手機上顯示相機視圖。 如何更改手機相機的分辨率?我無法找到任何答案。

回答

1

如何更改手機相機的分辨率?

您可以初始化CameraSource之前拿相機的分辨率:

int numCameras=Camera.getNumberOfCameras(); 
for (int i=0;i<numCameras;i++) 
{ 
    Camera.CameraInfo cameraInfo=new Camera.CameraInfo(); 
    Camera.getCameraInfo(i,cameraInfo); 
    if (cameraInfo.facing== Camera.CameraInfo.CAMERA_FACING_FRONT) 
    { 
     Camera camera= Camera.open(i); 
     Camera.Parameters cameraParams=camera.getParameters(); 
     List<Camera.Size> sizes= cameraParams.getSupportedPreviewSizes(); 
     int width=sizes.get(0).width; 
     int height=sizes.get(0).height; 
    } 
} 
+0

感謝您的評論!所以,如果我正確理解這一點,你的代碼是用來獲取相機的當前分辨率。並且setRequestedPreviewSize用於設置相機的分辨率?對這個問題抱歉,但這是第一次使用這個。 – Urban

+0

[setRequestPreviewSize](https://developers.google.com/android/reference/com/google/android/gms/vision/CameraSource.Builder)用於以像素爲單位設置相機框的所需寬度和高度。我的答案中的代碼用於獲得前置攝像頭支持的預覽尺寸。 –

+0

非常感謝! – Urban