CN109450923B - Video transmission system and method - Google Patents

Video transmission system and method Download PDF

Info

Publication number
CN109450923B
CN109450923B CN201811452359.7A CN201811452359A CN109450923B CN 109450923 B CN109450923 B CN 109450923B CN 201811452359 A CN201811452359 A CN 201811452359A CN 109450923 B CN109450923 B CN 109450923B
Authority
CN
China
Prior art keywords
target
media distribution
management server
central management
client
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201811452359.7A
Other languages
Chinese (zh)
Other versions
CN109450923A (en
Inventor
颜欢
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuhan Fiberhome Digtal Technology Co Ltd
Original Assignee
Wuhan Fiberhome Digtal Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Wuhan Fiberhome Digtal Technology Co Ltd filed Critical Wuhan Fiberhome Digtal Technology Co Ltd
Priority to CN201811452359.7A priority Critical patent/CN109450923B/en
Publication of CN109450923A publication Critical patent/CN109450923A/en
Application granted granted Critical
Publication of CN109450923B publication Critical patent/CN109450923B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25866Management of end-user data
    • H04N21/25875Management of end-user data involving end-user authentication

Abstract

The invention provides a video transmission system and a method, wherein the system comprises: the authentication server is used for carrying out validity check on the received connection request; if the connection request passes the validity check, determining a target center management server, and returning the URL address of the target center management server to the client so that the client sends a video acquisition request to the target center management server according to the URL address; the target center management server is used for receiving a video acquisition request, and the video acquisition request comprises a first camera identifier; determining a target media distribution server, and setting a receiving address of the target media distribution server as an IP address of a client; sending a first control signaling to a first front-end camera with a first camera identifier, so that the first front-end camera sends a video data stream to a target media distribution server according to the first control signaling; and the target media distribution server is used for sending the video data stream to the client. By applying the embodiment of the invention, the data storage efficiency is improved.

Description

Video transmission system and method
Technical Field
The invention relates to the technical field of video monitoring, in particular to a video transmission system and a video transmission method.
Background
With the development of video production technology, video data shows a trend of massive growth, and it becomes more and more important to improve video transmission quality in order to better provide video services for users.
In a conventional video transmission method deployed on a stand-alone machine, the stand-alone machine executes all steps in a video transmission process, for example, steps of receiving a video acquisition request, obtaining a video data stream according to the video acquisition request, and sending the video data stream to a sender of the video acquisition request, and the like.
Disclosure of Invention
The present invention is directed to overcome the drawbacks of the prior art, and provides a video transmission system and method for improving video transmission efficiency.
The invention is realized by the following steps:
in a first aspect, the present invention provides a video transmission system comprising a plurality of front-end cameras, a central management server cluster, an authentication server and a media distribution server cluster, wherein,
the authentication server is used for receiving a connection request sent by a client, carrying out validity check on the received connection request, determining a target central management server from the central management server cluster if the connection request passes the validity check, and returning a Uniform Resource Locator (URL) address of the target central management server to the client so that the client sends a video acquisition request to the target central management server according to the URL address;
the target center management server is used for receiving a video acquisition request sent by the client, wherein the video acquisition request comprises a first camera identifier; determining a target media distribution server from the media distribution server cluster, and setting a receiving address of the target media distribution server as an IP address of the client; sending a first control signaling to a first front-end camera with the first camera identifier in the plurality of front-end cameras, so that the first front-end camera sends a video data stream to the target media distribution server according to the first control signaling;
and the target media distribution server is used for receiving the video data stream and sending the video data stream to the client according to the receiving address.
Optionally, the connection request includes a target account, a target password, and a target login permission, and the authentication server performs validity check on the received connection request, specifically:
searching a pre-established user registry, and determining whether a corresponding relation among a target account number, a target password and a target login authority carried by the connection request exists in the user registry; the user registry is used for storing the corresponding relation among the account number, the password and the login authority;
if yes, judging that the connection request passes validity check;
if not, the connection request is judged not to pass the validity check.
Optionally, the determining, by the authentication server, a target central management server from the central management server cluster specifically includes:
acquiring IP addresses of all central management servers in the central management server cluster and IP addresses of the clients;
and calculating the routing path between each central management server and the client by using the IP address of each central management server and the IP address of the client, and determining the central management server to which the routing path passing through the routing node at the minimum belongs as a target central management server.
Optionally, the authentication server is further configured to:
if a plurality of routing paths passing through the routing nodes are arranged, determining a central management server with the minimum user load in a central management server to which each routing path passing through the routing nodes belongs as a target central management server;
and caching the routing path between the client and the target center management server.
Optionally, the determining, by the target central management server, a target media distribution server from the media distribution server cluster includes:
and determining the link conditions between the client and each media distribution server in the media distribution server cluster, and determining the media distribution server with the best link condition as a target media distribution server.
Optionally, the target center management server is further configured to:
receiving a video cache request sent by a network management terminal; the video cache request comprises a second camera identification;
and sending a second control signaling to a second front-end camera with the second camera identifier in the plurality of front-end cameras, so that the second front-end camera buffers the video data stream according to the second control signaling, and refreshes the buffered video data stream at intervals of preset fixed time length.
Optionally, the target media distribution server is further configured to:
in the process of sending the video data stream, calculating network transmission parameters;
and sending feedback information to the first front-end computer according to the network transmission parameters so that the first front-end computer adjusts the number of coding frames according to the feedback information.
Optionally, the network transmission parameter includes at least one of a delay, a packet loss rate, and a throughput.
In a second aspect, the present invention provides a video transmission method applied to any one of the above systems, where the method is applied to the target center management server, and specifically includes:
receiving a video acquisition request sent by a client, wherein the video acquisition request comprises a first camera identifier; determining a target media distribution server from a media distribution server cluster, and setting a receiving address of the target media distribution server as an IP address of the client;
sending a first control signaling to a first front-end camera with the first camera identifier in the plurality of front-end cameras, so that the first front-end camera sends a video data stream to a target media distribution server according to the first control signaling; so that the target media distribution server sends the video data stream to the client according to the receiving address.
The invention has the following beneficial effects: by applying the embodiment of the invention, dynamic access of massive video resources can be realized by accessing a plurality of front-end cameras, dynamic allocation of service resources is realized by dynamically determining the target center management server and the target media distribution server, so that the expansibility and the usability of a video transmission system are greatly improved, all functions are not required to be concentrated on one server, the maintenance cost of the system is also reduced, each step in the video transmission process is executed by different servers, the resources used in the whole video transmission process are expanded, and the resource allocation among the servers is not influenced mutually, so that the whole system has large-scale computing capacity, the video transmission can be rapidly carried out, and the video transmission efficiency is improved; in addition, the client does not need to know the real address of the central management server to be accessed in advance, so that the access requirement of the client is reduced, and the user experience is improved.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to the drawings without creative efforts.
Fig. 1 is a schematic structural diagram of a video transmission system according to an embodiment of the present invention;
fig. 2 is a flowchart illustrating a video transmission method according to an embodiment of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
In order to solve the problems in the prior art, embodiments of the present invention provide a video transmission system and method. First, a video transmission system according to the present invention will be described.
Referring to fig. 1, fig. 1 is a video transmission system provided in an embodiment of the present invention, where the system includes multiple front-end cameras, a central management server cluster, an authentication server, and a media distribution server cluster, where the authentication server is configured to receive a connection request sent by a client, perform validity check on the received connection request, determine a target central management server from the central management server cluster if the connection request passes the validity check, and return a uniform resource locator URL address of the target central management server to the client, so that the client sends a video acquisition request to the target central management server according to the URL address;
the target center management server is used for receiving a video acquisition request sent by the client, wherein the video acquisition request comprises a first camera identifier; determining a target media distribution server from the media distribution server cluster, and setting a receiving address of the target media distribution server as an IP address of the client; sending a first control signaling to a first front-end camera with the first camera identifier in the plurality of front-end cameras, so that the first front-end camera sends a video data stream to a target media distribution server according to the first control signaling;
and the target media distribution server is used for receiving the video data stream and sending the video data stream to the client according to the receiving address.
When the number of the authentication servers is multiple, each authentication server can manage different central management server clusters and can receive a connection request sent by a client in a management area, and after the connection request is judged to pass validity check, a target central management server can be determined from the central management server cluster managed by the authentication server. The authentication server in this context refers to an authentication server that receives a connection request sent by a client. The connection request is used for the communication connection between the client and the authentication server, and the authentication server can carry out validity check on the connection request.
The invention does not limit the type of the authentication server, the server in the central management server cluster and the server in the media distribution server cluster, and can be a server provided with a Linux system, a Windows system or a Unix system.
The connection request may include a target account, a target password, and a target login permission, and the authentication server performs validity check on the received connection request, specifically:
searching a pre-established user registry, and determining whether a corresponding relation among a target account number, a target password and a target login authority carried by the connection request exists in the user registry; the user registry is used for storing the corresponding relation among the account number, the password and the login authority;
if yes, judging that the connection request passes validity check;
if not, the connection request is judged not to pass the validity check.
The user registration table is one or more pre-established data tables and is used for storing the corresponding relation among the account number, the password and the login authority of the registered user, the user can send a registration request to the authentication server through the client in advance, the registration request can comprise the account number, the password and the login authority, and therefore the authentication server can store the account number, the password and the login authority of the user which is successfully registered into the user registration table. The client is a terminal used for logging in by a user and can be a mobile phone, a tablet, a personal computer and the like. The user can establish a connection with the authentication server through the client.
The validity check may check whether the connection request is valid, and in practical application, the validity check may be performed on the connection request in other manners, for example, whether the format of the connection request meets the preset format requirement, whether the connection request carries illegal characters, and the like.
The central management server cluster comprises a plurality of central management servers, and the authentication server can directly select the application server with the lowest load as a target central management server; alternatively, the target central management server may be determined from the central management server cluster in the following manner:
acquiring IP addresses of all central management servers in the central management server cluster and IP addresses of the clients;
and calculating the routing path between each central management server and the client by using the IP address of each central management server and the IP address of the client, and determining the central management server to which the routing path passing through the routing node at the minimum belongs as a target central management server.
The routing path is a network path formed by routing nodes through which communication data streams between both communication parties reach the other party, and may be calculated by using a routing algorithm, for example, a link vector routing algorithm, a distance vector algorithm, or the like, and a central management server to which the routing path having the fewest number of routing nodes passes may be determined as a target central management server, or in other embodiments, a central management server to which the shortest routing path belongs may be determined as a target central management server.
In addition, the authentication server can also determine a target central management server from the central management server cluster by using a global load balancing algorithm. The global load balancing algorithm may include: a Domain Name System (DNS) Domain Name alternate resolution method, a client scheduling access method, an application layer System load scheduling method, an Internet Protocol (IP) address scheduling method, and the like.
If a plurality of routing paths passing through the routing node are arranged, the authentication server can also determine a central management server with the minimum user load in the central management servers to which the routing paths passing through the routing node belong as a target central management server; or, a target center management server can be randomly determined; or, the network status of each central management server may be acquired, and the central management server that determines the best network status is determined as the target central management server. The network status may be reflected in the network status parameter, and a network status determination rule may be set in advance, for example, the central management server with the highest throughput among the central management servers may be regarded as the target central management server by considering that the network status is better as the throughput is higher, or the central management server with the highest connection among the central management servers may be regarded as the target central management server by considering that the network status is better as the number of connections is higher.
In order to improve the processing efficiency, the authentication server may also cache a routing path between the client and the target central management server, so that if a next client in the same network segment as the client initiates a connection request and the connection request passes validity check, the target central management server may be quickly determined by reading the cache, thereby reducing the complexity of calculation.
After determining the target center management server, the authentication server may return a Uniform Resource Locator (URL) address of the target center management server to the client, so that the client sends a video acquisition request to the target center management server according to the URL address.
After the authentication server is started, network address information such as URL addresses, IP addresses, port numbers and the like of all central management servers in a central management server cluster managed by the authentication server can be acquired from a network address list of the database, the state of the central management server can be monitored, and the network address list in the database is updated in real time according to the state of the central management server. For example, when it is detected that a network of a certain central management server is disconnected or a central management server cluster removes a certain central management server, the network address information of the central management server recorded in the network address list may be deleted; when it is detected that a central management server is added to the central management server cluster or network reconnection of the central management server is successful, network address information of the central management server can be added to the network address list.
In addition, the server where the database is located may be an authentication server, or may be a storage server or a distributed storage server cluster independent of the authentication server.
The authentication server can also monitor all central management servers in the network address list, acquire all routing paths stored by the central management servers from the monitored central management servers, and cache all the monitored routing paths to the local and/or cache all the monitored routing paths in the database, so that real-time management and monitoring of a central management server cluster are realized, a target central management server can be reasonably determined, and the reliability of the system is improved.
The video acquisition request is used for acquiring a video data stream of a certain or some front-end cameras, and the camera identification in the video acquisition request can be called as a first camera identification which is used for uniquely identifying the first front-end camera. Each central management server may manage one or more front-end cameras and may send control signaling with the managed front-end cameras. The invention does not limit the type of the front-end camera, and can be a camera with a monocular camera or a camera with a binocular camera. The front-end computer media distribution server cluster can comprise a plurality of media distribution servers, and the target central management server determines a target media distribution server from the media distribution server cluster, and specifically comprises the following steps:
and determining the link condition between the client and each media distribution server in the media distribution server cluster, and determining the media distribution server with the best link condition as a target media distribution server.
The link condition may be determined by network parameters such as bandwidth, time delay, packet loss rate, and the like, for example, the larger the bandwidth, the smaller the time delay, and the smaller the packet loss rate, the better the link condition, the priority of each network parameter may be set, and the influence of the network parameter with the higher priority on the link condition is prioritized, for example, the priority of the bandwidth, the time delay, and the packet loss rate is sequentially reduced, the media distribution server with the highest bandwidth is preferentially selected, the media distribution server with the lowest time delay is selected from the media distribution servers with the highest bandwidth, and the media distribution server with the lowest packet loss rate is selected from the selected media distribution servers with the lowest time delay as the target media distribution server.
Alternatively, in other embodiments, the target central management server may also determine the target media distribution server from the media distribution server cluster by using a global load balancing algorithm.
The global load balancing algorithm can select the media distribution server which is closer to the client as the target media distribution server, complete the nearby access of the client, realize the transmission of the shortest path of the video data stream, reduce the complexity of the establishment of the transmission channel and reduce the transmission delay.
After determining the target media distribution server, the target central management server may also cache a routing path between the target media distribution server and the client in the local server.
Or, in yet another implementation, before determining a link condition between the client and each media distribution server in the media distribution server cluster or determining a target media distribution server from the media distribution server cluster by using a global load balancing algorithm, the target central management server may further search whether a target client exists in the cache, and if so, determine the target media distribution server corresponding to the target client as the target media distribution server, and then determine the link condition between the client and each media distribution server in the media distribution server cluster or determine the target media distribution server from the media distribution server cluster by using the global load balancing algorithm; and if not, executing link conditions between the client and each media distribution server in the media distribution server cluster or determining a target media distribution server from the media distribution server cluster by using a global load balancing algorithm. The target client is: the camera identification in the sent video acquisition request is a first camera identification and is located at the same network end with the client.
By applying the embodiment of the invention, if other clients in the same network segment apply for the video data stream of the same front-end camera before, the same target media distribution server can be directly allocated to the clients, so that the calculation amount is reduced, and the processing efficiency is improved.
In order to improve the data transmission efficiency and ensure the Real-time performance and effectiveness of the video data stream reaching the client, a UDP (User Datagram Protocol) over RTP (Real-time Transport Protocol) mode can be adopted between the client and the target media distribution server to transmit data, and RTCP (Real-time Transport Control Protocol) can be combined to provide monitoring and feedback of service quality, synchronization between media and the like.
In order to ensure the fluency of the playing and improve the user experience, the target center management server may be further configured to:
receiving a video cache request sent by a network management terminal; the video cache request comprises a second camera identification;
and sending a second control signaling to a second front-end camera with the second camera identifier in the plurality of front-end cameras, so that the second front-end camera buffers the video data stream according to the second control signaling, and refreshes the buffered video data stream at intervals of preset fixed time length.
The network management terminal is a terminal device which is logged in by a network administrator with management authority, and the network administrator can send a video cache request through the network management terminal. The video buffering request is used for buffering the video data stream collected by a certain or some front-end cameras.
The video cache request may include a camera identification and a video channel number of the front-end camera, etc., the camera identification in the video cache request may be referred to as a second camera identification, and the front-end camera having the second camera identification may be referred to as a second front-end camera. The camera identification may be a device number, a device name, or other symbolic label that uniquely identifies the front-end camera, with possibly multiple video channels for one front-end camera. One video channel is used for transmitting one path of video coding data stream. The video channel number is used to uniquely identify the video channel.
The network management terminal can provide a human-computer interaction interface, the human-computer interaction interface can comprise a camera identification option and a video channel number option, and after detecting that one or some camera identification options and video channel number options are selected, a video cache request can be generated based on the selected camera identification option and video channel number option. The video cache request may be HTTP (HyperText Transfer Protocol) or HTTPs (HyperText Transfer Protocol over Secure Socket layer) type request.
The first control signaling and the second control signaling may both be control flows meeting a Session Initiation Protocol (SIP) format, where the first control signaling is used to control the first front-end camera to send a video data stream to the target media distribution server, and the second control signaling is used to control the second front-end camera to cache the video data stream, and refresh the cached video data stream every preset fixed time. The preset fixed duration may be a parameter carried in the video caching request or a parameter set by default in the front-end camera. In addition, the video buffering request may further include a video time length, for example, a video data stream with a video time length of 10 seconds/2 seconds/5 seconds may be buffered. The refreshing can be carried out by adopting a cyclic covering mode, so that after the interval is preset for a fixed time, the video data stream buffered before can be covered by the next video data stream.
By applying the embodiment of the invention, the video data stream can be cached in the second front-end computer, and the cached video data stream can be refreshed at intervals of preset fixed time, so that the client can acquire the previously cached video data stream first without waiting for the second front-end computer to acquire the video data stream.
In order to guarantee the quality of video transmission, the target media distribution server is further configured to:
in the process of sending the video data stream, calculating network transmission parameters;
and sending feedback information to the first front-end camera according to the network transmission parameters so that the first front-end camera adjusts coding parameters according to the feedback information.
The network transmission parameter may reflect network transmission quality, and the type of the network transmission parameter may be set in advance, and may include at least one of latency, packet loss rate, and throughput, for example.
The feedback information comprises first feedback information and second feedback information, the first feedback information is used for reflecting that the network condition is poor, the second feedback information is used for reflecting that the network condition is good, the time delay is greater than a preset time delay threshold value or the packet loss rate is greater than a preset packet loss rate threshold value or the throughput is lower than a preset throughput threshold value, and the first feedback information can be sent to the first front-end terminal, so that the first front-end terminal reduces the number of encoding frames according to the feedback information; otherwise, second feedback information may be sent to the first front-end terminal, so that the first front-end terminal increases the number of coded frames according to the second feedback information and the preset step length until the number of coded frames reaches the preset number of coded frames.
For example, if the network condition is good, 25 frames of data can be transmitted in 1 second, and the first front-end camera can encode 1I frame and 24P frames into one frame of picture for transmission. If the network condition is not good, the first front-end camera can reduce the number of the P frames according to the specific network condition, in order to ensure the minimum fluency of the picture, the P frames can be at least reserved 13-15, for example, when at least two of the time delay is greater than a preset time delay threshold, the packet loss rate is greater than a preset packet loss rate threshold and the throughput is lower than a preset throughput threshold are met, 1I frame and 14P frames are encoded into one frame for transmission, and when only one of the three is met, 1I frame and 20P frames are encoded into one frame for transmission.
And a dynamic coding strategy is adopted, so that the pressure of network load is reduced, and the video transmission quality is favorably ensured.
In addition, the target media distribution server may be further configured to obtain a scene mode, where the scene mode includes a normal mode and a high-definition mode, the normal mode is a scene mode with a low requirement for deadlock, and the high-definition mode is a scene mode with a high requirement for deadlock, and deadlock needs to be reduced as much as possible. The video acquisition request sent by the client can carry the scene mode, so that the target center management server can send the scene mode to the target media distribution server.
If the scene mode is the common mode, the target media distribution server can store 2/3 GOPs in the cache queue; if the scene mode is the high definition mode, the buffer queue length is increased appropriately, for example, 10/7/6 GOPs may be fixed in the buffer. A GOP is a complete picture that contains at least one key frame I frame and several non-key frame P frames. The P frame is compared with the I frame by information difference using a difference method, and a picture is extracted. By applying the embodiment of the invention, the length of the cache queue can be dynamically adjusted according to the scene mode, the scene requirement with high demand on the pause can be met, the system resources can be reasonably distributed, and the resource utilization rate is improved.
In order to reduce the packet loss rate, the target media distribution server can monitor the network condition in the process of sending the video data stream, can monitor the lengths of all connected buffer queues periodically through the back end, predict the time that the packet loss rate is likely to increase, receive a buffer queue instruction sent by the back end, and adjust the length of the buffer queue according to the buffer queue instruction so as to avoid the increase of the packet loss rate, thereby improving the transmission quality, ensuring the integrity of the video data stream received by the client and improving the playing experience.
By applying the embodiment of the invention, dynamic access of massive video resources can be realized by accessing a plurality of front-end cameras, dynamic allocation of service resources is realized by dynamically determining the target center management server and the target media distribution server, so that the expansibility and the usability of the video transmission system are greatly improved, all functions of the system do not need to be concentrated on one server, the maintenance cost of the system is also reduced, each step in the video transmission process is executed by different servers, the resources used in the whole video transmission process are expanded, and the resource allocation among the servers is not influenced mutually, so that the whole system has large-scale computing capacity, the video transmission can be rapidly carried out, and the video transmission efficiency is improved; in addition, the client does not need to know the real address of the central management server to be accessed in advance, so that the access requirement of the client is reduced, and the user experience is improved.
Corresponding to the above video transmission system embodiment, an embodiment of the present invention provides a video transmission method, as shown in fig. 2, corresponding to the structure shown in fig. 1, where the method is applied to the above video transmission system, and specifically, the method is applied to the target center management server, and specifically includes:
s101, receiving a video acquisition request sent by a client, wherein the video acquisition request comprises a first camera identifier; determining a target media distribution server from a media distribution server cluster, and setting a receiving address of the target media distribution server as an IP address of the client;
s102, sending a first control signaling to a first front-end camera with the first camera identifier in the plurality of front-end cameras, so that the first front-end camera sends a video data stream to a target media distribution server according to the first control signaling; so that the target media distribution server sends the video data stream to the client according to the receiving address.
Therefore, by applying the embodiment of the invention, the dynamic access of massive video resources can be realized by accessing a plurality of front-end cameras, the dynamic allocation of service resources is realized by dynamically determining the target center management server and the target media distribution server, so that the expansibility and the usability of the video transmission system are greatly improved, all functions of the system do not need to be concentrated on one server, the maintenance cost of the system is also reduced, each step in the video transmission process is executed by different servers, the resources used in the whole video transmission process are expanded, and the resource allocation among the servers is not influenced mutually, so that the whole system has large-scale computing capacity, the video transmission can be performed quickly, and the video transmission efficiency is improved; in addition, the client does not need to know the real address of the central management server to be accessed in advance, so that the access requirement of the client is reduced, and the user experience is improved.
Optionally, determining a target media distribution server from the media distribution server cluster includes:
and determining the link conditions between the client and each media distribution server in the media distribution server cluster by using a global load balancing algorithm, and determining the media distribution server with the best link condition as a target media distribution server.
Optionally, the method further includes:
receiving a video cache request sent by a network management terminal; the video cache request comprises a second camera identification;
and sending a second control signaling to a second front-end camera with the second camera identifier in the plurality of front-end cameras, so that the second front-end camera buffers the video data stream according to the second control signaling, and refreshes the buffered video data stream at intervals of preset fixed time length.
The above description is only for the purpose of illustrating the preferred embodiments of the present invention and is not to be construed as limiting the invention, and any modifications, equivalents, improvements and the like that fall within the spirit and principle of the present invention are intended to be included therein.

Claims (7)

1. A video transmission system comprising a plurality of front-end cameras, a central management server cluster, an authentication server and a media distribution server cluster, wherein,
the authentication server is used for receiving a connection request sent by a client, carrying out validity check on the received connection request, determining a target central management server from the central management server cluster if the connection request passes the validity check, and returning a Uniform Resource Locator (URL) address of the target central management server to the client so that the client sends a video acquisition request to the target central management server according to the URL address;
the authentication server determines a target central management server from the central management server cluster, and specifically comprises the following steps:
acquiring IP addresses of all central management servers in the central management server cluster and IP addresses of the clients;
calculating the routing path between each central management server and the client by using the IP address of each central management server and the IP address of the client, and determining the central management server to which the routing path passing through the routing node at the least belongs as a target central management server;
the authentication server is further configured to:
if a plurality of routing paths passing through the routing nodes are arranged, determining a central management server with the minimum user load in a central management server to which each routing path passing through the routing nodes belongs as a target central management server;
caching a routing path between the client and the target center management server;
the target center management server is used for receiving a video acquisition request sent by the client, wherein the video acquisition request comprises a first camera identifier; determining a target media distribution server from the media distribution server cluster, and setting a receiving address of the target media distribution server as an IP address of the client; sending a first control signaling to a first front-end camera with the first camera identifier in the plurality of front-end cameras, so that the first front-end camera sends a video data stream to the target media distribution server according to the first control signaling;
and the target media distribution server is used for receiving the video data stream and sending the video data stream to the client according to the receiving address.
2. The system according to claim 1, wherein the connection request includes a target account, a target password, and a target login right, and the authentication server performs validity check on the received connection request, specifically:
searching a pre-established user registry, and determining whether a corresponding relation among a target account number, a target password and a target login authority carried by the connection request exists in the user registry; the user registry is used for storing the corresponding relation among the account number, the password and the login authority;
if yes, judging that the connection request passes validity check;
if not, the connection request is judged not to pass the validity check.
3. The system according to any of claims 1-2, wherein the target central management server determines a target media distribution server from the cluster of media distribution servers, specifically:
and determining the link conditions between the client and each media distribution server in the media distribution server cluster, and determining the media distribution server with the best link condition as a target media distribution server.
4. The system of claim 1, wherein the target center management server is further configured to:
receiving a video cache request sent by a network management terminal; the video cache request comprises a second camera identification;
and sending a second control signaling to a second front-end camera with the second camera identifier in the plurality of front-end cameras, so that the second front-end camera buffers the video data stream according to the second control signaling, and refreshes the buffered video data stream at intervals of preset fixed time length.
5. The system of claim 1, wherein the target media distribution server is further configured to:
in the process of sending the video data stream, calculating network transmission parameters;
and sending feedback information to the first front-end computer according to the network transmission parameters so that the first front-end computer adjusts the number of coding frames according to the feedback information.
6. The system of claim 5, wherein the network transmission parameters include at least one of latency, packet loss rate, and throughput.
7. A video transmission method applied to the system of claim 1, wherein the method is applied to the target center management server, and specifically includes:
receiving a video acquisition request sent by a client, wherein the video acquisition request comprises a first camera identifier; determining a target media distribution server from a media distribution server cluster, and setting a receiving address of the target media distribution server as an IP address of the client;
sending a first control signaling to a first front-end camera with the first camera identifier in the plurality of front-end cameras, so that the first front-end camera sends a video data stream to a target media distribution server according to the first control signaling; so that the target media distribution server sends the video data stream to the client according to the receiving address.
CN201811452359.7A 2018-11-30 2018-11-30 Video transmission system and method Active CN109450923B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811452359.7A CN109450923B (en) 2018-11-30 2018-11-30 Video transmission system and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811452359.7A CN109450923B (en) 2018-11-30 2018-11-30 Video transmission system and method

Publications (2)

Publication Number Publication Date
CN109450923A CN109450923A (en) 2019-03-08
CN109450923B true CN109450923B (en) 2021-06-15

Family

ID=65554592

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811452359.7A Active CN109450923B (en) 2018-11-30 2018-11-30 Video transmission system and method

Country Status (1)

Country Link
CN (1) CN109450923B (en)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110248215B (en) * 2019-05-22 2021-03-26 福建大屏网络科技有限公司 Video play chain authentication method, device, system, server and storage medium
CN111314293A (en) * 2020-01-15 2020-06-19 安徽文香信息技术有限公司 Media resource service system, method, device, storage medium and processor
CN112637258A (en) * 2020-09-28 2021-04-09 西安万像电子科技有限公司 Data processing method and system
CN112583922B (en) * 2020-12-16 2022-09-20 罗普特科技集团股份有限公司 Intelligent scheduling system for video monitoring service
CN112770145B (en) * 2020-12-31 2023-07-25 罗普特科技集团股份有限公司 Scheduling method and system for video monitoring platform
CN112511811B (en) * 2021-02-03 2021-05-04 北京拓课网络科技有限公司 Multi-camera processing method and device and electronic equipment
CN114401114B (en) * 2021-12-17 2023-08-11 上海绚显科技有限公司 Data transmission method, device, electronic equipment and storage medium
CN114401453B (en) * 2022-01-14 2024-04-16 京东方科技集团股份有限公司 Data processing method, device, computing equipment and medium
CN114584561A (en) * 2022-03-15 2022-06-03 联想(北京)有限公司 Information processing method and device and electronic equipment
CN114866854B (en) * 2022-04-20 2023-12-05 杭州博联智能科技股份有限公司 Video access mode dynamic allocation method, system, electronic equipment and storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103747274A (en) * 2013-12-18 2014-04-23 北京邮电大学 Video data center with additionally-arranged cache cluster and cached resource scheduling method thereof
CN105450994A (en) * 2015-12-03 2016-03-30 河北远东通信系统工程有限公司 Video commanding and dispatching system and method based on RTSP
CN106791986A (en) * 2017-01-10 2017-05-31 环球智达科技(北京)有限公司 A kind of live index list encrypted antitheft catenary systems of HLS and method
CN108183913A (en) * 2018-01-04 2018-06-19 深圳前海安托邦网络科技有限公司 A kind of LAN video camera carries out the management system and method for network flow-medium live streaming
CN108551571A (en) * 2018-05-16 2018-09-18 武汉微创光电股份有限公司 A kind of monitor video distribution method, device, system and Distributor

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9596095B2 (en) * 2011-07-29 2017-03-14 Telefonaktiebolaget L M Ericsson (Publ) Optimized near-simultaneous distribution of multimedia content

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103747274A (en) * 2013-12-18 2014-04-23 北京邮电大学 Video data center with additionally-arranged cache cluster and cached resource scheduling method thereof
CN105450994A (en) * 2015-12-03 2016-03-30 河北远东通信系统工程有限公司 Video commanding and dispatching system and method based on RTSP
CN106791986A (en) * 2017-01-10 2017-05-31 环球智达科技(北京)有限公司 A kind of live index list encrypted antitheft catenary systems of HLS and method
CN108183913A (en) * 2018-01-04 2018-06-19 深圳前海安托邦网络科技有限公司 A kind of LAN video camera carries out the management system and method for network flow-medium live streaming
CN108551571A (en) * 2018-05-16 2018-09-18 武汉微创光电股份有限公司 A kind of monitor video distribution method, device, system and Distributor

Also Published As

Publication number Publication date
CN109450923A (en) 2019-03-08

Similar Documents

Publication Publication Date Title
CN109450923B (en) Video transmission system and method
KR102544991B1 (en) User Equipment and Media Streaming Network Secondary Node
US9197677B2 (en) Multi-tiered scalable media streaming systems and methods
CA2611776C (en) Method and communication unit for communicating between communication apparatuses
US20090113253A1 (en) System and apparatus for delivering media and method for playing streaming media
US20100088427A1 (en) Selective Routing of Data Transmission Between Clients
US9338192B1 (en) Connection management using connection request transfer protocol
KR101871303B1 (en) Method for subscribing to streams from multicast clients
WO2015120766A1 (en) Video optimisation system and method
CN110445723B (en) Network data scheduling method and edge node
WO2012075970A1 (en) Method, device and system for obtaining media content
Park et al. Smart base station-assisted partial-flow device-to-device offloading system for video streaming services
CN111567011A (en) Method for improving QoE of video service and WEB service by using cross-layer information
CN112954406A (en) Data downloading method and device, computer equipment and storage medium
CN106254267B (en) Data forwarding path adjusting method and gateway equipment
CN102075588A (en) Method and system for realizing network address translation (NAT) transversing and equipment
US11627358B2 (en) Communication entity and a method for transmitting a video data stream
TWI573448B (en) Streaming connection management method and system
Lopes et al. Real-time video transmission in multihomed vehicular networks
CN112106335B (en) Method and system for streaming media data over a content distribution network
JP6102274B2 (en) Network device, distribution control method, distribution control program, and distribution destination notification device
US10951501B1 (en) Monitoring availability of content delivery networks
EP2885940B1 (en) Throttling cell notification
US11621981B2 (en) Systems and methods for providing quality guaranteed voice traffic in conjunction with over-the-top best effort traffic
CA2657444A1 (en) Multi-tiered scalable media streaming systems and methods

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant