當使用takepicture方法混合OpenGL和Android相機的視圖以獲取圖像時,圖像會失真。我檢查並發現相機圖片被設置爲640X480,openGL視圖和相機預覽都設置爲1280x720。Android中的攝像頭,如何獲得最佳大小,預覽大小,圖片大小,視圖大小,圖像扭曲
所以我將相機圖片尺寸設置爲1280x720,結果非常完美。但是我無法在代碼中設置大小,因爲每個Android設備都會有所不同,並且每個設備的預覽大小和圖片大小都必須從支持的大小列表中進行選擇。
考慮到這裏有三個變量,活動佈局的屏幕大小,相機預覽大小和圖片大小,最佳做法是什麼?
最好是使用match_parent或fitXY作爲FrameLayout大小,並且只能使用兩個變量,預覽大小和圖片大小?
注意預覽尺寸和圖片尺寸中的幾個寬度和高度組合是相同的。例如預覽和圖片中都存在1280 x 720,是否會出現兩種尺寸都匹配的情況?
List<Size> previewSizes = mCamera.getParameters().getSupportedPreviewSizes();
List<Size> imageSizes = mCamera.getParameters().getSupportedPictureSizes();
// layout in the activity that the cameraView will placed in
int layoutWidth = frameLayout.getWidth();
int layoutHeight = frameLayout.getHeight();
例如在測量後一個Android平板這些是使用佈局的ViewGroup的
大小在活性測量的結果的3個變量的結果
1280 x 736
支持的圖片大小
320 x 240
640 x 480
1024 x 768
1280 x 720 << best size in my example to use
1280 x 768
1280 x 920
1600 x 1200
2048 x 1536
2560 x 1440
2560 x 1536
2560 x 1920 << native resolution of hardware camera
支持預覽尺寸
176 x 144
320 x 240
352 x 288
480 x 320
480 x 368
640 x 480
800 x 480
800 x 600
864 x 480
864 x 576
960 x 540
1280 x 720 << best size in my example to use
1280 x 768
1280 x 960
這是什麼意思? '比例(=寬度/高度)2)' –
長寬比=寬度/高度。什麼不明顯? – Sam
我迷失在你的'2''你只是列舉了你的觀點。 ;) –