CN117793285A - Video conference monitoring method, system, equipment and storage medium - Google Patents

Video conference monitoring method, system, equipment and storage medium Download PDF

Info

Publication number
CN117793285A
CN117793285A CN202311803872.7A CN202311803872A CN117793285A CN 117793285 A CN117793285 A CN 117793285A CN 202311803872 A CN202311803872 A CN 202311803872A CN 117793285 A CN117793285 A CN 117793285A
Authority
CN
China
Prior art keywords
code stream
node
link
video conference
data
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.)
Pending
Application number
CN202311803872.7A
Other languages
Chinese (zh)
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.)
Suzhou Keda Technology Co Ltd
Original Assignee
Suzhou Keda 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 Suzhou Keda Technology Co Ltd filed Critical Suzhou Keda Technology Co Ltd
Priority to CN202311803872.7A priority Critical patent/CN117793285A/en
Publication of CN117793285A publication Critical patent/CN117793285A/en
Pending legal-status Critical Current

Links

Abstract

The application provides a video conference monitoring method, a video conference monitoring system, video conference monitoring equipment and a video conference storage medium, wherein the video conference monitoring method comprises the following steps: collecting operation data of a video conference system in real time, wherein the operation data comprises code stream processing data of each node in the video conference system; extracting code stream processing data of each node corresponding to each code stream exchange event from the operation data based on preset service logic; determining the connection sequence of each node in each code stream switching event based on the code stream processing data of each node corresponding to each code stream switching event, connecting each node according to the connection sequence, and constructing a code stream link corresponding to each code stream switching event; and extracting code stream state data in the operation data, and determining the working state of each node in the code stream link based on the code stream state data. By adopting the method and the device, the states of all nodes of the full link in the video conference system are monitored.

Description

