Ask Your Question
1

Anyone got libnative_camera working on Nexus 9 Lollipop ?

asked 2015-03-08 03:59:02 -0600

bruno9 gravatar image

updated 2015-03-08 11:52:49 -0600

Hi,

Does anyone got libnative_camera working on lollipop on a Nexus 9, I tried including the .so files and through opencv_manager but both (obviously) got stuck on a missing symbol.

Below are the errors by opencv_manager.

Thanks,

Bruno

 dlerror="dlopen failed: cannot locate symbol "_ZN7android11BufferQueueC1ERKNS_2spINS_19IGraphicBufferAllocEEE" referenced by "libnative_camera_r4.4.0.so"..." 

dlerror="dlopen failed: cannot locate symbol "_ZN7android11BufferQueueC1EbRKNS_2spINS_19IGraphicBufferAllocEEE" referenced by "libnative_camera_r4.3.0.so"..."

dlerror="dlopen failed: cannot locate symbol "_ZN7android6Camera10disconnectEv" referenced by "libnative_camera_r4.2.0.so"..."                                

dlerror="dlopen failed: cannot locate symbol "_ZN7android6Camera10disconnectEv" referenced by "libnative_camera_r4.1.1.so"..."                                

dlerror="dlopen failed: cannot locate symbol "_ZN7android6Camera10disconnectEv" referenced by "libnative_camera_r4.0.3.so"..."                                

dlerror="dlopen failed: cannot locate symbol "_ZN7android6Camera10disconnectEv" referenced by "libnative_camera_r4.0.0.so"..."                                

dlerror="dlopen failed: cannot locate symbol "_ZN7android6Camera10disconnectEv" referenced by "libnative_camera_r3.0.1.so"..."                                

dlerror="dlopen failed: cannot locate symbol "_ZN7android6Camera10disconnectEv" referenced by "libnative_camera_r2.3.3.so"..."                                

dlerror="dlopen failed: cannot locate symbol "_ZN7android6Camera10disconnectEv" referenced by "libnative_camera_r2.2.0.so"..."

-

looks like BufferQueue(android::sp<android::igraphicbufferalloc> const&) is removed.

I find it back on my nexus7 (kitkat 4.4.4):

bruno@bruno ~/Android/analyze/nexus7/system/lib $ readelf -Ws libgui.so | grep _ZN7android11BufferQueueC1ERKNS_2spINS_19IGraphicBufferAllocEEE
   371: 00024c79   428 FUNC    GLOBAL DEFAULT    8 _ZN7android11BufferQueueC1ERKNS_2spINS_19IGraphicBufferAllocEEE

But not on the Nexus 9 (Lollipop 5.0.1)

bruno@bruno ~/Android/analyze/nexus9/system/lib $ readelf -Ws libgui.so | grep _ZN7android11BufferQueueC1ERKNS_2spINS_19IGraphicBufferAllocEEE
bruno@bruno ~/Android/analyze/nexus9/system/lib $

_ZN7android6Camera10disconnectEv must be deprecated some time ago since I don't find any reference

Update: BufferQueue constructors are idd deleted some time ago: http://85.214.228.141/android-legacy/...

edit retag flag offensive close merge delete

1 answer

Sort by ยป oldest newest most voted
0

answered 2015-03-13 10:13:03 -0600

bruno9 gravatar image

updated 2015-03-13 15:11:36 -0600

I get frames on lollipop now, use BufferQueue like this in camera_wrapper.cpp :

class CameraHandler: public CameraListener 
{
    sp<IGraphicBufferConsumer> consumer; 
    sp<IGraphicBufferProducer> producer;  
    ...
};


....

BufferQueue::createBufferQueue(&handler->producer, &handler->consumer);  

handler->consumer->consumerConnect(handler->listener, true);  
bufferStatus = handler->camera->setPreviewTarget(handler->producer);
edit flag offensive delete link more

Comments

Is here an easy way to edit this, or does the whole library need to be recompiled?

jdepypere gravatar imagejdepypere ( 2016-01-06 10:42:40 -0600 )edit

Question Tools

1 follower

Stats

Asked: 2015-03-08 03:59:02 -0600

Seen: 915 times

Last updated: Mar 13 '15