【原创】IP摄像头技术纵览(五)---网络摄像头初试—mjpg-streamer移植与部署

本文介绍了mjpg-streamer作为网络摄像头软件的评测与移植过程。对比了vgrabbj、spacview、Luvcview和mjpg-streamer,推荐mjpg-streamer因其资源占用少,适合嵌入式系统。详细阐述了mjpg-streamer的移植步骤,包括交叉编译jpeg库和mjpg-streamer本身,并展示了在Linux系统上的部署与使用。此外,还探讨了mjpg-streamer的工作流程和视频传输原理。
摘要由CSDN通过智能技术生成

【原创】IP摄像头技术纵览(五)—网络摄像头初试—mjpg-streamer移植与部署

本文属于《IP摄像头技术纵览》系列文章之一:

Author: chad
Mail: linczone@163.com

1、vgrabbj、spacview、Luvcview、mjpg-streamer评测对比

vgrabbj-0.9.6是基于v4l1设计的,与v4l2的API差别很大,该软件已经没有使用或参考价值。

spcaview 也相当古老,并且调用了SDL库,不适合嵌入式系统,不建议研究。

什么是SDL?
SDL(Simple DirectMedia Layer)是一套开放源代码的跨平台多媒体开发库,使用C语言写成。SDL提供了数种控制图像、声音、输出入的函数,让开发者只要用相同或是相似的代码就可以开发出跨多个平台(Linux、Windows、Mac OS X等)的应用软件。目前SDL多用于开发游戏、模拟器、媒体播放器等多媒体应用领域。

luvcview 该程序需要调用V4L2接口以及SDL库,可以进行视频采集与显示,有一定的参考价值。
我在ubuntu下测试情况如下:
这里写图片描述
摄像头格式为MJPEG,而luvcview默认格式为yuv,所以,在ubuntu上运行时使用命令:

./luvcview -f jpg

注:luvcview 编译时需要调用SDL库与pthread库。

强烈推荐:mjpg_streamer。
mjpg‐streamer是一个开源软件,用于从webcam摄像头采集图像,把它们以流的形式通过基于ip的网络传输到浏览器,关于它的介绍网上有一大堆,读者可自行了解;

mjpg-streamer 需要很少的CPU和内存资源就可以工作,大部分编码工作都是摄像头完成的,所以对于内存和性能都有限的嵌入式系统十分适用。网上关于它的移植也很多,下面给出移植的过程与在编译过程中出现的一些问题与解决方法。
在移植Mjpg-streamer之前必须移植好libjpeg;因为在mjpg-streamer源码包下的README文件中有下面一句话:

the input plugin “input_uvc.so” depends on libjpeg, make sure it is installed.

2、mjpg-streamer移植与部署

(1)下载源码:

jpegsrc.v6b.tar.gz
mjpg-stream

  • 2
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值