W tej chwili próbuję ustawić aparat w telefonie Motorola Droid, aby zrobić zdjęcie pasujące do rozmiaru mojego ekranu (854 x 480 pikseli) i próbuję wykonać to za pomocą parametry aparatu jako takie:Ustawianie rozmiaru obrazu kamery w systemie Android
Camera.Parameters parameters = this.mCamera.getParameters();
Log.i(TAG, "CAMERA SIZE: (" + this.mCameraView.getWidth() + ", " + this.mCameraView.getHeight() + ")");
parameters.setPictureSize(this.mCameraView.getWidth(), this.mCameraView.getHeight());
this.mCamera.setParameters(parameters);
this.mCamera.takePicture(null, null, this);
mam moja aktywność wdrożyć metodę Camera.PictureCallback z onPictureTaken (z wyłączeniem połączeń dziennika), więc gdy metoda takePicture nazywa się go prowadzi ten sposób:
@Override
public void onPictureTaken(byte[] data, Camera camera) {
Bitmap image = BitmapFactory.decodeByteArray(data, 0, data.length);
//Size imageSize = camera.getParameters().getPictureSize();
//image = Bitmap.createBitmap(image, 0, 0, imageSize.width, imageSize.height);
this.mCameraView.setBackgroundDrawable(new BitmapDrawable(image));
}
Z jakiegoś powodu mój aparat robi zdjęcia w 1280 roku x 960. Czy jest to minimalny rozmiar, w którym aparat może przechwycić obraz? W przypadku wywołań dzienników widzę, że parametry aparatu są nadal ustawione na rozmiar obrazu 854 x 480, ale obraz nadal wychodzi jako 1280 x 960. Czy odszyfrowuję obraz niepoprawnie, czy ustawiam niepoprawnie parametry kamery, czy też Robię coś złego?
Z góry dziękujemy za pomoc, którą możesz udzielić!
Pozdrawiam, celestialorb.
Kamera została wycofana i zastąpiona Camera2 ale nie mogę znaleźć analogiczną metodę w nowym API – Price