Video conference monitoring method, system, equipment and storage medium
Technical Field
The present disclosure relates to the field of data processing technologies, and in particular, to a method, a system, an apparatus, and a storage medium for monitoring a video conference.
Background
The video conference fault diagnosis technology is to timely discover and remove faults in the video conference system through monitoring, analyzing, diagnosing and processing the video conference system, so as to ensure the normal operation of the video conference system. Common faults in videoconferencing systems are typically manifested as: picture jamming, unclear sound, abnormal network connection, no sound, no image and the like.
For these faults, existing systems typically simply prompt the user: the smoothness of the network line, such as whether the network line interface is damaged or loosened, is checked. If the connection of the network line is not abnormal, an attempt may be made to adjust the display quality of the video terminal, etc. After the user sees the prompt, the user needs to find the fault reason by himself, which is time-consuming and labor-consuming and affects the video conference effect. At present, although some automatic diagnosis technologies for video conferences appear, the automatic diagnosis technologies mainly aim at terminals of the video conferences to perform preliminary diagnosis, such as diagnosis on network connection conditions, IP conflicts, whether current code rates are normal, whether terminals lose packets, whether terminal decoding is normal, and the like of the terminals, but the automatic diagnosis on faults outside the terminals cannot be performed.
Disclosure of Invention
Aiming at the problems in the prior art, the purpose of the application is to provide a video conference monitoring method, a system, equipment and a storage medium, which realize the monitoring of the states of all nodes of a full link in a video conference system.
The embodiment of the application provides a video conference monitoring method, which comprises the following steps:
collecting operation data of a video conference system in real time, wherein the operation data comprises code stream processing data of each node in the video conference system;
extracting code stream processing data of each node corresponding to each code stream exchange event from the operation data based on preset service logic;
determining the connection sequence of each node in each code stream switching event based on the code stream processing data of each node corresponding to each code stream switching event, connecting each node according to the connection sequence, and constructing a code stream link corresponding to each code stream switching event;
and extracting code stream state data in the operation data, and determining the working state of each node in the code stream link based on the code stream state data.
By adopting the video conference monitoring method, firstly, the operation data of the video conference system is collected in real time, the operation data is extracted into the code stream processing data of each code stream exchange event based on service logic, then each node is connected according to the connection sequence, namely, a code stream link is constructed, each code stream link in progress in the video conference system is constructed through the steps, the real-time working state of each node in the code stream link can be determined by correlating the code stream state data in the operation data with the nodes of each code stream link, the full-link real-time monitoring of the video conference system is realized, the accurate diagnosis of the video conference system faults is realized, the high-quality and high-efficiency monitoring result is provided, the time of users and operation staff is saved, and unnecessary manpower and time waste is avoided. The method enables the state information of each node which originally processes the state of the black box to be accurately obtained, and provides information support for further optimizing the video conference system.
In some embodiments, the extracting, based on the preset service logic, the code stream processing data of each node corresponding to each code stream switching event from the operation data includes the following steps:
based on the operation data, monitoring a code stream exchange event, and determining a code stream exchange type corresponding to the code stream exchange event;
and selecting service logic corresponding to the code stream exchange type, and extracting code stream processing data of each node corresponding to the code stream exchange event from the operation data.
In some embodiments, the code stream switching type includes a first type of code stream switching event between the RTC node and the RTC node;
when determining that the code stream exchange event is a first type of code stream exchange event, extracting code stream processing data of each node corresponding to the code stream exchange event from the operation data by adopting the following steps:
determining a conference ID corresponding to the first class code stream exchange event;
determining a subscriber ID and/or a publisher ID corresponding to the first class code stream exchange event;
and extracting code stream processing data of each node corresponding to the first type code stream exchange event from the operation data based on the conference ID and the subscriber ID and/or the publisher ID.
In some embodiments, the bitstream exchange type comprises a second type bitstream exchange event between an AVC node and an AVC node;
when the code stream exchange type corresponding to the code stream exchange event is determined to be the second type of code stream exchange event, extracting the code stream processing data of each node corresponding to the code stream exchange event from the operation data by adopting the following steps:
determining a conference ID of the second class code stream switching event;
and determining the port identification of each node corresponding to the second class of code stream switching event, and extracting code stream processing data of each node corresponding to the code stream switching event from the operation data based on the conference ID and the port identification.
In some embodiments, when determining that the code stream switching event is a first type code stream switching event between the RTC node and the RTC node or a second type code stream switching event between the AVC node and the AVC node, determining a connection order of each node in the code stream switching event based on the code stream processing data of each node corresponding to the code stream switching event by:
and taking the final demand node of the code stream exchange event as a starting point node, and sequentially determining the next node in the code stream link according to the source address and the destination address in the code stream processing data of each node.
In some embodiments, when determining that the code stream switching event is a third type of code stream switching event between an AVC node and an RTC node, extracting code stream processing data of each node corresponding to the code stream switching event from the running data by:
extracting code stream processing data of each node in the transmission process from the AVC node to the switching node from the operation data, and extracting code stream processing data of each node in the transmission process from the RTC node to the switching node from the operation data;
constructing a first sub-link from the AVC node to the switching node based on code stream processing data of each node in the transmission process from the AVC node to the switching node, and determining a transmission ID corresponding to the first sub-link;
constructing a second sub-link from the RTC node to the switching node based on code stream processing data of each node in the transmission process from the RTC node to the switching node, and determining a transmission ID corresponding to the second sub-link;
and splicing the first sub-link and the second sub-link with the same transmission ID to obtain a code stream link from the AVC node to the RTC node.
In some embodiments, after determining the working state of each node in the code stream link based on the code stream state data, the method further includes the following steps:
providing an operating state display interface, wherein the operating state display interface comprises a code stream link selection area, a time interval display area and a link state display area, the code stream link selection area is configured to provide a code stream link selection list and receive a user selection of a code stream link, the time interval display area is configured to display a time adjustment bar of the selected code stream link and receive a user selection of a time point, and the link state display area is configured to display the operating states of each node and each node of the selected code stream link at the selected time point.
The embodiment of the application also provides a video conference monitoring system, which is applied to the video conference monitoring method, and comprises the following steps:
the data acquisition module is used for acquiring the operation data of the video conference system in real time, wherein the operation data comprises code stream processing data of each node in the video conference system;
the data extraction module is used for extracting the code stream processing data of each node corresponding to each code stream exchange event from the operation data based on preset business logic;
The link construction module is used for determining the connection sequence of each node in each code stream switching event based on the code stream processing data of each node corresponding to each code stream switching event, connecting each node according to the connection sequence, and constructing a code stream link corresponding to each code stream switching event;
and the state monitoring module is used for extracting code stream state data in the operation data and determining the working state of each node in the code stream link based on the code stream state data.
By adopting the video conference monitoring system, firstly, the data acquisition module is used for acquiring the operation data of the video conference system in real time, the data extraction module is used for extracting the operation data into the code stream processing data of each code stream exchange event based on service logic, and then the link construction module is used for connecting each node according to the connection sequence to construct a code stream link, so that each code stream link in the video conference system is constructed, the code stream state data in the operation data is associated with the nodes of each code stream link through the state monitoring module, the real-time working state of each node in the code stream link can be determined, the full-link real-time monitoring of the video conference system is realized, the accurate diagnosis of the video conference system faults is realized, the high-quality and high-efficiency monitoring result is provided, the time of users and operation and maintenance personnel is saved, and unnecessary manpower and time waste is avoided.
The embodiment of the application also provides video conference monitoring equipment, which comprises:
a processor;
a memory having stored therein executable instructions of the processor;
wherein the processor is configured to perform the steps of the video conference monitoring method via execution of the executable instructions.
By adopting the video conference monitoring device provided by the application, the processor executes the video conference monitoring method when executing the executable instructions, so that the beneficial effects of the video conference monitoring method can be obtained.
The embodiment of the application also provides a computer readable storage medium for storing a program, which when executed by a processor, implements the steps of the video conference monitoring method.
By adopting the computer-readable storage medium provided by the application, the program stored therein realizes the steps of the video conference monitoring method when being executed, thereby the beneficial effects of the video conference monitoring method can be obtained.
Drawings
Other features, objects and advantages of the present application will become more apparent upon reading of the detailed description of non-limiting embodiments, made with reference to the following drawings.
FIG. 1 is a flow chart of a video conference monitoring method according to an embodiment of the present application;
FIG. 2 is a schematic diagram of a data acquisition process according to an embodiment of the present application;
FIG. 3 is a schematic diagram of a process for link construction from operational data to code stream according to an embodiment of the present application;
FIG. 4 is a schematic diagram of a node architecture of a first type of stream switching event according to an embodiment of the present application;
FIG. 5 is a schematic diagram of a node architecture of a second type of stream switching event according to an embodiment of the present application;
FIG. 6 is a diagram illustrating a code stream trend in a second type of code stream switching event according to an embodiment of the present application;
FIG. 7 is a schematic diagram of a process for determining a node connection order in a code stream link according to an embodiment of the present application;
FIG. 8 is a schematic diagram of a data change process for constructing a link according to an embodiment of the present application;
FIG. 9 is a schematic diagram of a node architecture of a third type of stream switching event according to an embodiment of the present application;
FIG. 10 is a schematic diagram of determining an operating state of each node in the code stream link based on the code stream state data according to an embodiment of the present application;
FIG. 11 is a schematic diagram of an operational status display page according to an embodiment of the present application;
fig. 12 is a schematic diagram of a link working state display page corresponding to a composite screen according to an embodiment of the present application;
Fig. 13 is a schematic diagram of a video conference monitoring system according to an embodiment of the present application;
fig. 14 is a schematic structural diagram of a video conference monitoring apparatus according to an embodiment of the present application;
fig. 15 is a schematic structural view of a computer storage medium according to an embodiment of the present application.
Detailed Description
Example embodiments will now be described more fully with reference to the accompanying drawings. However, the exemplary embodiments can be embodied in many forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the concept of the example embodiments to those skilled in the art. The same reference numerals in the drawings denote the same or similar structures, and thus a repetitive description thereof will be omitted. Although the terms "first" or "second" etc. may be used herein to describe certain features, these features should be interpreted in a descriptive sense only and not for purposes of limitation as to the number and importance of the particular features.
As shown in fig. 1, in an embodiment, the application provides a video conference monitoring method, which includes the following steps:
s100: collecting operation data of a video conference system in real time, wherein the operation data comprises code stream processing data of each node in the video conference system;
In this embodiment, an active manner of sending an operation data acquisition request to the video conference system, or a passive manner of burying points in the video conference system to collect operation data of the video conference system in real time, where nodes of the video conference system include, for example, a video conference platform for creating and managing a video conference, terminals for participating in the video conference (such as a mobile phone, a computer, a television, etc.), and peripherals (such as a camera, a microphone, etc.), each independent device in the video conference system may be regarded as a node, the operation data is data generated by each node in real time in the operation process, for example, includes a log of the video conference platform, a terminal log, server data, etc., and the code stream processing data includes a source address, a destination address, a code stream data identifier, a code stream data type (audio, video), etc. when each node transmits data;
s200: extracting code stream processing data of each node corresponding to each code stream exchange event from the operation data based on preset service logic;
the method comprises the steps that the acquired original operation data are processed to obtain code stream processing data corresponding to each code stream exchange event, the code stream exchange event is used for subsequently constructing links of each code stream exchange event, the code stream exchange event refers to a process of transmitting data from a starting point node to an end point node, the middle part possibly passes through a plurality of nodes, for example, a node A sends data to a node E, and the middle part passes through a node B, a node C and a node D, the node corresponding to the code stream exchange event M comprises the node A, the node B, the node C, the node D and the node E, and the step is that the code stream processing data related to the code stream exchange event M are extracted from the operation data;
S300: determining the connection sequence of each node in each code stream switching event based on the code stream processing data of each node corresponding to each code stream switching event, connecting each node according to the connection sequence, and constructing a code stream link corresponding to each code stream switching event;
the connection sequence of each node is the transmission sequence of the code stream in the code stream link, for example, an A node is used as a starting node, an E node is used as a termination node, the connection sequence of each node is from A node to B node to C node to D node to E node, and a code stream link from A node to E node is constructed, and the code stream link realizes the transmission of code stream data from A node to E node;
s400: and extracting code stream state data in the operation data, and determining the working state of each node in the code stream link based on the code stream state data.
Because each code stream link in the video conference system is established through the step S300, the real-time state monitoring of the whole link in the video conference system is realized by monitoring the working state of each node in the code stream link.
By adopting the video conference monitoring method, firstly, the operation data of the video conference system is collected in real time through the step S100, the operation data is extracted into the code stream processing data of each code stream exchange event based on service logic through the step S200, then each node is connected according to the connection sequence through the step S300 to construct a code stream link, each code stream link in progress in the video conference system can be constructed through the steps S100 to S300, the real-time working state of each node in the code stream link can be determined through the correlation between the code stream state data in the operation data and the nodes of each code stream link through the step S400, the full-link real-time monitoring of the video conference system is realized, the accurate diagnosis of the video conference system fault is realized, the high-quality and high-efficiency monitoring result is provided, the time of users and operation and maintenance personnel is saved, and unnecessary manpower and time waste is avoided. The method enables the state information of each node which originally processes the state of the black box to be accurately obtained, and provides information support for further optimizing the video conference system.
Fig. 2 shows a schematic diagram of a data acquisition process according to an embodiment of the present application. The machine room part corresponds to a video conference platform part in the video conference system and comprises an App, a basic cloud and the like, and the machine room part, a terminal MT, peripherals and the like form the video conference system. The data acquisition part and the real-time computing platform are added, the real-time computing platform is deployed on the JDB server, MT refers to a terminal for meeting, such as a mobile phone, a computer, a television and the like, and peripheral refers to equipment for meeting, such as a camera, a microphone and the like. Ops & Nms refers to Ops service and Nms (network management system) service, and service control of the video conference system is achieved. The data acquisition part acquires operation data of the video conference system such as App, base cloud, terminal, peripheral, etc. mainly through OpsAgent, logAgenet, metricBeat, packetBeat, watcher (data monitor) deployed in a machine room and MtCollect, opsCollect, logServer deployed in a JDB server, wherein the operation data acquisition may be that a data acquisition request is actively sent to the App, base cloud, terminal, peripheral, etc., or that a service framework is passively arranged in the App, base cloud, terminal, peripheral, etc., and an example of arranging the service framework in the App is schematically shown in fig. 2. The data acquisition part expands the data acquisition range, the acquired object comprises but not limited to network media, basic cloud and the like, the acquired data types comprise but not limited to terminal data, media data, forwarding data, encoding and decoding data and the like, and the acquired data is sent to Kafka and is stored after being calculated in real time. The real-time computing part is realized by adopting a link computing engine, and can realize the data processing functions of the steps S200 and S300, and the method specifically comprises the steps of processing collected operation data, extracting useful information, analyzing the operation data, constructing a code stream link, and storing the processed code stream link data.
Fig. 3 is a schematic diagram of a process of link construction from operation data to code stream according to an embodiment of the present application. This process is implemented, for example, by a flink calculation engine. Specifically, the flink engine consumes data in kafka and utilizes a specialized thread to process running data in different formats. As shown in fig. 3, original data, that is, operation data of a video conference, is collected through mqwatch (message queue monitor) and syslog-ng (system log obtaining module), then Json formatting is performed on the operation data in different formats, format unification is performed, abstract processing is performed through the above step S200, so as to obtain code stream processing data of each data exchange event, and then node connection sequence of each code stream link is obtained through step S300, for example, a code stream link for obtaining one code stream exchange event includes a→b→handover→d, and then the code stream link is stored in an ES database. By adopting the method, the analysis processing of the data stream of the video conference system is realized, the original operation data is converted into Json data, the time sequence is kept, when the code stream link is constructed, the code stream link can be distinguished according to the video conference key value, the data is respectively processed, the media data and the forwarding data are combined, and the uplink and downlink code stream links taking the node as the dimension are output. For one node, the link that sends data to another node is the uplink code stream link, and the link that receives code streams from another node is the downlink code stream link.
Because the realization logic of different types of code stream exchange events is different, different business logic is adopted to construct a corresponding code stream link.
In this embodiment, the step S200: based on preset service logic, extracting code stream processing data of each node corresponding to each code stream exchange event from the operation data, wherein the method comprises the following steps:
based on the operation data, monitoring a code stream exchange event, and determining a code stream exchange type corresponding to the code stream exchange event;
and selecting service logic corresponding to the code stream exchange type, and extracting code stream processing data of each node corresponding to the code stream exchange event from the operation data.
In this embodiment, the bitstream exchange events include a first class of bitstream exchange events between the RTC node and the RTC node, a second class of bitstream exchange events between the AVC node and the AVC node, and a third class of bitstream exchange events between the RTC node and the AVC node. There are three main types of video conferences: SFU/RTC conferences with only first class of code stream switching events, port conferences with only second class of code stream switching events, and hybrid conferences where the first class of code stream switching events, the second class of code stream switching events and the third class of code stream switching events cross. The business logic of various types of code stream switching events is described below.
Fig. 4 is a node architecture diagram of a first type of code stream switching event according to an embodiment of the present application, wherein the code stream progression from one RTC terminal node to another RTC terminal node is shown. The box with the left lower corner labeled P in fig. 4 corresponds to the publisher and the box with the left lower corner labeled C corresponds to the subscriber. Whether the video code stream or the audio code stream is the audio code stream or the video code stream, a publisher publishes the own video code stream, a subscriber subscribes the code stream information published by the publisher according to the own requirement, the code stream of the publisher reaches a pipe node (a forwarding node) through a terminal worker (a media server), then reaches the terminal worker of the opposite party through a switch worker (an exchange server), and the terminal worker of the opposite party transmits the code stream information to the terminal of the subscriber again to complete one-time code stream exchange. Wherein the RTCPeer is deployed at the Terminal, and the Terminal workbench and the Switch workbench are deployed at the server side.
In this embodiment, in the step S200, when it is determined that one of the code stream switching events is a first type of code stream switching event, the following steps are adopted to extract code stream processing data of each node corresponding to the code stream switching event from the operation data:
determining a conference ID corresponding to the first class code stream exchange event; the code stream link is generated in a conference, the conference is provided with a conference ID, and the conference is generally composed of a plurality of digits, and each message report in a video conference system carries the conference ID;
Determining a subscriber ID and/or a publisher ID corresponding to the first class code stream exchange event; for example, if the a node subscribes to the code stream of the E node, the code stream link can be uniquely identified by the ID of the a node or the ID of the E node if no other code stream link exists between the a node and the E node, and if the a node subscribes to the code streams of the M node and the E node at the same time, and the a node and the N node subscribe to the code stream of the E node at the same time, the code stream link cannot be uniquely identified by the ID of the a node, and the code stream link cannot be uniquely identified by the ID of the E node, in which case the code stream link between the a node and the E node can be uniquely identified by the ID of the a node+the ID of the E node;
and extracting code stream processing data of each node corresponding to the first type code stream exchange event from the operation data based on the conference ID and the subscriber ID and/or the publisher ID.
When the code stream is released and subscribed, for pure forwarding of the code stream, the source node can send the code stream to a plurality of destination nodes, but the destination node only receives the code stream of one source node. Thus, when the code stream link is established, it is derived from the destination node onwards, i.e. from the subscriber for the first type of code stream exchange event from RTC node to RTC node. For the first type of code stream switching event, in the step S300, the following steps are adopted to determine the connection sequence of each node in the code stream switching event based on the code stream processing data of each node corresponding to the code stream switching event:
And taking a final demand node of the code stream exchange event, namely a subscriber node, as a starting point node, and sequentially determining the next node in the code stream link according to the source address and the destination address in the code stream processing data of each node. The process of establishing a code stream link is illustrated in fig. 7, in which "exchange newly added" means that a new code stream exchange event is monitored, after a start node is determined, a node without a complete exchange identifier in code stream processing data corresponding to the code stream exchange event is searched, if the node exists, a next hop is searched based on a source address src and a destination address dst, that is, the dst=src of the start node, a node where the src is equal to the dst of the start node is found is a next hop node, then the node is searched again based on the dst of the next hop node until the src of the queried next hop node is an end point, the next hop node is used as an end node, a complete link is output, the start node is identified, and the code stream exchange event is associated with the start node. When searching the next hop node, the method further comprises classifying the nodes, distinguishing a starting node, an ending node and an intermediate node, and recording the nodes to a node list of the code stream switching event.
Fig. 5 is a schematic node architecture diagram of a second type of stream switching event according to an embodiment of the present application. Fig. 6 is a schematic diagram of the code stream trend in the second type code stream switching event according to an embodiment of the present application. The code stream direction of the port conference is shown in fig. 5. A port conference is a conference established between AVC nodes that includes a second type of stream switching event. The port conference and the RTC conference are different, the video streams of the port conference terminal and the terminal need to pass through the video conference platform, the terminal firstly transmits the code stream to the video conference platform, and the video conference platform transmits the code stream to another terminal after media encoding and decoding processing. In fig. 5, enc denotes an encoding interface, dec denotes a decoding interface, rcv denotes a receiving, snd denotes a transmitting, frame denotes a frame, adapter denotes an Adapter, rtp denotes an Rtp packet, net denotes a network, and dsworks is a switching node. The terminal side and the platform side are similar in structure and mainly comprise a Media net (Rcv/Snd) for receiving/transmitting a code stream and communicating with a network, a Media (Dec/Enc) for decoding/encoding the code stream and communicating with software and hardware, and a switching node (dsworks) also serves as a node and also processes data packets, and because a forwarding node is not a code stream endpoint, the main statistics of code rate and packet loss rate are carried out. For the terminal side, the code stream processing is single, including sending or receiving the code stream, and the code stream can be controlled and adjusted by the Process processing in the video conference platform. HDU in fig. 6 represents a high definition camera, MT represents each terminal, and dss-w represents each switching node (dsworks) as one of peripherals. A, I, D, K in fig. 6 corresponds to ports for linking IP addresses of external networks, B, H, C, J for linking IP addresses of internal networks, E, F for video conference platform allocation ports, and G for bridge ports. The terminal code stream in the port conference passes through the video conference platform. When a terminal enters a session, the access service allocates a receive port (A, B) and a transmit port (C, D) on the dsworks for the terminal. The terminal may also set a transmit port and a receive port corresponding to one of the stream switching events. Thus, in the second class of code stream switching events, rather than identifying the event with a subscriber ID and a publisher ID, data extraction is performed through an association between ports of the respective nodes. For example, after determining a transmitting port and a receiving port of a code stream demand side of a code stream switching event, a node directly communicating with the code stream demand side will carry a transmitting port identifier and a receiving port identifier of the code stream demand side when transmitting a data packet, find data carrying the transmitting port identifier and data carrying the receiving port identifier in the running data, find corresponding data, analyze other port identifiers in the found data, and then continue to find other data based on the port identifier.
When determining that the code stream switching type corresponding to the code stream switching event is the second type of code stream switching event, in step S200, the following steps are adopted to extract the code stream processing data of each node corresponding to the code stream switching event from the operation data:
determining a conference ID of the second class code stream switching event;
and determining the port identification of each node corresponding to the second class of code stream switching event, and extracting the code stream processing data of each node corresponding to the code stream switching event from the operation data based on the conference ID and the port identification, so that the code stream processing data of the code stream switching event can be abstracted.
The process of constructing the code stream link corresponding to the second class of code stream switching event can also refer to fig. 7. In this embodiment, when determining that the code stream switching event is a second type code stream switching event between AVC nodes, in step S300, the following steps are adopted to determine the connection sequence of each node in the code stream switching event based on the code stream processing data of each node corresponding to the code stream switching event:
and taking the final demand node of the code stream exchange event as a starting point node, and sequentially determining the next node in the code stream link according to the source address and the destination address in the code stream processing data of each node. For the second class of stream switching events, the source address and destination address may be represented by, or identified by, a corresponding source port identification and destination port identification, respectively. Specifically, the destination port of each node is the same as the source port of the next node.
Fig. 8 is a schematic diagram of a data change process of constructing a link according to an embodiment of the present application. As shown in fig. 8, the operation data is subjected to data extraction ETL to obtain scattered code stream processing data corresponding to each code stream switching event, and then the data is summarized and calculated through AGG data to obtain complete link data. In fig. 8, rtc denotes an Rtc terminal, rtcP denotes a publisher Rtc terminal, rtcC denotes a subscriber Rtc terminal, pipeC denotes a subscriber-oriented forwarding node, pipeP denotes a publisher-oriented forwarding node, sfurmix denotes a mixer, avc denotes an AVC terminal, avcC denotes a subscriber AVC terminal, and AvcP denotes a publisher AVC terminal.
Fig. 9 is a schematic node architecture diagram of a third type of code stream switching event according to an embodiment of the present application. In fig. 9, AVC indicates an AVC node, RTC indicates an RTC node, dss indicates a switching node, simbas indicates a forwarding node, avctransp indicates an AVC node-oriented transmission node, ictransp indicates an RTC node-oriented transmission node, mix indicates a mixer. The code stream of the AVC terminal is sent to the RTC terminal, or the code stream of the RTC terminal is sent to the AVC terminal, so that the Dss switching node plays a great role, and the code stream switching is performed at the node. The AVC terminal can utilize a Simbas to change own video code stream into three code streams with different resolutions, and then release the code streams in an SFU system for other RTC terminals to subscribe, and the terminal can select video code streams with proper resolutions according to own network conditions. The AVC terminal mixes the audio code stream through the mixer Mix and issues the audio code stream through the Dss switching node for other RTC terminals to acquire. When the RTC terminal issues the video code stream, a port is created at the Dss switching node, one path of video code stream with the largest resolution is sent to a conference system of the port conference for the AVC terminal in the port conference to use, and when the RTC terminal issues the audio code stream, the audio code stream can be subjected to audio mixing processing through Vmp/Mix and then sent to the AVC terminal through the Dss switching node. Thus, the third type of stream switching event can be seen as two conference systems, RTC conference and port conference, each outputting a subcode stream link belonging to itself.
Specifically, when it is determined that the code stream switching event is a third type of code stream switching event between the AVC node and the RTC node, in step S200, the following steps are adopted to extract the code stream processing data of each node corresponding to the code stream switching event from the operation data:
extracting code stream processing data of each node in the transmission process from the AVC node to the switching node from the operation data, and extracting code stream processing data of each node in the transmission process from the RTC node to the switching node from the operation data; when extracting the code stream processing data, the code stream processing data of each node in the transmission process from the AVC node to the switching node may be searched based on the port identification of each node, i.e., referring to the data extraction process for the second type code stream switching event, and the code stream processing data of each node in the transmission process from the RTC node to the switching node may be searched based on the RTC node ID and the switching node ID, i.e., referring to the data extraction process for the first type code stream switching event;
constructing a first sub-link from the AVC node to the switching node based on code stream processing data of each node in the transmission process from the AVC node to the switching node, and determining a transmission ID corresponding to the first sub-link, wherein the transmission ID is a transmission ID endowed by the switching node when carrying out code stream switching corresponding to the code stream switching event;
Constructing a second sub-link from the RTC node to the switching node based on code stream processing data of each node in the transmission process from the RTC node to the switching node, and determining a transmission ID corresponding to the second sub-link, wherein the transmission ID is the transmission ID which is endowed by the switching node when the code stream corresponding to the code stream switching event is switched, so that the corresponding transmission IDs are the same for a first sub-link and a second sub-link of the same code stream link;
and splicing the first sub-link and the second sub-link with the same transmission ID to obtain a complete code stream link from the AVC node to the RTC node.
Through the steps S100-S300, the code stream links of various types of code stream switching events in the video conference can be established, and the establishment of the video conference full link is realized. In practical applications, one or more of the above-mentioned first type of stream switching event type, second type of stream switching event type and third type of stream may occur in a video conference. The method and the device can be suitable for various different code stream exchange events, can establish a complete code stream link, and have high universality. The stream state data may then be associated with the nodes of the stream links by step S400, and in particular, may be categorized into the nodes of the respective stream links by extracting unique data identifications of the stream state data such as conference ID, subscriber ID, publisher ID, port identification, media handle, media stream identifier ssrc, etc.
Fig. 10 is a schematic diagram of determining an operation state of each node in the code stream link based on the code stream state data according to an embodiment of the present application, in which a manner of node state analysis for a video code stream link and a manner of node state analysis for an audio code stream link are exemplarily shown. For both the video stream link and for the audio stream link, one can select from: 1. inquiring whether a link exists currently, whether source transmission is normal or not, whether platform forwarding and receiving are normal or not, whether platform forwarding and transmitting are normal or not, and whether terminal receiving is normal or not, wherein analysis is performed in five aspects. The code stream state data includes, but is not limited to, packet loss rate, packet loss number, code rate, maximum frame, bandwidth, time delay, total number of frames, number of huge frames, network frame loss, media frame loss, etc. of each node in the video conference process. A process for analysis based on stream state data and video conferencing flow is illustrated briefly in fig. 10. In practical application, the state analysis strategies of various types of nodes can be configured by staff as required. Producer state score in fig. 10 is the score of the publisher, consumer state score is the score of the subscriber, and ev_webber_state is the state of the RTC terminal at this time. After analysis by the strategy of fig. 10, the state types of each node can be determined, and the state types include normal, abnormal, fault, etc., and the evaluation criteria can be allocated to each state type, and based on the analysis of the code stream state data, the evaluation criteria of which state type belongs can be determined. For example, for a forwarding node, the forwarding node is considered to be abnormal when its packet loss rate is greater than a preset threshold.
In this embodiment, after determining the working state of each node in the code stream link based on the code stream state data, the method further includes a step of providing a working state display interface to display the state of each code stream link, where the working state interface may specifically display the state parameters (such as packet loss rate, code rate, etc.) of each node of the code stream link, and may also display the state type of each node.
In this embodiment, the working state display interface includes a code stream link selection area configured to provide a code stream link selection list and receive a selection of a code stream link by a user, a time interval display area configured to display a time adjustment bar of the selected code stream link and receive a selection of a time point by the user, and a link state display area configured to display the working states of each node of the selected code stream link at the selected time point and each node.
FIG. 11 is a schematic diagram of an operating status display page according to an embodiment of the present application. In fig. 11, J100 represents a code stream link selection area, a selected code stream link is currently displayed, a user clicks the area to expand a code stream link selection list, J200 represents a time adjustment bar, a time schedule of the current code stream link is displayed, a user can drag a slider on the time adjustment bar to adjust a time required to view a code stream link state, and J300 represents a link state display area. The code stream link between a terminal and a composite terminal is shown here by way of example with the pass through the Dss switching node as an intermediate node. From the terminal side, the code stream link from which the code stream is sent from the terminal is an uplink code stream link, and the code stream link from which the terminal receives the code stream is a downlink code stream link. Each block in the link state display area corresponds to a node. The user can display the working state of a certain node by placing a mouse at the node. For example, currently a user places a mouse at a terminal node and the interface displays the status of the various devices (microphone, camera, projection end) of the terminal node.
The embodiment can further display the working state of the link corresponding to the synthesizing end when synthesizing the picture. Fig. 12 is a schematic diagram of a link operation status display page corresponding to a composite screen according to an embodiment of the present application. The synthesizing end comprises a synthesizer and a coding port, wherein the synthesizer synthesizes 9 pictures currently, and the synthesized pictures are coded and released to each destination terminal. The user places the mouse at the block corresponding to a certain picture of the synthesizer, can check the link state from the source terminal corresponding to the picture to the synthesizing terminal, places the mouse at a certain coding port, can check the state of the coding port, places the mouse at the block corresponding to a certain terminal, can check the link state from the synthesizing terminal to the terminal, and can more facilitate the staff to check the link state in the picture synthesizing process.
As shown in fig. 13, the embodiment of the present application further provides a video conference monitoring system, which is applied to the video conference monitoring method, where the system includes:
the data acquisition module M100 is used for acquiring operation data of the video conference system in real time, wherein the operation data comprises code stream processing data of each node in the video conference system;
The data extraction module M200 is configured to extract, based on preset service logic, code stream processing data of each node corresponding to each code stream exchange event from the operation data;
the link construction module M300 is configured to determine a connection sequence of each node in each code stream switching event based on code stream processing data of each node corresponding to each code stream switching event, and connect each node according to the connection sequence to construct a code stream link corresponding to each code stream switching event;
the state monitoring module M400 is configured to extract code stream state data in the operation data, and determine a working state of each node in the code stream link based on the code stream state data.
By adopting the video conference monitoring system, firstly, the data acquisition module M100 is used for acquiring the operation data of the video conference system in real time, the data extraction module M200 is used for extracting the operation data into the code stream processing data of each code stream exchange event based on service logic, and then the link construction module M300 is used for connecting each node according to the connection sequence to construct a code stream link, so that each code stream link in the video conference system is constructed, the state data of the code stream in the operation data is associated with the nodes of each code stream link through the state monitoring module M400, the real-time working state of each node in the code stream link can be determined, the full-link real-time monitoring of the video conference system is realized, the accurate diagnosis of the video conference system faults is realized, the high-quality and high-efficiency monitoring result is provided, the time of users and operation and maintenance personnel is saved, and unnecessary manpower and time waste is avoided.
The embodiment of the application also provides video conference monitoring equipment, which comprises a processor; a memory having stored therein executable instructions of the processor; wherein the processor is configured to perform the steps of the video conference monitoring method via execution of the executable instructions.
Those skilled in the art will appreciate that the various aspects of the present application may be implemented as a system, method, or program product. Accordingly, aspects of the present application may be embodied in the following forms, namely: an entirely hardware embodiment, an entirely software embodiment (including firmware, micro-code, etc.) or an embodiment combining hardware and software aspects may be referred to herein as a "circuit," module "or" system.
An electronic device 600 according to this embodiment of the present application is described below with reference to fig. 14. The electronic device 600 shown in fig. 14 is merely an example, and should not be construed as limiting the functionality and scope of use of the embodiments herein.
As shown in fig. 14, the electronic device 600 is in the form of a general purpose computing device. Components of electronic device 600 may include, but are not limited to: at least one processing unit 610, at least one memory unit 620, a bus 630 connecting the different system components (including the memory unit 620 and the processing unit 610), a display unit 640, etc.
Wherein the storage unit stores program code that is executable by the processing unit 610 such that the processing unit 610 performs the steps according to various exemplary embodiments of the present application described in the above-described video conference monitoring method section of the present specification. For example, the processing unit 610 may perform the steps as shown in fig. 1.
The memory unit 620 may include readable media in the form of volatile memory units, such as Random Access Memory (RAM) 6201 and/or cache memory unit 6202, and may further include Read Only Memory (ROM) 6203.
The storage unit 620 may also include a program/utility 6204 having a set (at least one) of program modules 6205, such program modules 6205 including, but not limited to: an operating system, one or more application programs, other program modules, and program data, each or some combination of which may include an implementation of a network environment.
Bus 630 may be a local bus representing one or more of several types of bus structures including a memory unit bus or memory unit controller, a peripheral bus, an accelerated graphics port, a processing unit, or using any of a variety of bus architectures.
The electronic device 600 may also communicate with one or more external devices 700 (e.g., keyboard, pointing device, bluetooth device, etc.), one or more devices that enable a user to interact with the electronic device 600, and/or any device (e.g., router, modem, etc.) that enables the electronic device 600 to communicate with one or more other computing devices. Such communication may occur through an input/output (I/O) interface 650. Also, electronic device 600 may communicate with one or more networks such as a Local Area Network (LAN), a Wide Area Network (WAN), and/or a public network, such as the Internet, through network adapter 660. The network adapter 660 may communicate with other modules of the electronic device 600 over the bus 630. It should be appreciated that although not shown, other hardware and/or software modules may be used in connection with electronic device 600, including, but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, data backup storage systems, and the like.
By adopting the video conference monitoring device provided by the application, the processor executes the video conference monitoring method when executing the executable instructions, so that the beneficial effects of the video conference monitoring method can be obtained.
The embodiment of the application also provides a computer readable storage medium for storing a program, which when executed by a processor, implements the steps of the video conference monitoring method. In some possible implementations, the various aspects of the present application may also be implemented in the form of a program product comprising program code for causing a terminal device to carry out the steps according to the various exemplary embodiments of the present application as described in the above-mentioned video conference monitoring method section of the present specification, when the program product is run on the terminal device.
Referring to fig. 15, a program product 800 for implementing the above-described method according to an embodiment of the present application is described, which may employ a portable compact disc read only memory (CD-ROM) and include program code, and may be run on a terminal device, such as a personal computer. However, the program product of the present application is not limited thereto, and in this document, a readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
The program product may employ any combination of one or more readable media. The readable medium may be a readable signal medium or a readable storage medium. The readable storage medium can be, for example, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or a combination of any of the foregoing. More specific examples (a non-exhaustive list) of the readable storage medium would include the following: an electrical connection having one or more wires, a portable disk, a hard disk, random Access Memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
The computer readable storage medium may include a data signal propagated in baseband or as part of a carrier wave, with readable program code embodied therein. Such a propagated data signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination of the foregoing. A readable storage medium may also be any readable medium that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a readable storage medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
Program code for carrying out operations of the present application may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, C++ or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computing device, partly on the user's device, as a stand-alone software package, partly on the user's computing device, partly on a remote computing device, or entirely on the remote computing device or cluster. In the case of remote computing devices, the remote computing device may be connected to the user computing device through any kind of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or may be connected to an external computing device (e.g., connected via the Internet using an Internet service provider).
By adopting the computer-readable storage medium provided by the application, the program stored therein realizes the steps of the video conference monitoring method when being executed, thereby the beneficial effects of the video conference monitoring method can be obtained.
The foregoing is a further detailed description of the present application in connection with the specific preferred embodiments, and it is not intended that the practice of the present application be limited to such description. It should be understood that those skilled in the art to which the present application pertains may make several simple deductions or substitutions without departing from the spirit of the present application, and all such deductions or substitutions should be considered to be within the scope of the present application.

