Freescale / gstreamer-imx

GStreamer 1.0 plugins for i.MX platforms
Other
183 stars 127 forks source link

Can't compile IPU component #238

Closed dmitry-pozhidaev closed 3 years ago

dmitry-pozhidaev commented 5 years ago

Hi Buildroot 2017.02. GStreamer1 1.14.1 Kernel 4.19.45

Got error on configure build stage of gst-imx:

checking for linux/fb.h and the IPU header linux/ipu.h : no IPU elements will not be built - headers not found

4.19.45 kernel's headers have no ipu.h file

Please shed light on this issue...

dmitry-pozhidaev commented 5 years ago

I got ipu.h from oldest kernels (4.9) and build was sucess. I try use imxipuvideotransform and it dont work correctly. But it is other issue thread...

dmitry-pozhidaev commented 5 years ago

19680007 [connectionview] void VideoManager::doStart(const QJsonObject&):421 Create pipeline from string: Filesrc location=/ext/ssd2/Video/elton_salt_lake2.mp4 ! qtdemux ! h264parse ! v4l2h264dec capture-io-mode=dmabuf ! imxipuvideotransform ! video/x-raw, format=RGBA ! glupload ! qmlglsink name=qmlsink sync=true" 0:00:06.931599667 7923 0x1c0f900 WARN glwindow gstglwindow.c:293:gst_gl_window_new: Could not create window. user specified (null), creating dummy window 0:00:06.937469001 7923 0x1c0f900 ERROR imxipudevice device.c:57:gst_imx_ipu_open: could not open /dev/mxc_ipu: No such file or directory 0:00:06.938565667 7923 0x1c0f900 ERROR imxipuallocator allocator.c:165:gst_imx_ipu_allocator_init:<GstImxIpuAllocator@0x1b2fee8> could not open IPU device 0:00:06.938859667 7923 0x1c0f900 ERROR imxipudevice device.c:57:gst_imx_ipu_open: could not open /dev/mxc_ipu: No such file or directory 0:00:06.938922001 7923 0x1c0f900 ERROR imxipublitter blitter.c:104:gst_imx_ipu_blitter_init:<GstImxIpuBlitter@0x282c000> could not open IPU device 0:00:06.939046001 7923 0x1c0f900 ERROR imxipuallocator allocator.c:66:gst_imx_ipu_alloc_phys_mem:<imxipuallocator0> could not allocate 2048 bytes of physical memory: Bad file descriptor 0:00:06.939107334 7923 0x1c0f900 WARN imxphysmemallocator phys_mem_allocator.c:176:gst_imx_phys_mem_allocator_alloc:<imxipuallocator0> could not allocate memory block with 2048 bytes 0:00:06.939156001 7923 0x1c0f900 WARN GST_BUFFER gstbuffer.c:907:gst_buffer_new_allocate: failed to allocate 2048 bytes 0:00:06.939318667 7923 0x1c0f900 ERROR imxipublitter blitter.c:522:gst_imx_ipu_blitter_allocate_internal_fill_frame:<imxipublitter0> could not allocate internal fill frame 0:00:06.939424001 7923 0x1c0f900 ERROR imxipuvideotransform video_transform.c:177:gst_imx_ipu_video_transform_start:<imxipuvideotransform0> could not create IPU blitter 0:00:06.939512334 7923 0x1c0f900 ERROR imxblittervideotransform video_transform.c:262:gst_imx_blitter_video_transform_change_state:<imxipuvideotransform0> start() failed

n00b42 commented 4 years ago

As far as I know, you need a specific kernel from NXP that provides a different IPU driver that offers a device interface /dev/mxc_ipu.

Having a similar problem...

dv1 commented 3 years ago

As @n00b42 said, you need an imx-kernel for this. Mainline kernels will not work, since they do not have the necessary mxc_ipu device.