本文来源电子发烧友社区,作者:zealsoft, 帖子地址:https://bbs.elecfans.com/jishu_2306609_1_1.html
感谢“电子发烧友网”和飞凌嵌入式公司提供了本次OKA40i-C开发板的评测机会。上次我们介绍了FFmpeg的测试情况,今天进行远程监控的测试。
感谢“电子发烧友网”和飞凌嵌入式公司提供了本次OKA40i-C开发板的评测机会。上次我们介绍了FFmpeg的测试情况,今天进行远程监控的测试。
一、开源软件MJPG-Streamer
上次介绍了使用FFmpeg将USB摄像头的视频转换为视频流发送给PC机。今天来介绍另一个解决方案MJPG-Streamer。MJPG-Streamer的原理是将USB摄像头采集的图像以JPEG格式发送出去,然后持续更新图片形成一个视频流。它的优势有两个:一个是和浏览器的兼容性最好,可以轻松地在浏览器中显示,而无需担心浏览器是否支持Flash或流媒体协议;另外采用JPEG没有前后帧的关联,所以如果出现丢包只影响当前画面,而不会像H.264那样可能连续一段时间的马赛克图像。它的缺点是JPEG流的压缩效率比较低,比H.264浪费带宽。
二、Libjpeg库的编译
MJPG-Streamer要用到libjpeg,所以首先需要编译libjpeg。首先访问http://www.ijg.org/下载源代码,我使用的是最新的9e版本。将源代码解压到jpeg-9e目录后,在该命令下执行configure命令进行配置:
其中的host是指明所使用的编译器,prefix是指定编译后文件安装的目录。
然后执行下面的命令:
-
makemake install

命令执行完毕,就会在prefix所指定的目录下生成4个目录,其中include目录包括所需要的头文件,而lib目录下包括库文件。这些在后面会用到。
编译后需要把libjpeg.so.9.5.0拷贝到开发板的/usr/lib目录下,并建立一个指向该文件的软连接libjpeg.so.9。
另外,开发板原来带有libjpeg.so.8.0.2这个版本。如果不希望安装更新版本,也可以在http://www.ijg.org/files/下载和板子对应的历史版本。
三、MJPG-Streamer的编译
MJPG-Streamer有两个主要版本:
- http://sourceforge.net/projects/mjpg-streamer/,这个是原始版本,不过原作者已经放弃更新了。
- https://github.com/jacksonliam/mjpg-streamer,这个是后续更新的版本。
要在OKA40i-C上使用,只能使用sourceforge那个版本。因为github的版本虽然更新,但是它对内核的版本有要求,至少3.18以上,比较适合树莓派这样的平台。OKA40i-C提供的内核版本是3.10,无法正确处理新版本的某些V4L2消息。另外,github版本采用CMake进行编译,后面所介绍的编译方法也不适用。
在https://sourceforge.net/p/mjpg-streamer/code/HEAD/tree/,点右上的“Download Snapshot”下载最新版的 mjpg-streamer-code-182。这里可以看到两个mjpg-streamer目录。一般使用mjpg-streamer-experimental这个版本,它支持的功能更多一些。

在编译之前,需要先修改plugins/input_UVc目录下的makefile文件,在其中加入如下两行:

这两行的作用就是编译时能够找到我们前面生成的libjpeg库。
如果想修改MJPG-Streamer的插件设置,也可以修改mjpg-streamer-experimental目录下的makefile:

在本次测试中用不到其他插件,所以就采用默认配置。
然后在命令行执行下面的命令就可以编译了。

编译成功后把mjpg_streamer和几个so文件都拷贝到开发板上并正确设置好权限就可以运行了。
四、测试结果
在开发板的终端输入如下命令:
- ./mjpg_streamer -i "input_testpicture.so"

如果使用USB摄像头,需要使用input_uvc.so插件,在开发板的终端输入命令:
- ./mjpg_streamer -i "input_uvc.so -r 800x600" -o "output_http.so"

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
飞凌
+关注
关注
0文章
135浏览量
16795
发布评论请先 登录
相关推荐
热点推荐
【飞凌OK-MX9596-C开发板试用】②体验WIFI、蓝牙、音频、视频,为AI应用打下基础
【飞凌OK-MX9596-C开发板试用】①开箱图赏、跑分测试、yolo大模型三箭齐发 - 飞
发表于 10-21 18:17
【作品合集】飞凌嵌入式OK527N-C开发板测评
针对不同的功能做了深度优化,方便用户二次开发的同时简化用户设计,为您的项目提供良好的评估及设计依据。
活动详情地址:飞凌OK527N-C开发板
发表于 09-22 15:54
【飞凌T527N开发板试用】7寸RGB屏幕适配与TP驱动
Touchscreens input device support--->
再选中 Focaltech Touchscreen
然后重新编译kernel。按照[【飞凌T527N开发板
发表于 08-15 18:06
RK3568开发板暗藏32位兼容开关?飞凌嵌入式带你一键解锁!
RK3568是一款64位处理器,飞凌嵌入式为其提供的交叉编译器也是64位的,然而部分用户可能需要在RK3568开发板上运行32位应用。本文将详细阐述如何使用32位交叉编译器,编译出32位应用,并使其能够在
【飞凌T527N开发板试用】飞凌T527N开发板开箱评测
很高兴收到飞凌嵌入式申请的飞凌T527N开发板,板子的正反面如下图所示:
可以看到,板子上面的资源非常的丰富,有CAN,485, SIM卡槽
发表于 07-04 11:43
【飞凌T527N开发板试用】开箱与开发板介绍视频
【飞凌嵌入式OK527N-C开发板开箱介绍】 https://www.bilibili.com/video/BV1sfKSzmEtU/?share_source=copy_web&
发表于 06-26 09:43
5分钟学会网络服务搭建!飞凌i.MX9352开发板 + Linux 6.1实战示例
本文就将以飞凌嵌入式OK-MX9352-C开发板(搭载了在工业物联网领域广泛应用的NXP i.MX9352处理器)为平台,介绍如何在Linu
性能强悍!合众HZ-RK3568开发板试用体验
月19日 评测数量: 10块 更多热点文章阅读 基于平头哥TH1520芯片,润开鸿HH-SCDAYU800A开发板免费试用 RISC-V开发板深度评测!顶级开发板免费
有奖丨米尔 NXP i.MX91开发板免费试用来啦
米尔与NXP合作发布的新品基于NXPi.MX91应用处理器的MYD-LMX91开发板免费试用名额来啦~~米尔提供了3套价值588元的MYD-LMX91开发板发起试用活动您不仅可以免费体
5分钟学会网络服务搭建,飞凌i.MX9352 + Linux 6.1实战示例
本文将以飞凌嵌入式OK-MX9352-C开发板(搭载了在工业物联网领域广泛应用的NXP i.MX9352处理器)为平台,介绍如何在Linux
明远智睿SSD2351开发板:视频监控领域的卓越之选
随着安全防范意识的提高,视频监控在各个领域得到了广泛应用。明远智睿SSD2351开发板凭借其出色的性能和特性,成为视频监控领域的卓越之选,为
发表于 05-30 10:24
3.1s启动!飞凌嵌入式i.MX93开发板部署LVGL,打造更高效的GUI
近期,飞凌嵌入式为基于NXP i.MX93系列处理器打造的OK-MX9352-C开发板成功移植了LVGL v8.3,不仅界面美观精致,启动速

【飞凌OKA40i-C开发板试用体验】远程视频监控
评论