OpenCv on moto droid

405 views
Skip to first unread message

maxi

unread,
Jul 20, 2011, 12:36:59 PM7/20/11
to android-opencv
Im trying to use the pre built OpenCV packages on Android using the
Moto Droid. It compiles and loads without errors
However the camera seems to load up(it makes the clicking noise) but
without any display. The menu works but there is no display on the
screen apart from the top status bar and title bar. On killing the
application the Sorry dialog box appears with the not responding
message.
Any idea what seems to be wrong.
Should i try building the CV sources with the NDK?

Akshay

Andrey Kamaev

unread,
Jul 20, 2011, 2:30:31 PM7/20/11
to android-opencv
Hi,

Could you provide us more details?

Particularly following details will be very helpful:
1) What sample are you trying? If it is one of samples provided with
package then we need only name of sample. If it is your own sample
then please shortly describe your scenario.
2) Exact CPU model of your device.
3) Android version number.
4) Output of `adb logcat` for running sample.

Thanks,
Andrey

maxi

unread,
Jul 20, 2011, 3:07:03 PM7/20/11
to android-opencv
None of the samples provided in the openCV 2.3.1 tar.bz seem to work

Model number: Droid
Android Version: 2.2.2
Kernal Version 2.6.32.9-g68eeef5 android-build@apa26 #1

This is the dump of the adb logcat

