我现在在做个camera的实验,但是camera切换到Record模式 应用就挂掉了,我在模拟器上试过的,也在单板上试过了,按照网上说的方法改下还是不行,应该不是driver的问题,因为在模拟器上都跑不了麻 有谁碰到过这个问题的吗~~~该怎么弄阿???
以下是我的LOG信息:m_previewFrameRateMicrosec : 50000
D/Camera ( 2021): app passed NULL surface
D/CameraService( 1789): getCallingPid
D/CameraService( 1789): setPreviewDisplay(0x0) (pid 2021)
D/CameraService( 1789): getCallingPid
D/CameraService( 1789): setPreviewDisplay::mSurfaceLock lock success
D/CameraService( 1789): clearing old preview surface 0x17c48
D/S3C6410CameraHWInterface( 1789): S3C6410CameraHWInterface::previewEnabled
D/CameraService( 1789): setPreviewDisplay::mSurfaceLock unlock
D/CameraService( 1789): setPreviewDisplay return (result 0)
D/CameraService( 1789): getCallingPid
D/CameraService( 1789): startPreview (pid 2021)
D/CameraService( 1789): getCallingPid
D/CameraService( 1789): startCameraMode(0) (pid 2021)
D/CameraService( 1789): getCallingPid
D/CameraService( 1789): mSurface is not set yet.
D/CameraService( 1789): getCallingPid
D/CameraService( 1789): startPreviewMode (pid 2021)
D/S3C6410CameraHWInterface( 1789): S3C6410CameraHWInterface::previewEnabled
D/CameraService( 1789): mUseOverlay =false
D/S3C6410CameraHWInterface( 1789): S3C6410CameraHWInterface::startPreview start
D/S3C6410CameraHWInterface( 1789): ____m_createPmem____ [dev_name]: /dev/pmem_preview, [buffer_size]: 0x25200, [num_of_buffers]: 1
D/S3C6410CameraHWInterface( 1789): m_createPmem preview!!!
D/S3C6410Camera( 1789): setNumOfPhysBuffer start
D/S3C6410CameraHWInterface( 1789): ########## kcoolsw : index(0) : buf_offset(0) : buf_size(152064)
D/S3C6410CameraHWInterface( 1789): ____m_createPmem____ phys_addr: 0x5ea00000, virt_addr: 0x4044a000
D/S3C6410Camera( 1789): setPhysBuffer start
E/S3C6410Camera( 1789): int android::S3C6410Camera::setPhysBuffer(int, unsigned int, unsigned char*, unsigned int):: begin
E/S3C6410Camera( 1789): int android::S3C6410Camera::setPhysBuffer(int, unsigned int, unsigned char*, unsigned int):: end
D/S3C6410Camera( 1789): S3C6410Camera::startPreview start
D/S3C6410CameraHWInterface( 1789): ----------------------S3C6410CameraHWInterface::m_previewThreadFunc
D/S3C6410CameraHWInterface( 1789): ########## kcoolsw usleep : -160935
D/S3C6410CameraHWInterface( 1789): Before m_camera->getPreview
D/S3C6410Camera( 1789): getPreview start
D/S3C6410Camera( 1789): m_startCamera start = 0
D/S3C6410Camera( 1789): m_resetCamera start
D/S3C6410Camera( 1789): m_setCameraId start
D/S3C6410Camera( 1789): camera_mode = preview
D/S3C6410Camera( 1789): m_setPixelWidthHeight start
D/S3C6410Camera( 1789): width = 352
D/S3C6410Camera( 1789): height = 288
D/S3C6410Camera( 1789): codec_fmt.fmt.pix.pixelformat 32315559
D/S3C6410Camera( 1789): m_setSensorMode start
E/S3C6410Camera( 1789): ================int android::S3C6410Camera::m_setCrop()::To set the crop size
E/S3C6410Camera( 1789): int android::S3C6410Camera::m_setCrop()::return
D/S3C6410Camera( 1789): before start_capturing
D/S3C6410Camera( 1789): end start_capturing
E/S3C6410Camera( 1789): int android::S3C6410Camera::getPreview(unsigned char*, unsigned int, unsigned int*)::m_readCamera(0x25200, 0x0) begin
D/S3C6410Camera( 1789): m_readCamera start
E/S3C6410Camera( 1789): int android::S3C6410Camera::m_readCamera(unsigned char*, unsigned int, unsigned int*, int)::begin
D/S3C6410Camera( 1789): fimc_poll start
E/S3C6410Camera( 1789): begin poll
E/S3C6410Camera( 1789): return from poll
D/S3C6410CameraHWInterface( 1789): ______preview_size: 0x25200, preview_index: 0
D/S3C6410CameraHWInterface( 1789): ______preview_buffer: 0x0 0x25200
D/S3C6410CameraHWInterface( 1789): size_preview=152064
D/S3C6410CameraHWInterface( 1789): offset =0
D/CameraService( 1789): getCallingPid
D/CameraService( 1789): setPreviewDisplay(0x17928) (pid 2021)
D/CameraService( 1789): getCallingPid
D/CameraService( 1789): setPreviewDisplay::mSurfaceLock lock success
D/S3C6410CameraHWInterface( 1789): S3C6410CameraHWInterface::previewEnabled
I/DEBUG ( 1786): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
I/DEBUG ( 1786): Build fingerprint: 'generic/generic/generic/:2.1-update1/ECLAIR/eng.android02.20100317.160523:eng/test-keys'
I/DEBUG ( 1786): pid: 1789, tid: 2037 >>> /system/bin/mediaserver <<<
I/DEBUG ( 1786): signal 11 (SIGSEGV), fault addr 00000000
I/DEBUG ( 1786): r0 00000010 r1 40806e64 r2 00000000 r3 10000000
I/DEBUG ( 1786): r4 00000binder: release 1789:1789 transaction 3684 in, still active
binder: send failed reply for transaction 3684 to 2021:2021
000 r5 000169c8 r6 00000001 r7 40806e64
I/DEBUG ( 1786): r8 00100000 r9 a9d1b8e5 10 40707000 fp 00017860
I/DEBUG ( 1786): ip a9d29c44 sp 40806e40 lr a96889fd pc 00000000 cpsr 00000010
I/DEBUG ( 1786): #00 pc 0s3c_camif_stop_dma start
ov3640_command start
0000000
I/DEBUG ( 1786): #01 pc 000089fa /system/lib/libcamera.so
I/DEBUG ( 1786): #02 pc 00008a84 /system/lib/libcamera.so
I/DEBUG ( 1786): #03 pc 0001b522 /system/lib/libutils.so
I/DEBUG ( 1786): #04 pc 0001b94a /system/lib/libutils.so
I/DEBUG ( 1786): #05 pc 00010000 /system/lib/libc.so
I/DEBUG ( 1786): #06 pc 0000fad4 /system/lib/libc.so
I/DEBUG ( 1786):
I/DEBUG ( 1786): code around lr:
I/DEBUG ( 1786): a96889ec 6e2c1c38 fc4cf7ff 6eaa2010 47a01c39
I/DEBUG ( 1786): a96889fc f7ff1c38 6fa9fcad d00c2900 a90eaf08
I/DEBUG ( 1786): a9688a0c 6e2e1c38 fc3cf7ff 6eaa2020 47b01c39
I/DEBUG ( 1786):
I/DEBUG ( 1786): stack:
I/DEBUG ( 1786): 40806e00 00000000
I/DEBUG ( 1786): 40806e04 afe3bdfc
I/DEBUG ( 1786): 40806e08 000177e0 [heap]
I/DEBUG ( 1786): 40806e0c a9d13ead /system/lib/libutils.so
I/DEBUG ( 1786): 40806e10 000183e4 [heap]
I/DEBUG ( 1786): 40806e14 000177e0 [heap]
I/DEBUG ( 1786): 40806e18 000167c4 [heap]
I/DEBUG ( 1786): 40806e1c a9d13e29 /system/lib/libutils.so
I/DEBUG ( 1786): 40806e20 000167c4 [heap]
I/DEBUG ( 1786): 40806e24 a9d13e83 /system/lib/libutils.so
I/DEBUG ( 1786): 40806e28 40806e64
I/DEBUG ( 1786): 40806e2c 000169c8 [heap]
I/DEBUG ( 1786): 40806e30 00000001
I/DEBUG ( 1786): 40806e34 a96882a7 /system/lib/libcamera.so
I/DEBUG ( 1786): 40806e38 df002777
I/DEBUG ( 1786): 40806e3c e3a070ad
I/DEBUG ( 1786): #01 40806e40 00025200 [heap]
I/DEBUG ( 1786): 40806e44 00000000
I/DEBUG ( 1786): 40806e48 00000000
I/DEBUG ( 1786): 40806e4c afe3bdfc
I/DEBUG ( 1786): 40806e50 000169d0 [heap]
I/DEBUG ( 1786): 40806e54 40806e6c
I/DEBUG ( 1786): 40806e58 40806e70
I/DEBUG ( 1786): 40806e5c 40806e68
I/DEBUG ( 1786): 40806e60 00000000
I/DEBUG ( 1786): 40806e64 000167a8 [heap]
I/DEBUG ( 1786): 40806e68 000183d4 [heap]
I/DEBUG ( 1786): 40806e6c 00025200 [heap]
I/DEBUG ( 1786): 40806e70 00000000
I/DEBUG ( 1786): 40806e74 000183d4 [heap]
I/DEBUG ( 1786): 40806e78 000167a8 [heap]
I/DEBUG ( 1786): 40806e7c 00000000
I/DEBUG ( 1786): 40806e80 00000003
I/DEBUG ( 1786): 40806e84 00017810 [heap]
I/DEBUG ( 1786): 40806e88 40806eb4
I/DEBUG ( 1786): 40806e8c 40806eb0
I/DEBUG ( 1786): 40806e90 40806ea8
I/DEBUG ( 1786): 40806e94 a9688a89 /system/lib/libcamera.so
I/ServiceManager( 1782): service 'media.audio_flinger' died
到这后面就死了 就是运行到
int S3C6410CameraHWInterface::m_previewThreadFunc()
{
m_DataCb(CAMERA_MSG_PREVIEW_FRAME, buffer, m_CallbackCookie);
}
就是运行到这个函数中的方法死的, 这是个函数指针,通过LOG看到它现在是个空指针,有谁碰到过这个问题的,也不知道是不是java应用层引起的
大家帮帮忙~~~~~
以下是我的LOG信息:m_previewFrameRateMicrosec : 50000
D/Camera ( 2021): app passed NULL surface
D/CameraService( 1789): getCallingPid
D/CameraService( 1789): setPreviewDisplay(0x0) (pid 2021)
D/CameraService( 1789): getCallingPid
D/CameraService( 1789): setPreviewDisplay::mSurfaceLock lock success
D/CameraService( 1789): clearing old preview surface 0x17c48
D/S3C6410CameraHWInterface( 1789): S3C6410CameraHWInterface::previewEnabled
D/CameraService( 1789): setPreviewDisplay::mSurfaceLock unlock
D/CameraService( 1789): setPreviewDisplay return (result 0)
D/CameraService( 1789): getCallingPid
D/CameraService( 1789): startPreview (pid 2021)
D/CameraService( 1789): getCallingPid
D/CameraService( 1789): startCameraMode(0) (pid 2021)
D/CameraService( 1789): getCallingPid
D/CameraService( 1789): mSurface is not set yet.
D/CameraService( 1789): getCallingPid
D/CameraService( 1789): startPreviewMode (pid 2021)
D/S3C6410CameraHWInterface( 1789): S3C6410CameraHWInterface::previewEnabled
D/CameraService( 1789): mUseOverlay =false
D/S3C6410CameraHWInterface( 1789): S3C6410CameraHWInterface::startPreview start
D/S3C6410CameraHWInterface( 1789): ____m_createPmem____ [dev_name]: /dev/pmem_preview, [buffer_size]: 0x25200, [num_of_buffers]: 1
D/S3C6410CameraHWInterface( 1789): m_createPmem preview!!!
D/S3C6410Camera( 1789): setNumOfPhysBuffer start
D/S3C6410CameraHWInterface( 1789): ########## kcoolsw : index(0) : buf_offset(0) : buf_size(152064)
D/S3C6410CameraHWInterface( 1789): ____m_createPmem____ phys_addr: 0x5ea00000, virt_addr: 0x4044a000
D/S3C6410Camera( 1789): setPhysBuffer start
E/S3C6410Camera( 1789): int android::S3C6410Camera::setPhysBuffer(int, unsigned int, unsigned char*, unsigned int):: begin
E/S3C6410Camera( 1789): int android::S3C6410Camera::setPhysBuffer(int, unsigned int, unsigned char*, unsigned int):: end
D/S3C6410Camera( 1789): S3C6410Camera::startPreview start
D/S3C6410CameraHWInterface( 1789): ----------------------S3C6410CameraHWInterface::m_previewThreadFunc
D/S3C6410CameraHWInterface( 1789): ########## kcoolsw usleep : -160935
D/S3C6410CameraHWInterface( 1789): Before m_camera->getPreview
D/S3C6410Camera( 1789): getPreview start
D/S3C6410Camera( 1789): m_startCamera start = 0
D/S3C6410Camera( 1789): m_resetCamera start
D/S3C6410Camera( 1789): m_setCameraId start
D/S3C6410Camera( 1789): camera_mode = preview
D/S3C6410Camera( 1789): m_setPixelWidthHeight start
D/S3C6410Camera( 1789): width = 352
D/S3C6410Camera( 1789): height = 288
D/S3C6410Camera( 1789): codec_fmt.fmt.pix.pixelformat 32315559
D/S3C6410Camera( 1789): m_setSensorMode start
E/S3C6410Camera( 1789): ================int android::S3C6410Camera::m_setCrop()::To set the crop size
E/S3C6410Camera( 1789): int android::S3C6410Camera::m_setCrop()::return
D/S3C6410Camera( 1789): before start_capturing
D/S3C6410Camera( 1789): end start_capturing
E/S3C6410Camera( 1789): int android::S3C6410Camera::getPreview(unsigned char*, unsigned int, unsigned int*)::m_readCamera(0x25200, 0x0) begin
D/S3C6410Camera( 1789): m_readCamera start
E/S3C6410Camera( 1789): int android::S3C6410Camera::m_readCamera(unsigned char*, unsigned int, unsigned int*, int)::begin
D/S3C6410Camera( 1789): fimc_poll start
E/S3C6410Camera( 1789): begin poll
E/S3C6410Camera( 1789): return from poll
D/S3C6410CameraHWInterface( 1789): ______preview_size: 0x25200, preview_index: 0
D/S3C6410CameraHWInterface( 1789): ______preview_buffer: 0x0 0x25200
D/S3C6410CameraHWInterface( 1789): size_preview=152064
D/S3C6410CameraHWInterface( 1789): offset =0
D/CameraService( 1789): getCallingPid
D/CameraService( 1789): setPreviewDisplay(0x17928) (pid 2021)
D/CameraService( 1789): getCallingPid
D/CameraService( 1789): setPreviewDisplay::mSurfaceLock lock success
D/S3C6410CameraHWInterface( 1789): S3C6410CameraHWInterface::previewEnabled
I/DEBUG ( 1786): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
I/DEBUG ( 1786): Build fingerprint: 'generic/generic/generic/:2.1-update1/ECLAIR/eng.android02.20100317.160523:eng/test-keys'
I/DEBUG ( 1786): pid: 1789, tid: 2037 >>> /system/bin/mediaserver <<<
I/DEBUG ( 1786): signal 11 (SIGSEGV), fault addr 00000000
I/DEBUG ( 1786): r0 00000010 r1 40806e64 r2 00000000 r3 10000000
I/DEBUG ( 1786): r4 00000binder: release 1789:1789 transaction 3684 in, still active
binder: send failed reply for transaction 3684 to 2021:2021
000 r5 000169c8 r6 00000001 r7 40806e64
I/DEBUG ( 1786): r8 00100000 r9 a9d1b8e5 10 40707000 fp 00017860
I/DEBUG ( 1786): ip a9d29c44 sp 40806e40 lr a96889fd pc 00000000 cpsr 00000010
I/DEBUG ( 1786): #00 pc 0s3c_camif_stop_dma start
ov3640_command start
0000000
I/DEBUG ( 1786): #01 pc 000089fa /system/lib/libcamera.so
I/DEBUG ( 1786): #02 pc 00008a84 /system/lib/libcamera.so
I/DEBUG ( 1786): #03 pc 0001b522 /system/lib/libutils.so
I/DEBUG ( 1786): #04 pc 0001b94a /system/lib/libutils.so
I/DEBUG ( 1786): #05 pc 00010000 /system/lib/libc.so
I/DEBUG ( 1786): #06 pc 0000fad4 /system/lib/libc.so
I/DEBUG ( 1786):
I/DEBUG ( 1786): code around lr:
I/DEBUG ( 1786): a96889ec 6e2c1c38 fc4cf7ff 6eaa2010 47a01c39
I/DEBUG ( 1786): a96889fc f7ff1c38 6fa9fcad d00c2900 a90eaf08
I/DEBUG ( 1786): a9688a0c 6e2e1c38 fc3cf7ff 6eaa2020 47b01c39
I/DEBUG ( 1786):
I/DEBUG ( 1786): stack:
I/DEBUG ( 1786): 40806e00 00000000
I/DEBUG ( 1786): 40806e04 afe3bdfc
I/DEBUG ( 1786): 40806e08 000177e0 [heap]
I/DEBUG ( 1786): 40806e0c a9d13ead /system/lib/libutils.so
I/DEBUG ( 1786): 40806e10 000183e4 [heap]
I/DEBUG ( 1786): 40806e14 000177e0 [heap]
I/DEBUG ( 1786): 40806e18 000167c4 [heap]
I/DEBUG ( 1786): 40806e1c a9d13e29 /system/lib/libutils.so
I/DEBUG ( 1786): 40806e20 000167c4 [heap]
I/DEBUG ( 1786): 40806e24 a9d13e83 /system/lib/libutils.so
I/DEBUG ( 1786): 40806e28 40806e64
I/DEBUG ( 1786): 40806e2c 000169c8 [heap]
I/DEBUG ( 1786): 40806e30 00000001
I/DEBUG ( 1786): 40806e34 a96882a7 /system/lib/libcamera.so
I/DEBUG ( 1786): 40806e38 df002777
I/DEBUG ( 1786): 40806e3c e3a070ad
I/DEBUG ( 1786): #01 40806e40 00025200 [heap]
I/DEBUG ( 1786): 40806e44 00000000
I/DEBUG ( 1786): 40806e48 00000000
I/DEBUG ( 1786): 40806e4c afe3bdfc
I/DEBUG ( 1786): 40806e50 000169d0 [heap]
I/DEBUG ( 1786): 40806e54 40806e6c
I/DEBUG ( 1786): 40806e58 40806e70
I/DEBUG ( 1786): 40806e5c 40806e68
I/DEBUG ( 1786): 40806e60 00000000
I/DEBUG ( 1786): 40806e64 000167a8 [heap]
I/DEBUG ( 1786): 40806e68 000183d4 [heap]
I/DEBUG ( 1786): 40806e6c 00025200 [heap]
I/DEBUG ( 1786): 40806e70 00000000
I/DEBUG ( 1786): 40806e74 000183d4 [heap]
I/DEBUG ( 1786): 40806e78 000167a8 [heap]
I/DEBUG ( 1786): 40806e7c 00000000
I/DEBUG ( 1786): 40806e80 00000003
I/DEBUG ( 1786): 40806e84 00017810 [heap]
I/DEBUG ( 1786): 40806e88 40806eb4
I/DEBUG ( 1786): 40806e8c 40806eb0
I/DEBUG ( 1786): 40806e90 40806ea8
I/DEBUG ( 1786): 40806e94 a9688a89 /system/lib/libcamera.so
I/ServiceManager( 1782): service 'media.audio_flinger' died
到这后面就死了 就是运行到
int S3C6410CameraHWInterface::m_previewThreadFunc()
{
m_DataCb(CAMERA_MSG_PREVIEW_FRAME, buffer, m_CallbackCookie);
}
就是运行到这个函数中的方法死的, 这是个函数指针,通过LOG看到它现在是个空指针,有谁碰到过这个问题的,也不知道是不是java应用层引起的
大家帮帮忙~~~~~
解决方案 »
- listview 滚动
- android开发,activitygroup中地图activity在第二次点击后不能显示?
- 如何打开系统的图片浏览器,并且指定要显示的图片
- 如何获得WebView网页加载完成这个事件
- 关于被加密的sqlite数据库的打开的问题
- 关闭wifi扫描到可用网络时发出的通知
- 求助:在android布局是全屏的情况下, 如何监听软键盘的弹出和隐藏,有好的方法直接给100分!!!
- 关于SimpleAdapter的问题,求助。
- Android 自定义progressdialog 单例模式下无法加载动画相关问题(40分)
- 为什么摄像头会出现拍照时有预览图片并可以拍照,但是录像时却没有预览图片?
- 关于android中Activity与xml的问题,求高手解答
- 模拟器上为什么每次开机需要重装apk?
Camera.getParameters().isZoomSupported() -->true
Camera.getParameters().isSmoothZoomSupported() -->false这种情况下,我怎么才能实现变焦呢??