A network adaptive test method and system for video communication
By managing network test scenarios on the server side and automating parsing on the client side, the consistency and objectivity issues of adaptive testing of video communication networks are resolved. This enables automated network environment simulation and result analysis, improving testing efficiency and accuracy.
Patent Information
- Application Number
- CN202410703746.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-06-03
- Publication Date
- 2025-12-05
- Estimated Expiration
- 2044-06-03
AI Technical Summary
Existing adaptive testing methods for video communication networks rely on manual network simulation, which makes it difficult to guarantee consistency in operation triggers, and subjective human scoring carries the risk of misjudgment, resulting in insufficient objectivity and consistency in testing.
The server creates network test scenarios and tasks, manages client device information, and the client performs network configuration and video parsing according to the test tasks. The server aligns and displays the test results, realizing automated network environment simulation and result analysis.
It improves the objectivity and consistency of adaptive testing of video communication networks, reduces manual costs, can simultaneously analyze the network conditions of push and subscription clients, and supports cross-sectional testing of different applications.
Smart Images

Figure CN118612409B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the technical field of video communication evaluation, and in particular to a network adaptive testing method and system for video communication. Background Technology
[0002] With the rapid development of the internet and technological advancements, audio and video communication has reached unprecedented application levels, especially in scenarios such as online meetings and live streaming. Among these, video transmission quality is a core focus. For example, when screen sharing or real-time interaction is used during meetings, video smoothness and clarity become particularly crucial. However, in real-world applications, users' network conditions are highly variable. It's common to encounter situations where a user's network conditions change, resulting in poor video streaming. Other participants may experience noticeable stuttering, blurriness, or large fluctuations in the video frame rate. To improve the user experience, good products optimize video playback based on network adaptability, ensuring relatively smooth playback even under network speed limitations. This necessitates a reasonable evaluation of the video's network adaptability by R&D and testing personnel. Currently, the conventional evaluation method primarily involves observing the client's video subscription performance under simulated network conditions, using subjective human scoring to assess the network adaptability.
[0003] However, current adaptive testing methods rely on various network simulation tools for simulating weak networks. Known weak network rate limiting tools such as Network and Clumsy require a certain amount of operation time. If all these operations are triggered manually, ensuring consistency in each round of testing presents a challenge. Furthermore, current manual subjective scoring methods are highly subjective and prone to misjudgment. Summary of the Invention
[0004] The technical problem to be solved by the present invention is to provide a network adaptive testing method and system for video communication, which can improve the objectivity and consistency of adaptive testing during the network adaptive testing of video communication.
[0005] To solve the above-mentioned technical problems, the technical solution adopted by the present invention is as follows:
[0006] A network adaptive testing method for video communication includes the following steps:
[0007] The server creates network test scenarios and their test steps, and receives and manages device information from the client.
[0008] The server creates a test task and distributes the test task to the corresponding client. The client includes a push client and a subscription client. The test task is used to configure the device information, network test scenario and test frequency of the push client, the device information, network test scenario and test frequency of the subscription client, and the application to be tested.
[0009] The client parses the test task, selects the corresponding application to be tested according to the test task, configures the network according to the network test scenario in the test task, parses the communication video according to the test frequency of the test task to obtain the test results of video communication, and sends the test results to the server.
[0010] The server will align and display the test results uploaded by the push client and the subscription client according to the time.
[0011] To solve the above-mentioned technical problems, another technical solution adopted by the present invention is as follows:
[0012] A network adaptive testing system for video communication includes a server and a client; the server executes the steps in the aforementioned network adaptive testing method for video communication, which are performed primarily by the server, and the client executes the steps in the aforementioned network adaptive testing method for video communication, which are performed primarily by the client.
[0013] The beneficial effects of this invention are as follows: The server creates network test scenarios and their test steps, interfaces with and manages client device information. When creating a test task, the server can select the client to be tested, the network test scenario, the test frequency, and the application to be tested. The server distributes the test task to the corresponding client, which simulates the network environment according to the network test scenario and parses the communication video according to the test frequency. This ensures consistency in the execution of the same test task, reducing manual costs and improving the objectivity of the test. Furthermore, by simultaneously testing both the push and subscription clients, it not only adaptively analyzes the network conditions of each client but also allows running the same type of application on both clients for cross-sectional testing of different applications. Attached Figure Description
[0014] Figure 1 This is a flowchart of a network adaptive testing method for video communication according to an embodiment of the present invention;
[0015] Figure 2 This is a schematic diagram of a network adaptive testing system for video communication according to an embodiment of the present invention;
[0016] Figure 3This is a flowchart of the data management module in the server-side of an embodiment of the present invention;
[0017] Figure 4 This is a flowchart of the device management module in the server-side of an embodiment of the present invention;
[0018] Figure 5 This is a flowchart of the task management module in the server-side of an embodiment of the present invention;
[0019] Figure 6 This is a flowchart of the data statistics module in the server-side of an embodiment of the present invention;
[0020] Figure 7 This is a flowchart of the device scheduling module in the client of this invention embodiment;
[0021] Figure 8 This is a flowchart of the network control module in the client of an embodiment of the present invention;
[0022] Figure 9 This is a flowchart of the video parsing module in the client of an embodiment of the present invention. Detailed Implementation
[0023] To explain in detail the technical content, objectives, and effects of the present invention, the following description is provided in conjunction with the embodiments and accompanying drawings.
[0024] Please refer to Figure 1 This invention provides a network adaptive testing method for video communication, comprising the following steps:
[0025] The server creates network test scenarios and their test steps, and receives and manages device information from the client.
[0026] The server creates a test task and distributes the test task to the corresponding client. The client includes a push client and a subscription client. The test task is used to configure the device information, network test scenario and test frequency of the push client, the device information, network test scenario and test frequency of the subscription client, and the application to be tested.
[0027] The client parses the test task, selects the corresponding application to be tested according to the test task, configures the network according to the network test scenario in the test task, parses the communication video according to the test frequency of the test task to obtain the test results of video communication, and sends the test results to the server.
[0028] The server will align and display the test results uploaded by the push client and the subscription client according to the time.
[0029] As described above, the beneficial effects of this invention are as follows: The server creates network test scenarios and their test steps, interfaces with and manages client device information. When creating a test task, the server can select the client to be tested, the network test scenario to be tested, the test frequency, and the application to be tested. The server distributes the test task to the corresponding client, which simulates the network environment according to the network test scenario and parses the communication video according to the test frequency. This ensures the consistency of the execution of the same test task, reducing manual costs and improving the objectivity of the test. Furthermore, by simultaneously testing both the push client and the subscription client, not only can the network conditions of the push client and the subscription client be adaptively analyzed, but the same type of application can also be run on both clients to conduct cross-sectional testing between different applications.
[0030] Furthermore, the server creates network test scenarios and their test steps, including:
[0031] On the server side, network test scenarios are created as needed, and test steps are created within the network test scenarios. Each test step includes test time, configurable metrics, and their parameters.
[0032] As described above, dynamic configuration of network test scenarios on the server side in advance can configure network conditions for each test period for different test scenarios, so that adaptive video communication tests can be carried out directly based on this in the future.
[0033] Furthermore, network configuration is performed according to the network test scenario in the test task, including:
[0034] The client reads the network test scenario and its test steps from the test task, concatenates the data in each test step into a program command line, simulates the network environment through the program command line, and delays for a preset time after executing the program command line.
[0035] As described above, by piecing together each test step in the network testing scenario into a corresponding program command line, it is possible to effectively simulate the network environment for the client according to the test task, and ensure the consistency of the same test.
[0036] Furthermore, the communication video is analyzed according to the test frequency of the test task to obtain the test results of the video communication, including:
[0037] The client takes screenshots of the communication video according to the testing frequency of the test task and sets a corresponding timestamp for the screenshots;
[0038] The client performs timestamp recognition on the screenshots. If the recognition is abnormal, the abnormal information is sent to the server. Otherwise, the screenshot frame rate is calculated based on the timestamp of each screenshot.
[0039] The client parses each screenshot to obtain the clarity of each screenshot and the average clarity of screenshots within a period. The test results of video communication are obtained by combining the screenshot frame rate and the average clarity.
[0040] As described above, by analyzing the frame rate and clarity of video screenshots, the video effect can be quantified, thus improving the objectivity of video test result analysis.
[0041] Furthermore, sending the test results to the server includes:
[0042] The server-side includes an exception feedback interface and a test result upload interface;
[0043] The client sends exception information to the server's exception feedback interface and sends the test results to the server's test result upload interface.
[0044] As can be seen from the above description, through process anomaly feedback, even if related anomalies occur during the testing process, the relevant errors and anomalies can be investigated and checked in the first instance through early warning.
[0045] Please refer to Figure 2 Another embodiment of the present invention provides a network adaptive testing system for video communication, including a server and a client; the server executes the steps of the network adaptive testing method for video communication described above, which are performed primarily by the server, and the client executes the steps of the network adaptive testing method for video communication described above, which are performed primarily by the client.
[0046] The network adaptive testing method and system for video communication described above are applicable to the process of network adaptive testing for video communication, and improve the objectivity and consistency of adaptive testing. The following is a detailed description of specific implementation methods:
[0047] Example 1
[0048] Please refer to Figure 1 A network adaptive testing method for video communication includes the following steps:
[0049] S1. The server creates network test scenarios and their test steps, and receives and manages the client's device information.
[0050] In this embodiment, please refer to Figure 3The server includes a data management module, which is used to create, store and manage data for network test scenarios. It can create network test scenarios on demand and create test steps in the network test scenarios. Each test step includes test time, configurable indicators and their parameters.
[0051] Specifically, this module supports creating network test scenarios, such as a bandwidth limiting test scenario. The scenario page allows creating different steps, each with switches for different network metrics. These metrics can include: bandwidth, latency, drop, throttling, duplicate, out-of-order, and tampering. Each metric switch is an independent configuration item and can be enabled individually or in combination. When a switch is selected, such as latency, a specific latency time (e.g., 200ms) must be entered. Similarly, if bandwidth is selected, a specific bandwidth value (e.g., 500Kbps) must be entered.
[0052] After setting the metric parameters, users need to set the duration of each step, such as 60 seconds, and then click "Save Step Configuration." This allows them to continue creating the next step until all steps are configured. Finally, users can click "Save Scene" and give the scene a custom name. Simultaneously, modifying and editing scene data is supported.
[0053] Please refer to Figure 4 In this embodiment, the server also includes a device management module, which is responsible for managing device terminal programs. When a device terminal program starts, it sends a login request to the module using its MAC address, IP address, etc. If the module determines that the MAC address corresponds to a new device, it registers a new device ID for it and returns the corresponding login ID and address; otherwise, if it determines that the MAC address corresponds to an existing device, it directly returns the corresponding login ID and address.
[0054] Subsequently, once the server-side device management module obtains the client device's login address, it initiates a connection carrying a unique identifier. This connection is a long-lived Socket connection to ensure bidirectional, real-time communication between the client and server. When the Socket connection between the client and server is active, it is marked as "online"; when the connection is broken, it is marked as "offline".
[0055] S2. The server creates a test task and sends the test task to the corresponding client. The client includes a push client and a subscription client. The test task is used to configure the device information, network test scenario and test frequency of the push client, the device information, network test scenario and test frequency of the subscription client, and the application to be tested.
[0056] Please refer to Figure 5 The server in this embodiment includes a task management module, which is used for task creation, configuration, and distribution.
[0057] First, create a task and configure the streaming client settings. This involves selecting the current streaming client device on the server, then choosing the scenario to test (which can be left blank by default, meaning no network restrictions), and finally configuring the video parsing frequency (default 10 frames / second).
[0058] Continue configuring the settings for the subscription client. On the server side, select the device currently subscribed to the client, then select the scene to be tested (the default can be empty, meaning no network restrictions), and then configure the video parsing frequency (default 10 frames / second).
[0059] Next, you can click to select a test application name. If it's a newly added test application, you can also click to create a new test application name. After completing the configuration, click "Issue Task".
[0060] S3. The client parses the test task, selects the corresponding application to be tested according to the test task, configures the network according to the network test scenario in the test task, parses the communication video according to the test frequency of the test task to obtain the test results of video communication, and sends the test results to the server.
[0061] For details, please refer to Figure 7 The client includes a device scheduling module, which is mainly responsible for receiving task instructions from the server, parsing them into executable instructions, and calling the network control module and video parsing module in the client to record the process. Specifically:
[0062] First, when the device scheduling module is deployed, it will initiate a registration with the server, mainly to report its own device information, including IP and MAC information;
[0063] Afterwards, the device scheduling module establishes a long-lived socket connection with the server to maintain communication. This ensures that even if the client and server are not on the same local area network, the server can still obtain real-time data updates from the client. Once the connection is established between the server and client, a current state of the device on the server will be activated.
[0064] When the device scheduling module receives a command request from the server for a specific task, it parses the parameters sent by the server. It then sends the test data for the network test scenario to the network control module and the screenshot frequency to the video parsing module. After the network control module completes the scenario, it integrates the test results from the video parsing and sends them back to the server.
[0065] In this embodiment, please refer to Figure 8 The client's network control module is used to parse information from the network test scenario in the task and simulate the network scenario accordingly, as follows:
[0066] First, the network control module receives network scenario data from the device scheduling module and reads the first data item in the data list;
[0067] Next, the non-empty indicators and their corresponding values are concatenated into a Clumsy program command line that can be executed via cmd. The Clumsy tool is then launched by executing the cmd command through the subprocess module, thereby simulating the corresponding network environment (Clumsy is an open-source network environment simulation tool).
[0068] Then, after each scene is set up, it will sleep and wait for the delay time configured for that step. When the waiting time is up, it will close the Clumsy program, read the data value of the next step, and continue to concatenate the program command line.
[0069] Once all the data for each step in the scenario has been executed, the device scheduling module is notified to complete the current network simulation control and the Clumsy program is closed.
[0070] In this embodiment, please refer to Figure 9 The client-side video parsing module is used to take screenshots of the video frame according to the screenshot frequency set on the server, and then parse out the corresponding effect indicators of the frame, as follows:
[0071] First, the video parsing module receives the frequency N set by the device scheduling module, and takes a corresponding screenshot, that is, takes a screenshot every 1 / N seconds, and stores it locally with the current screenshot count - 1 (by default, it will take a screenshot). Figure 1 Image number 0 is used to confirm the initial time. For example, if N is 10, it means the capture time is 0.1 seconds. Figure 1 Zhang. Each frame in the screenshot video is timestamped, and the frame rate and resolution are calculated using a separate thread. The current timestamp is then recognized using OCR and recorded in a timestamp queue. If timestamp recognition fails, indicating a potential program error, the error will be reported to the server-side data statistics module for corresponding alerts.
[0072] The frame rate is calculated in N screenshots per second. The timestamp of each screenshot is compared with the timestamp of the previous screenshot. If the timestamp is updated, the frame rate is incremented by 1; if the timestamp is the same as before, it is incremented by 0. If the timestamp is updated in N comparisons, then N is considered to be the corresponding frame rate.
[0073] At the same time, each screenshot will be analyzed for cv2 resolution, and the results of each resolution analysis will be recorded. The average resolution per second will be calculated, which is the average resolution of N images.
[0074] In summary, if a 10-second timeframe is set, and the frequency is 10 times per second, a screenshot will be generated at 0.1-second intervals. Starting with the initial screenshot (0), 100 screenshots will be generated consecutively, named 1, 2, 3...100. A calculation cycle of 10 screenshots will be used to calculate the frame rate and resolution per second within those 10 seconds. After the network control module completes the scene simulation, the device scheduling module will terminate video parsing and then integrate the video parsing data to feed back to the server-side data statistics module.
[0075] S4. The server will align and display the test results uploaded by the push client and the subscription client according to the time.
[0076] Please refer to Figure 6 The server-side data statistics module is responsible for receiving and displaying data reports during client-side testing, and supports push management configuration for related anomalies. Specifically:
[0077] First, the data statistics module provides a set of interfaces for client-side reporting, including an exception feedback interface and a test report upload interface;
[0078] The exception feedback interface works in conjunction with the push configuration function of the data statistics module. When an exception occurs, a warning notification will be sent directly through the configured push channel. For example, if the client crashes during video communication testing, cannot find the corresponding program interface, or a pop-up window obscures the video window, preventing video from being parsed, a notification will be triggered to the server, and notifications will be sent according to the configured notification channels (such as office software, email, etc.).
[0079] The test report upload interface is used to receive test results reported by clients. Each time a client completes its corresponding client-side test, it uploads the result to the server.
[0080] After the test report is uploaded to the client, the data statistics module will aggregate the results by task ID and display the test results uploaded by all clients, including the video effects of both streaming and subscription clients. Preferably, in this embodiment, time is used as the X-axis and the Y-axis to display the trend of indicator changes during the process. Indicators include video metrics: resolution and frame rate; and network metrics: bandwidth, latency, packet loss, throttling, duplicate transmission, out-of-order transmission, and tampering. Considering that bandwidth is often a single variable, indicators that do not change throughout the process are hidden by default. For example, in a test scenario of bandwidth changes for a streaming client, the changes in resolution and frame rate of the user-subscribed video under different bandwidth limits can be clearly seen on the server side.
[0081] In some embodiments, the data statistics module allows users to select two test results from the same network scenario for comparison, directly and intuitively displaying the detection results of the two versions. That is, under the same X-axis and network variations, the video metric changes of the two versions are overlaid, clearly showing the differences in metric changes between the two versions. For example, if the previous version of the video is prone to stuttering, the corresponding frame rate of the older version will be significantly lower or fluctuate more on the trend graph, making the result readily observable. Similarly, it also supports selecting test results from two different applications under the same network scenario for comparison, used to evaluate the performance differences compared to competitors.
[0082] Example 2
[0083] This embodiment provides a specific application scenario for network adaptive testing in video communication:
[0084] Scene 1:
[0085] Tester A was responsible for testing an online meeting application. The product's main application scenario was to enable cloud-based office work, allowing people in different locations to conduct quick online discussions. Screen sharing video was one of the core use cases. Initially, for a better video experience, the project team required a minimum resolution of 1080p and a frame rate of 25fps for screen sharing. However, after launch, it was discovered that most users' actual network conditions were not ideal, especially since many were connected to Wi-Fi, resulting in significant network fluctuations. Under these circumstances, the screen sharing performance was extremely poor, with frequent stuttering. This led to frequent user complaints during the product's rollout, with many preferring to use competing applications in the industry. Therefore, the product team was asked to implement adaptive adjustments for different network conditions, using bandwidth estimation to adjust the bitrate and frame rate to smooth the experience. After communicating with the development team, A agreed that the developers would adjust the frame rate to reduce stuttering caused by network congestion when the network was poor. A was required to consider key metrics such as bandwidth, packet loss, and latency, and verify different parameter levels for each metric. In other words, Xiao A needed to list the network scenarios to be tested in advance, and then use network simulation and limitation tools to simulate different network conditions to verify the client's push / subscription performance under the corresponding network scenarios. This process required careful observation and recording, which was not only time-consuming but also made it difficult to monitor every detail. In addition, the developers also told Xiao A that, considering trade-offs under weak network conditions, some parameters needed to be tested in actual tests and further adjusted, which Xiao A felt was too much time investment.
[0086] In this embodiment, Xiao A only needs to pre-configure the network environment parameters and then start the video communication application and client program to be tested on the corresponding test device. Then, on the server side, Xiao A can click to send the pre-configured network test dataset to the corresponding streaming client computer. Then, Xiao A configures the video parsing frequency according to the maximum frame rate of their program. Then, Xiao A selects the name of the application under test from the server and sends the task. At this time, the network control module on the streaming device will begin to simulate and control the corresponding network process and perform video parsing. Simultaneously, the subscribing client will also perform video parsing. After the test is completed, the server can clearly see a trend graph showing the video clarity and frame rate of the streaming client and the video clarity and frame rate of the subscribing client at each time point, as the streaming client's network indicators change. Xiao A can then intuitively see from the server that when the bandwidth limit is below 1M, the frame rate fluctuations are very obvious, fluctuating from 3 to 10, or even freezing. This can be handed over to the R&D team for further optimization. After the development team has optimized it, Xiao A only needs to send the same test scenario again on the same device to achieve the same test process. Moreover, Xiao A does not need to manually perform network settings during the process and can easily obtain an objective test result.
[0087] Scene 2:
[0088] Based on the scenario in Scenario 1, after tester A encountered a problem with their product, the video sharing performance was inferior to that of competing third-party applications. Therefore, the product team requested A to verify the performance of the competing applications. Without a solution from their own system, A would need to invest more in manual testing and verification.
[0089] Using the solution in this embodiment, as long as Xiao A simultaneously uses the network application scenario used to test his own product, opens the competitor's app, and adds two clients, one pushing the stream and the other subscribing, and then creates an application on the server named after the corresponding competitor, selects the corresponding network test scenario, and deploys the test, he can obtain a set of video performance data for the third-party application under the same network conditions. Preferably, different product applications under the same network test scenario can be selected for comparison, allowing users to see the differences in video communication effects between their own and the third-party applications in a single view.
[0090] Scene 3:
[0091] Based on scenario one, after tester A's product was released, many colleagues reported that the shared screen display was choppy during a meeting. The root cause was found to be the relatively low performance of the colleague sharing the screen, resulting in a choppy video stream. A then needed to reproduce the scenario. Meanwhile, the developer mentioned that he would dynamically adjust the video bitrate and frame rate based on network conditions, requiring monitoring of video quality changes on both the subscription and publishing ends.
[0092] With the solution in this embodiment, as long as Xiao A only needs to send the relevant network scenario to the streaming client, upon completion of the test, the server-side statistics management can see whether the curves of frame rate and resolution changes for the streaming client and the subscription client are consistent under the network changes of the streaming client. If they are relatively consistent, it means that the subscription client has not been affected. Furthermore, it can be observed whether the curves are smooth and whether there are any obvious abnormal fluctuations; a smooth curve indicates good adaptive performance.
[0093] Example 3
[0094] Please refer to Figure 2 A network adaptive testing system for video communication includes a server and a client. The server executes the steps in the network adaptive testing method for video communication described above, which are performed primarily by the server. The client executes the steps in the network adaptive testing method for video communication described above, which are performed primarily by the client.
[0095] In summary, the network adaptive testing method and system for video communication provided by this invention mainly comprises two major modules: a server and a client. The server serves as the core of the entire system, responsible for creating, editing, and storing network scenario data. Test tasks can be issued from the server, and test results reported by the client can be received. The client is the task implementer of the entire system, responsible for parsing the tasks issued by the server, passing the commands in the tasks to the network control module and the video parsing module respectively, and after the network scenario simulation is completed, uniformly summarizing the video parsing test results and feeding them back to the server's data statistics module. The data statistics module then displays the collected data from the streaming client and the subscribing client, allowing a clear comparison of the video effect trends of the streaming client and the subscribing client on a timeline.
[0096] In this way, testers can ensure the consistency of each round of network simulation using the testing method of this invention; by selecting the network simulation test dataset on the server, testers can complete the evaluation of the network adaptation effect of video communication, thereby reducing the manual cost of the testing process; testers can also intuitively observe the differences in video effect between the streaming client and the subscription client using the testing method of this invention, quantify the changes in video effect of the streaming client or the subscription client during network changes, and quickly evaluate the network adaptation effect of video communication competitors, thus revealing the differences between the product and the competitors; they can also intuitively see the optimization and improvement of each version compared to the previous version.
[0097] The above description is merely an embodiment of the present invention and does not limit the patent scope of the present invention. Any equivalent modifications made based on the content of the present invention specification and drawings, or direct or indirect applications in related technical fields, are similarly included within the patent protection scope of the present invention.
Claims
1. A network adaptive testing method for video communication, characterized in that, The method comprises the steps of: The server creates a network test scene and its test steps, receives and manages the device information of the client; The server creates a test task and distributes the test task to the corresponding client, wherein the client includes a push client and a subscription client, and the test task is used to configure the device information, network test scene and test frequency of the push client, the device information, network test scene and test frequency of the subscription client, and the application to be tested; The client parses the test task, selects the corresponding application to be tested according to the test task, performs network configuration according to the network test scene in the test task, analyzes the communication video according to the test frequency of the test task to obtain the test result of the video communication, and sends the test result to the server; The server time-aligns and displays the test results uploaded by the push client and the subscription client; The method for analyzing the communication video according to the test frequency of the test task to obtain the test result of the video communication comprises the steps of: The client takes screenshots of the communication video according to the test frequency of the test task, and sets a corresponding timestamp for each screenshot; The client identifies the timestamp of each screenshot, and if an abnormality is identified, sends the abnormality information to the server, otherwise, calculates the screenshot frame rate according to the timestamp of each screenshot; The client analyzes each screenshot to obtain the definition of each screenshot and the average definition of the screenshots in a period, and quantifies the test result of the video communication by combining the screenshot frame rate and the average definition.
2. The method of claim 1, wherein, The server creates a network test scene and its test steps, which comprise the steps of: The server creates a network test scene and its test steps, which comprise the steps of:
3. The method of claim 1, wherein, The method for analyzing the communication video according to the test frequency of the test task to obtain the test result of the video communication comprises the steps of: The method for sending the test result to the server comprises the steps of:
4. The method of claim 1, wherein, The server comprises an abnormality feedback interface and a test result uploading interface; The client sends the abnormality information to the abnormality feedback interface of the server and sends the test result to the test result uploading interface of the server.
5. A network adaptive test system for video communication, comprising a server and a client; The server is configured to create a network test scene and its test steps, and receive and manage the device information of the client; The server is further configured to create a test task and distribute the test task to the corresponding client, wherein the client includes a push client and a subscription client, and the test task is used to configure the device information, network test scene and test frequency of the push client, the device information, network test scene and test frequency of the subscription client, and the application to be tested; The client is configured to parse the test task, select a corresponding application under test according to the test task, configure a network according to a network test scenario in the test task, parse a communication video according to a test frequency of the test task to obtain a test result of the video communication, and send the test result to the server. The server is further configured to time-align and display the test results uploaded by the push client and the subscription client. The parsing of the communication video according to the test frequency of the test task to obtain the test result of the video communication comprises: The client is configured to capture screenshots of the communication video according to the test frequency of the test task, and set corresponding time stamps for the screenshots. The client is configured to identify the time stamps of the screenshots, and if an abnormality is identified, send abnormality information to the server, otherwise, calculate a screenshot frame rate according to the time stamps of each screenshot. The client is configured to parse each of the screenshots to obtain a definition of each of the screenshots and an average definition of the screenshots in a period, and combine the screenshot frame rate and the average definition to obtain the test result of the video communication.
6. A network adaptive test system for video communication according to claim 5, wherein, The server is configured to create a network test scenario and test steps thereof, comprising: The server is configured to create the network test scenario and the test steps in the network test scenario on demand, and each of the test steps comprises a test time, a configurable index, and parameters thereof.
7. The network adaptive test system for video communication of claim 5, wherein, The network configuration according to the network test scenario in the test task comprises: The client is configured to read the network test scenario and the test steps thereof in the test task, splice data in each of the test steps into a program command line, simulate a network environment through the program command line, and delay for a preset time after executing the program command line.
8. The network adaptive test system for video communication of claim 5, wherein, The sending of the test result to the server comprises: The server comprises an abnormality feedback interface and a test result uploading interface. The client is configured to send abnormality information to the abnormality feedback interface of the server, and send the test result to the test result uploading interface of the server.
Citation Information
Patent Citations
Video quality automatic test method based on Android
CN115002090A
Live broadcast picture evaluation method and device, computer equipment and storage medium
CN117979035A