D/AndroidRuntime( 5804): >>>>>>>>>>>>>> AndroidRuntime START
<<<<<<<<<<<<<<
D/AndroidRuntime( 5804): CheckJNI is OFF
D/dalvikvm( 5804): creating instr width table
D/AndroidRuntime( 5804): --- registering native functions ---
D/AndroidRuntime( 5804): Shutting down VM
D/dalvikvm( 5804): Debugger has detached; object registry had 1
entries
I/AndroidRuntime( 5804): NOTE: attach of thread 'Binder Thread #3'
failed
D/AndroidRuntime( 5813):
D/AndroidRuntime( 5813): >>>>>>>>>>>>>> AndroidRuntime START
<<<<<<<<<<<<<<
D/AndroidRuntime( 5813): CheckJNI is OFF
D/dalvikvm( 5813): creating instr width table
D/AndroidRuntime( 5813): --- registering native functions ---
I/ActivityManager( 1102): Starting activity: Intent
{ act=android.intent.action.MAIN
cat=[android.intent.category.LAUNCHER] flg=0x10000000
cmp=org.opencv.samples.tutorial2/.Sample2NativeCamera }
D/AndroidRuntime( 5813): Shutting down VM
D/dalvikvm( 5813): Debugger has detached; object registry had 1
entries
I/ActivityManager( 1102): Start proc org.opencv.samples.tutorial2 for
activity org.opencv.samples.tutorial2/.Sample2NativeCamera: pid=5820
uid=10090 gids={1006}
I/AndroidRuntime( 5813): NOTE: attach of thread 'Binder Thread #3'
failed
I/WindowManager( 1102): Setting rotation to 1, animFlags=1
I/ActivityManager( 1102): Config changed: { scale=1.0 imsi=310/4
loc=en_US touch=3 keys=2/1/2 nav=2/2 orien=2 layout=34 uiMode=17
seq=120}
D/dalvikvm( 1102): GC_EXTERNAL_ALLOC freed 16644 objects / 844104
bytes in 133ms
I/Sample::Activity( 5820): Instantiated new class
org.opencv.samples.tutorial2.Sample2NativeCamera
I/Sample::Activity( 5820): onCreate
I/Sample::SurfaceView( 5820): Instantiated new class
org.opencv.samples.tutorial2.Sample2View
I/ActivityManager( 1102): Displayed activity
org.opencv.samples.tutorial2/.Sample2NativeCamera: 730 ms (total 730
ms)
I/Sample::SurfaceView( 5820): surfaceCreated
D/dalvikvm( 5820): Trying to load lib /data/data/
org.opencv.samples.tutorial2/lib/libopencv_java.so 0x4485f0c8
D/dalvikvm( 5820): Added shared lib /data/data/
org.opencv.samples.tutorial2/lib/libopencv_java.so 0x4485f0c8
D/dalvikvm( 5820): No JNI_OnLoad found in /data/data/
org.opencv.samples.tutorial2/lib/libopencv_java.so 0x4485f0c8,
skipping init
D/CAMERA_ACTIVITY( 5820): Library name: libopencv_java.so
D/CAMERA_ACTIVITY( 5820): Library base address: 0x81000000
D/CAMERA_ACTIVITY( 5820): Libraries folder found: /data/data/
org.opencv.samples.tutorial2/lib/
D/CAMERA_ACTIVITY( 5820): CameraWrapperConnector::connectToLib:
folderPath=/data/data/org.opencv.samples.tutorial2/lib/
E/CAMERA_ACTIVITY( 5820): ||libnative_camera_r2.2.2.so
E/CAMERA_ACTIVITY( 5820): ||libnative_camera_r2.3.3.so
D/CAMERA_ACTIVITY( 5820): try to load library
'libnative_camera_r2.2.2.so'
D/CAMERA_ACTIVITY( 5820): Loaded library '/data/data/
org.opencv.samples.tutorial2/lib/libnative_camera_r2.2.2.so'
D/CameraHal( 1013): CameraSettings constructor
D/CameraHal( 1013): CameraHal constructor
D/CameraHal( 1013): Model ID: Droid
D/CameraHal( 1013): Software ID 2.2.2
I/HPAndroidHAL( 1013): Version 4719:5353. SholesMR2_RC9 Build Time:
2010-06-14 15:15:45.
D/CameraHal( 1013): 20 default parameters
D/CameraHal( 1013): Immediate Zoom/1:0. Current zoom level/1:0
D/CameraHal( 1013): CameraHal constructor exited ok
D/ ( 5820): Supported Cameras: (null)
D/ ( 5820): Supported Picture Sizes:
1280x960,1600x1200,2048x1536,2592x1936,2592x1456
D/ ( 5820): Supported Picture Formats: jpeg,jfif,exif
D/ ( 5820): Supported Preview Sizes:
176x144,320x240,352x288,640x480,720x480,720x576,848x480
D/ ( 5820): Supported Preview Formats: yuv422i-yuyv,yuv420sp
D/ ( 5820): Supported Preview Frame Rates: 5,10,15,20,24,25,30
D/ ( 5820): Supported Thumbnail Sizes:
0x0,160x90,160x120,176x144,320x180,320x240,512x288,512x384
D/ ( 5820): Supported Whitebalance Modes:
auto,daylight,fluorescent,cloudy-daylight,incandescent,warm-
fluorescent
D/ ( 5820): Supported Effects:
none,mono,sepia,negative,solarize,red-tint,blue-tint,green-tint
D/ ( 5820): Supported Scene Modes:
auto,action,portrait,landscape,night,night-
portrait,theatre,beach,snow,sunset,steadyphoto
D/ ( 5820): Supported Focus Modes: auto,infinity,macro
D/ ( 5820): Supported Antibanding Options: auto,50hz,60hz
D/ ( 5820): Supported Flash Modes: off,on,auto,torch
W/CameraHal( 1013): No overlay set before start preview
I/Sample::SurfaceView( 5820): surfaceCreated
I/Sample::SurfaceView( 5820): before
mCamera.getSupportedPreviewSizes()
I/Sample::SurfaceView( 5820): after mCamera.getSupportedPreviewSizes()
D/dalvikvm( 5820): Trying to load lib /data/data/
org.opencv.samples.tutorial2/lib/libopencv_java.so 0x4485f0c8
I/Sample::SurfaceView( 5820): Starting processing thread
D/dalvikvm( 5820): Shared lib '/data/data/org.opencv.samples.tutorial2/
lib/libopencv_java.so' already loaded in same CL 0x4485f0c8
D/ ( 5820): CameraHandler::applyProperties()
D/ ( 5820): CameraHandler::applyProperties(): before
previousCameraHandler->closeCameraConnect
D/CameraHal( 1013): stopPreview
D/CameraHal( 1013): stopPreview
D/CameraHal( 1013): CameraHal release
I/HPAndroidHAL( 1013): APILOG: ExitHPLibraries
I/HPAndroidHAL( 1013): APILOG: state machine shutting down...
I/HPAndroidHAL( 1013): APILOG: components shutting down...
I/HPAndroidHAL( 1013): APILOG: all components uninitialized.
I/HPAndroidHAL( 1013): APILOG: all components destroyed.
I/HPAndroidHAL( 1013): APILOG: library shutdown complete.
D/CameraHal( 1013): CameraHal destructor
D/CameraHal( 1013): CameraHal release
D/CameraHal( 1013): CameraSettings destructor
D/ ( 5820): CameraHandler::applyProperties(): after
previousCameraHandler->closeCameraConnect
D/ ( 5820): CameraHandler::applyProperties(): before
initCameraConnect
D/CameraHal( 1013): CameraSettings constructor
D/CameraHal( 1013): CameraHal constructor
D/CameraHal( 1013): Model ID: Droid
D/CameraHal( 1013): Software ID 2.2.2
W/ ( 5820): CameraHandler destructor is called!
I/HPAndroidHAL( 1013): Version 4719:5353. SholesMR2_RC9 Build Time:
2010-06-14 15:15:45.
D/CameraHal( 1013): 20 default parameters
D/CameraHal( 1013): Immediate Zoom/1:0. Current zoom level/1:0
D/CameraHal( 1013): CameraHal constructor exited ok
D/CameraHal( 1013): Extract changes completed, 0 total changes
D/ ( 5820): Supported Cameras: (null)
D/ ( 5820): Supported Picture Sizes:
1280x960,1600x1200,2048x1536,2592x1936,2592x1456
D/ ( 5820): Supported Picture Formats: jpeg,jfif,exif
D/ ( 5820): Supported Preview Sizes:
176x144,320x240,352x288,640x480,720x480,720x576,848x480
D/ ( 5820): Supported Preview Formats: yuv422i-yuyv,yuv420sp
D/ ( 5820): Supported Preview Frame Rates: 5,10,15,20,24,25,30
D/ ( 5820): Supported Thumbnail Sizes:
0x0,160x90,160x120,176x144,320x180,320x240,512x288,512x384
D/ ( 5820): Supported Whitebalance Modes:
auto,daylight,fluorescent,cloudy-daylight,incandescent,warm-
fluorescent
D/ ( 5820): Supported Effects:
none,mono,sepia,negative,solarize,red-tint,blue-tint,green-tint
D/ ( 5820): Supported Scene Modes:
auto,action,portrait,landscape,night,night-
portrait,theatre,beach,snow,sunset,steadyphoto
D/ ( 5820): Supported Focus Modes: auto,infinity,macro
D/ ( 5820): Supported Antibanding Options: auto,50hz,60hz
D/ ( 5820): Supported Flash Modes: off,on,auto,torch
W/CameraHal( 1013): No overlay set before start preview
D/ ( 5820): CameraHandler::applyProperties(): after
initCameraConnect, handler=0x22d0b0
D/dalvikvm( 1102): GC_EXPLICIT freed 4335 objects / 223776 bytes in
122ms
D/dalvikvm( 1185): GC_EXPLICIT freed 1707 objects / 98920 bytes in
78ms
D/dalvikvm( 5044): GC_EXPLICIT freed 793 objects / 38648 bytes in 66ms
W/KeyCharacterMap( 5820): Can't open keycharmap file
W/KeyCharacterMap( 5820): Error loading keycharmap file '/system/usr/
keychars/qtouch-touchscreen.kcm.bin'. hw.keyboards.
65538.devname='qtouch-touchscreen'
W/KeyCharacterMap( 5820): Using default keymap: /system/usr/keychars/
qwerty.kcm.bin
I/Sample::Activity( 5820): onCreateOptionsMenu
I/Sample::Activity( 5820): Menu Item selected Canny
W/InputManagerService( 1102): Window already focused, ignoring focus
gain of: com.android.internal.view.IInputMethodClient$Stub
$Proxy@449b6578
I/Sample::Activity( 5820): Menu Item selected Preview GRAY
W/InputManagerService( 1102): Window already focused, ignoring focus
gain of: com.android.internal.view.IInputMethodClient$Stub
$Proxy@44ae4370
I/Sample::Activity( 5820): Menu Item selected Preview RGBA
W/InputManagerService( 1102): Window already focused, ignoring focus
gain of: com.android.internal.view.IInputMethodClient$Stub
$Proxy@44a832a8
I/ActivityManager( 1102): Starting activity: Intent
{ act=android.intent.action.MAIN cat=[android.intent.category.HOME]
flg=0x10200000 cmp=com.android.launcher/
com.android.launcher2.Launcher }
I/WindowManager( 1102): Setting rotation to 0, animFlags=1
I/ActivityManager( 1102): Config changed: { scale=1.0 imsi=310/4
loc=en_US touch=3 keys=2/1/2 nav=2/2 orien=1 layout=34 uiMode=17
seq=121}
W/InputManagerService( 1102): Ignoring hideSoftInput of:
com.android.internal.view.IInputMethodClient$Stub$Proxy@448de580
D/dalvikvm( 1177): GC_FOR_MALLOC freed 7097 objects / 397632 bytes in
189ms
I/Sample::SurfaceView( 5820): surfaceDestroyed
D/dalvikvm( 1102): GC_EXPLICIT freed 2805 objects / 130144 bytes in
126ms
W/KeyCharacterMap( 1185): Can't open keycharmap file
W/KeyCharacterMap( 1185): Error loading keycharmap file '/system/usr/
keychars/qtouch-touchscreen.kcm.bin'. hw.keyboards.
65538.devname='qtouch-touchscreen'
W/KeyCharacterMap( 1185): Using default keymap: /system/usr/keychars/
qwerty.kcm.bin
D/dalvikvm( 1102): GC_EXTERNAL_ALLOC freed 1346 objects / 58352 bytes
in 101ms
D/StatusBar( 1102): DISABLE_EXPAND: yes
I/ActivityManager( 1102): Starting activity: Intent
{ act=android.intent.action.MAIN
cat=[android.intent.category.LAUNCHER] flg=0x10100000
cmp=org.opencv.samples.tutorial2/.Sample2NativeCamera }
I/WindowManager( 1102): Setting rotation to 1, animFlags=1
I/ActivityManager( 1102): Config changed: { scale=1.0 imsi=310/4
loc=en_US touch=3 keys=2/1/2 nav=2/2 orien=2 layout=34 uiMode=17
seq=122}
D/dalvikvm( 1102): GC_EXTERNAL_ALLOC freed 1086 objects / 50744 bytes
in 106ms
D/dalvikvm( 1102): GC_EXTERNAL_ALLOC freed 244 objects / 11704 bytes
in 102ms
D/dalvikvm( 1102): GC_EXTERNAL_ALLOC freed 30 objects / 992 bytes in
103ms
D/dalvikvm( 1102): GC_EXPLICIT freed 17 objects / 536 bytes in 121ms
W/ActivityManager( 1102): Launch timeout has expired, giving up wake
lock!
W/ActivityManager( 1102): Activity idle timeout for
HistoryRecord{44b39e90
org.opencv.samples.tutorial2/.Sample2NativeCamera}
W/WindowManager( 1102): Key dispatching timed out sending to
org.opencv.samples.tutorial2/
org.opencv.samples.tutorial2.Sample2NativeCamera
W/WindowManager( 1102): Previous dispatch state: {{KeyEvent{action=1
code=4 repeat=0 meta=0 scancode=158 mFlags=72} to Window{44a8fae0
com.android.launcher/com.android.launcher2.Launcher paused=false} @
1311188715993 lw=Window{44a8fae0 com.android.launcher/
com.android.launcher2.Launcher paused=false}
lb=android.os.BinderProxy@4498e368 fin=false gfw=true ed=true tts=0
wf=true fp=false mcf=Window{44a8fae0 com.android.launcher/
com.android.launcher2.Launcher paused=false}}}
W/WindowManager( 1102): Current dispatch state: {{null to
Window{449fc310 org.opencv.samples.tutorial2/
org.opencv.samples.tutorial2.Sample2NativeCamera paused=false} @
1311188747008 lw=Window{449fc310 org.opencv.samples.tutorial2/
org.opencv.samples.tutorial2.Sample2NativeCamera paused=false}
lb=android.os.BinderProxy@44c0f4f8 fin=false gfw=true ed=true tts=0
wf=false fp=false mcf=Window{449fc310 org.opencv.samples.tutorial2/
org.opencv.samples.tutorial2.Sample2NativeCamera paused=false}}}
I/Process ( 1102): Sending signal. PID: 5820 SIG: 3
I/dalvikvm( 5820): threadid=3: reacting to signal 3
I/dalvikvm( 5820): Wrote stack traces to '/data/anr/traces.txt'
I/Process ( 1102): Sending signal. PID: 1102 SIG: 3
I/dalvikvm( 1102): threadid=3: reacting to signal 3
I/dalvikvm( 1102): Wrote stack traces to '/data/anr/traces.txt'
I/Process ( 1102): Sending signal. PID: 1177 SIG: 3
I/dalvikvm( 1177): threadid=3: reacting to signal 3
I/dalvikvm( 1177): Wrote stack traces to '/data/anr/traces.txt'
I/Process ( 1102): Sending signal. PID: 1182 SIG: 3
I/dalvikvm( 1182): threadid=3: reacting to signal 3
I/dalvikvm( 1182): Wrote stack traces to '/data/anr/traces.txt'
I/Process ( 1102): Sending signal. PID: 4838 SIG: 3
I/dalvikvm( 4838): threadid=3: reacting to signal 3
I/dalvikvm( 4838): Wrote stack traces to '/data/anr/traces.txt'
I/Process ( 1102): Sending signal. PID: 5044 SIG: 3
I/dalvikvm( 5044): threadid=3: reacting to signal 3
I/dalvikvm( 5044): Wrote stack traces to '/data/anr/traces.txt'
I/Process ( 1102): Sending signal. PID: 1185 SIG: 3
I/dalvikvm( 1185): threadid=3: reacting to signal 3
I/dalvikvm( 1185): Wrote stack traces to '/data/anr/traces.txt'
I/Process ( 1102): Sending signal. PID: 5782 SIG: 3
I/dalvikvm( 5782): threadid=3: reacting to signal 3
I/dalvikvm( 5782): Wrote stack traces to '/data/anr/traces.txt'
I/Process ( 1102): Sending signal. PID: 1229 SIG: 3
I/dalvikvm( 1229): threadid=3: reacting to signal 3
I/dalvikvm( 1229): Wrote stack traces to '/data/anr/traces.txt'
I/Process ( 1102): Sending signal. PID: 5559 SIG: 3
I/dalvikvm( 5559): threadid=3: reacting to signal 3
I/dalvikvm( 5559): Wrote stack traces to '/data/anr/traces.txt'
I/Process ( 1102): Sending signal. PID: 5424 SIG: 3
I/dalvikvm( 5424): threadid=3: reacting to signal 3
I/dalvikvm( 5424): Wrote stack traces to '/data/anr/traces.txt'
I/Process ( 1102): Sending signal. PID: 4751 SIG: 3
I/dalvikvm( 4751): threadid=3: reacting to signal 3
I/dalvikvm( 4751): Wrote stack traces to '/data/anr/traces.txt'
I/Process ( 1102): Sending signal. PID: 5399 SIG: 3
I/dalvikvm( 5399): threadid=3: reacting to signal 3
I/dalvikvm( 5399): Wrote stack traces to '/data/anr/traces.txt'
I/Process ( 1102): Sending signal. PID: 5599 SIG: 3
I/dalvikvm( 5599): threadid=3: reacting to signal 3
I/dalvikvm( 5599): Wrote stack traces to '/data/anr/traces.txt'
I/Process ( 1102): Sending signal. PID: 5391 SIG: 3
I/dalvikvm( 5391): threadid=3: reacting to signal 3
I/dalvikvm( 5391): Wrote stack traces to '/data/anr/traces.txt'
I/Process ( 1102): Sending signal. PID: 5383 SIG: 3
I/dalvikvm( 5383): threadid=3: reacting to signal 3
I/dalvikvm( 5383): Wrote stack traces to '/data/anr/traces.txt'
I/Process ( 1102): Sending signal. PID: 4496 SIG: 3
I/dalvikvm( 4496): threadid=3: reacting to signal 3
I/dalvikvm( 4496): Wrote stack traces to '/data/anr/traces.txt'
E/ActivityManager( 1102): ANR in org.opencv.samples.tutorial2
(org.opencv.samples.tutorial2/.Sample2NativeCamera)
E/ActivityManager( 1102): Reason: keyDispatchingTimedOut
E/ActivityManager( 1102): Load: 0.39 / 0.7 / 0.48
E/ActivityManager( 1102): CPU usage from 7227ms to 2141ms ago:
E/ActivityManager( 1102): system_server: 2% = 1% user + 0% kernel
E/ActivityManager( 1102): tiwlan_wq: 2% = 0% user + 2% kernel
E/ActivityManager( 1102): qtouch_obp_ts_w: 0% = 0% user + 0% kernel
E/ActivityManager( 1102): omap2_mcspi: 0% = 0% user + 0% kernel
E/ActivityManager( 1102): battd: 0% = 0% user + 0% kernel / faults:
2 minor
E/ActivityManager( 1102): putmethod.latin: 0% = 0% user + 0% kernel
E/ActivityManager( 1102): TOTAL: 5% = 1% user + 3% kernel + 0% irq +
0% softirq
W/WindowManager( 1102): No window to dispatch pointer action 1
W/WindowManager( 1102): No window to dispatch pointer action 1
W/WindowManager( 1102): No window to dispatch pointer action 0
W/WindowManager( 1102): No window to dispatch pointer action 1
W/WindowManager( 1102): No window to dispatch pointer action 0
W/WindowManager( 1102): No window to dispatch pointer action 1
W/WindowManager( 1102): No window to dispatch pointer action 0
W/WindowManager( 1102): No window to dispatch pointer action 1
W/WindowManager( 1102): No window to dispatch pointer action 0
W/WindowManager( 1102): No window to dispatch pointer action 1
W/WindowManager( 1102): No window to dispatch pointer action 0
W/WindowManager( 1102): No window to dispatch pointer action 1
W/WindowManager( 1102): No window to dispatch pointer action 0
W/WindowManager( 1102): No window to dispatch pointer action 1
W/WindowManager( 1102): No window to dispatch pointer action 0
W/WindowManager( 1102): No window to dispatch pointer action 1
W/WindowManager( 1102): No window to dispatch pointer action 0
W/WindowManager( 1102): No window to dispatch pointer action 1
W/WindowManager( 1102): No window to dispatch pointer action 0
W/WindowManager( 1102): No window to dispatch pointer action 1
W/WindowManager( 1102): No window to dispatch pointer action 0
W/WindowManager( 1102): No window to dispatch pointer action 1
W/WindowManager( 1102): No window to dispatch pointer action 0
W/WindowManager( 1102): No window to dispatch pointer action 1
W/ActivityManager( 1102): Force finishing activity
org.opencv.samples.tutorial2/.Sample2NativeCamera
I/Process ( 1102): Sending signal. PID: 5820 SIG: 9
I/ActivityManager( 1102): Killing org.opencv.samples.tutorial2
(pid=5820): user's request
D/CameraHal( 1013): stopPreview
D/CameraHal( 1013): CameraHal release
I/HPAndroidHAL( 1013): APILOG: ExitHPLibraries
I/ActivityManager( 1102): Process org.opencv.samples.tutorial2 (pid
5820) has died.
I/HPAndroidHAL( 1013): APILOG: state machine shutting down...
I/HPAndroidHAL( 1013): APILOG: components shutting down...
I/HPAndroidHAL( 1013): APILOG: all components uninitialized.
I/WindowManager( 1102): WIN DEATH: Window{449fc310
org.opencv.samples.tutorial2/
org.opencv.samples.tutorial2.Sample2NativeCamera paused=true}
I/WindowManager( 1102): WIN DEATH: Window{44a26b30 SurfaceView
paused=false}
I/WindowManager( 1102): Setting rotation to 0, animFlags=1
I/ActivityManager( 1102): Config changed: { scale=1.0 imsi=310/4
loc=en_US touch=3 keys=2/1/2 nav=2/2 orien=1 layout=34 uiMode=17
seq=123}
I/HPAndroidHAL( 1013): APILOG: all components destroyed.
I/HPAndroidHAL( 1013): APILOG: library shutdown complete.
D/CameraHal( 1013): CameraHal destructor
D/CameraHal( 1013): CameraHal release
D/CameraHal( 1013): CameraSettings destructor
W/InputManagerService( 1102): Window already focused, ignoring focus
gain of: com.android.internal.view.IInputMethodClient$Stub
$Proxy@44a8f728
D/dalvikvm( 1102): GC_EXPLICIT freed 2168 objects / 154648 bytes in
124ms
D/dalvikvm( 5044): GC_EXPLICIT freed 188 objects / 8384 bytes in 65ms


