彻底玩转 S3C2440 Linux
摄像头(包括USB和COMS摄像头)
转载时请注明出处和作者联系方式 文章出处:http://www.lt-net.cn 作者联系方式:刘敏 <qtgirl666@gmail.com>
编译系统 |
Ubuntu10.04 |
交叉编译器 |
arm-linux-gcc 4.3.3 |
硬件设备 |
LT2440开发板 USB或者CMOS摄像头 |
测试软件 |
mjpg_streamer |
依赖库 |
SDL-1.2.14 jpegsrc.v8b.tar.gz |
上次我们编译好了mjpg_streamer,今天我来一一测试他的个个功能模块,默认的编译是不支持CMOS摄像头的,所以在下一篇再介绍CMOS摄像头的支持。mjpg_streamer是通过命令行来加载输入输出模块的 下面是mjpg_stream
的help 帮助你了解命令行格式
[root@LuTong /]#mjpg_streamer
--help ----------------------------------------------------------------------- Usage:
mjpg_streamer -i | --input "<input-plugin.so> [parameters]" -o |
--output "<output-plugin.so> [parameters]" [-h | --help ]........:
display this help [-v | --version ].....: display version information [-b
| --background]...: fork to the background, daemon
mode ----------------------------------------------------------------------- Example
#1: To open an UVC webcam "/dev/video1" and stream it via
HTTP: mjpg_streamer -i "input_uvc.so -d /dev/video1" -o
"output_http.so" ----------------------------------------------------------------------- Example
#2: To open an UVC webcam and stream via HTTP port 8090: mjpg_streamer
-i "input_uvc.so" -o "output_http.so -p
8090" ----------------------------------------------------------------------- Example
#3: To get help for a certain input plugin: mjpg_streamer -i
"input_uvc.so
--help" ----------------------------------------------------------------------- In
case the modules (=plugins) can not be found: * Set the default search path
for the modules with: export LD_LIBRARY_PATH=/path/to/plugins, * or put
the plugins into the "/lib/" or "/usr/lib" folder, * or instead of just
providing the plugin file name, use a complete path and filename:
mjpg_streamer -i
"/path/to/modules/input_uvc.so" ----------------------------------------------------------------------- [root@LuTong
/]#
三个大的选项 “ -i , -o ,-b ” -i:
是输入选项,它后面的参数需要双引号括起来 -o:是输出选项,它后面的参数需要双引号括起来 -b:
后台运行 下面是一个命令的例子 mjpg_streamer -i "/lib/modules/input_uvc.so -y" -o
"/lib/modules/output_http.so -w 192.168.1.66:8080"
-b -y表示使用程序的jepg压缩,有些摄像头支持输出mjpeg数据,可以不加这个参数,但是大部分摄像头都是输出原始raw数据的 -w表示数据输出绑定到这个网址的这个端口,就是开发板的网址
测试一 输入设备USB摄像头,输出到http 插上USB摄像头到开发板USB
HOST接口,接好网线,启动开发板。 在超级终端输入: mjpg_streamer -i "/lib/modules/input_uvc.so
-y" -o "/lib/modules/output_http.so -w
192.168.1.66:8080"
在主机端打开viewer.exe
这个文件在mjpg-streamer\mjpeg-client\bin\win32_upx\
目录下 注意网址要填写成开发板的IP地址,端口号也要填对。
点击connet后
测试二 输入设备USB摄像头,输出到LT2440开发板4.3寸TFT屏 插上USB摄像头到开发板USB
HOST接口,启动开发板。 在超级终端输入: mjpg_streamer -i "/lib/modules/input_uvc.so -y -r
320x240" -o "/lib/modules/output_viewer.so " 在屏幕上可以看到,摄像头拍到的图像

测试三 输入设备USB摄像头,输出jpeg文件到LT2440文件系统/tmp
目录,我使用的是网络文件系统,可以在主机端看到图片 插上USB摄像头到开发板USB
HOST接口,启动开发板。 在超级终端输入: mjpg_streamer -i "/lib/modules/input_uvc.so -y -r
320x240" -o "/lib/modules/output_file.so
" 可以在主机端网络文件系统的tmp目录下看到输出的如下文件,程序运行后会一直抓拍

|