CyanogenDefy/android_device_motorola_jordan — Issue #161: Moto Bravo: LibSOCJordanCamera with 3M lens?
Author: ovacikar
Created: 2011-12-15 02:14:11+00:00
State: open

Hello guys,

Thanks for all your efforts in bringing CM7 to defy, which made possible to enjoy CM7 on our bravos, minus the camera. Being left out of ICS, we are struggling to get a fully working gingerbread rom.

The camera of bravo is a 3m SOC lens, believed to be an ovt3640 sensor

using our stock mot_ise_imager_cfg.bin (its 20K compared to 70K in defy) we can launch the camera app and see the image preview. after switching the resolution manually to 3M (or less) and taking a picture, it saves a 0 byte jog file with this logcat output:

adb shell dumpsys media.camera -v 2

E/camera ( 2639): mAutoFocusTime = 1508ms
D/CameraService( 1907): setParameters (pid 2639) (rotation-values=0,90,180,270;mot-postview-mode=on;zoom=0;mot-video-size=640
x480;mot-sensor-display-orientation-support-values=off,on;mot-face-track-frame-skip=15;zoom-supported=true;mot-flip-mode-valu
es=off;whitebalance=auto;mot-face-track-mode=off;scene-mode=auto;jpeg-quality=90;preview-format-values=yuv420sp,yuv422i-yuyv;
rotation=90;mot-picture-iso-values=auto;jpeg-thumbnail-quality=75;preview-format=yuv420sp;gps-timestamp=1323906986;mot-zoom-s
tep=0.5;mot-sensor-display-orientation=0;mot-video-stabilization-values=off;mot-image-stabilization-values=off;preview-size=6
40x480;focal-length=3.92;mot-max-picture-continuous-zoom=6;flash-mode-values=off,on,auto,torch;preview-frame-rate-values=10,1
5,20,24,25,30;mot-image-stabilization=off;mot-exposure-offset-values=-3,-2.67,-2.33,-2,-1.67,-1.33,-1,-0.67,-0.33,0,0.33,0.67
,1,1.33,1.67,2,2.33,2.67,3;preview-frame-rate=30;mot-face-detect-num-faces=4;mot-max-face-detect-num-faces=9;focus-mode-value
s=auto,macro,infinity,off;jpeg-thumbnail-width=
D/LibSOCJordanCamera( 1907): +setParameters
I/LibSOCJordanCamera( 1907): Changed: rotation: 0 -> 90 {0,90,180,270}
I/LibSOCJordanCamera( 1907): Changed: gps-timestamp: (null) -> 1323906986 {(null)}
I/LibSOCJordanCamera( 1907): Extract changes completed, 2 total changes
D/LibSOCJordanCamera( 1907): +handlePicRotationChange
D/LibSOCJordanCamera( 1907): -handlePicRotationChange
D/LibSOCJordanCamera( 1907): +handleGpsTimeStampChange
D/LibSOCJordanCamera( 1907): -handleGpsTimeStampChange
D/LibSOCJordanCamera( 1907): -setParameters
D/CameraService( 1907): takePicture (pid 2639)
D/LibSOCJordanCamera( 1907): +stopPreview
E/LibSOCJordanCamera( 1907): Turned off Streaming
E/LibSOCJordanCamera( 1907): dequeing frames from overlay
D/LibSOCJordanCamera( 1907): -stopPreview
D/LibSOCJordanCamera( 1907): +captureThread
D/CameraService( 1907): notifyCallback(2)
D/CameraService( 1907): lockIfMessageWanted(2): enter sleep
D/CameraService( 1907): lockIfMessageWanted(2): waited for 10 ms
D/CameraService( 1907): playSound(0)
D/AudioHardwareMot( 1907): doRouting devs: stereo 0x2, mono 0, input 0. Chose speaker Speakerphone (gain 0xb) mic None (gain
0x1c1c)
D/AudioHardwareMot( 1907): Output 0x134e0 exiting standby
V/camera ( 2639): mShutterLag = 448ms
D/LibSOCJordanCamera( 1907): cfilledbuffer length = 1441792
D/CameraService( 1907): dataCallback(64)
E/CameraService( 1907): Null data returned in data callback
D/CameraService( 1907): dataCallback(256)
E/LibSOCJordanCamera( 1907): MG: Returning focus to infinity!
D/LibSOCJordanCamera( 1907): -captureThread
E/Camera ( 2639): Error -2147483648
V/camera ( 2639): mPictureDisplayedToJpegCallbackTime = 1323906987599ms
E/camera ( 2639): Snapshot to Snapshot Latency = 2209 ms
D/CameraService( 1907): setPreviewDisplay(0x72d80) (pid 2639)

We need some information how to get LibSOCJordanCamera working with a 3M lens, i.e the raw data from the sensor will be 1441792 bytes instead of Defy's 2621440. I believe this difference causes the image processing to fail on bravo

Best regards and thanks in advance!

http://forum.xda-developers.com/forumdisplay.php?f=858