What do you think is wrong
Let me know if you require any more details

Akshay

Andrey Kamaev

unread,
Jul 20, 2011, 3:53:58 PM7/20/11
to android-opencv
It seems that your camera returns image in yuv422i-yuyv format which
is not default for Android platform. Currently OpenCV supports only
yuv420i raw format.

Try to add following line
params.setPreviewFormat(ImageFormat.NV21);

before the line
mCamera.setParameters(params);

in SampleViewBase.java

It might fix samples with Android camera (tutorial-0-androidcamera and
tutorial-1-addopencv).
Please post a note if this fix works for you.

But this parameter for OpenCV native camera is not accessible. To work
with native camera you need to retrieve raw frame instead of rgba or
gray-scale and make format conversion yourself.

/Andrey
> W/KeyCharacterMap( 1185): Error loading keycharmap file '/system/usr/ ...
>
> read more »

maxi

unread,
Jul 20, 2011, 4:16:25 PM7/20/11
to android-opencv
Hmm, I made the changes but it didnt work
Is there any other way to change the video format?

this is the logcat

D/AndroidRuntime( 7028):
D/AndroidRuntime( 7028): >>>>>>>>>>>>>> AndroidRuntime START
<<<<<<<<<<<<<<
D/AndroidRuntime( 7028): CheckJNI is OFF
D/dalvikvm( 7028): creating instr width table
D/AndroidRuntime( 7028): --- registering native functions ---
D/dalvikvm( 6802): GC_EXPLICIT freed 219 objects / 14168 bytes in 38ms
D/PackageParser( 6351): Scanning package: /data/app/vmdl74923.tmp
I/PackageManager( 6351): Removing non-system
package:org.opencv.samples.tutorial1
I/Process ( 6351): Sending signal. PID: 6968 SIG: 9
I/ActivityManager( 6351): Force stopping package
org.opencv.samples.tutorial1 uid=10088
D/PackageManager( 6351): Scanning package org.opencv.samples.tutorial1
I/PackageManager( 6351): /data/app/org.opencv.samples.tutorial1-1.apk
changed; unpacking
I/PackageManager( 6351): Package org.opencv.samples.tutorial1 codePath
changed from /data/app/org.opencv.samples.tutorial1-2.apk to /data/app/
org.opencv.samples.tutorial1-1.apk; Retaining data and using new
D/PackageManager( 6351): Caching shared lib lib/armeabi-v7a/
libnative_camera_r2.3.3.so
D/PackageManager( 6351): Caching shared lib lib/armeabi-v7a/
libnative_camera_r2.2.2.so
D/PackageManager( 6351): Caching shared lib lib/armeabi-v7a/
libopencv_java.so
D/installd( 1015): DexInv: --- BEGIN '/data/app/
org.opencv.samples.tutorial1-1.apk' ---
D/dalvikvm( 7036): creating instr width table
D/dalvikvm( 7036): DexOpt: load 17ms, verify 108ms, opt 4ms
D/installd( 1015): DexInv: --- END '/data/app/
org.opencv.samples.tutorial1-1.apk' (success) ---
D/PackageManager( 6351): Activities:
org.opencv.samples.tutorial1.Sample1Java
I/ActivityManager( 6351): Force stopping package
org.opencv.samples.tutorial1 uid=10088
W/PackageManager( 6351): Code path for pkg :
org.opencv.samples.tutorial1 changing from /data/app/
org.opencv.samples.tutorial1-2.apk to /data/app/
org.opencv.samples.tutorial1-1.apk
W/PackageManager( 6351): Resource path for pkg :
org.opencv.samples.tutorial1 changing from /data/app/
org.opencv.samples.tutorial1-2.apk to /data/app/
org.opencv.samples.tutorial1-1.apk
I/installd( 1015): move /data/dalvik-cache/
data@app@org.opencv.sample...@classes.dex -> /data/
dalvik-cache/data@app@org.opencv.sample...@classes.dex
D/PackageManager( 6351): New package installed in /data/app/
org.opencv.samples.tutorial1-1.apk
I/ActivityManager( 6351): Force stopping package
org.opencv.samples.tutorial1 uid=10088
D/dalvikvm( 6351): GC_EXPLICIT freed 15841 objects / 917896 bytes in
125ms
D/VoiceDialerReceiver( 6810): onReceive Intent
{ act=android.intent.action.PACKAGE_REMOVED
dat=package:org.opencv.samples.tutorial1 flg=0x10000000
cmp=com.android.voicedialer/.VoiceDialerReceiver (has extras) }
V/RecognizerEngine( 6810): deleteCachedGrammarFiles /data/data/
com.android.voicedialer/files/openentries.txt
D/VoiceDialerReceiver( 6810): onReceive Intent
{ act=android.intent.action.PACKAGE_ADDED
dat=package:org.opencv.samples.tutorial1 flg=0x10000000
cmp=com.android.voicedialer/.VoiceDialerReceiver (has extras) }
V/RecognizerEngine( 6810): deleteCachedGrammarFiles /data/data/
com.android.voicedialer/files/openentries.txt
D/dalvikvm( 6351): GC_EXPLICIT freed 7016 objects / 383888 bytes in
113ms
D/vending ( 6496): [24] LocalAssetCache.updateOnePackage(): No local
info for org.opencv.samples.tutorial1
I/installd( 1015): unlink /data/dalvik-cache/
data@app@org.opencv.sample...@classes.dex
D/AndroidRuntime( 7028): Shutting down VM
D/dalvikvm( 7028): Debugger has detached; object registry had 1
entries
I/AndroidRuntime( 7028): NOTE: attach of thread 'Binder Thread #3'
failed
D/vending ( 6496): [25] LocalAssetCache.updateOnePackage(): No local
info for org.opencv.samples.tutorial1
D/AndroidRuntime( 7044):
D/AndroidRuntime( 7044): >>>>>>>>>>>>>> AndroidRuntime START
<<<<<<<<<<<<<<
D/AndroidRuntime( 7044): CheckJNI is OFF
D/dalvikvm( 7044): creating instr width table
D/AndroidRuntime( 7044): --- registering native functions ---
I/ActivityManager( 6351): Starting activity: Intent
{ act=android.intent.action.MAIN
cat=[android.intent.category.LAUNCHER] flg=0x10000000
cmp=org.opencv.samples.tutorial1/.Sample1Java }
D/AndroidRuntime( 7044): Shutting down VM
D/jdwp ( 7044): Got wake-up signal, bailing out of select
D/dalvikvm( 7044): Debugger has detached; object registry had 1
entries
I/ActivityManager( 6351): Start proc org.opencv.samples.tutorial1 for
activity org.opencv.samples.tutorial1/.Sample1Java: pid=7052 uid=10088
gids={1006}
I/AndroidRuntime( 7044): NOTE: attach of thread 'Binder Thread #3'
failed
I/WindowManager( 6351): Setting rotation to 1, animFlags=1
I/ActivityManager( 6351): Config changed: { scale=1.0 imsi=310/4
loc=en_US touch=3 keys=2/1/2 nav=2/2 orien=2 layout=34 uiMode=17
seq=8}
D/dalvikvm( 6779): GC_FOR_MALLOC freed 11535 objects / 568744 bytes in
65ms
I/Sample::Activity( 7052): Instantiated new class
org.opencv.samples.tutorial1.Sample1Java
I/Sample::Activity( 7052): onCreate
I/Sample::SurfaceView( 7052): Instantiated new class
org.opencv.samples.tutorial1.Sample1View
I/ActivityManager( 6351): Displayed activity
org.opencv.samples.tutorial1/.Sample1Java: 636 ms (total 636 ms)
I/Sample::SurfaceView( 7052): surfaceCreated
D/CameraHal( 6338): CameraSettings constructor
D/CameraHal( 6338): CameraHal constructor
D/CameraHal( 6338): Model ID: Droid
D/CameraHal( 6338): Software ID 2.2.2
I/HPAndroidHAL( 6338): Version 4719:5353. SholesMR2_RC9 Build Time:
2010-06-14 15:15:45.
D/CameraHal( 6338): 20 default parameters
D/CameraHal( 6338): Immediate Zoom/1:0. Current zoom level/1:0
D/CameraHal( 6338): CameraHal constructor exited ok
I/Sample::SurfaceView( 7052): surfaceCreated
I/Sample::SurfaceView( 7052): Starting processing thread
D/CameraHal( 6338): Extract changes completed, 0 total changes
W/CameraHal( 6338): No overlay set before start preview
D/dalvikvm( 7052): Trying to load lib /data/data/
org.opencv.samples.tutorial1/lib/libopencv_java.so 0x447130a8
D/dalvikvm( 7052): Added shared lib /data/data/
org.opencv.samples.tutorial1/lib/libopencv_java.so 0x447130a8
D/dalvikvm( 7052): No JNI_OnLoad found in /data/data/
org.opencv.samples.tutorial1/lib/libopencv_java.so 0x447130a8,
skipping init
D/dalvikvm( 6351): GC_EXPLICIT freed 2960 objects / 145616 bytes in
118ms
D/WifiService( 6351): ACTION_BATTERY_CHANGED pluggedType: 2
E/Tethering( 6351): active iface (usb0) reported as added, ignoring
D/dalvikvm( 6426): GC_EXPLICIT freed 4519 objects / 273824 bytes in
74ms
D/dalvikvm( 6810): GC_EXPLICIT freed 327 objects / 18520 bytes in 64ms
W/KeyCharacterMap( 7052): Can't open keycharmap file
W/KeyCharacterMap( 7052): Error loading keycharmap file '/system/usr/
keychars/qtouch-touchscreen.kcm.bin'. hw.keyboards.
65538.devname='qtouch-touchscreen'
W/KeyCharacterMap( 7052): Using default keymap: /system/usr/keychars/
qwerty.kcm.bin
I/WindowManager( 6351): Setting rotation to 0, animFlags=1
I/ActivityManager( 6351): Config changed: { scale=1.0 imsi=310/4
loc=en_US touch=3 keys=2/1/2 nav=2/2 orien=1 layout=34 uiMode=17
seq=9}
I/Sample::SurfaceView( 7052): surfaceDestroyed
D/CameraHal( 6338): stopPreview
D/CameraHal( 6338): stopPreview
D/CameraHal( 6338): CameraHal release
I/HPAndroidHAL( 6338): APILOG: ExitHPLibraries
I/HPAndroidHAL( 6338): APILOG: state machine shutting down...
I/HPAndroidHAL( 6338): APILOG: components shutting down...
I/HPAndroidHAL( 6338): APILOG: all components uninitialized.
I/HPAndroidHAL( 6338): APILOG: all components destroyed.
I/HPAndroidHAL( 6338): APILOG: library shutdown complete.
D/CameraHal( 6338): CameraHal destructor
D/CameraHal( 6338): CameraHal release
D/CameraHal( 6338): CameraSettings destructor
D/dalvikvm( 6351): GC_EXPLICIT freed 2850 objects / 143608 bytes in
120ms
D/dalvikvm( 6817): GC_EXPLICIT freed 162 objects / 7272 bytes in 58ms
D/dalvikvm( 6825): GC_EXPLICIT freed 243 objects / 13392 bytes in 60ms






