【OK210试用体验】进阶篇(1)视频图像采集之MJPG-streamer编译(Ubuntu系统下)

时间:2022-09-10 00:56:00

转自: http://bbs.elecfans.com/jishu_510084_1_1.html

本篇主要内容分为:

嵌入式视频图像开源库

    mjpg-streamer简介

    mjpg-streamer在Ubuntu下编译



【OK210试用体验】进阶篇(1)视频图像采集之MJPG-streamer编译(Ubuntu系统下)

一、嵌入式视频图像开源库

    在嵌入式系统中,常用的视频图像处理开源系统有:luvcview、cheese、motion、mjpg-streamer或者ffmpeg,其中:

  • luvcview: 基于V4L2、SDL的程序,支持拍照录像,参数调节,代码精简实用,适合学习V4L2编程
  • cheese:基于V4L2、GTK的程序,支持拍照录像,特殊视频效果
  • motion:移动侦测拍照程序
  • mjpg-streamer:网络摄像机程序

二、mjpg-streamer简介

    MJPG-streamer,是用于从webcam摄像头采集图像,把他们以流的形式通过基于ip的网络传输到浏览器如Firehox,Cambozola,VLC播放器,Windows的移动设备或者其他拥有浏览器的移动设备。它可以利用某些webcams的硬件压缩功能来降低服务器CPU的开销。它为嵌入式设备和一些常规服务器提供了一个轻量且更少CPU消耗的方案,因为它无需为视频帧压缩浪费大量的计算效率。

    值得一提地是,mjpg-sreamer源码的下载,由于其一直没有更新,现存网上的编译教程都是“老式”的,不适合现在的编译环境(linux-3.x内核),故多数人是失败的。网上的下载地址主要有两个:地址1,地址2,经测试,都不能编译成功,具体正确的地址,见下面。

    一般下载后,mjpg-streamer下包含如下目录:其中mjpg-streamer提供了各个输入输出设备组件,uvc-streamer提供了uvc-streamer的可执行目录,mjpeg-client分别有linux和Window的客户端测试程序。

【OK210试用体验】进阶篇(1)视频图像采集之MJPG-streamer编译(Ubuntu系统下) 

mjpg-streamer的工作流程,大致如下所示:

【OK210试用体验】进阶篇(1)视频图像采集之MJPG-streamer编译(Ubuntu系统下) 

三、mjpg-streamer在Ubuntu下编译

1 安装前准备

1)sudo apt-get install libsdl1.2-dev subversion

2)sudo apt-get install
libjpeg62-dev否则出现如下错误

【OK210试用体验】进阶篇(1)视频图像采集之MJPG-streamer编译(Ubuntu系统下)

3)sudo apt-get install imagemagick否则出现如下错误

【OK210试用体验】进阶篇(1)视频图像采集之MJPG-streamer编译(Ubuntu系统下) 

2 下载mjpeg-streamer

git clone https://github.com/shrkey/mjpg-streamer

cd mjpg-streamer/mjpg-streamer

【OK210试用体验】进阶篇(1)视频图像采集之MJPG-streamer编译(Ubuntu系统下) 

3 编译安装

make

sudo make install

【OK210试用体验】进阶篇(1)视频图像采集之MJPG-streamer编译(Ubuntu系统下)

ps:重新编译前,需要执行

make clean(相对make)

make uninstall(相对make install)



4 测试

运行./start.sh

(1)网页测试

【OK210试用体验】进阶篇(1)视频图像采集之MJPG-streamer编译(Ubuntu系统下)



(2)网页视频流测试

【OK210试用体验】进阶篇(1)视频图像采集之MJPG-streamer编译(Ubuntu系统下)



(3)Window客户端测试

【OK210试用体验】进阶篇(1)视频图像采集之MJPG-streamer编译(Ubuntu系统下) 



(4)VLN播放器测试

【OK210试用体验】进阶篇(1)视频图像采集之MJPG-streamer编译(Ubuntu系统下)