Android camera preview is dark

Puneet

I am trying to create a custom camera app. I followed the Android Developer example from here with minor tweaks. However, my camera preview turns out to be rather dark. On the other hand, the stock camera gives a much brighter preview.

I have tried several settings to make it work better but it seems none of them are having any impact. Relevant code is posted here.

CameraActivity (Main)

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_camera);
    if(CameraHelper.checkCameraHardware(this)) {
        mHelper = new CameraHelper(this, getWindowManager().getDefaultDisplay());
    }

    FrameLayout preview = (FrameLayout) findViewById(R.id.camera_preview);
    mPreview = new CameraPreview(this, CameraHelper.camera);
    mPreview.setLayoutParams(new LayoutParams(CameraHelper.mSize.width, CameraHelper.mSize.height, Gravity.CENTER));

    preview.addView(mPreview);

}

CameraHelper class (initialize the camera and set the default parameters)

    public CameraHelper(CameraListener listener, Display display){
        mListener = listener;
        camera = getCameraInstance();

        mParameters = camera.getParameters();
        initCameraParameters();

        mSize = getPreviewSize(display);
        mParameters.setFocusMode(Parameters.FOCUS_MODE_AUTO);
        mParameters.setPictureSize(2560, 1920);

        mParameters.setAutoExposureLock(false);
        mParameters.setAutoWhiteBalanceLock(false);
        mParameters.set("iso", "ISO800"); //Tried with 400, 800, 600 (values obtained from flatten())
        mParameters.setColorEffect("none");
        mParameters.setPictureSize(2560, 1920);
        mParameters.setPreviewFrameRate(20);
        mParameters.set("scene-mode", "auto");
        mParameters.setFocusMode("auto");
        mParameters.setExposureCompensation(4);     
        camera.setParameters(mParameters);
    }

The Camera sends the frames to SurfaceHolder.Surface from the example linked from developer pages above.

See the difference here: Stock Camera App Stock Camera Preview My Camera App My Camera app

Tried setting the ISO, etc based on upack parameters from the camera as posted here. It still didn't work.

Parameters(16369): effect-values=none,mono,negative,sepia,aqua,sharpen,purple,green-tint,blue-tint,pink,yellow,red-tint,mono,antique;exposure-compensation-step=0.5;focal-length=3.43;focus-areas=(0,0,0,0,0);focus-distances=0.10,1.20,Infinity;focus-mode-values=auto,macro,facedetect;gps-altitude=0;gps-latitude=0;gps-longitude=0;gps-processing-method=GPS;gps-timestamp=0;horizontal-view-angle=51.2;iso=auto;iso-values=auto,ISO50,ISO100,ISO200,ISO400,ISO800,ISO1600;jpeg-quality=1;jpeg-thumbnail-height=480;jpeg-thumbnail-size-values=640x480,0x0;jpeg-thumbnail-width=640;max-exposure-compensation=4;max-num-focus-areas=1;max-zoom=12;min-exposure-compensation=-4;picture-format=jpeg;picture-format-values=jpeg;picture-size-values=2560x1920,2560x1536,2048x1536,2048x1232,1600x1200,1600x960,800x480,640x480;preview-format=yuv420sp;preview-format-values=yuv420sp;preview-fps-range=15000,30000;preview-fps-range-values=(15000,30000);preview-frame-rate=30;preview-frame-rate-values=30;preview-size=640x480;preview-size-values=1280x720,800x480,720x480,640x480,352x288;rotation=0;scene-mode=auto;scene-mode-values=auto,portrait,landscape,night,beach,snow,sunset,fireworks,sports,party,candlelight,asd,backlight,dusk-dawn,text,fall-color;vertical-view-angle=39.4;video-frame-format=yuv422i-yuyv;whitebalance-values=auto,incandescent,fluorescent,daylight,cloudy-daylight;zoom=0;zoom-ratios=100,125,150,175,200,225,250,275,300,325,350,375,400;zoom-supported=true;focus-mode=auto;picture-size=2560x1920;exposure-compensation=4;