Claims (10)

1. A method for monitoring a video conference, comprising the steps of:
collecting operation data of a video conference system in real time, wherein the operation data comprises code stream processing data of each node in the video conference system;
extracting code stream processing data of each node corresponding to each code stream exchange event from the operation data based on preset service logic;
determining the connection sequence of each node in each code stream switching event based on the code stream processing data of each node corresponding to each code stream switching event, connecting each node according to the connection sequence, and constructing a code stream link corresponding to each code stream switching event;
And extracting code stream state data in the operation data, and determining the working state of each node in the code stream link based on the code stream state data.
2. The method for monitoring a video conference according to claim 1, wherein the extracting, based on the preset service logic, the code stream processing data of each node corresponding to each code stream switching event from the operation data includes the following steps:
based on the operation data, monitoring a code stream exchange event, and determining a code stream exchange type corresponding to the code stream exchange event;
and selecting service logic corresponding to the code stream exchange type, and extracting code stream processing data of each node corresponding to the code stream exchange event from the operation data.
3. The video conference monitoring method of claim 2, wherein the code stream switching type comprises a first type of code stream switching event between an RTC node and an RTC node;
when determining that the code stream exchange event is a first type of code stream exchange event, extracting code stream processing data of each node corresponding to the code stream exchange event from the operation data by adopting the following steps:
determining a conference ID corresponding to the first class code stream exchange event;
Determining a subscriber ID and/or a publisher ID corresponding to the first class code stream exchange event;
and extracting code stream processing data of each node corresponding to the first type code stream exchange event from the operation data based on the conference ID and the subscriber ID and/or the publisher ID.
4. The video conference monitoring method according to claim 2, wherein the code stream switching type comprises a second type of code stream switching event between AVC nodes;
when the code stream exchange type corresponding to the code stream exchange event is determined to be the second type of code stream exchange event, extracting the code stream processing data of each node corresponding to the code stream exchange event from the operation data by adopting the following steps:
determining a conference ID of the second class code stream switching event;
and determining the port identification of each node corresponding to the second class of code stream switching event, and extracting code stream processing data of each node corresponding to the code stream switching event from the operation data based on the conference ID and the port identification.
5. The video conference monitoring method according to claim 2, wherein when determining that one of the code stream switching events is a first type of code stream switching event between an RTC node and an RTC node or a second type of code stream switching event between an AVC node and an AVC node, determining a connection order of each node in the code stream switching event based on code stream processing data of each node corresponding to the code stream switching event is performed by:
And taking the final demand node of the code stream exchange event as a starting point node, and sequentially determining the next node in the code stream link according to the source address and the destination address in the code stream processing data of each node.
6. The method for monitoring a video conference according to claim 2, wherein when determining that one of the code stream switching events is a third type of code stream switching event between an AVC node and an RTC node, extracting code stream processing data of each node corresponding to the code stream switching event from the operation data by:
extracting code stream processing data of each node in the transmission process from the AVC node to the switching node from the operation data, and extracting code stream processing data of each node in the transmission process from the RTC node to the switching node from the operation data;
constructing a first sub-link from the AVC node to the switching node based on code stream processing data of each node in the transmission process from the AVC node to the switching node, and determining a transmission ID corresponding to the first sub-link;
constructing a second sub-link from the RTC node to the switching node based on code stream processing data of each node in the transmission process from the RTC node to the switching node, and determining a transmission ID corresponding to the second sub-link;
And splicing the first sub-link and the second sub-link with the same transmission ID to obtain a code stream link from the AVC node to the RTC node.
7. The method for monitoring a video conference according to claim 1, further comprising the steps of, after determining the operation states of the nodes in the code stream link based on the code stream state data:
providing an operating state display interface, wherein the operating state display interface comprises a code stream link selection area, a time interval display area and a link state display area, the code stream link selection area is configured to provide a code stream link selection list and receive a user selection of a code stream link, the time interval display area is configured to display a time adjustment bar of the selected code stream link and receive a user selection of a time point, and the link state display area is configured to display the operating states of each node and each node of the selected code stream link at the selected time point.
8. A video conference monitoring system, characterized by being applied to the video conference monitoring method as claimed in any one of claims 1 to 7, the system comprising:
The data acquisition module is used for acquiring the operation data of the video conference system in real time, wherein the operation data comprises code stream processing data of each node in the video conference system;
the data extraction module is used for extracting the code stream processing data of each node corresponding to each code stream exchange event from the operation data based on preset business logic;
the link construction module is used for determining the connection sequence of each node in each code stream switching event based on the code stream processing data of each node corresponding to each code stream switching event, connecting each node according to the connection sequence, and constructing a code stream link corresponding to each code stream switching event;
and the state monitoring module is used for extracting code stream state data in the operation data and determining the working state of each node in the code stream link based on the code stream state data.
9. A video conference monitoring device, comprising:
a processor;
a memory having stored therein executable instructions of the processor;
wherein the processor is configured to perform the steps of the video conference monitoring method of any one of claims 1 to 7 via execution of the executable instructions.
10. A computer-readable storage medium storing a program, characterized in that the program when executed by a processor implements the steps of the video conference monitoring method of any one of claims 1 to 7.
CN202311803872.7A 2023-12-26 2023-12-26 Video conference monitoring method, system, equipment and storage medium Pending CN117793285A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311803872.7A CN117793285A (en) 2023-12-26 2023-12-26 Video conference monitoring method, system, equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311803872.7A CN117793285A (en) 2023-12-26 2023-12-26 Video conference monitoring method, system, equipment and storage medium

