问题描述
我在 Nvidia TX1 开发套件上使用 8 通道基于 PCI 的帧采集器.我正在使用 这个驱动程序.我可以使用 mplayer、streamer 或 VLC 轻松播放多达 3/4 个 v4l2 摄像机源,但是当我开始播放第 5 个摄像机源时,我总是遇到内存分配错误,无论我使用什么软件来播放它.我还编写了自己的程序来捕获和显示 v4l2 流,但我遇到了同样的问题.确切的错误是 ioctl 命令给出的 error 12
:
I'm using an 8-channel PCI-based framegrabber on Nvidia TX1 dev kit. I'm using this driver along with it. I can play up to 3/4 v4l2 camera feeds comfortably using mplayer, streamer or VLC but I always get a memory allocation error when I start playing the 5th camera feed, irrespective of the software I use to play it. I also wrote my own program to capture and display v4l2 streams but I'm getting the same problem. The exact error is an error 12
given by the ioctl command:
ioctl(fd, VIDIOC_REQBUFS, &req)
我已经在一台独立的 PC 上试用了这个帧抓取器和设备,它运行得非常好.
I have tried this framegrabber and device on a standalone PC and it works perfectly fine.
任何建议都会有所帮助.
Any suggestions would be helpful.
推荐答案
我在构建内核时将 CONFIG_CMA_SIZE_MBYTES 变量从 16 更改为 32 让它运行起来.
Got it running my changing the CONFIG_CMA_SIZE_MBYTES variable from 16 to 32 while building the kernel.
这篇关于打开多个 v4l2 源时 VIDIOC_REQBUFS 错误 12的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!