I also tried tutorial 2 advance, it directly throws an error

logcat :
D/dalvikvm( 5391): GC_EXPLICIT freed 469 objects / 24064 bytes in 58ms
D/AndroidRuntime( 6215):
D/AndroidRuntime( 6215): >>>>>>>>>>>>>> AndroidRuntime START
<<<<<<<<<<<<<<
D/AndroidRuntime( 6215): CheckJNI is OFF
D/dalvikvm( 6215): creating instr width table
D/AndroidRuntime( 6215): --- registering native functions ---
D/AndroidRuntime( 6215): Shutting down VM
D/dalvikvm( 6215): Debugger has detached; object registry had 1
entries
I/AndroidRuntime( 6215): NOTE: attach of thread 'Binder Thread #3'
failed
D/AndroidRuntime( 6224):
D/AndroidRuntime( 6224): >>>>>>>>>>>>>> AndroidRuntime START
<<<<<<<<<<<<<<
D/AndroidRuntime( 6224): CheckJNI is OFF
D/dalvikvm( 6224): creating instr width table
D/AndroidRuntime( 6224): --- registering native functions ---
I/ActivityManager( 1102): Starting activity: Intent
{ act=android.intent.action.MAIN
cat=[android.intent.category.LAUNCHER] flg=0x10000000
cmp=org.opencv.samples.tutorial4/.Sample4Mixed }
I/ActivityManager( 1102): Start proc org.opencv.samples.tutorial4 for
activity org.opencv.samples.tutorial4/.Sample4Mixed: pid=6231
uid=10095 gids={1006}
D/AndroidRuntime( 6224): Shutting down VM
D/dalvikvm( 6224): Debugger has detached; object registry had 1
entries
I/AndroidRuntime( 6224): NOTE: attach of thread 'Binder Thread #3'
failed
I/WindowManager( 1102): Setting rotation to 1, animFlags=1
I/ActivityManager( 1102): Config changed: { scale=1.0 imsi=310/4
loc=en_US touch=3 keys=2/1/2 nav=2/2 orien=2 layout=34 uiMode=17
seq=134}
D/dalvikvm( 1102): GC_EXTERNAL_ALLOC freed 839 objects / 42184 bytes
in 126ms
I/Sample::Activity( 6231): Instantiated new class
org.opencv.samples.tutorial4.Sample4Mixed
I/Sample::Activity( 6231): onCreate
W/dalvikvm( 6231): Exception Ljava/lang/UnsatisfiedLinkError; thrown
during Lorg/opencv/samples/tutorial4/Sample4View;.<clinit>
D/AndroidRuntime( 6231): Shutting down VM
W/dalvikvm( 6231): threadid=1: thread exiting with uncaught exception
(group=0x4001d7e0)
E/AndroidRuntime( 6231): FATAL EXCEPTION: main
E/AndroidRuntime( 6231): java.lang.ExceptionInInitializerError
E/AndroidRuntime( 6231): at
org.opencv.samples.tutorial4.Sample4Mixed.onCreate(Sample4Mixed.java:
35)
E/AndroidRuntime( 6231): at
android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:
1047)
E/AndroidRuntime( 6231): at
android.app.ActivityThread.performLaunchActivity(ActivityThread.java:
2627)
E/AndroidRuntime( 6231): at
android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:
2679)
E/AndroidRuntime( 6231): at android.app.ActivityThread.access
$2300(ActivityThread.java:125)
E/AndroidRuntime( 6231): at android.app.ActivityThread
$H.handleMessage(ActivityThread.java:2033)
E/AndroidRuntime( 6231): at
android.os.Handler.dispatchMessage(Handler.java:99)
E/AndroidRuntime( 6231): at android.os.Looper.loop(Looper.java:123)
E/AndroidRuntime( 6231): at
android.app.ActivityThread.main(ActivityThread.java:4627)
E/AndroidRuntime( 6231): at
java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime( 6231): at
java.lang.reflect.Method.invoke(Method.java:521)
E/AndroidRuntime( 6231): at com.android.internal.os.ZygoteInit
$MethodAndArgsCaller.run(ZygoteInit.java:858)
E/AndroidRuntime( 6231): at
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
E/AndroidRuntime( 6231): at dalvik.system.NativeStart.main(Native
Method)
E/AndroidRuntime( 6231): Caused by: java.lang.UnsatisfiedLinkError:
Library mixed_sample not found
E/AndroidRuntime( 6231): at
java.lang.Runtime.loadLibrary(Runtime.java:461)
E/AndroidRuntime( 6231): at java.lang.System.loadLibrary(System.java:
557)
E/AndroidRuntime( 6231): at
org.opencv.samples.tutorial4.Sample4View.<clinit>(Sample4View.java:91)
E/AndroidRuntime( 6231): ... 14 more
W/ActivityManager( 1102): Force finishing activity
org.opencv.samples.tutorial4/.Sample4Mixed
I/WindowManager( 1102): Setting rotation to 3, animFlags=1
W/ActivityManager( 1102): Activity pause timeout for
HistoryRecord{44a86190 org.opencv.samples.tutorial4/.Sample4Mixed}
D/dalvikvm( 1102): GC_EXPLICIT freed 607 objects / 32992 bytes in
124ms
I/WindowManager( 1102): Setting rotation to 0, animFlags=1
I/ActivityManager( 1102): Config changed: { scale=1.0 imsi=310/4
loc=en_US touch=3 keys=2/1/2 nav=2/2 orien=1 layout=34 uiMode=17
seq=135}
D/dalvikvm( 1102): GC_EXPLICIT freed 579 objects / 27312 bytes in
121ms
I/Process ( 6231): Sending signal. PID: 6231 SIG: 9
W/InputManagerService( 1102): Window already focused, ignoring focus
gain of: com.android.internal.view.IInputMethodClient$Stub
$Proxy@44aeecb8
I/ActivityManager( 1102): Process org.opencv.samples.tutorial4 (pid
6231) has died.
W/ActivityManager( 1102): Activity destroy timeout for
HistoryRecord{44a86190 org.opencv.samples.tutorial4/.Sample4Mixed}
> ...
>
> read more »

