Android Camera setJpegКачество игнорируется
Похоже, что метод setJpegQuality для Camera.Parameters игнорируется, по крайней мере, на устройствах, с которыми я это пробовал (Nexus S, Galaxy S2).
Это работает для кого-то еще, или это известная проблема, или я делаю что-то не так, или...?
Код для настройки параметров ниже. Качество jpeg 1 очень своеобразно, поэтому очень легко определить визуально, работает ли оно... и это не так! Другие параметры, установленные здесь (например, сепия), работают.
camera = Camera.open();
final Camera.Parameters parameters = camera.getParameters();
parameters.setJpegQuality(1);
parameters.setPictureFormat(ImageFormat.JPEG);
// Let set a SEPIA effect, just to verify these parameters are working at all!
parameters.setColorEffect(Camera.Parameters.EFFECT_SEPIA);
// I've seen this syntax too on the internet, presumably it legacy.
parameters.set("jpeg-quality", 1);
camera.setParameters(parameters);
Ответы
Ответ 1
Задайте все атрибуты изображения:
parameters.setPreviewSize(854, 480); // (h, w)
parameters.setPictureFormat(ImageFormat.JPEG);
parameters.set("jpeg-quality", 100);
parameters.set("orientation", "landscape");
parameters.set("rotation", 90);
mCamera.setParameters(parameters);
mCamera.startPreview();