mjpg-stream 视频服务 (1)| 简介与配置树莓派使用
源码地址为:https://github.com/jacksonliam/mjpg-streamer
Mjpg简介:
(1)mjpg-streamer是一个命令行应用程序,它将JPEG帧从一个或多个输入插件复制到多个输出插件。它可用于通过基于IP的网络将JPEG文件从网络摄像头流式传输到各种类型的查看器,如Chrome,Firefox,Cambozola,VLC,mplayer和其他能够接收MJPG流的软件。
(2)它最初是为嵌入式设备编写的,在RAM和CPU方面资源非常有限。其前身“uvc_streamer”的创建是因为Linux-UVC兼容相机直接生成JPEG数据,即使是运行OpenWRT的嵌入式设备,也可以实现快速和流畅的M-JPEG流。输入模块“input_uvc.so”从连接的网络摄像头捕获这样的JPG帧。mjpg-streamer现在支持各种不同的输入设备
源码树为:
└─mjpg-streamer └─mjpg-streamer-experimental ├─cmake ├─plugins │ ├─input_control │ ├─input_file │ ├─input_http │ ├─input_opencv │ │ └─filters │ │ ├─cvfilter_cpp │ │ └─cvfilter_py │ │ └─cmake │ ├─input_ptp2 │ ├─input_raspicam │ │ └─mmal │ │ ├─core │ │ ├─util │ │ └─vc │ ├─input_testpicture │ │ └─pictures │ ├─input_uvc │ ├─output_autofocus │ ├─output_file │ │ └─examples │ ├─output_http │ ├─output_rtsp │ ├─output_udp │ ├─output_viewer │ └─output_zmqserver ├─scripts └─www
其中:
下载后如图所示,主要是 plugins, www, mjpg_streamer.h 头文件跟mjpg_streamer.c源码
其他都是一些打包方式,让我觉得满意的是有了ros_mjpg ,以及Dockerfile,真的是应用很广。
解释一下这些文件大概含义:
plugins目录: 一些usb摄像头的数据采集和传输的功能子函数,主要是input和output方式 www目录:主要是在使用浏览器浏览时,html界面上一些功能。 mjpg-streamer.c & .h:主要实现命令参数的解析及调用相关线程运行功能子函数
有了上文大概了解,使用也很方便;
这里,通过Raspberry 3B+ 进行介绍:(暂时使用局域网内进行图像传输,其实后面可以通过配置完成全网可视)
1.更新树莓派
sudo apt-get update && sudo apt-get upgrade -y
更新很快,如果您的镜像使用国可能有点慢-->> 可以跟我一样换成国内镜像。
2.开启摄像头
sudo raspi-config (必须sudo ) 然后选择 ‘5 interfacing options’中的‘camera’然后enable,之后树莓派将重启(需要重启)(步骤如下图)
3.查看是否配置好摄像头
ls /dev
此命令,通过ls /dev 查外设,若出现 video0 可证明摄像头已经被树莓派检测到
4.安装必要库
sudo apt-get update sudo apt-get install subversion sudo apt-get install imagemagick sudo apt-get install libv4l-dev sudo apt-get install cmake sudo apt-get install git
5.下载开源包
sudo git clone https://github.com/jacksonliam/mjpg-streamer.git
6.编译安装
sudo git clone https://github.com/jacksonliam/mjpg-streamer.git
make all
sudo make install
编译安装过程可能有一点慢,建议不使用多线程编译,可能出错
7.运行
./mjpg_streamer -i "./input_uvc.so -d /dev/video0 -n -y -f 25 -r 640x480" -o "./output_http.so -n -w /usr/local/www"
出现上图,可证明已经运行成功
8.打开网页 浏览器输入‘树莓派的ip:8080’即可进入mjpg-streamer界面(如下图)
mjpg-stream 视频服务 (1)| 简介与配置树莓派使用的更多相关文章
- Xinetd服务的安装与配置
Xinetd服务的安装与配置 http://blog.chinaunix.net/uid-21411227-id-1826885.html 1.什么是xinetd xinetd即extended in ...
- Xinetd服务的安装与配置详解
1.什么是xinetd xinetd即extended internet daemon,xinetd是新一代的网络守护进程服务程序,又叫超级Internet服务器.经常用来管理多种轻量级Interne ...
- iNeuOS工业互联平台,.NETCore开发的视频服务组件iNeuVideo,RTSP转WebSocket
目 录 1. 概述... 2 2. 将来集成到iNeuOS平台演示... 3 3. iNeuVideo结构... 3 4. iNeuVideo部署及 ...
- 短视频服务大PK,阿里云、腾讯云、又拍云、七牛云、金山云5强横向对比
继直播后,短视频又再次爆发,在这个风口,国内的各大云厂商也都相继推出了自己的一站式短视频解决方案.上周由于公司短视频功能开发的需要,对比了阿里云.腾讯云.又拍云.七牛云.金山云5家的短视频服务. 先介 ...
- Linux DNS原理简介及配置
Linux DNS原理简介及配置 DNS简介 DNS原理 域名解析的过程 资源记录 DNS BIND安装配置 一.简介 一般来讲域名比IP地址更加的有含义.也更容易记住,所以通常用户更习惯输入域名来访 ...
- CentOS 7 Apache服务的安装与配置
原文出处:http://blog.51cto.com/13525470/2070375 一.Apache简介 Apache 是一个知名的开源Web服务器.早期的Apache服务器由Apache Gro ...
- CentOS 7 Tomcat服务的安装与配置
3422人阅读 http://blog.51cto.com/13525470/2073657 一.Linux下的Java运行环境 Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由S ...
- CentOS 7 Apache服务的安装与配置(转)
https://blog.51cto.com/13525470/2070375 一.Apache简介 Apache 是一个知名的开源Web服务器.早期的Apache服务器由Apache Group来维 ...
- Linux防火墙简介 – iptables配置策略
Linux防火墙简介 – iptables配置策略 Netfilter/iptables简介 要想真正掌握Linux防火墙体系,首先要搞清楚Netfilter和iptables的关系,Netfilte ...
随机推荐
- CocosCreator 快速开发推箱子游戏,附代码
游戏总共分为4个功能模块: - 开始游戏(menuLayer) - 关卡选择(levelLayer) - 游戏(gameLayer) - 游戏结算(gameOverLayer) Creator内组件效 ...
- python编程基础之二十七
列表生成式:[exp for iter_var in iterable] 同样也会有字典生成式,集合生成式,没有元组生成式,元组生成式的语法被占用了 字典生成式,集合生成式,就是外面那个括号换成{} ...
- WampServer配置可局域网访问站点
一 WampServer3.1.7版本 二 需求:项目开发阶段,服务器还未购买,前端需要调用接口进行测试,于是想到了在本地搭设一个站点,可以局域网内访问 三 先为这个项目单独在本地设置一个端口,比如我 ...
- 安装高可用Hadoop生态 (四) 安装Spark
4. 安装Spark 4.1. 准备目录 -bin-without-hadoop.tgz -C /opt/cloud/packages/ -bin-without-hadoop /opt/clo ...
- LeetCode 第 287 号问题:寻找重复数,一道非常简单的数组遍历题,加上四个条件后感觉无从下手
今天分享的题目来源于 LeetCode 第 287 号问题:寻找重复数. 题目描述 给定一个包含 n + 1 个整数的数组 nums,其数字都在 1 到 n 之间(包括 1 和 n),可知至少存在一个 ...
- DCL语句
DCL语句我们现在默认使用的都是root用户,超级管理员,拥有全部的权限.但是,一个公司里面的数据库服务器上面可能同时运行着很多个项目的数据库.所以,我们应该可以根据不同的项目建立不同的用户,分配不同 ...
- windows离线安装sublime插件:ctags
网络上一堆安装ctags教程,可都是在线安装. 花了点时间摸索出了离线安装教程. 1. 准备好sublime 和 package control sublime我用的版本是text 2. text 3 ...
- GSS3 - Can you answer these queries III
题意翻译 nnn 个数, qqq 次操作 操作0 x y把 AxA_xAx 修改为 yyy 操作1 l r询问区间 [l,r][l, r][l,r] 的最大子段和 感谢 @Edgration 提供的 ...
- python问题:IndentationError:expected an indented block
Python语言是一款对缩进非常敏感的语言,给很多初学者带来了困惑,即便是很有经验的Python程序员,也可能陷入陷阱当中.最常见的情况是tab和空格的混用会导致错误,或者缩进不对,而这是用肉眼无法分 ...
- DM7的闪回功能及动态新能视图相关SQL总结
DM7的闪回功能默认是关闭的,需要在dm.ini中设置参数: ENABLE_FLASHBACK = 1 UNDO_RETENTION = 900 意思为可以进行900s以内的闪回查询.下面是使用该功能 ...