Andrey Kamaev

unread,
Jul 20, 2011, 4:55:27 PM7/20/11
to android-opencv
Probably another constant will be helpful. Try to use
ImageFormat.YV12 and ImageFormat.NV16

Please also check whether gray preview works or not. It may happens
that only RGBA is broken.

If this also fails then custom YUV422 to RGBA converter seems to be
the only option.

/Andrey
> data@a...@org.opencv.samples.tutorial1-1.apk@classes.dex -> /data/
> dalvik-cache/data@a...@org.opencv.samples.tutorial1-1.apk@classes.dex
> D/PackageManager( 6351): New package installed in /data/app/
> org.opencv.samples.tutorial1-1.apk
> I/ActivityManager( 6351): Force stopping package
> org.opencv.samples.tutorial1 uid=10088
> D/dalvikvm( 6351): GC_EXPLICIT freed 15841 objects / 917896 bytes in
> 125ms
> D/VoiceDialerReceiver( 6810): onReceive Intent
> { act=android.intent.action.PACKAGE_REMOVED
> dat=package:org.opencv.samples.tutorial1 flg=0x10000000
> cmp=com.android.voicedialer/.VoiceDialerReceiver (has extras) }
> V/RecognizerEngine( 6810): deleteCachedGrammarFiles /data/data/
> com.android.voicedialer/files/openentries.txt
> D/VoiceDialerReceiver( 6810): onReceive Intent
> { act=android.intent.action.PACKAGE_ADDED
> dat=package:org.opencv.samples.tutorial1 flg=0x10000000
> cmp=com.android.voicedialer/.VoiceDialerReceiver (has extras) }
> V/RecognizerEngine( 6810): deleteCachedGrammarFiles /data/data/
> com.android.voicedialer/files/openentries.txt
> D/dalvikvm( 6351): GC_EXPLICIT freed 7016 objects / 383888 bytes in
> 113ms
> D/vending ( 6496): [24] LocalAssetCache.updateOnePackage(): No local
> info for org.opencv.samples.tutorial1
> I/installd( 1015): unlink /data/dalvik-cache/
> data@a...@org.opencv.samples.tutorial1-2.apk@classes.dex
> W/dalvikvm( 6231): Exception ...
>
> read more »

Andrey Kamaev

unread,
Jul 21, 2011, 6:03:28 AM7/21/11
to android-opencv
Hi Akshay,

The bug in camera initialization was found.
See https://code.ros.org/trac/opencv/ticket/1244

To fix Java camera samples you need to add the following lines
try {
mCamera.setPreviewDisplay(null);
} catch (IOException e) {
Log.e(TAG, "mCamera.setPreviewDisplay fails: " + e);
}

before the line
mCamera.startPreview();

in SampleViewBase.java.

Fix for native camera probably will be included into beta2 release.

/Andrey
> ...
>
> read more »

maxi

unread,
Jul 22, 2011, 12:27:35 PM7/22/11
to android-opencv
Hi Andrey,

I tried the code snippet below, Does not solve the problem
Nor does the exception get logged in adb logcat

I tried changing the formats, YUY2 and N21 run without any camera
display
the other formats cause an exception on launching

Akshay

On Jul 21, 6:03 am, Andrey Kamaev <andrey.kam...@itseez.com> wrote:
> Hi Akshay,
>
> The bug in camera initialization was found.
> Seehttps://code.ros.org/trac/opencv/ticket/1244

maxi

unread,
Jul 22, 2011, 4:31:32 PM7/22/11
to android-opencv
Hi Andrey

I added this line
mHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);

and insted of passing null i pass the holder in setPreviewDisplay

setPreviewDisplay(_holder);

It works for about 2-3 s before terminating with an error
I can provide the logcat if you want

Akshay
> ...
>
> read more »

Andrey Kamaev

unread,
Jul 24, 2011, 4:20:44 PM7/24/11
to android-opencv
Hi,

It's no good that previous fix does not work for you. After that fix
samples work on all Android 2.2.2 devices we have access to.
Please provide logcat output, it might be helpful.

Regarding your problem:
1) Camera is successfully opened and initialized, but doesn't start
previewing.
2) Image format returned by your camera is yuv420sp and it is the
expected format.
3) The code
mHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
setPreviewDisplay(_holder);
puts camera to the 'overlay' mode. It is standard technique to
directly connect camera and surface. This mode is very performant
because it works without any involvement of JVM. But it has it's own
drawbacks that makes it unusable for many of OpenCV demos. The corner
case is that we want to modify image before showing it. So we have
implemented native camera wrapper which gives us the same speed as
overlay but allows to modify the image before visualization.

The only idea that I currently have about crash in overlay mode is a
PreviewCallback timeout. Please try to set camera resolution to the
lowest possible (176x144) value. Will it terminate in this case?

/Andrey
> ...
>
> read more »

maxi

unread,
Jul 25, 2011, 2:37:20 PM7/25/11
to android-opencv
Andrey,
This is the logcat after applying the fix mentioned
I am unable to see the camera preview

try {
mCamera.setPreviewDisplay(null);
} catch (IOException e) {

Log.e(TAG, "mCamera.setPreviewDisplay fails: " + e);
}

