* Mainline 5.4 kernel with VPU acceleration on iMX6
@ 2020-04-04 23:31 Mark Farver
2020-04-05 5:18 ` [meta-freescale] " Carlos Rafael Giani
0 siblings, 1 reply; 6+ messages in thread
From: Mark Farver @ 2020-04-04 23:31 UTC (permalink / raw)
To: meta-freescale
Does anyone know definitively if etnaviv/gstreamer has support for
accelerated h264 decoding/rescaling? I can play video through both
the fbcondev and wayland sinks, but both consume a great deal of CPU,
and frame dropping gets pretty bad if I attempt to resize the video.
I need to know if I should continue pursuing etnaviv, or if it is a
dead end for now and I need to fall back to using the vivante driver.
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [meta-freescale] Mainline 5.4 kernel with VPU acceleration on iMX6
2020-04-04 23:31 Mainline 5.4 kernel with VPU acceleration on iMX6 Mark Farver
@ 2020-04-05 5:18 ` Carlos Rafael Giani
2020-04-05 22:17 ` Mark Farver
0 siblings, 1 reply; 6+ messages in thread
From: Carlos Rafael Giani @ 2020-04-05 5:18 UTC (permalink / raw)
To: meta-freescale
[-- Attachment #1: Type: text/plain, Size: 720 bytes --]
etnaviv takes care of GPU support, which is related to scaling, but
unrelated to video decoding - the latter one is handled by the CODA960 VPU.
For using etnaviv, just use glimagesink. For using the VPU, use the
v4l2*dec elements.
On 05.04.20 01:31, Mark Farver wrote:
> Does anyone know definitively if etnaviv/gstreamer has support for
> accelerated h264 decoding/rescaling? I can play video through both
> the fbcondev and wayland sinks, but both consume a great deal of CPU,
> and frame dropping gets pretty bad if I attempt to resize the video.
>
> I need to know if I should continue pursuing etnaviv, or if it is a
> dead end for now and I need to fall back to using the vivante driver.
>
>
[-- Attachment #2: Type: text/html, Size: 1224 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [meta-freescale] Mainline 5.4 kernel with VPU acceleration on iMX6
2020-04-05 5:18 ` [meta-freescale] " Carlos Rafael Giani
@ 2020-04-05 22:17 ` Mark Farver
2020-04-06 19:51 ` Fabio Estevam
0 siblings, 1 reply; 6+ messages in thread
From: Mark Farver @ 2020-04-05 22:17 UTC (permalink / raw)
To: Carlos Rafael Giani; +Cc: meta-freescale
On Sun, Apr 5, 2020 at 1:19 AM Carlos Rafael Giani <crg7475@mailbox.org> wrote:
> For using etnaviv, just use glimagesink. For using the VPU, use the v4l2*dec elements.
Definitely doing CPU decoding. I don't see any kernel messages that
indicate the VPU has been detected even though I have
CONFIG_VIDEO_IMX_PXP=y in the kernel config. Is that the correct
option? Are there others? The device tree entry for the VPU seems to
be included in the kernel configuration by default.
I grabbed OSSystems meta-gstreamer layer to get 1.16.2, but even with
that included I do not appear to get any v4l2 decode plugins:
# gst-inspect-1.0 --version
gst-inspect-1.0 version 1.16.2
GStreamer 1.16.2
Unknown package origi
# gst-inspect-1.0 |grep v4l
imxv4l2video: imxv4l2videosrc: V4L2 CSI Video Source
imxv4l2video: imxv4l2videosink: V4L2 CSI Video Sink
video4linux2: v4l2src: Video (video4linux2) Source
video4linux2: v4l2sink: Video (video4linux2) Sink
video4linux2: v4l2radio: Radio (video4linux2) Tuner
video4linux2: v4l2deviceprovider (GstDeviceProviderFactory)
Thank you
Mark Farver
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [meta-freescale] Mainline 5.4 kernel with VPU acceleration on iMX6
2020-04-05 22:17 ` Mark Farver
@ 2020-04-06 19:51 ` Fabio Estevam
2020-04-07 8:44 ` Andreas M?ller
0 siblings, 1 reply; 6+ messages in thread
From: Fabio Estevam @ 2020-04-06 19:51 UTC (permalink / raw)
To: Mark Farver; +Cc: Carlos Rafael Giani, meta-freescale
Hi Mark,
On Sun, Apr 5, 2020 at 7:17 PM Mark Farver <mfarver@mindbent.org> wrote:
>
> On Sun, Apr 5, 2020 at 1:19 AM Carlos Rafael Giani <crg7475@mailbox.org> wrote:
> > For using etnaviv, just use glimagesink. For using the VPU, use the v4l2*dec elements.
>
> Definitely doing CPU decoding. I don't see any kernel messages that
> indicate the VPU has been detected even though I have
Try grepping for "coda", which is the VPU driver name in mainline:
# dmesg | grep coda
[ 5.483623] coda 2040000.vpu: Direct firmware load for
vpu_fw_imx6q.bin failed with error -2
[ 5.492236] coda 2040000.vpu: Falling back to sysfs fallback for:
vpu_fw_imx6q.bin
[ 69.619815] coda 2040000.vpu: Using fallback firmware vpu/vpu_fw_imx6q.bin
[ 69.632736] coda 2040000.vpu: Firmware code revision: 46076
[ 69.638440] coda 2040000.vpu: Initialized CODA960.
[ 69.643255] coda 2040000.vpu: Firmware version: 3.1.1
[ 69.649875] coda 2040000.vpu: encoder registered as video9
[ 69.656045] coda 2040000.vpu: encoder registered as video10
[ 69.662214] coda 2040000.vpu: decoder registered as video11
> CONFIG_VIDEO_IMX_PXP=y in the kernel config. Is that the correct
CONFIG_VIDEO_IMX_PXP=y applies to other i.MX SoCs.
> option? Are there others? The device tree entry for the VPU seems to
> be included in the kernel configuration by default.
>
> I grabbed OSSystems meta-gstreamer layer to get 1.16.2, but even with
> that included I do not appear to get any v4l2 decode plugins:
>
> # gst-inspect-1.0 --version
> gst-inspect-1.0 version 1.16.2
> GStreamer 1.16.2
> Unknown package origi
>
> # gst-inspect-1.0 |grep v4l
> imxv4l2video: imxv4l2videosrc: V4L2 CSI Video Source
> imxv4l2video: imxv4l2videosink: V4L2 CSI Video Sink
This is wrong. You should not install these imx elements when using a
mainline kernel. These elements are to be used with NXP kernel only.
> video4linux2: v4l2src: Video (video4linux2) Source
> video4linux2: v4l2sink: Video (video4linux2) Sink
> video4linux2: v4l2radio: Radio (video4linux2) Tuner
> video4linux2: v4l2deviceprovider (GstDeviceProviderFactory)
So first, make sure the coda driver is probed successfully in the kernel.
Then Gstreamer would detect the VPU decoders plugins:
# gst-inspect-1.0 | grep v4l2
video4linux2: v4l2src: Video (video4linux2) Source
video4linux2: v4l2sink: Video (video4linux2) Sink
video4linux2: v4l2radio: Radio (video4linux2) Tuner
video4linux2: v4l2deviceprovider (GstDeviceProviderFactory)
video4linux2: v4l2convert: V4L2 Video Converter
video4linux2: v4l2jpegenc: V4L2 JPEG Encoder
video4linux2: v4l2h264enc: V4L2 H.264 Encoder
video4linux2: v4l2mpeg4enc: V4L2 MPEG4 Encoder
video4linux2: v4l2mpeg4dec: V4L2 MPEG4 Decoder
video4linux2: v4l2mpeg2dec: V4L2 MPEG2 Decoder
video4linux2: v4l2h264dec: V4L2 H264 Decoder
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [meta-freescale] Mainline 5.4 kernel with VPU acceleration on iMX6
2020-04-06 19:51 ` Fabio Estevam
@ 2020-04-07 8:44 ` Andreas M?ller
2020-04-07 11:18 ` Fabio Estevam
0 siblings, 1 reply; 6+ messages in thread
From: Andreas M?ller @ 2020-04-07 8:44 UTC (permalink / raw)
To: Fabio Estevam; +Cc: Mark Farver, Carlos Rafael Giani, meta-freescale
On Mon, Apr 6, 2020 at 9:51 PM Fabio Estevam <festevam@gmail.com> wrote:
>
> Hi Mark,
>
> On Sun, Apr 5, 2020 at 7:17 PM Mark Farver <mfarver@mindbent.org> wrote:
> >
> > On Sun, Apr 5, 2020 at 1:19 AM Carlos Rafael Giani <crg7475@mailbox.org> wrote:
> > > For using etnaviv, just use glimagesink. For using the VPU, use the v4l2*dec elements.
> >
> > Definitely doing CPU decoding. I don't see any kernel messages that
> > indicate the VPU has been detected even though I have
>
> Try grepping for "coda", which is the VPU driver name in mainline:
>
> # dmesg | grep coda
> [ 5.483623] coda 2040000.vpu: Direct firmware load for
> vpu_fw_imx6q.bin failed with error -2
> [ 5.492236] coda 2040000.vpu: Falling back to sysfs fallback for:
> vpu_fw_imx6q.bin
> [ 69.619815] coda 2040000.vpu: Using fallback firmware vpu/vpu_fw_imx6q.bin
> [ 69.632736] coda 2040000.vpu: Firmware code revision: 46076
> [ 69.638440] coda 2040000.vpu: Initialized CODA960.
> [ 69.643255] coda 2040000.vpu: Firmware version: 3.1.1
> [ 69.649875] coda 2040000.vpu: encoder registered as video9
> [ 69.656045] coda 2040000.vpu: encoder registered as video10
> [ 69.662214] coda 2040000.vpu: decoder registered as video11
>
> > CONFIG_VIDEO_IMX_PXP=y in the kernel config. Is that the correct
>
> CONFIG_VIDEO_IMX_PXP=y applies to other i.MX SoCs.
>
> > option? Are there others? The device tree entry for the VPU seems to
> > be included in the kernel configuration by default.
> >
> > I grabbed OSSystems meta-gstreamer layer to get 1.16.2, but even with
> > that included I do not appear to get any v4l2 decode plugins:
> >
> > # gst-inspect-1.0 --version
> > gst-inspect-1.0 version 1.16.2
> > GStreamer 1.16.2
> > Unknown package origi
> >
> > # gst-inspect-1.0 |grep v4l
> > imxv4l2video: imxv4l2videosrc: V4L2 CSI Video Source
> > imxv4l2video: imxv4l2videosink: V4L2 CSI Video Sink
>
> This is wrong. You should not install these imx elements when using a
> mainline kernel. These elements are to be used with NXP kernel only.
Have no use case currently so just out of curiosity: Does this also
apply to community kernels - do they support vpu-acceleration?
Andreas
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [meta-freescale] Mainline 5.4 kernel with VPU acceleration on iMX6
2020-04-07 8:44 ` Andreas M?ller
@ 2020-04-07 11:18 ` Fabio Estevam
0 siblings, 0 replies; 6+ messages in thread
From: Fabio Estevam @ 2020-04-07 11:18 UTC (permalink / raw)
To: Andreas Müller; +Cc: Mark Farver, Carlos Rafael Giani, meta-freescale
Hi Andreas,
On Tue, Apr 7, 2020 at 5:44 AM Andreas Müller <schnitzeltony@gmail.com> wrote:
> Have no use case currently so just out of curiosity: Does this also
> apply to community kernels - do they support vpu-acceleration?
Not sure what you mean by "community kernel", but any recent kernel
from kernel.org (such as 5.4.x, 5.5.x, 5.6.x) support VPU acceleration
on i.MX6.
Regards,
Fabio Estevam
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2020-04-07 11:18 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-04-04 23:31 Mainline 5.4 kernel with VPU acceleration on iMX6 Mark Farver
2020-04-05 5:18 ` [meta-freescale] " Carlos Rafael Giani
2020-04-05 22:17 ` Mark Farver
2020-04-06 19:51 ` Fabio Estevam
2020-04-07 8:44 ` Andreas M?ller
2020-04-07 11:18 ` Fabio Estevam
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.