当前位置:网站首页>Web Monitoring - mjpg streamer migration
Web Monitoring - mjpg streamer migration
2022-07-22 02:52:00 【HelloAaric】
Updated on 2018 year 04 month 16 Japan
Reference article :https://blog.csdn.net/xiongmaojiayou/article/details/7604746
Mjpeg‐stream Introduce
Mjpeg‐stream It's open source software , Used for holding mjpeg Format file becomes streaming media output .
1. Environment platform
PC machine :vmware Installed in the virtual machine red hat 6 ( The cross compilation environment has been configured )
Target board :S3C2440
Develop the system running on the board : kernel Linux‐2.6.32.2
2 . stay 2440 Installation on mjpeg‐stream
Step1: transplant jpeg library
mjpg-stream The migration of needs to be based on jpeg The library of , So let's transplant jpeg The library of .
1) Download source package
Thanks for the source code website :http://www.ijg.org/files/
jpeg The source code package can be downloaded through the following website (2018 year 01 month 14 Promulgated by the )
2) Decompress the source package
#tar xzvf jpegsrc.v9c.tar.gz
#cd jpeg-9c
3) Configuration source code , The following configuration is important ( Specific configuration items can run commands ./configure --help See what it means , Modify... According to the actual situation )
#./configure CC=arm-linux-gcc --host=arm-unknown-linux --prefix=/home/jpeg-9c/jpeg --enable-shared --enable-static
among /home/jpeg-9c/jpeg Is the directory of installation after compilation , Modify... According to the actual situation
Step2: transplant mjpg-streamer
1) download mjpg-streamer Source code
Thanks for the source code website :https://sourceforge.net/p/mjpg-streamer/code/HEAD/tree/
Download address :( Click to download )
https://sourceforge.net/code-snapshots/svn/m/mj/mjpg-streamer/code/mjpg-streamer-code-182.zip
2) Unzip the downloaded compressed file , Will be one of the mjpg-streamer Folder ( As shown in the figure ), Copy to virtual machine linux in .
Assume here that it is copied to /home Under the table of contents
3) Modify source code
#cd /home/mjpg‐streamer ; Enter this directory
#gedit plugins/input_uvc/Makefile ; modify plugins/input_uvc/ In the catalog Makfile file ,
modify CFLAGS += -O1 -DLINUX -D_GNU_SOURCE -Wall -shared -fPIC
by CFLAGS += -O1 -DLINUX -D_GNU_SOURCE -Wall -shared -fPIC -I/home/jpeg-9c/jpeg/include
modify $(CC) $(CFLAGS) -o [email protected] input_uvc.c v4l2uvc.lo jpeg_utils.lo dynctrl.lo $(LFLAGS)
by $(CC) $(CFLAGS) -L/home/jpeg-9c/jpeg/lib -o [email protected] input_uvc.c v4l2uvc.lo jpeg_utils.lo dynctrl.lo $(LFLAGS)
notes :/home/jpeg-9c/jpeg It is transplanted from above jpeg The directory installed after the Library
4、 compile :make CC=arm-linux-gcc
Be careful : If it appears make: Nothing to be done for `all'. You need to execute make clean command .
5、 Build on the development board mjpg-streamer The installation directory
mkdir /usr/local/mjpg-streamer
Will compile the generated *.so file , Copy to the development board /usr/local/mjpg-streamer Catalog ;
The generated executable will be compiled mjpg-stream, Copy to the development board /usr/local/mjpg-streamer Catalog
Put start.sh And contents www Copy to development board /usr/local/mjpg-streamer Under the table of contents , Then you can test
6、 test :
Modify the start.sh file (start.sh There is a modification tutorial in the file ), And then run start.sh;
( Limited to the same LAN ) stay PC The machine opens a web page , Input http://192.168.12.21:8088/?action=stream You can see the image .
notes :ip The address is development board IP, Port is start.sh Port configured in
7、 Get help
The way to get help is start.sh There's a description in , Here's an example , function ./mjpg_streamer --help It will print out the following help , Parameters can be set as neededThe following parameters can be passed to this plugin:
[-d | --device ].......: video device to open (your camera)
[-r | --resolution ]...: the resolution of the video device,
can be one of the following strings
QSIF QCIF CGA QVGA CIF VGA
SVGA XGA SXGA
or a custom value like the following
example: 640x480
[-f | --fps ]..........: frames per second
[-y | --yuv ]..........: enable YUYV format and disable MJPEG mode
[-q | --quality ]......: JPEG compression quality in percent
(activates YUYV format, disables MJPEG)
[-m | --minimum_size ].: drop frames smaller then this limit, useful
if the webcam produces small-sized garbage frames
may happen under low light conditions
[-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"
Above is mjpg-streamer The whole process of transplantation .
边栏推荐
- 工程效能CI/CD之流水线引擎的建设实践
- 07.01 Huffman tree
- Network address translation (NAT)
- 简单总结一下图像处理中概念
- from scratch implement crnn using pytorch :读取训练数据
- The convolution kernel is expanded to 51x51, and the new CNN architecture slak counterattacks the transformer
- 树莓派3B搭建Flink集群
- 【微信小程序】textarea多行输入框(80/100)
- 2019牛客暑期多校训练营(第七场)A-String 【字符串最小表示法+暴力枚举】
- 本机电脑清除DNS缓存+浏览器清除DNS缓存
猜你喜欢
Leetcode 104. 二叉树的最大深度
There are 8778 authors in a paper: each person writes 5 words, and the signature takes 17 pages
本机电脑清除DNS缓存+浏览器清除DNS缓存
博士申请 | 香港城市大学刘晨老师组招收机器学习方向全奖博士/博后/硕士/RA...
45W performance release +2.8k OLED full screen ASUS lingyao x 142022 elite temperament efficient weapon
quartz簡單用法及其es-job
COM编程入门1-创建项目并编写接口
This price is fragrant enough! Lingyao 142022 shadow cyan glaze spike: 12th generation core +2.8k OLED screen
Depthwise Separable Convolution详解
Flink应用案例统计实现TopN的两种方式
随机推荐
云原生时代,开发者应具备这5大能力
函数之递归[通俗易懂]
Leetcode 111. Minimum depth of binary tree
MySQL performance optimization (I): MySQL architecture and core issues
Transport layer protocol
2019牛客暑期多校训练营(第七场)A-String 【字符串最小表示法+暴力枚举】
[watermelon book learning] 1. Decision tree
leetcode:169. Most elements
复旦大学白悦辰课题组诚聘博士后、科研助理
07.01 Huffman tree
2019杭电多校 第一场 6581-Vacation【思维】
使用kmean进行图像分割 使用CRFs进行分割后处理
Raspberry pie 3B builds Flink cluster
quartz簡單用法及其es-job
Depthwise Separable Convolution详解
Un7.20: how to display two attributes in an association table at the same time?
shared_ptr共享的智能指针
【微信小程序】camera系统相机(79/100)
IP subnet Division
Number of pairs (dynamic open point)