D/rdsutil (15308): rds_file_close( 0 ) = 0
D/AndroidRuntime(15727):
D/AndroidRuntime(15727): >>>>>>>>>>>>>> AndroidRuntime START
<<<<<<<<<<<<<<
D/AndroidRuntime(15727): CheckJNI is OFF
D/dalvikvm(15727): creating instr width table
D/AndroidRuntime(15727): --- registering native functions ---
I/ActivityManager(15308): Start proc com.android.defcontainer for
service com.android.defcontainer/.DefaultContainerService: pid=15734
uid=10055 gids={1015, 2001}
W/ActivityManager(15308): Unable to start service Intent
{ act=com.motorola.motosync.service.intent.action.CHECK_PING flg=0x4
cmp=com.motorola.motosync/.service.EasService (has extras) }: not
found
D/dalvikvm(15298): GC_EXPLICIT freed 301 objects / 11376 bytes in
156ms
D/dalvikvm(15734): GC_EXPLICIT freed 866 objects / 58840 bytes in 90ms
D/dalvikvm(15298): GC_EXPLICIT freed 57 objects / 2560 bytes in 72ms
D/dalvikvm(15298): GC_EXPLICIT freed 2 objects / 48 bytes in 40ms
I/ActivityManager(15308): No longer want com.motorola.calendar (pid
15489): hidden #16
D/PackageParser(15308): Scanning package: /data/app/vmdl65769.tmp
I/PackageManager(15308): Removing non-system
package:org.opencv.samples.tutorial0
I/ActivityManager(15308): Force stopping package
org.opencv.samples.tutorial0 uid=10087
D/PackageManager(15308): Scanning package org.opencv.samples.tutorial0
I/PackageManager(15308): /data/app/org.opencv.samples.tutorial0-2.apk
changed; unpacking
I/PackageManager(15308): Package org.opencv.samples.tutorial0 codePath
changed from /data/app/org.opencv.samples.tutorial0-1.apk to /data/app/
org.opencv.samples.tutorial0-2.apk; Retaining data and using new
D/installd( 1015): DexInv: --- BEGIN '/data/app/
org.opencv.samples.tutorial0-2.apk' ---
D/dalvikvm(15741): creating instr width table
D/dalvikvm(15741): DexOpt: load 12ms, verify 9ms, opt 0ms
D/installd( 1015): DexInv: --- END '/data/app/
org.opencv.samples.tutorial0-2.apk' (success) ---
I/ActivityManager(15308): Force stopping package
org.opencv.samples.tutorial0 uid=10087
D/PackageManager(15308): Activities:
org.opencv.samples.tutorial0.Sample0Base
W/PackageManager(15308): Code path for pkg :
org.opencv.samples.tutorial0 changing from /data/app/
org.opencv.samples.tutorial0-1.apk to /data/app/
org.opencv.samples.tutorial0-2.apk
W/PackageManager(15308): Resource path for pkg :
org.opencv.samples.tutorial0 changing from /data/app/
org.opencv.samples.tutorial0-1.apk to /data/app/
org.opencv.samples.tutorial0-2.apk
I/installd( 1015): move /data/dalvik-cache/
data@app@org.opencv.sample...@classes.dex -> /data/
dalvik-cache/data@app@org.opencv.sample...@classes.dex
D/PackageManager(15308): New package installed in /data/app/
org.opencv.samples.tutorial0-2.apk
I/ActivityManager(15308): Force stopping package
org.opencv.samples.tutorial0 uid=10087
D/dalvikvm(15402): GC_EXPLICIT freed 224 objects / 9880 bytes in 55ms
D/dalvikvm(15698): GC_EXPLICIT freed 8664 objects / 477296 bytes in
128ms
I/ActivityManager(15308): Start proc com.android.voicedialer for
broadcast com.android.voicedialer/.VoiceDialerReceiver: pid=15742
uid=10007 gids={3002}
D/VoiceDialerReceiver(15742): onReceive Intent
{ act=android.intent.action.PACKAGE_REMOVED
dat=package:org.opencv.samples.tutorial0 flg=0x10000000
cmp=com.android.voicedialer/.VoiceDialerReceiver (has extras) }
V/RecognizerEngine(15742): deleteCachedGrammarFiles /data/data/
com.android.voicedialer/files/openentries.txt
I/ActivityManager(15308): No longer want com.android.mms (pid 15594):
hidden #16
D/VoiceDialerReceiver(15742): onReceive Intent
{ act=android.intent.action.PACKAGE_ADDED
dat=package:org.opencv.samples.tutorial0 flg=0x10000000
cmp=com.android.voicedialer/.VoiceDialerReceiver (has extras) }
V/RecognizerEngine(15742): deleteCachedGrammarFiles /data/data/
com.android.voicedialer/files/openentries.txt
I/ActivityManager(15308): Start proc com.svox.pico for broadcast
com.svox.pico/.VoiceDataInstallerReceiver: pid=15749 uid=10022 gids={}
D/dalvikvm(15308): GC_EXPLICIT freed 19822 objects / 1154928 bytes in
124ms
I/ActivityThread(15749): Publishing provider
com.svox.pico.providers.SettingsProvider:
com.svox.pico.providers.SettingsProvider
I/ActivityManager(15308): No longer want com.restock.serialmagic.gears
(pid 15636): hidden #16
D/vending (15618): [15] LocalAssetCache.updateOnePackage(): No local
info for org.opencv.samples.tutorial0
I/ActivityManager(15308): Start proc
com.google.android.apps.maps:FriendService for broadcast
com.google.android.apps.maps/
com.google.googlenav.friend.android.ServiceReceiver: pid=15757
uid=10025 gids={3003, 1015}
I/installd( 1015): unlink /data/dalvik-cache/
data@app@org.opencv.sample...@classes.dex
I/ActivityManager(15308): Start proc com.layar for broadcast
com.layar/.OnUpgradeReceiver: pid=15763 uid=10037 gids={3003, 1006,
1015}
I/ActivityManager(15308): No longer want com.android.email (pid
15607): hidden #16
D/AndroidRuntime(15727): Shutting down VM
D/dalvikvm(15727): Debugger has detached; object registry had 1
entries
I/AndroidRuntime(15727): NOTE: attach of thread 'Binder Thread #3'
failed
I/ActivityThread(15763): Publishing provider
com.layar.provider.layarprovider: com.layar.provider.LayarProvider
D/AndroidRuntime(15774):
D/AndroidRuntime(15774): >>>>>>>>>>>>>> AndroidRuntime START
<<<<<<<<<<<<<<
D/AndroidRuntime(15774): CheckJNI is OFF
D/dalvikvm(15774): creating instr width table
D/dalvikvm(15763): GC_FOR_MALLOC freed 2517 objects / 234040 bytes in
97ms
I/ActivityManager(15308): No longer want com.pandora.android (pid
15628): hidden #16
D/AndroidRuntime(15774): --- registering native functions ---
I/ActivityManager(15308): Starting activity: Intent
{ act=android.intent.action.MAIN
cat=[android.intent.category.LAUNCHER] flg=0x10000000
cmp=org.opencv.samples.tutorial0/.Sample0Base }
D/vending (15618): [17] LocalAssetCache.updateOnePackage(): No local
info for org.opencv.samples.tutorial0
D/AndroidRuntime(15774): Shutting down VM
D/jdwp (15774): Got wake-up signal, bailing out of select
D/dalvikvm(15774): Debugger has detached; object registry had 1
entries
I/ActivityManager(15308): Start proc org.opencv.samples.tutorial0 for
activity org.opencv.samples.tutorial0/.Sample0Base: pid=15788
uid=10087 gids={1006}
I/AndroidRuntime(15774): NOTE: attach of thread 'Binder Thread #3'
failed
I/WindowManager(15308): Setting rotation to 1, animFlags=1
I/ActivityManager(15308): Config changed: { scale=1.0 imsi=310/4
loc=en_US touch=3 keys=2/1/2 nav=2/2 orien=2 layout=34 uiMode=17
seq=4}
I/Sample::Activity(15788): Instantiated new class
org.opencv.samples.tutorial0.Sample0Base
I/Sample::Activity(15788): onCreate
I/Sample::SurfaceView(15788): Instantiated new class
org.opencv.samples.tutorial0.Sample0View
D/dalvikvm(15308): GC_EXTERNAL_ALLOC freed 6514 objects / 329568 bytes
in 103ms
I/ActivityManager(15308): Displayed activity
org.opencv.samples.tutorial0/.Sample0Base: 466 ms (total 55771 ms)
I/Sample::SurfaceView(15788): surfaceCreated
D/CameraHal(15297): CameraSettings constructor
D/CameraHal(15297): CameraHal constructor
D/CameraHal(15297): Model ID: Droid
D/CameraHal(15297): Software ID 2.2.2
I/HPAndroidHAL(15297): Version 4719:5353. SholesMR2_RC9 Build Time:
2010-06-14 15:15:45.
D/CameraHal(15297): 20 default parameters
D/CameraHal(15297): Immediate Zoom/1:0. Current zoom level/1:0
D/CameraHal(15297): CameraHal constructor exited ok
I/Sample::SurfaceView(15788): surfaceCreated
I/Sample::SurfaceView(15788): Starting processing thread
D/CameraHal(15297): Extract changes completed, 0 total changes
D/Camera (15788): app passed NULL surface
W/CameraHal(15297): No overlay set before start preview
D/dalvikvm(15308): GC_EXPLICIT freed 783 objects / 40376 bytes in
109ms
D/dalvikvm(15402): GC_EXPLICIT freed 2950 objects / 153808 bytes in
55ms
D/dalvikvm(15499): GC_EXPLICIT freed 4129 objects / 299600 bytes in
85ms
W/KeyCharacterMap(15788): Can't open keycharmap file
W/KeyCharacterMap(15788): Error loading keycharmap file '/system/usr/
keychars/qtouch-touchscreen.kcm.bin'. hw.keyboards.
65538.devname='qtouch-touchscreen'
W/KeyCharacterMap(15788): Using default keymap: /system/usr/keychars/
qwerty.kcm.bin
I/WindowManager(15308): Setting rotation to 0, animFlags=1
I/ActivityManager(15308): Config changed: { scale=1.0 imsi=310/4
loc=en_US touch=3 keys=2/1/2 nav=2/2 orien=1 layout=34 uiMode=17
seq=5}
I/Sample::SurfaceView(15788): surfaceDestroyed
I/ActivityManager(15308): No longer want com.android.alarmclock (pid
15585): hidden #16
D/CameraHal(15297): stopPreview
D/CameraHal(15297): stopPreview
D/CameraHal(15297): CameraHal release
I/HPAndroidHAL(15297): APILOG: ExitHPLibraries
I/HPAndroidHAL(15297): APILOG: state machine shutting down...
I/HPAndroidHAL(15297): APILOG: components shutting down...
I/HPAndroidHAL(15297): APILOG: all components uninitialized.
I/HPAndroidHAL(15297): APILOG: all components destroyed.
I/HPAndroidHAL(15297): APILOG: library shutdown complete.
D/CameraHal(15297): CameraHal destructor
D/CameraHal(15297): CameraHal release
D/CameraHal(15297): CameraSettings destructor
W/IInputConnectionWrapper(15788): showStatusIcon on inactive
InputConnection
D/dalvikvm(15308): GC_EXPLICIT freed 1585 objects / 91808 bytes in
113ms


Now the logcat for the following bit of code
mHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);

try {
mCamera.setPreviewDisplay(_holder);
} catch (IOException e) {
Log.e(TAG, "mCamera.setPreviewDisplay fails: " + e);
}


mCamera.startPreview();
}


The camera preview does start but the application quits after a few
seconds


