本篇试用报告由发烧友zealsoft提供,感谢zealsoft的支持。飞凌嵌入式会在电子发烧友和电路城论坛持续开展开发板有奖试用活动,更有京东E卡等着你!欢迎大家的持续关注。

“感谢飞凌嵌入式公司提供了本次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命令进行配置:

1

./configure --host=ARM-linux-gnueabihf --prefix=/mnt/boaled/jpeg-9e/_install/

其中的host是指明所使用的编译器,prefix是指定编译后文件安装的目录。

然后执行下面的命令:

1

make

2

make 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有两个主要版本(建议在PC打开链接):

1.http://sourceforge.net/projects/mjpg-streamer/这个是原始版本,不过原作者已经放弃更新了。

2.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:

在本次测试中用不到其他插件,所以就采用默认配置。

然后在命令行执行下面的命令就可以编译了。

1

make CC=arm-linux-gnueabihf-gcc

编译成功后把mjpg_streamer和几个so文件都拷贝到开发板上并正确设置好权限就可以运行了。

四. 测试结果

在input_testpicture插件中带有一幅默认图片,即使你手上没有摄像头,也可以使用该插件测试MJPG-Streamer的功能。

在开发板的终端输入如下命令:

1

./mjpg_streamer -i "input_testpicture.so"

如果使用USB摄像头,需要使用input_uvc.so插件,在开发板的终端输入命令,结果如下图所示:

1

./mjpg_streamer -i "input_uvc.so -r 800x600" -o "output_http.so"

发烧友实测 | 飞凌嵌入式OKA40i-C开发板试用体验之远程视频监控相关推荐

  1. 飞凌嵌入式全志A40i开发板试用体验之 称重系统-开发环境搭建(1)

    称重系统主要采用OKA40i-C开发板作为主控板,外接hx711模块以及压电传感器作为重量检测单元,然后通过QT将称重界面显示出来. 1. QT移植 在QT移植之前需要搭建pc上的Ubuntu虚拟机, ...

  2. 飞凌嵌入式 全志A40i开发板试用体验 之 模块初体验

    1.通过串口连接开发板 2.按照文档中的教程加载wifi模块 Linux insmod(insert module)命令用于载入模块. 3.Ping 路由器

  3. 飞凌嵌入式i.MX6Q开发板试用报告

    作为飞凌开发板的老用户,嵌入式开发这几年使用过多款飞凌的开发板,给我留下的印象是硬件皮实耐用,系统及软件制作精良,相关文档也非常丰富.飞凌的资料及支持非常完善,开发板拿到手上手快,几乎达到了可以作为教 ...

  4. 移植Opus音频编解码库到FreeScale iMX6q(飞凌嵌入式的OKMX6Q-C开发板)平台

    移植Opus音频编解码库到FreeScale iMX6q(飞凌嵌入式的OKMX6Q-C开发板)平台 交叉编译器 使用飞凌提供的最新版交叉编译工具链,fsl-imx-x11-glibc-x86_64-m ...

  5. qt工程在linux系统里颜色显示错误_【飞凌嵌入式RK3399开发板试用体验】+QT开发环境搭建测试(二)...

    作者:飞扬的青春 在拿到开发板之后,已经体验了Android操作系统,接下来就是体验Linux下的开发,本次以QT的一个小案例来测试下. 首先是自己先搭建了一个Ubuntu18.04的虚拟机,使用真机 ...

  6. 飞凌嵌入式iMX8MP 开发板试用体验--编译内核源码

    FETMX8MP-C核心板基于NXP i.MX 8M Plus处理器开发设计,该系列处理器专注于机器学习与视觉.高级多媒体以及具有高可靠性的工业自动化.旨在满足智慧城市.工业互联网.智能医疗.智慧交通 ...

  7. 实测|飞凌嵌入式OK3588-C开发板4G模组的使用与测试

    本篇试用报告由发烧友  ouxiaolong提供,感谢ouxiaolong的支持.飞凌嵌入式会持续开展开发板有奖试用活动,更有京东E卡等着你!欢迎大家的持续关注. 飞凌嵌入式OK3588-C开发板是一 ...

  8. 飞凌嵌入式NXP i.MX8MMini 开发板试用体验

    收到飞凌OKMX8MM-C开发板进行测评.这款属于工控板,采用核心板和地板设计思路. CPU芯片等部分制成核心板,外设芯片接口部分制成底板,把核心板和底板组装在一起成为一块功能完整的开发板.软件也可简 ...

  9. 飞凌嵌入式 全志A40i系列开发板试用体验之开箱

    很高兴能参加飞凌嵌入式开发板的免费试用活动,本来只是抱着试试的态度申请了,没想到还真的申请到了,这次我申请到的开发板时OKA40i-C. 我原来对嵌入式linux并不熟悉,在大学的时候做的都是stm3 ...

最新文章

  1. Usage and Idioms——Categories
  2. 清华NLP实验室刘知远:如何写一篇合格的NLP论文
  3. c语言程序设置分数,用C语言编程平均分数
  4. Channel延续篇
  5. 乐高无限的服务器怎么建,乐高无限悬空房子怎么建造 建造方法介绍
  6. 干货:用Python玩转数据可视化,炫酷图表是这样做出来的
  7. sql cast()函数
  8. 一基于Fourinone实现分布式计算上手demo
  9. 【AC军团周报(第一周)第一篇】线段树从入门到入土【1】
  10. 2018 “百度之星”程序设计大赛 - 初赛(A)P1001度度熊拼三角(贪心)
  11. Linux应用调试-strace命令
  12. Oracle J.D.Edwards技术与应用
  13. 徐小湛概率论与数理统计课件_考研数学 徐小湛教授线性代数90讲
  14. Qt+VS+opencv+zbar打开本机摄像头实现二维码扫码识别功能
  15. 关于打开CMD窗口一闪而退的解决方法
  16. solaris snoop 抓包
  17. 电脑上找不到蓝牙图标,怎么打开蓝牙,三种方法教你打开蓝牙。
  18. 你吃的外卖,半年前就做好了
  19. 百年辉煌师心向党 · 德高道厚幸福敬中——2021年石家庄敬业中学教师节庆祝大会
  20. 【网络】什么是HTTPS证书?

热门文章

  1. 通俗理解Hilbert希尔伯特空间
  2. Proteus串口通信
  3. 制定合理的浮动薪酬制度
  4. linux换系统硬盘
  5. 中本聪会计算机编程,中本聪要暴露了?仅需简短片段 AI就能“指认”编代码的程序员...
  6. [PM]产品经理的主要职责有哪些?
  7. mindmanager2022如何设置切换中文?
  8. uni-app播放在线mp3格式录音
  9. 必看 | 2020年人工智能产业报告汇总
  10. 微耕门禁、Monitor监控等设备的二次开发