Edit: Upon further testing based on comments below, it appears that its just the preview that is turning out darker than it should be. The actual captured image is well lit and exposure compensatiion seems to be working fine. Its just the preview that is giving me a headache. Tested on i9003 running CM11 and Nexus 10 running stock android.

Alex Cohn

From my experiments, scene-mode setting can change the preview (unlike ISO or exposure-compensation, which both work for captured pictures). Don't use auto. Try scene-mode-values=night or scene-mode=dusk-dawn.

The problem with scenes is that the supported values are not standardized across devices. But some kind of night is usually present.

Collected from the Internet

Please contact [email protected] to delete if infringement.

edited at
0

Comments

0 comments
Login to comment

Related

From Dev

How to get Android camera preview data?

From Dev

Android: Camera Asynctask with Preview Callback

From Dev

Android Camera Preview Stretched

From Dev

Android: Image taken by custom camera is too dark

From Dev

Camera Preview not reinitializing => A good Android Camera implementation?

From Dev

front camera take very dark capture in android

From Dev

Android camera preview stops after unlocking phone

From Dev

Android Camera preview on two views ( Multi-lenses camera preview )

From Dev

Access Android Camera Frames with no Preview

From Dev

Android Camera preview in a fragment

From Dev

Android camera preview freezes when switching cameras?

From Dev

Custom camera shows dark picture preview when photo taken on Nexus

From Dev

Android - Make camera preview semi-transparent

From Dev

Change contrast in Camera Preview - Android

From Dev

Textureview/Surface view for Camera preview - Android

From Dev

Android SurfaceView Preview too dark

From Dev

How to use OpenCV methods in Android Camera Preview

From Dev

Android: Want to put an silhouette overlay on a Camera preview

From Dev

Camera preview is fine but front camera produces very dark photos

From Dev

Android Camera Preview not Full Screen

From Dev

Android: Camera Asynctask with Preview Callback

From Dev

Camera Preview not reinitializing => A good Android Camera implementation?

From Dev

Android camera preview stops after unlocking phone

From Dev

How to rotate android device camera preview(libgdx)

From Dev

Android Camera preview on two views ( Multi-lenses camera preview )

From Dev

Android Camera Preview not display in entire screen

From Dev

Stretched camera preview on Android

From Dev

Change contrast in Camera Preview - Android

From Dev

Android background camera preview

Related Related

  1. 1

    How to get Android camera preview data?

  2. 2

    Android: Camera Asynctask with Preview Callback

  3. 3

    Android Camera Preview Stretched

  4. 4

    Android: Image taken by custom camera is too dark

  5. 5

    Camera Preview not reinitializing => A good Android Camera implementation?

  6. 6

    front camera take very dark capture in android

  7. 7

    Android camera preview stops after unlocking phone

  8. 8

    Android Camera preview on two views ( Multi-lenses camera preview )

  9. 9

    Access Android Camera Frames with no Preview

  10. 10

    Android Camera preview in a fragment

  11. 11

    Android camera preview freezes when switching cameras?

  12. 12

    Custom camera shows dark picture preview when photo taken on Nexus

  13. 13

    Android - Make camera preview semi-transparent

  14. 14

    Change contrast in Camera Preview - Android

  15. 15

    Textureview/Surface view for Camera preview - Android

  16. 16

    Android SurfaceView Preview too dark

  17. 17

    How to use OpenCV methods in Android Camera Preview

  18. 18

    Android: Want to put an silhouette overlay on a Camera preview

  19. 19

    Camera preview is fine but front camera produces very dark photos

  20. 20

    Android Camera Preview not Full Screen

  21. 21

    Android: Camera Asynctask with Preview Callback

  22. 22

    Camera Preview not reinitializing => A good Android Camera implementation?

  23. 23

    Android camera preview stops after unlocking phone

  24. 24

    How to rotate android device camera preview(libgdx)

  25. 25

    Android Camera preview on two views ( Multi-lenses camera preview )

  26. 26

    Android Camera Preview not display in entire screen

  27. 27

    Stretched camera preview on Android

  28. 28

    Change contrast in Camera Preview - Android

  29. 29

    Android background camera preview

HotTag

Archive