Design and Implementation of a Web-Based Network Video Surveillance System
2026-04-06 08:50:22··#1
Abstract: This paper introduces the design and implementation of a network video surveillance system based on embedded WEB technology, focusing on the design concept and architecture of its embedded server hardware and software components, and providing a detailed introduction to several key technologies involved. Keywords: Embedded system, network video surveillance, LINUX, WEB, MPEG-4 1 Overview of a Network Video Surveillance System Based on Embedded WEB Technology Currently, network-based digital video surveillance systems are the mainstream of video surveillance system development. With the advancement of microprocessor technology and computer network technology, network video surveillance systems based on embedded WEB have gradually gained widespread attention. The main principle is as follows: the embedded video server uses an embedded real-time operating system and has a built-in embedded WEB server. The video signal transmitted from the camera is compressed by a high-efficiency compression chip and then transmitted to the built-in WEB server via an internal bus. Users can directly view the camera video images on the WEB server through a browser at the monitoring end. Authorized users can also control the movement of the camera's pan/tilt lens. The schematic diagram of the monitoring system described in this paper is shown in Figure 1. This system consists of cameras, an embedded WEB server, a transmission network, and a monitoring end. Cameras are used to collect video from the monitoring site. The embedded web server is the core of the entire monitoring system, consisting of both hardware and software components, the detailed structure of which will be described below. Its main functions include: providing a web access page for the monitoring terminal; performing validity and security checks on access from the monitoring terminal; responding to requests from the monitoring terminal and providing the necessary video images; receiving control information from the monitoring terminal, and controlling the cameras after hardware and software conversion. Each server has its own IP address, accessible from the monitoring terminal via a browser interface. The monitoring terminal's function is to display live video and send video requests and control signals to the cameras as needed. 2. Hardware Structure of the Embedded Web Server The hardware structure of the embedded web server is shown in Figure 2. It mainly consists of a CPU chip, an MPEG-4 audio/video encoding chip, a Flash chip, SDRAM memory, an Ethernet interface, and a large-capacity hard drive. The CPU uses Motorola's PowerPC series embedded communication processor MPC8250. The MPEG-4 audio/video encoding chip compresses and encodes the video data transmitted from the cameras. Based on network bandwidth, topology, and image quality requirements, this system selects a layered scalable encoding scheme based on the MPEG-4 standard. The compressed video data can be stored on a large-capacity hard drive or transmitted over an Ethernet network, depending on the requirements. A large-capacity hard drive is needed to achieve the video storage function. Figure 2 shows the hardware structure of the embedded WEB server . 3. Software System of the Embedded WEB Server The software design and implementation of the embedded WEB server is one of the key aspects of this system's implementation, comprising two main parts: the embedded operating system and application software. 3.1 Embedded Operating System An embedded operating system is operating system software that supports embedded system applications. It is a dedicated operating system with outstanding characteristics in terms of system real-time performance, hardware dependence, and software solidification. This system uses an embedded LINUX operating system, which is implemented based on miniaturization and real-time adaptation of the LINUX operating system according to system needs. The advantages of using LINUX are: its operating system source code is open and can be customized as needed; the system kernel is small, thus requiring relatively low hardware specifications; it supports multi-tasking and multi-processing, providing good real-time performance. 3.2 Application Software The application software structure of the server is shown in Figure 3. It mainly consists of several important parts, including a WEB server, CGI program, embedded database mSQL, video scheduling and transmission module, storage management and scheduling module, and camera control module. 3.2.1 Web Server and CGI Program The web server interacts with the monitoring terminal's browser software via the HTTP protocol, providing interfaces for other application modules, as well as video data browsing and camera control interfaces. Furthermore, it controls access permissions for the monitoring terminal, filters requests and control information from the monitoring terminal, and handles the synchronization and prioritization of requests and controls from multiple monitoring terminals. This system selects the Boa web server, suitable for embedded systems. Boa is a single-task HTTP server that supports CGI technology, enabling dynamic web technologies. It is open-source and high-performance. The server program itself occupies a small space, making it ideal for embedded systems. This system also uses CGI (Common Gateway Interface) to implement dynamic web technologies. CGI defines the interface protocol standard for web servers to call other executable programs (CGI programs). The web server interacts with the browser by calling CGI programs; that is, the CGI program receives information sent from the browser to the web server, processes it, and sends the response back to both the web server and the browser. In principle, CGI programs can be written in any programming language, but CGI programs written in C have advantages such as fast execution speed and high security. Figure 3 shows the application software structure of the embedded WEB server. 3.2.2 Embedded Database mSQL In this system, the storage of user information, user login and logout, storage and querying of video device parameters, and storage and querying of video files all require an embedded database. Considering all factors, this system uses mSQL (MiniSQL) as its backend database. mSQL is an excellent embedded database with a compact architecture and low system resource consumption, making it particularly suitable for use in embedded Linux systems. Furthermore, mSQL provides dedicated API functions, enabling CGI programs written in C to communicate with the mSQL database engine. 3.2.3 Video Scheduling and Transmission Module The video scheduling and transmission module provides the necessary real-time video information to the monitoring end and is the most important module in the server application software. This module establishes a connection with the monitoring terminal based on the adopted network transmission and control protocol, and listens for requests from the monitoring terminal. Simultaneously, it creates video streams using appropriate scheduling strategies based on different service types, then groups and packages the video data and sends it to the monitoring terminal. It also performs error handling and congestion control based on network status information fed back from the router and the monitoring terminal. Video data transmission generally uses the UDP network communication protocol. IP transmission using UDP includes on-demand, broadcast, and multicast. Multicast involves the server sending a single data packet to a specific user group, which can be shared by all users within the group, while users outside the group cannot receive it. This system uses IP multicast. The advantages of multicast technology are as follows: it allows the server to handle a large number of client video data broadcast requests; due to the smaller number of data packet copies and destination addresses, the total amount of data transmitted over the network is greatly reduced, thus ensuring high service quality; and it reduces the bandwidth consumption of video data stream transmission, alleviating the server's burden. The network transmission protocol used in this system is the RTP/UDP/IP model. RTP is a protocol that provides end-to-end real-time media transmission services, consisting of the Real-Time Transport Protocol (RTP) and the Real-Time Transport Control Protocol (RTCP). RTP is used for real-time video data transmission, while RTCP is used to monitor the transmission of real-time video data. The RTP/UDP/IP approach balances the real-time performance of video transmission with QoS guarantees. Furthermore, it can employ congestion control and error control strategies to address the uncertainties of the transmission network. 3.2.4 Storage Management and Scheduling Module The main function of the storage management module is to store compressed and encoded video information into specific areas of the disk according to a certain strategy, and to store video file information in an embedded database for retrieval and playback. Simultaneously, it responds to requests from the video scheduling and transmission module, reading video data from the disk into the memory buffer according to a certain disk scheduling strategy and priority order. For storage management, this system adopts an equal-length group storage strategy, that is, dividing video information into several data units according to temporal relationships. These data units are called groups, and each group is stored in a fixed-size storage unit. 3.2.5 Camera Control Module The camera control module mainly implements the control of the camera. At the monitoring end, users send camera control commands to the web server via a browser. These commands are received and processed by the web server, then sent to the camera control module via a CGI program. The module is then converted into corresponding hardware operation instructions for camera control, thus enabling remote control of the camera's pan-tilt-zoom (PTZ) lens. 4. Monitoring End Browsing This system uses a browser at the monitoring end to monitor the site. The browser's platform is independent of the embedded web server's platform, requiring no third-party software for browsing remote video, thus achieving cross-platform compatibility. The interface for browsing video at the monitoring end using this system is shown in Figure 4. Figure 4: Monitoring End Video Browsing Interface 5. Conclusion This paper introduces the design and implementation of a network video surveillance system based on embedded web technology. Compared with traditional network video surveillance systems, the main features of this system are: the server design is based on embedded web technology; it supports dynamic IP addresses, allowing direct Ethernet connection and plug-and-play functionality; users do not need dedicated software, only a browser is required for viewing; and the system adopts the advanced MPEG-4 encoding standard, significantly reducing data volume while improving video quality. With the popularity of network video surveillance, the network video surveillance system based on embedded WEB will surely have a good development prospect. References [1] Zhong Yuzhuo, Xiang Zhe, Shen Hong. Streaming media and video servers. Beijing: Tsinghua University Press. 2003.6 [2] Tu Jie et al. Application of MPEG-4 in digital video remote monitoring system. Computer Applications and Software. 2004.2 [3] Li Shanping. LINUX and embedded systems. Tsinghua University Press. 2003 [4] Jiang Min, Shi Jian. Remote video monitoring system based on embedded WEB server. Computer Era. 2003.7