gstreamer dmabuf io-mode error

Andrea andrea.rossetto at videomed.biz
Thu Aug 22 07:33:55 UTC 2019


Hi,
I'm writing a linux kernel module (v4l2) and I have implemented the mmap
io-mode successfully. The main problem is that I can't go over 30fps at
1080p (I need 60fps), I think that the mmap io-mode it's not the best
(efficient) way to transfer the buffers between my driver and gstreamer
(maybe the limited fps the low fps is caused by the use of mmap). To improve
I'm trying to implement the dmabuf mode, but I've some issues:

I've implemented the expbufs ioctl, in this function I create a dma_buf and
a new fd for the dma_buf, but when I start the pipeline I get this error:

GET_DMA_PHY: Invalid argument
Failed to import fd : 22
gst-launch-1.0: base/omx_component/omx_component_enc.cpp:375: virtual void
EncComponent::TreatEmptyBufferCommand(Task*): Assertion `success' failed.
[  272.441145] VFS: Close: file count is 0
[  272.447658] VFS: Close: file count is 0
[  272.457183] VFS: Close: file count is 0

These are the fds created during the expbufs call

[  272.329198] expbuf buf0 fd 21
[  272.338884] expbuf buf1 fd 23
[  272.344981] expbuf buf2 fd 25
[  272.349528] expbuf buf3 fd 27
[  272.354089] expbuf buf4 fd 29
[  272.358636] expbuf buf5 fd 31
[  272.363176] expbuf buf6 fd 33
[  272.367933] expbuf buf7 fd 35
[  272.372484] expbuf buf8 fd 37
[  272.377032] expbuf buf9 fd 39
[  272.381582] expbuf buf10 fd 41
[  272.386215] expbuf buf11 fd 43
[  272.390859] expbuf buf12 fd 45
[  272.395504] expbuf buf13 fd 47
[  272.400134] expbuf buf14 fd 49
[  272.404770] expbuf buf15 fd 51

I get no errors using --gst-debug = v4l2 *: 6, but not even more
information.




--
Sent from: http://gstreamer-devel.966125.n4.nabble.com/


More information about the gstreamer-devel mailing list