libcamera on imx8mp

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

libcamera on imx8mp

跳至解决方案
1,360 次查看
zhangjunsheng
Contributor III

Hi NXP FAEs:

 

     I would like to know currently if NXP have any libcamera support on imx8mp platform? 
     https://libcamera.org/getting-started.html.

     I see in yocoto kirkstone bsp, recipe libcamera is under meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera.bb. when I add target libcamera into image and run on imx8mp-evk board, libcamera reports nothing when detecting capture device. and when run gst-launch, the result is the same.

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'

 

      when I read back the libcamera code, I find camera need be registered before libcamera use it.

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, I have below questions.
      1. Does NXP bsp currently support libcamera, such as for camera device ov5640?

       2. If not, does NXP have any plan to support libcamera or have any suggestion/reference design/guid/patch for that?

       3. How complex is it for adding suppor to a new camera in libcamera?

       I am quite new for libcamera and expect your help/guid/information.

best regards.

Johnson

1 解答
1,293 次查看
Sanket_Parekh
NXP TechSupport
NXP TechSupport

Hello @zhangjunsheng 

I hope you are doing well.

if the customer has not their algorithm for 3A and other modules, we don't suggest they use lib-camera,

VSI sdk is good chooise. we will support vsi SDK now.

if the customer has interesting in lib-camera and they are isp expert, there is an open source on GitLab  https://gitlab.com/ideasonboard/nxp/libcamera

 

Thanks & Regards,

Sanket Parekh

在原帖中查看解决方案

0 项奖励
4 回复数
1,324 次查看
khang_letruong
Senior Contributor III
0 项奖励
1,294 次查看
Sanket_Parekh
NXP TechSupport
NXP TechSupport

Hello @zhangjunsheng 

I hope you are doing well.

if the customer has not their algorithm for 3A and other modules, we don't suggest they use lib-camera,

VSI sdk is good chooise. we will support vsi SDK now.

if the customer has interesting in lib-camera and they are isp expert, there is an open source on GitLab  https://gitlab.com/ideasonboard/nxp/libcamera

 

Thanks & Regards,

Sanket Parekh

0 项奖励
1,199 次查看
zhangjunsheng
Contributor III
Hi Sanket Parekh,

Thanks for the information. I will explore more basing on your information.

Best regards.
Johnson
0 项奖励
1,287 次查看
khang_letruong
Senior Contributor III

Hi @Sanket_Parekh ,

What is the vsi SDK and how to access it, please ?

Thanks in advance and best regards,

Khang

0 项奖励