こんにちは、NXP FAE の皆さん:
現在、NXP が imx8mp プラットフォームで libcamera をサポートしているかどうかを知りたいです。
https://libcamera.org/getting-started.html をご覧ください。
yocoto kirkstone bsp を見ると、レシピ libcamera は meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera.bb の下にあるようです。ターゲット libcamera をイメージに追加して imx8mp-evk ボードで実行すると、libcamera はキャプチャ デバイスの検出時に何も報告しません。gst-launch を実行しても結果は同じです。
LIBCAMERA_LOG_LEVELS=*:DEBUG gst-device-monitor-1.0 Video
IPAModule ipa_module.cpp:329 ipa_vimc.so: IPA module /usr/lib/libcamera/ipa_vimc.so is signed
IPAManager ipa_manager.cpp:240 Loaded IPA module '/usr/lib/libcamera/ipa_vimc.so'
Camera camera_manager.cpp:293 libcamera v0.0.0
Camera camera_manager.cpp:106 Starting camera manager
DeviceEnumerator device_enumerator.cpp:224 New media device "mxc-md" created from /dev/media0
DeviceEnumerator device_enumerator_udev.cpp:95 Defer media device /dev/media0 due to 1 missing dependencies
DeviceEnumerator device_enumerator_udev.cpp:320 All dependencies for media device /dev/media0 found
DeviceEnumerator device_enumerator.cpp:252 Added device /dev/media0: mxc-md
Camera camera_manager.cpp:149 Found registered pipeline handler 'PipelineHandlerUVC'
Camera camera_manager.cpp:149 Found registered pipeline handler 'SimplePipelineHandler'
Camera camera_manager.cpp:149 Found registered pipeline handler 'PipelineHandlerVimc'libcamera コードを読み返すと、libcamera が使用する前にカメラを登録する必要があることがわかります。
bool PipelineHandlerRPi::match(DeviceEnumerator *enumerator)
{
DeviceMatch unicam("unicam");
MediaDevice *unicamDevice = acquireMediaDevice(enumerator, unicam);
if (!unicamDevice) {
LOG(RPI, Debug) << "Unable to acquire a Unicam instance";
return false;
}
DeviceMatch isp("bcm2835-isp");
MediaDevice *ispDevice = acquireMediaDevice(enumerator, isp);
if (!ispDevice) {
LOG(RPI, Debug) << "Unable to acquire ISP instance";
return false;
}
int ret = registerCamera(unicamDevice, ispDevice);
if (ret) {
LOG(RPI, Error) << "Failed to register camera: " << ret;
return false;
}
return true;
}SO、以下の質問があります。
1.NXP bsp は現在、カメラ デバイス ov5640 などの libcamera をサポートしていますか?
2.そうでない場合、NXP は libcamera をサポートする予定がありますか、またはそのための提案/リファレンス デザイン/ガイド/パッチはありますか?
3.libcamera で新しいカメラにサポートを追加するのはどれくらい複雑ですか?
私は libcamera の初心者なので、あなたの助け/ガイド/情報を期待しています。
よろしくお願いします。
ジョンソン
VSI SDKにも興味があります。外部カメラからキャプチャしたフレームにVivante ISP8000の3Aアルゴリズムを使用できれば非常に便利です。
こんにちは@Sanket_Parekhさん、
vsi SDK とは何ですか? また、どのようにアクセスするのですか?
よろしくお願いいたします。
カン
こんにちは@zhangjunsheng
お元気でお過ごしでしょうか。
お客様が3Aや他のモジュール用のアルゴリズムを持っていない場合、lib-cameraの使用はお勧めしません。
VSI SDK は良い選択です。今後はvsi SDKをサポートする予定です。
お客様が lib-camera に興味があり、ISP の専門家である場合は、GitLab にオープンソースがあります(https://gitlab.com/ideasonboard/nxp/libcamera)。
ありがとう、よろしく。
サンケト・パレック
こんにちは@zhangjunshengさん
このリポジトリを見つけました: https://gitlab.com/ideasonboard/nxp/libcamera
ここで強調しておきたいのは、はい、i.MX8MPはlibcameraで非常によくサポートされているのですが、Linuxカーネルで正しいカーネルドライバーを有効にする必要があります。
libcameraはLinuxカーネルで一見名前のRKISP1ドライバーを使っていますが、ISPは共通の遺産を共有しているためです。しかしプラットフォーム自体は非常に強力なサポートがあり、商用製品に搭載されており、多くのユースケースやカスタマイズを簡単にサポートできます。
ライセンス契約に署名する必要がなく、ソースコード全体を入手できるというメリットもあります!(すべてhttps://gitlab.freedesktop.org/camera/libcameraで公開されています))