Как увеличить яркость камеры в Android - PullRequest
4 голосов
/ 25 марта 2011

Как изменить уровень яркости камеры?

Ответы [ 4 ]

6 голосов
/ 25 марта 2011

Использование параметров камеры, указанных @appleskin, поможет ли один из этих методов? setWhiteBalance () или setExposureCompensation ()

0 голосов
/ 18 сентября 2014

используется следующим образом для увеличения или уменьшения яркости (это для активности, так что вы можете использовать в любом месте для камеры или деятельности также), это работает нормально. Так что это помогает кому-либо.

вызывает следующую функцию в вашей деятельности:

    private void setSeekbar() {

    seekBar.setMax(255);
    float curBrightnessValue = 0;
    try {
        curBrightnessValue = android.provider.Settings.System.getInt(
                getContentResolver(),
                android.provider.Settings.System.SCREEN_BRIGHTNESS);
    } catch (SettingNotFoundException e) {
        e.printStackTrace();
    }

    int screen_brightness = (int) curBrightnessValue;
    seekBar.setProgress(screen_brightness);

    seekBar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
        public void onStopTrackingTouch(SeekBar seekBar) {
            // Nothing handled here
        }

        public void onStartTrackingTouch(SeekBar seekBar) {
            // Nothing handled here
        }

        public void onProgressChanged(SeekBar seekBar, int progress,
                boolean fromUser) {
            // Set the minimal brightness level
            // if seek bar is 20 or any value below
            screenBrightness(progress);
            editor.putInt("brightness",progress);
            editor.commit();
        }
    });
  }

метод screenBrightness:

 private void screenBrightness(double newBrightnessValue) {
    /*
     * WindowManager.LayoutParams settings = getWindow().getAttributes();
     * settings.screenBrightness = newBrightnessValue;
     * getWindow().setAttributes(settings);
     */
          WindowManager.LayoutParams lp = getWindow().getAttributes();
          float newBrightness = (float) newBrightnessValue;
          lp.screenBrightness = newBrightness / (float) 255;
          getWindow().setAttributes(lp);
 }

следующий вызов метода перед SeekBarChangeListener :

  void changeBrightnessMode() {

    try {
        int brightnessMode = Settings.System.getInt(getContentResolver(),
                Settings.System.SCREEN_BRIGHTNESS_MODE);
        if (brightnessMode == Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC) {
            Settings.System.putInt(getContentResolver(),
                    Settings.System.SCREEN_BRIGHTNESS_MODE,
                    Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL);
        }

    } catch (Exception e) {
        // do something useful

    }
}
0 голосов
/ 29 марта 2011

Попробуйте parameters.set ("iso", 400);или любое другое значение int поддерживается на вашем устройстве

0 голосов
/ 25 марта 2011

Вы можете передать свою камеру Параметры .

...