i.mxu6ll-移植mjpg-streamer:局域网下远程监控安防项目
踩坑原因:
- 正点原子出厂系统报错,具体报错信息忘记了。但是我初步判断是缺少v4l-utils,但我朋友提出反对意见:Linux天然支持v4l2,我仍然试图安装v4l-utils。但是出厂系统不支持apt安装命令,在各种尝试修改镜像源之后只能更换根文件系统。
- 更换根文件系统(Ubuntu16.04)一直不成功,体现为不能正常登录系统,各种更换mfgtool、设备数、u-boot,内核镜像之后终于成功,原因大概是因为没有事先在虚拟机挂载根文件系统的时候给root用户设置密码(但是我记得我设置了的),只是后来又设置了一次之后突然成功了,很玄幻。
- 这一次终于成功运行mjpg-streamer,不在提示确v4l-utils,但是提示inin_V4l2 exit fatal。一开始的报错信息让我认为是摄像头不支持mjpg(streamer默认格式),但是据说streamer支持智能选择格式,且通过正点原子出厂源码进行测试,该摄像头支持该格式,不过第一个支持的格式是YUYV,我各种尝试修改streamer源代码,有时候起作用,有时候不起作用,最后找到命令行的方式修改这一选项。但是最终还是报错提示设备capture device not supported。我各种翻阅源代码怎么都找不出来错误。最终发现是设备节点给错了,不应该给默认的/dev/video0。我在插入摄像头之前没有查看设备节点,它其实已经有了两个video相关节点,我的摄像头其实是video2