[Buildroot] imx6 solo VPU support in Buildroot

Gary Bisson gary.bisson at boundarydevices.com
Wed Jan 23 17:25:10 UTC 2019


Hi,

Please try with playbin at first:
$ gst-launch-1.0 -v playbin uri=file:///video.mp4

Do you see it using vpudec?

Regards,

Gary Bisson
Boundary Devices, LLC
www.boundarydevices.com

Gary Bisson
Boundary Devices, LLC
www.boundarydevices.com


On Wed, Jan 23, 2019 at 5:15 PM Juan A. Rubio <jarubio2001 at gmail.com> wrote:
>
> Hi,
>
> I'm still chasing the issue of hw-accelerated video playback on my
> imx6 solo custom board.
>
> I'm now using the IMX6Q platform in my Buildroot config but I have not
> switched to a mainline kernel, and I'm still using the nxp kernel
> (imx6dl-sabresd.dts device tree with a few modifications, none of them
> related to the VPU or GPU).
>
> In the BSP I can see that the VPU firmware files are in the expected location:
> # ls /lib/firmware/vpu/
> vpu_fw_imx27_TO1.bin  vpu_fw_imx51.bin      vpu_fw_imx6d.bin
> vpu_fw_imx27_TO2.bin  vpu_fw_imx53.bin      vpu_fw_imx6q.bin
>
> I've verified that video decoding works using a software decoder with
> this pipeline:
> '$ gst-launch-1.0 filesrc location=video.mp4 ! qtdemux ! avdec_h264 !
> imxeglvivsink'
>
> However, when I use the hw decoder, I get errors:
> '$ gst-launch-1.0 filesrc location=video.mp4 ! qtdemux ! imxvpudec !
> imxeglvivsink'
>
>  'failed delayed linking some pad of GstQTDemux named qtdemux0 to some
> pad of GstImxVpuDecoder named imxvpudecoder0'
>
> Someone on #gstreamer told me that the 'h264parse' should have been
> added before 'imxvpudec', but 'h264parse' is not present in the
> gstreamer1 Buildroot package (I can see it is there in the gstreamer
> 0.x package).
>
> Any ideas on what is the actual problem here?
>
> Thanks in advance.
> Juan
>
>
>
>
>
>
> On Fri, Jan 11, 2019 at 5:42 PM Juan A. Rubio <jarubio2001 at gmail.com> wrote:
> >
> > Gary,
> >
> > Yes, I've seen this overlapping naming convention in other places.
> > Makes sense. I'll try changing the platform to IMX6Q.
> >
> > Thanks for the clarification.
> >
> > BR,
> > Juan
> >
> > On Fri, Jan 11, 2019 at 5:27 PM Gary Bisson
> > <gary.bisson at boundarydevices.com> wrote:
> > >
> > > Hi,
> > >
> > > Otherwise, the reason it has been removed is that IMX6S in NXP's
> > > packages doesn't refer to the i.MX6 Solo processors but to the i.MX6
> > > SoloLite and i.MX6 Solo X which do not have a VPU.
> > >
> > > You can see it in the menuconfig or package/freescale-imx/Config.in:
> > > config BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Q
> > >     bool "imx6q/imx6dl"
> > >
> > > config BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6S
> > >     bool "imx6sl/imx6sx"
> > >
> > > So for a i.MX6 Solo processor, you should use the IMX6Q platform as it
> > > is meant for i.MX6 DualLite which is equivalent to the Solo.
> > >
> > > I know it all sounds confusing but that's how NXP/Freescale chose to
> > > differentiate their CPU and we decided to match their naming
> > > convention.
> > >
> > > Regards,
> > > Gary
> > >
> > > Gary Bisson
> > > Boundary Devices, LLC
> > > www.boundarydevices.com
> > >
> > >
> > > On Fri, Jan 11, 2019 at 1:59 PM Juan A. Rubio <jarubio2001 at gmail.com> wrote:
> > > >
> > > > Thanks!,
> > > >
> > > > I'll try this other route.
> > > >
> > > >
> > > > On Fri, 11 Jan 2019 at 12:17 Fabio Estevam <festevam at gmail.com> wrote:
> > > >>
> > > >> Hi Juan,
> > > >>
> > > >> On Fri, Jan 11, 2019 at 9:39 AM Juan A. Rubio <jarubio2001 at gmail.com> wrote:
> > > >> >
> > > >> > Hi,
> > > >> >
> > > >> > I've noticed that the imx6 solo VPU is not supported in Buildroot
> > > >> > starting from 2018.02.x
> > > >> >
> > > >> > There is some information about this in this commit:
> > > >> > https://github.com/buildroot/buildroot/commit/b86b227fda97ef439a3cc0da03da0ebcad5c203a
> > > >>
> > > >> This is related to the VPU library used by the NXP vendor code.
> > > >>
> > > >> >
> > > >> > Has anyone come up with a solution to successfully enable the VPU
> > > >> > libraries on imx6 solo with Buildroot?. Is there any more information
> > > >> > about this that might help to get this to work somehow?
> > > >>
> > > >> I am able to use VPU on mx6 with Buildroot using mainline kernel.
> > > >>
> > > >> You can use configs/imx6-sabresd_qt5_defconfig as a reference.
> > > >>
> > > >> Please check this post with the details:
> > > >> https://imxdev.gitlab.io/tutorial/Decoding_video_with_a_mainline_kernel_on_i.MX6/
> > > >
> > > > _______________________________________________
> > > > buildroot mailing list
> > > > buildroot at busybox.net
> > > > http://lists.busybox.net/mailman/listinfo/buildroot


More information about the buildroot mailing list