D/AndroidRuntime(15877):
D/AndroidRuntime(15877): >>>>>>>>>>>>>> AndroidRuntime START
<<<<<<<<<<<<<<
D/AndroidRuntime(15877): CheckJNI is OFF
D/dalvikvm(15877): creating instr width table
D/AndroidRuntime(15877): --- registering native functions ---
D/dalvikvm(15734): GC_EXPLICIT freed 345 objects / 21008 bytes in 39ms
D/PackageParser(15308): Scanning package: /data/app/vmdl65770.tmp
I/PackageManager(15308): Removing non-system
package:org.opencv.samples.tutorial0
I/ActivityManager(15308): Force stopping package
org.opencv.samples.tutorial0 uid=10087
I/Process (15308): Sending signal. PID: 15788 SIG: 9
D/PackageManager(15308): Scanning package org.opencv.samples.tutorial0
I/PackageManager(15308): /data/app/org.opencv.samples.tutorial0-1.apk
changed; unpacking
I/PackageManager(15308): Package org.opencv.samples.tutorial0 codePath
changed from /data/app/org.opencv.samples.tutorial0-2.apk to /data/app/
org.opencv.samples.tutorial0-1.apk; Retaining data and using new
D/installd( 1015): DexInv: --- BEGIN '/data/app/
org.opencv.samples.tutorial0-1.apk' ---
D/dalvikvm(15886): creating instr width table
D/dalvikvm(15886): DexOpt: load 12ms, verify 10ms, opt 0ms
D/installd( 1015): DexInv: --- END '/data/app/
org.opencv.samples.tutorial0-1.apk' (success) ---
I/ActivityManager(15308): Force stopping package
org.opencv.samples.tutorial0 uid=10087
D/PackageManager(15308): Activities:
org.opencv.samples.tutorial0.Sample0Base
W/PackageManager(15308): Code path for pkg :
org.opencv.samples.tutorial0 changing from /data/app/
org.opencv.samples.tutorial0-2.apk to /data/app/
org.opencv.samples.tutorial0-1.apk
W/PackageManager(15308): Resource path for pkg :
org.opencv.samples.tutorial0 changing from /data/app/
org.opencv.samples.tutorial0-2.apk to /data/app/
org.opencv.samples.tutorial0-1.apk
I/installd( 1015): move /data/dalvik-cache/
data@app@org.opencv.sample...@classes.dex -> /data/
dalvik-cache/data@app@org.opencv.sample...@classes.dex
D/PackageManager(15308): New package installed in /data/app/
org.opencv.samples.tutorial0-1.apk
I/ActivityManager(15308): Force stopping package
org.opencv.samples.tutorial0 uid=10087
D/dalvikvm(15308): GC_EXPLICIT freed 14030 objects / 783528 bytes in
127ms
D/VoiceDialerReceiver(15742): onReceive Intent
{ act=android.intent.action.PACKAGE_REMOVED
dat=package:org.opencv.samples.tutorial0 flg=0x10000000
cmp=com.android.voicedialer/.VoiceDialerReceiver (has extras) }
V/RecognizerEngine(15742): deleteCachedGrammarFiles /data/data/
com.android.voicedialer/files/openentries.txt
D/VoiceDialerReceiver(15742): onReceive Intent
{ act=android.intent.action.PACKAGE_ADDED
dat=package:org.opencv.samples.tutorial0 flg=0x10000000
cmp=com.android.voicedialer/.VoiceDialerReceiver (has extras) }
V/RecognizerEngine(15742): deleteCachedGrammarFiles /data/data/
com.android.voicedialer/files/openentries.txt
D/dalvikvm(15308): GC_EXPLICIT freed 5472 objects / 305768 bytes in
120ms
D/dalvikvm(15763): GC_FOR_MALLOC freed 3375 objects / 449592 bytes in
50ms
D/vending (15618): [19] LocalAssetCache.updateOnePackage(): No local
info for org.opencv.samples.tutorial0
I/installd( 1015): unlink /data/dalvik-cache/
data@app@org.opencv.sample...@classes.dex
D/AndroidRuntime(15877): Shutting down VM
D/jdwp (15877): Got wake-up signal, bailing out of select
D/dalvikvm(15877): Debugger has detached; object registry had 1
entries
D/vending (15618): [20] LocalAssetCache.updateOnePackage(): No local
info for org.opencv.samples.tutorial0
D/AndroidRuntime(15894):
D/AndroidRuntime(15894): >>>>>>>>>>>>>> AndroidRuntime START
<<<<<<<<<<<<<<
D/AndroidRuntime(15894): CheckJNI is OFF
D/dalvikvm(15894): creating instr width table
D/AndroidRuntime(15894): --- registering native functions ---
I/ActivityManager(15308): Starting activity: Intent
{ act=android.intent.action.MAIN
cat=[android.intent.category.LAUNCHER] flg=0x10000000
cmp=org.opencv.samples.tutorial0/.Sample0Base }
D/AndroidRuntime(15894): Shutting down VM
D/dalvikvm(15894): Debugger has detached; object registry had 1
entries
I/ActivityManager(15308): Start proc org.opencv.samples.tutorial0 for
activity org.opencv.samples.tutorial0/.Sample0Base: pid=15902
uid=10087 gids={1006}
I/AndroidRuntime(15894): NOTE: attach of thread 'Binder Thread #3'
failed
I/WindowManager(15308): Setting rotation to 1, animFlags=1
I/ActivityManager(15308): Config changed: { scale=1.0 imsi=310/4
loc=en_US touch=3 keys=2/1/2 nav=2/2 orien=2 layout=34 uiMode=17
seq=6}
I/Sample::Activity(15902): Instantiated new class
org.opencv.samples.tutorial0.Sample0Base
I/Sample::Activity(15902): onCreate
I/Sample::SurfaceView(15902): Instantiated new class
org.opencv.samples.tutorial0.Sample0View
I/ActivityManager(15308): Displayed activity
org.opencv.samples.tutorial0/.Sample0Base: 333 ms (total 333 ms)
I/Sample::SurfaceView(15902): surfaceCreated
D/CameraHal(15297): CameraSettings constructor
D/CameraHal(15297): CameraHal constructor
D/CameraHal(15297): Model ID: Droid
D/CameraHal(15297): Software ID 2.2.2
I/HPAndroidHAL(15297): Version 4719:5353. SholesMR2_RC9 Build Time:
2010-06-14 15:15:45.
D/CameraHal(15297): 20 default parameters
D/CameraHal(15297): Immediate Zoom/1:0. Current zoom level/1:0
D/CameraHal(15297): CameraHal constructor exited ok
I/Sample::SurfaceView(15902): surfaceCreated
I/Sample::SurfaceView(15902): Starting processing thread
D/CameraHal(15297): Extract changes completed, 0 total changes
D/CameraHal(15297): deinitPvOverlay()
D/CameraHal(15297): Trying to set overlay, but overlay is null!
D/TIOverlay(15308): overlay_createOverlay:IN w=640 h=480 format=99
I/Overlay (15308): v4l2_overlay_init:: w=480 h=854
I/Overlay (15308): v4l2_overlay_init:: w=640 h=480
I/Overlay (15308): v4l2_overlay_init:: w=640 h=480
I/Overlay (15308): 8 buffers allocated 4 requested
I/Overlay (15308): buffer cookie is 2
I/TIOverlay(15308): Opened video1/fd=127/obj=003baf20/shm=97/size=4096
D/TIOverlay(15308): overlay_createOverlay: OUT
I/TIOverlay(15308): Position/X0/Y0/W0/H0
I/TIOverlay(15308): Adjusted Position/X0/Y0/W442/H0
I/TIOverlay(15308): Rotation/90
I/Overlay (15308): v4l2_overlay_set_position:: w=480 h=854
I/Overlay (15308): v4l2_overlay_set_position:: w=442 h=854
I/Overlay (15308): dumping driver state:
I/Overlay (15308): output pixfmt:
I/Overlay (15308): w: 640
I/Overlay (15308): h: 480
I/Overlay (15308): color: 7
I/Overlay (15308): YUYV
I/Overlay (15308): v4l2_overlay window:
I/Overlay (15308): window l: 0
I/Overlay (15308): window t: 0
I/Overlay (15308): window w: 442
I/Overlay (15308): window h: 854
I/Overlay (15308): output crop:
I/Overlay (15308): crop l: 0
I/Overlay (15308): crop t: 0
I/Overlay (15308): crop w: 640
I/Overlay (15308): crop h: 480
I/TIOverlay(15308): Postponing Stream Enable/1/0
I/Overlay (15297): query buffer, mem=1 type=2 index=0
I/Overlay (15297): query buffer, mem=1 type=2 index=1
I/Overlay (15297): query buffer, mem=1 type=2 index=2
I/Overlay (15297): query buffer, mem=1 type=2 index=3
I/Overlay (15297): query buffer, mem=1 type=2 index=4
I/Overlay (15297): query buffer, mem=1 type=2 index=5
I/Overlay (15297): query buffer, mem=1 type=2 index=6
I/Overlay (15297): query buffer, mem=1 type=2 index=7
D/CameraHal(15297): deinitPvOverlay()
D/CameraHal(15297): initPvOverlay: size/640x480; format/3;
D/CameraHal(15297): initPvOverlay: alloc 614656 bytes of memory
I/Overlay (15297): query buffer, mem=1 type=2 index=0
I/TIOverlay(15297): Buffer/0/addr=4257e000/len=614400
I/Overlay (15297): query buffer, mem=1 type=2 index=1
I/TIOverlay(15297): Buffer/1/addr=42614000/len=614400
I/Overlay (15297): query buffer, mem=1 type=2 index=2
I/TIOverlay(15297): Buffer/2/addr=426aa000/len=614400
I/Overlay (15297): query buffer, mem=1 type=2 index=3
I/TIOverlay(15297): Buffer/3/addr=42740000/len=614400
I/Overlay (15297): query buffer, mem=1 type=2 index=4
I/TIOverlay(15297): Buffer/4/addr=427d6000/len=614400
I/Overlay (15297): query buffer, mem=1 type=2 index=5
I/TIOverlay(15297): Buffer/5/addr=4286c000/len=614400
I/Overlay (15297): query buffer, mem=1 type=2 index=6
I/TIOverlay(15297): Buffer/6/addr=42902000/len=614400
I/Overlay (15297): query buffer, mem=1 type=2 index=7
I/TIOverlay(15297): Buffer/7/addr=42998000/len=614400
I/TIOverlay(15297): Crop Win/X0/Y0/W640/H480
D/CameraHal(15297): Enabling preview
D/CameraHal(15297): Spawning preview thread
I/TIOverlay(15308): Nothing to do!
D/CameraHal(15297): processZoom/1:0. stopped=1, mZoomMoving=0,
mImmediateZoomMoving=0
D/CameraHal(15297): Stored Zoom Data/0/1:0
D/dalvikvm(15902): GC_FOR_MALLOC freed 1071 objects / 82968 bytes in
75ms
I/dalvikvm-heap(15902): Grow heap (frag case) to 2.995MB for 460816-
byte allocation
D/dalvikvm(15902): GC_FOR_MALLOC freed 53 objects / 2856 bytes in 72ms
D/dalvikvm(15902): GC_FOR_MALLOC freed 0 objects / 0 bytes in 113ms
I/dalvikvm-heap(15902): Grow heap (frag case) to 4.166MB for 1228816-
byte allocation
D/dalvikvm(15902): GC_FOR_MALLOC freed 155 objects / 6936 bytes in
63ms
D/dalvikvm(15902): GC_FOR_MALLOC freed 0 objects / 0 bytes in 75ms
I/dalvikvm-heap(15902): Grow heap (frag case) to 4.598MB for 460816-
byte allocation
D/dalvikvm(15902): GC_FOR_MALLOC freed 32 objects / 1360 bytes in 98ms
D/dalvikvm(15902): GC_FOR_MALLOC freed 4 objects / 128 bytes in 92ms
I/dalvikvm-heap(15902): Grow heap (frag case) to 5.038MB for 460816-
byte allocation
D/dalvikvm(15902): GC_FOR_MALLOC freed 0 objects / 0 bytes in 82ms
D/dalvikvm(15308): GC_EXPLICIT freed 3041 objects / 151576 bytes in
191ms
D/dalvikvm(15902): GC_EXTERNAL_ALLOC freed 6 objects / 264 bytes in
51ms
W/dalvikvm(15902): threadid=8: thread exiting with uncaught exception
(group=0x4001d7e0)
E/AndroidRuntime(15902): FATAL EXCEPTION: Thread-9
E/AndroidRuntime(15902): android.view.SurfaceHolder
$BadSurfaceTypeException: Surface type is SURFACE_TYPE_PUSH_BUFFERS
E/AndroidRuntime(15902): at android.view.SurfaceView
$3.internalLockCanvas(SurfaceView.java:761)
E/AndroidRuntime(15902): at android.view.SurfaceView
$3.lockCanvas(SurfaceView.java:752)
E/AndroidRuntime(15902): at
org.opencv.samples.tutorial0.SampleViewBase.run(SampleViewBase.java:
123)
E/AndroidRuntime(15902): at java.lang.Thread.run(Thread.java:1096)
W/ActivityManager(15308): Force finishing activity
org.opencv.samples.tutorial0/.Sample0Base
I/WindowManager(15308): Setting rotation to 0, animFlags=1
I/ActivityManager(15308): Config changed: { scale=1.0 imsi=310/4
loc=en_US touch=3 keys=2/1/2 nav=2/2 orien=1 layout=34 uiMode=17
seq=7}
I/TIOverlay(15308): Position/X0/Y0/W442/H854
I/TIOverlay(15308): Adjusted Position/X0/Y0/W442/H854
I/TIOverlay(15308): Rotation/0
D/CameraHal(15297): Resetting overlay q'd buffer status to false
D/dalvikvm(15698): GC_FOR_MALLOC freed 11645 objects / 577096 bytes in
82ms
W/GraphicBufferMapper(15308): lock(...) failed -22 (Invalid argument)
E/Surface (15308): error locking src buffer Invalid argument
I/Sample::SurfaceView(15902): surfaceDestroyed
D/dalvikvm(15902): GC_FOR_MALLOC freed 174 objects / 2625864 bytes in
278ms
D/CameraHal(15297): stopPreview
D/CameraHal(15297): stop preview thread
D/CameraHal(15297): stopPreview
D/CameraHal(15297): CameraHal release
D/CameraHal(15297): deinitPvOverlay()
D/TIOverlay(15308): overlay_destroyOverlay:IN dev (0x126678) and
overlay (0x3baf20)
I/TIOverlay(15308): Destroying overlay/fd=127/obj=003baf20
D/TIOverlay(15308): overlay_destroyOverlay:OUT
I/HPAndroidHAL(15297): APILOG: ExitHPLibraries
I/HPAndroidHAL(15297): APILOG: state machine shutting down...
I/HPAndroidHAL(15297): APILOG: components shutting down...
I/HPAndroidHAL(15297): APILOG: all components uninitialized.
I/HPAndroidHAL(15297): APILOG: all components destroyed.
I/HPAndroidHAL(15297): APILOG: library shutdown complete.
D/CameraHal(15297): CameraHal destructor
D/CameraHal(15297): CameraHal release
D/CameraHal(15297): CameraSettings destructor
D/dalvikvm(15308): GC_EXPLICIT freed 1738 objects / 96080 bytes in
121ms
I/Process (15902): Sending signal. PID: 15902 SIG: 9
E/JavaBinder(15308): !!! FAILED BINDER TRANSACTION !!!
I/ActivityManager(15308): Process org.opencv.samples.tutorial0 (pid
15902) has died.
W/InputManagerService(15308): Got RemoteException sending
setActive(false) notification to pid 15902 uid 10087
D/dalvikvm(15618): GC_EXPLICIT freed 6912 objects / 419056 bytes in
60ms
D/dalvikvm(15712): GC_EXPLICIT freed 1940 objects / 127464 bytes in
64ms



