设为首页 加入收藏

TOP

arm mini2440 基于v4l2 ffmpeg x264的视频远程监控
2014-11-24 07:37:37 来源: 作者: 【 】 浏览:0
Tags:arm mini2440 基于 v4l2 ffmpeg x264 视频 远程监控

网络上盛传的基于mini2440的摄像头监控一般是基于 MJPEG-Streamer。这种方法利用的是V4L2的底层驱动,然后配合mjpeg这种格式的流传输,然后通过浏览器浏览视频和控制。


下面用一个更接近真实的IP-camera的方案来实现。


文本照搬他的代码,只是将他的webcam_server交叉编译到arm上,webcam_shower编译到pc上。


这种方案是用的V4L2的视频驱动,然后配合ffmpeg、x264的软件编解码,通过udp上传至pc显示,视频的编解码真的非常麻烦,幸好有很多开源的编解码库可以使用,几百行的代码就可以实现h.264的流编码与传输。


usb摄像头得到的数据格式一般是YUV422,如果用的是cmos 摄像头可能是raw原始数据格式,YUV422,是在raw基础上色彩抽点编码,因为人眼对亮度的敏感大于对色彩的敏感,所以并非对所有的色彩编码,这样的数据量会非常的大,视频编解码格式就不讨论了,很多很复杂,当然,你会了,就不会觉得难。


ffmpeg和x264的作用是将YUV422再编码成H.264


上图看效果,这是在linux中接的图,窗口中显示的是从2440usb摄像头上传上来的视频


arm mini2440 基于v4l2 ffmpeg x264的视频远程监控


这是实物图,手机拍的


arm mini2440 基于v4l2 ffmpeg x264的视频远程监控


废话少说,一步一步实现


1、平台


硬件:arm mini2440,usb摄像头


2、源文件


ffmpeg-0.10.1.tar.gz


last_x264.tar.bz2


zlib-1.2.5.tar.gz (mini2440中没有libz.so,但是程序运行时需要这个库支持,所以下载源文件交叉编译)


以上文件只要会搜索的人都能找到


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇基于V4L2的Webcam应用 本地预监(.. 下一篇Ubuntu 10.04安装编译FFmpeg【图】

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·Redis 分布式锁全解 (2025-12-25 17:19:51)
·SpringBoot 整合 Red (2025-12-25 17:19:48)
·MongoDB 索引 - 菜鸟 (2025-12-25 17:19:45)
·What Is Linux (2025-12-25 16:57:17)
·Linux小白必备:超全 (2025-12-25 16:57:14)