树莓派4B非官方摄像头+MJPG-stream显示安装全过程/踩雷记录]

本文主要是介绍树莓派4B非官方摄像头+MJPG-stream显示安装全过程/踩雷记录],希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

树莓派4B非官方摄像头+MJPG-stream显示安装全过程/踩雷记录]


前言

最近尝试树莓派非官方摄像头采集数据,遇到了了一些问题,在这里做记录。


提示:以下是本篇文章正文内容,下面案例可供参考

一、环境配置

1.摄像头检查
sudo raspi-config
在这里插入图片描述在这里插入图片描述在这里插入图片描述选择 【是】随后重启树莓派

重启完之后,我们的基本的操作就完成了,下来来看看/dev下面是否存在摄像头设备的问题:
ls /dev
查看是否有video 0,如果有的话,说明摄像头正常。

注:可能提示这样的问题(如果在以上工作都完成的情况下,摄像头还是不能正常的使用或者驱动,请先检查硬件的连接的问题,可能是排线没有很好的插稳,或者是摄像头本身的问题。

2.安装库
这里参考了树莓派实验室的资料,可以打开链接
添加链接描述
打开终端输入以下命令:

sudo apt-get update
sudo apt-get install subversion
sudo apt-get install libjpeg8-dev
sudo apt-get install imagemagick
sudo apt-get install libv4l-dev
sudo apt-get install cmake
sudo apt-get install git
sudo git clone https://github.com/jacksonliam/mjpg-streamer.git
cd mjpg-streamer/mjpg-streamer-experimental
sudo make all
sudo make install

就此,安装完成,我在这些地方没有遇到什么问题,如果git clone比较慢的话可以换源,一开始我换了清华镜像,后来发现配置opencv的时候一直出问题,就问客服要了配置好的环境。
普通usb,直接输入以下命令:

./mjpg_streamer -i "./input_uvc.so" -o "./output_http.so -w ./www"

然后!!!我就开始报错…

二、奇奇怪怪的问题们

1. init_VideoIn failed

出现这个问题的原因是摄像头不支持MJPG是YUV格式的,报错如下:

crw-r–r-- 1 root root 81, 0 Jan 1 08:00 /dev/video0
root@OpenWrt:/# /etc/init.d/mjpg-streamer start
root@OpenWrt:/# MJPG Streamer Version.: 2.0
i: Using V4L2 device.: /dev/video0
i: Desired Resolution: 640 x 480
i: Frames Per Second.: 5
i: Format…: MJPEG
Unable to set format: Invalid argument
Init v4L2 failed !! exit fatal
i: init_VideoIn failed

打开mjg-streamer-------plugins---------input_uvc找到input_uvc.c文件,打开大概在141行左右的位置把int width = 640, height = 480, fps = -1, format = V4L2_PIX_FMT_MJPEG , i; 把 V4L2_PIX_FMT_MJPEG 改成 V4L2_PIX_FMT_YUYV
但是在修改这部分的时候我的mipg-streamer保存路径是默认的,所以在编译器修改代码后提示没有权限修改文件。
故打开终端输入

sudo chmod 777 input_uvc.c
ls al

随后需要重新编译
在这里插入图片描述绿了就表示这个文件可读可写可更改 随后再次编译

cd mjpg-streamer/mjpg-streamer-experimental
sudo make all
sudo make install

完成了所有的基础操作~

2.显示图像

查看树莓派所在的IP地址

ifconfig

我的IP就是172.20.10.5:
在这里插入图片描述输入命令启动摄像头

./mjpg_streamer -i "./input_uvc.so" -o "./output_http.so -w ./www"

在这里插入图片描述

在这里插入图片描述虽然报错了,但是没有影响,用树莓派或者连在同一网下的另一台PC输入

http://172.20.10.5:8080/      [自己的IP:8080]

在这里插入图片描述也可以用VLC播放器,PC播放就很卡,延迟大概有个1–2S

我一开始输入了 http://172.20.10.5:8080/?action=stream,在VLC和网页都无法显示…所以建议大家直接用http://172.20.10.5:8080/

至此,踩坑结束…

这篇关于树莓派4B非官方摄像头+MJPG-stream显示安装全过程/踩雷记录]的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/311669

相关文章

gitlab安装及邮箱配置和常用使用方式

《gitlab安装及邮箱配置和常用使用方式》:本文主要介绍gitlab安装及邮箱配置和常用使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装GitLab2.配置GitLab邮件服务3.GitLab的账号注册邮箱验证及其分组4.gitlab分支和标签的

SpringBoot3应用中集成和使用Spring Retry的实践记录

《SpringBoot3应用中集成和使用SpringRetry的实践记录》SpringRetry为SpringBoot3提供重试机制,支持注解和编程式两种方式,可配置重试策略与监听器,适用于临时性故... 目录1. 简介2. 环境准备3. 使用方式3.1 注解方式 基础使用自定义重试策略失败恢复机制注意事项

MySQL MCP 服务器安装配置最佳实践

《MySQLMCP服务器安装配置最佳实践》本文介绍MySQLMCP服务器的安装配置方法,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下... 目录mysql MCP 服务器安装配置指南简介功能特点安装方法数据库配置使用MCP Inspector进行调试开发指

在Windows上使用qemu安装ubuntu24.04服务器的详细指南

《在Windows上使用qemu安装ubuntu24.04服务器的详细指南》本文介绍了在Windows上使用QEMU安装Ubuntu24.04的全流程:安装QEMU、准备ISO镜像、创建虚拟磁盘、配置... 目录1. 安装QEMU环境2. 准备Ubuntu 24.04镜像3. 启动QEMU安装Ubuntu4

Python UV安装、升级、卸载详细步骤记录

《PythonUV安装、升级、卸载详细步骤记录》:本文主要介绍PythonUV安装、升级、卸载的详细步骤,uv是Astral推出的下一代Python包与项目管理器,主打单一可执行文件、极致性能... 目录安装检查升级设置自动补全卸载UV 命令总结 官方文档详见:https://docs.astral.sh/

Nexus安装和启动的实现教程

《Nexus安装和启动的实现教程》:本文主要介绍Nexus安装和启动的实现教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Nexus下载二、Nexus安装和启动三、关闭Nexus总结一、Nexus下载官方下载链接:DownloadWindows系统根

Java SWT库详解与安装指南(最新推荐)

《JavaSWT库详解与安装指南(最新推荐)》:本文主要介绍JavaSWT库详解与安装指南,在本章中,我们介绍了如何下载、安装SWTJAR包,并详述了在Eclipse以及命令行环境中配置Java... 目录1. Java SWT类库概述2. SWT与AWT和Swing的区别2.1 历史背景与设计理念2.1.

统一返回JsonResult踩坑的记录

《统一返回JsonResult踩坑的记录》:本文主要介绍统一返回JsonResult踩坑的记录,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录统一返回jsonResult踩坑定义了一个统一返回类在使用时,JsonResult没有get/set方法时响应总结统一返回

maven私服配置全过程

《maven私服配置全过程》:本文主要介绍maven私服配置全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录使用Nexus作为 公司maven私服maven 私服setttings配置maven项目 pom配置测试效果总结使用Nexus作为 公司maven私

Go学习记录之runtime包深入解析

《Go学习记录之runtime包深入解析》Go语言runtime包管理运行时环境,涵盖goroutine调度、内存分配、垃圾回收、类型信息等核心功能,:本文主要介绍Go学习记录之runtime包的... 目录前言:一、runtime包内容学习1、作用:① Goroutine和并发控制:② 垃圾回收:③ 栈和