Publications (1)

Publication Number Publication Date
CN117793285A true CN117793285A (en) 2024-03-29

Family

ID=90386482

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311803872.7A Pending CN117793285A (en) 2023-12-26 2023-12-26 Video conference monitoring method, system, equipment and storage medium

Country Status (1)

Country Link
CN (1) CN117793285A (en)

Similar Documents

Publication Publication Date Title
US9832250B1 (en) Identifying media network flows that use dynamic codec identifications
US10516856B2 (en) Network video recorder cluster and method of operation
US8014322B2 (en) Diagnostic tool for troubleshooting multimedia streaming applications
CN103841361B (en) Communication method for integrating multiple conference systems under low bandwidth
CN111614784B (en) Edge computing box for heterogeneous data of a worksite
CN110475113B (en) Monitoring equipment fault processing method and device based on video network
CN110163484A (en) Suporting structure intelligence operation management system Internet-based and method
CN102006452A (en) Method for monitoring terminal through IP network and MCU
CN110601891B (en) Alarm processing method and related device
CN110113558B (en) Data processing method, device, system and computer readable storage medium
CN110233749B (en) Fault processing method, system and device and storage medium
CN111031084A (en) Method and device for remote maintenance of video network terminal
CN111083422B (en) Video networking scheduling conference exception analysis method, device, equipment, system and medium
CN102111606B (en) Method and device for accessing to video images in video conference system
CN117793285A (en) Video conference monitoring method, system, equipment and storage medium
CN111885351A (en) Screen display method and device, terminal equipment and storage medium
CN110830763A (en) Monitoring video inspection method and device
US11431770B2 (en) Method, system, apparatus, and electronic device for managing data streams in a multi-user instant messaging system
CN114900662A (en) Method, system, device and medium for determining video stream transmission quality information
CN110740296B (en) Method and device for processing video stream monitored by video network
CN110139061B (en) Video stream screen display method and device
CN110418105B (en) Video monitoring method and system
CN106534756A (en) Mobile terminal real-time video and audio communication control system and method
CN102957896B (en) Audio and video monitoring method and audio and video monitoring device
CN111355927A (en) Monitoring equipment determining method, device, equipment and storage medium based on video network

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