完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
本帖最后由 zealsoft 于 2022-9-20 16:21 编辑 一、 开源软件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是指定编译后文件安装的目录。 然后执行下面的命令:
命令执行完毕,就会在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有两个主要版本:
要在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文件都拷贝到开发板上并正确设置好权限就可以运行了。 四、 测试结果 在input_testpicture插件中带有一幅默认图片,即使你手上没有摄像头,也可以使用该插件测试MJPG-Streamer的功能。 在开发板的终端输入如下命令:
在浏览器中输入http://192.168.0.232:8080/?action=stream就可以查看视频。 |
|
相关推荐
|
|
只有小组成员才能发言,加入小组>>
[技术] 【飞凌嵌入式OK3576-C开发板体验】llama2.c部署
6571 浏览 0 评论
7113 浏览 0 评论
【飞凌嵌入式OK3576-C开发板体验】ssh连接与文件传输
7060 浏览 0 评论
8439 浏览 0 评论
【飞凌嵌入式OK527N-C开发板体验】6.制作h264播放器
7832 浏览 0 评论
6783浏览 2评论
3245浏览 2评论
11138浏览 1评论
5239浏览 1评论
84276浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-2 07:19 , Processed in 0.646723 second(s), Total 40, Slave 29 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号