Akshay
> ...
>
> read more »

Andrey Kamaev

unread,
Jul 25, 2011, 3:24:17 PM7/25/11
to android-opencv
In your second logcat:

E/AndroidRuntime(15902): android.view.SurfaceHolder
$BadSurfaceTypeException: Surface type is SURFACE_TYPE_PUSH_BUFFERS

Have you tried other types of surface?

/Andrey
> data@a...@org.opencv.samples.tutorial0-2.apk@classes.dex -> /data/
> dalvik-cache/data@a...@org.opencv.samples.tutorial0-2.apk@classes.dex
> data@a...@org.opencv.samples.tutorial0-1.apk@classes.dex
> data@a...@org.opencv.samples.tutorial0-1.apk@classes.dex -> /data/
> dalvik-cache/data@a...@org.opencv.samples.tutorial0-1.apk@classes.dex
> data@a...@org.opencv.samples.tutorial0-2.apk@classes.dex

Andrey Kamaev

unread,
Jul 25, 2011, 3:40:07 PM7/25/11
to android-opencv
Another suggestion about first scenario (with null surface).
Please try to place setPreviewCallback after setPreviewDisplay (but
before startPreview). Will it work in this order?

I expect to see something like

D/Camera ( 5360): app passed NULL surface
W/CameraHal( 1030): No overlay set before start preview
D/CameraHal( 1030): deinitPvOverlay()
D/CameraHal( 1030): Trying to set overlay, but overlay is null!
D/TIOverlay( 1120): overlay_createOverlay:IN w=720 h=480 format=99

in the logcat output. But in your log CameraHal is quiet after "No
overlay set before start preview" message.

/Andrey

On Jul 25, 10:37 pm, maxi <aks...@gmail.com> wrote:
> data@a...@org.opencv.samples.tutorial0-2.apk@classes.dex -> /data/
> dalvik-cache/data@a...@org.opencv.samples.tutorial0-2.apk@classes.dex
> data@a...@org.opencv.samples.tutorial0-1.apk@classes.dex
> ...
>
> read more »

Noam

unread,
Aug 21, 2011, 1:54:05 PM8/21/11
to android-opencv
I'm having this same issue with my Droid X. Does anyone know if a
solution exists?
> > 15585): hidden #16...
>
> read more »

Peter Karasev

unread,
Aug 21, 2011, 7:11:11 PM8/21/11
to android...@googlegroups.com
The problem is "non-trivial" ;-) due to device-dependence of OpenGL
versus Canvas for preview Callbacks... I suspect it might get added as
an option to use GL for preview. Problem stems from Motorola being
less entrenched outside of USA, this seems to be a bigger issue than
at first glance.

FWD from Andrey:

You have commented out the notify() call so processFrame is just never called.

Googled somewhere in the web:

Some smartphones don't care if they won't get a surface provided, e.g.
the Nexus One and the T-Mobile G1. On those you may start the preview
right away, without setting a preview surface. Nevertheless there are
Android smartphones that will not provide a video stream if no preview
surface was set. One of them is the Motorola Milestone. However you
may not provide the OpenGL surface as a preview surface to the camera.
This would cause conflicts, as both the camera and the OpenGL thread
would try to access this surface at the same time. Furthermore this
surface must be visible on the screen, otherwise the preview callback
will not be invoked, either.

The solution for this problem is to layer a OpenGL surface on top of
the preview surface. This way the preview surface is regarded to be
visible, even tough it is not. This method works on all Android
smartphones. The video stream is drawn on a surface that is not
visible to the user and additionally on a OpenGL texture.
Compatibility is more important, then avoiding this overhead. There is
no other way to circumvent this API design decision.

If this statement is correct then there is no efficient java solution
for Motorola phones. Probably we can overcome this problem for native
camera interface but this is not trivial and requires to dig deep into
Android sources.

/Andrey

Reply all
Reply to author
Forward
0 new messages