当前位置:网站首页>Main business objects of pupanvr record (5)
Main business objects of pupanvr record (5)
2022-06-12 04:56:00 【hi_ LeTian】
In the product , according to NVR Habits in the configuration of video cameras , There's the concept of access , When configuring video recording , Define the access camera as an access channel , The camera is bound to a channel , So draw the image of a channel (TVideoChannel), At the same time, the connected device may be a camera , Or maybe it's just a video stream , Or a channel for playing back video , Then the source is a video file . So here's another one TVideoSource Object of , Using polymorphism to realize video source has : Camera source 、MP4 Source, etc . For channels in the system , If configured , Generally, it will be in the state of open operation , The life cycle is generally maintained , Such as video operation , For video playback preview, there is a decoder concept in both hardware and software , We define the object concept of a player , The player is not necessarily bound to the channel or opened for a long time , The performance of general hardware codec is limited , In this way, the object of the player should consider multi-channel reuse or dynamic binding , Real time creation , At the same time, the life cycle of its existence is generally not like that of a channel, which is always running as long as it is configured . The object of the player is also an isolated image of the software and hardware decoder .
According to the idea above , You need the following objects to appear in the system :
Video channel -TVideoChannel
It is mainly used to operate video, which is called video channel , In fact, the pictures in the product should also be displayed with this decoding .
Video source -TVideoSource
The source can be a video , Or a camera device 、 One MP4 Documents, etc. ;
player -TPlayView
Realize the playback of channel video objects , Realize decoding 、 Show 、 Control function , The object of the player is also an isolated image of the software and hardware decoder ;
Based on the above objects , about NVR Come on , We will implement a unified management class :TRecordManage, He manages the life cycle of the channel , Each channel aggregates and binds its own video source , And bind your own player .
The relationship is like the following :

Of course, many small object classes are used by the aggregation of these large objects , Such as cache management 、 Video file solution 、 Packet 、 The object of network flow 、 Display in different modes during preview , We need to implement a video display splitter management TPlayView Display, etc , Then slowly decompose and extract the real image !
边栏推荐
- [wechat applet] the mobile terminal selects and publishes pictures
- Understanding of day16 array create query static and dynamic array array array performance in memory
- PostgreSQL age XID maintenance prevents the database from being read-only
- Sustainable service business models
- 2022-02-28 WPF upper computer 126 understand mqtt
- Why is Julia so popular?
- Why should a redis cluster use a reverse proxy? Just read this one
- leetcode 205. Isomorphic Strings
- LabVIEW about TDMS and Binary Storage Speed
- Difference between thread and task
猜你喜欢

Memory protection

Bearpi IOT serial port transceiver 1- normal mode

asp. Net core theme Middleware

Simple Tetris

2022 fusion welding and thermal cutting recurrent training question bank and simulation examination

【cjson】根节点注意事项

According to aiqicha, keep went public in Hong Kong and hit the "first share of online fitness"

Based on Visual Studio code Net Maui cross platform mobile application development

File contains (regardless of suffix) Apache log remote file contains PHP encapsulated pseudo protocol:

Surface net radiation flux data, solar radiation data, rainfall data, air temperature data, sunshine duration, water vapor pressure distribution, wind speed and direction data, surface temperature
随机推荐
[backtracking] backtracking to solve subset problems
Chrome is amazingly fast, fixing 40 vulnerabilities in less than 30 days
Daily practice (28): balance binary tree
Drive safety coding & troubleshooting guide
JWT學習與使用
2022 examination questions and simulation examination for crane driver (limited to bridge crane)
Normalized vegetation index (NDVI) data, NPP data, GPP data, evapotranspiration data, vegetation type data, ecosystem type distribution data
How to use union all in LINQ- How to use union all in LINQ?
Ubunt 20.04 uses CDROM or ISO as the installation source
LabVIEW about TDMS and Binary Storage Speed
Parallélisation de l'entraînement accéléré TF. Données. Générateur de données
Surface net radiation flux data, solar radiation data, rainfall data, air temperature data, sunshine duration, water vapor pressure distribution, wind speed and direction data, surface temperature
Enhanced vegetation index evi, NDVI data, NPP data, GPP data, land use data, vegetation type data, rainfall data
Bearpi IOT serial port transceiver 1- normal mode
Simple Tetris
Soil type, soil texture, soil nutrient and change data, soil organic matter, soil pH, soil nitrogen, phosphorus and potassium
加速训练之并行化 tf.data.Dataset 生成器
Introduction to MMS memory optimization of Hisilicon MPP service
Big manufacturers compete to join rust, performance and safety are the key, and the 2021 rust developer survey report is announced
L1-064 AI core code valued at 100 million (20 points)