0

Ich versuche, cyanogenmod 12.1 (basierend auf 5.x Android) auf meinem LG D290n L Fino zu portieren, das ist ein qualcomm msm8610-basiertes Gerät mit Android KitKat. Wenn ich versuche, das HAL-Modul der Stock-Kamera zu benutzen (mit allen proprietären Stock-q-Kamera-Bibliotheken und dem Stock-qcamera-Daemon), erhalte ich ein Fehler über das fehlende Symbol "_ZN7android16CameraParameters9isPreviewE" während des dlopen des Kamera-HAL-Moduls referenziert von der Bibliothek "camera.msm8610.so". Die Initialisierung der Kamera schlägt fehl. Ich habe einige Nachforschungen angestellt, und ich habe herausgefunden, dass dieses Symbol in libcamera_client.so (Bibliothek wird von frameworks/av-Paket zur Verfügung gestellt) auf dem Lager Kitkat ROM befindet. Dieses Symbol fehlt natürlich in der Lollipop-Bibliothek.Was ist das Symbol "_ZN7android16CameraParameters9isPreviewE"?

Weiß jemand, was ist der Code, der dieses Symbol definiert?

Vielen Dank im Voraus!

Antwort

0

Das ist android::CameraParameters::isPreview(). Wenn es Teil von AOSP wäre, würde ich erwarten, dass es in KitKat's CameraParameters.h definiert wird, aber es ist nicht da, was darauf hindeutet, dass es von einem OEM eingeführt wurde (oder vielleicht Cyanogen, obwohl ich es nicht sehe there either).

Wenn das der Fall ist, wird Ihr HAL-Modul nur mit einem benutzerdefinierten libcamera_client.so arbeiten. Es ist möglich, dass die betreffende Methode einfach genug ist, dass Sie sie reverse-engineeren und einen Ersatz bereitstellen können, aber es wirft die Frage auf, ob andere Bits und Teile auf subtilere Weise angepasst wurden.