莫龙丹MJPG-Streamer推流,将摄像头图像推送到http⽹页,mjpeg推流,将摄像头推送到http⽹页
⼀、⼯具准备
1. Linux系统
2. usb摄像头
⼆、安装MJPG-Streamer
依赖的库和⼯具:
#库
sudo apt-get install libjpeg8-dev  #JPEG⽀持库(图像相关)
sudo apt-get install libv4l-dev  #4l是⼩写"L"(底层摄像头驱动的上层应⽤库)
#⼯具
#sudo apt-get install cmake  #下载编译⼯具(⼀般都有,没有需要下载)
#sudo apt-get install git    #(⼀般都有,没有需要下载)
安装与运⾏
# ⽅式包含但不限于以下两种
关于桥的成语# ⽅式⼀    git
# pi@raspberrypi:~ $git clone  e.coding/fivecc/mjpg-streamer/mjpg-streamer.git
# ⽅式⼆    wget
pi@raspberrypi:~ $wget github/Five-great/mjpg-streamer/archive/master.zip
猎毒人阿香
pi@raspberrypi:~ $unzip master.zip
#两种⽅式实现的效果⼤致相同
pi@raspberrypi:~ $ cd mjpg-*  # 进⼊mjpg-streamer-master⽂件夹
pi@raspberrypi:~/mjpg-streamer-master $ cd mjpg-*  # 进⼊mjpg-streamer-experimental⽂件夹
pi@raspberrypi:~/mjpg-streamer-master/mjpg-streamer-experimental $ make  #编译
pi@raspberrypi:~/mjpg-streamer-master/mjpg-streamer-experimental $ sudo make install #安装
# ⾄此安装完毕
# 接下来就可以运⾏
pi@raspberrypi: ~ $  ./mjpg_streamer -i "./input_uvc.so -n  -r 1920x1080 " -o "./output_http.so -w ./www"
运⾏之后我们就可以在服务器的8080端⼝看到我们的摄像头啦
运⾏参数
mjpg_streamer
# mjpg_streamer本⾝只有两个主要参数
# -i:指定⽣成动态库
# input_uvc.so:⽤来处理输⼊的数据
# -o:指定⽣成另外⼀个动态库
# output_http.so:⽤来处理输出的数据,⽤来给到浏览器
# 注意:MJPG-Streamer还有⼀个插件叫做output_rtsp.so;其实它是浪得虚名,它并不能把我们的输⼊转换成rtsp协议输出input_uvc.so
[-d | --device ].......: video device to open (your camera)
[-r | --resolution ]...: the resolution of the video device,
can be one of the following strings:
QQVGA QCIF CGA QVGA CIF PAL
VGA SVGA XGA HD SXGA UXGA
FHD
or a custom value like the following
example: 640x480
[-f | --fps ]..........: frames per second
代交社保的公司合法吗
(camera may coerce to different value)
[-q | --quality ] .....: set quality of JPEG encoding
[-m | --minimum_size ].: drop frames smaller then this limit, useful
if the webcam produces small-sized garbage frames
may happen under low light conditions
[-e | --every_frame ]..: drop all frames except numbered
[-n | --no_dynctrl ]...: do not initalize dynctrls of Linux-UVC driver
[-l | --led ]..........: switch the LED "on", "off", let it "blink" or leave
it up to the driver using the value "auto"
[-t | --tvnorm ] ......: set TV-Norm pal, ntsc or secam
[-u | --uyvy ] ........: Use UYVY format, default: MJPEG (uses more cpu power) [-y | --yuv  ] ........: Use YUV format, default: MJPEG (uses more cpu power) [-fourcc ] ............: Use FOURCC codec 'argopt',
currently supported codecs are: RGB24, RGBP
[-timestamp ]..........: Populate frame timestamp with system time
[-softfps] ............: Drop frames to try and achieve this fps
set your camera to its maximum fps to avoid stuttering
[-timeout] ............: Timeout for device querying (seconds)
[-dv_timings] .........: Enable DV timings queriyng and events processing output_http.so
[-d | --device ].......: video device to open (your camera)
[-r | --resolution ]...: the resolution of the video device,
can be one of the following strings:
QQVGA QCIF CGA QVGA CIF PAL
VGA SVGA XGA HD SXGA UXGA
FHD
or a custom value like the following
example: 640x480
幸福魔方虚荣的爱情[-f | --fps ]..........: frames per second
(camera may coerce to different value)
金秀贤生日[-q | --quality ] .....: set quality of JPEG encoding
[-m | --minimum_size ].: drop frames smaller then this limit, useful
if the webcam produces small-sized garbage frames
may happen under low light conditions
[-e | --every_frame ]..: drop all frames except numbered
[-n | --no_dynctrl ]...: do not initalize dynctrls of Linux-UVC driver
[-l | --led ]..........: switch the LED "on", "off", let it "blink" or leave
it up to the driver using the value "auto"
[-t | --tvnorm ] ......: set TV-Norm pal, ntsc or secam
[-u | --uyvy ] ........: Use UYVY format, default: MJPEG (uses more cpu power) [-y | --yuv  ] ........: Use
YUV format, default: MJPEG (uses more cpu power) [-fourcc ] ............: Use FOURCC codec 'argopt',
currently supported codecs are: RGB24, RGBP
[-timestamp ]..........: Populate frame timestamp with system time
[-softfps] ............: Drop frames to try and achieve this fps
set your camera to its maximum fps to avoid stuttering
[-timeout] ............: Timeout for device querying (seconds)
[-dv_timings] .........: Enable DV timings queriyng and events processing