boundarydevices / buildroot-external-boundary

Buildroot external layer for Boundary Devices platforms and modules.
13 stars 12 forks source link

VPU H264 Encoding Support for Nitrogen8M Plus ? #7

Closed l4es closed 2 years ago

l4es commented 2 years ago

Hi, I would like to purchase one set of Nitrogen8M Plus and I would like to know if it is possible to stream H264 encoded video over network with the Buildroot based distribution, please ?

Thanks in advance and best regards, Pascal.

gibsson commented 2 years ago

Hi,

Yes H.264 encoding is supported by the open-source plugin as you can see here: https://github.com/Freescale/gstreamer-imx/tree/master/ext/vpu

Regards

l4es commented 2 years ago

Dear @gibsson,

Thanks for your answer. By the way, I'm a little bit confused since I also asked relevant question in that repository for vpuenc_h264 support, they said that they were working on it : https://github.com/Freescale/gstreamer-imx/issues/296

The question dates Oct 13, 2021 (more than a year). So could you confirm the availability of the feature, please?

Best Regards, Pascal.

gibsson commented 2 years ago

Indeed I forgot the encoder was different than on 8M Mini (H1). Support wasn't added since Oct. 2021, maybe best to ask Carlos (dv1) directly. Regards

l4es commented 2 years ago

Hi @gibsson , Thanks for you reply. So I would assume that this VPU related feature depends heavily on the evolution of https://github.com/Freescale/gstreamer-imx if one expects to use Buildroot based distribution/system. Am I correct ?

Best Regards, Pascal.

gibsson commented 2 years ago

Well, it depends on your Buildroot skills. Currently BD only offers gstreamer-imx plugin to be Buildroot-compatible (using latest gstreamer versions). However you could modify your own Buildroot tree to use the same gstreamer forks from NXP as Yocto: https://source.codeaurora.org/external/imx/meta-imx/tree/meta-bsp/recipes-multimedia/gstreamer?h=hardknott-5.10.72-2.2.0 That way you can have encoding supported in Buildroot. Regards

l4es commented 2 years ago

Hi @gibsson, Thanks for your clarification. By the way, I saw that BD also provides Software Support Service, I would like to know if could this accelerated H264 encoding included in the service as well?

Thanks and Regards, Pascal

gibsson commented 2 years ago

Hi, It could be but to be honest we have 0 bandwidth for this right now as the electronics shortage is taking all our time. I suggest contacting some Buildroot experts like @bootlin for help: https://bootlin.com/company/contact/ https://github.com/bootlin Regards, Gary

l4es commented 2 years ago

Hi @gibsson,

Thanks for sharing info. I'm also looking for your iMX8M Plus based SoM available as well.

Best Regards, Pascal.

l4es commented 1 year ago

Dear @gibsson, I saw that VPU H264 encoding is now available in recent commit(s) of libimxvpuapi which is also integrated into your Buildroot image, will you have a plan to upgrade it, please ?

Best regards, Pascal

gibsson commented 1 year ago

Hi, Actually this isn't needed any longer as NXP now provides a userspace daemon that makes the VPU appear as a standard V4L2 device: https://github.com/buildroot/buildroot/tree/master/package/freescale-imx/imx-vpu-hantro-daemon With this, you can use the standard v4l2enc plugin of GStreamer without the need for any additional plugin. Regards,

l4es commented 1 year ago

Thanks @gibsson for the update. I haven't visited Buildroot for a while. Btw, do you think if Buildroot would integrate NXP's NPU and deep learning related packages for iMX8M Plus in the future?