WO2023024469A1 - Video quality problem determination method and apparatus, storage medium, and program product - Google Patents

Video quality problem determination method and apparatus, storage medium, and program product Download PDF

Info

Publication number
WO2023024469A1
WO2023024469A1 PCT/CN2022/078279 CN2022078279W WO2023024469A1 WO 2023024469 A1 WO2023024469 A1 WO 2023024469A1 CN 2022078279 W CN2022078279 W CN 2022078279W WO 2023024469 A1 WO2023024469 A1 WO 2023024469A1
Authority
WO
WIPO (PCT)
Prior art keywords
frame
packet
video
parameter
abnormal
Prior art date
Application number
PCT/CN2022/078279
Other languages
French (fr)
Chinese (zh)
Inventor
杨辉
姜军庆
徐斌斌
高鹏
庞宏超
Original Assignee
华为技术有限公司
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 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2023024469A1 publication Critical patent/WO2023024469A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless

Definitions

  • the present application relates to the field of video quality detection, and in particular to a video quality problem determination method, device, storage medium and program product.
  • 5G technology Compared with 4G, 5G technology has the advantages of large bandwidth and low latency, so it can provide technical support for high-definition video live broadcast, real-time camera monitoring, drone shooting and other video return scenarios that require real-time transmission of video streaming media.
  • Video backhaul is a real-time business scenario based on streaming media.
  • video frames are obtained after video capture by cameras and other equipment, and video frames are encoded and compressed by encoders/backpack servers, etc.
  • compressed video frames are encapsulated by streaming media layer protocols to generate live streams, live streams It is transmitted to the video server through the network equipment, and after decapsulation and decoding, the video player renders and displays the picture.
  • video quality problems include: freezing, blurred screen and other problems that may occur when users watch videos and lead to poor user experience.
  • the above-mentioned problems such as freezing and blurring are caused by the abnormality of the video frame, and there may be multiple devices involved in the process of video frame collection, encoding, packaging, transmission, decapsulation, and decoding.
  • it is necessary to locate the device that causes the video quality problem and the specific reason why the device causes the video quality problem.
  • Existing technologies are still unable to quickly and accurately complete the determination of the causes and equipment that lead to video quality problems.
  • a method, device, storage medium, and program product for determining video quality problems are proposed. According to the method, device, storage medium, and program product for determining video quality problems in the embodiments of the present application, it is possible to quickly and accurately complete the video quality problem. Causes of quality problems and determination of equipment.
  • the embodiments of the present application provide a method for determining video quality problems, the method comprising: receiving protocol information on the video player and the network device, and the network device is used to transmit video data to the video player , the protocol information indicates the transmission mode of the video frame, and the video frame includes a plurality of data packets; an abnormal frame quality parameter and an abnormal packet quality parameter are determined according to the protocol information, and the abnormal frame quality parameter indicates the The quality of the video frame to which the abnormal frame quality parameter belongs is abnormal, and the abnormal packet quality parameter indicates that the quality of the data packet to which the abnormal packet quality parameter belongs is abnormal; according to the abnormal frame quality parameter and/or the abnormal Determine the cause and device of the abnormal video quality at the video playback end.
  • the video frame and the content included in the video frame can be determined according to the protocol information.
  • the transmission mode of multiple data packets can further determine abnormal frame quality parameters and abnormal packet quality parameters.
  • the abnormal frame quality parameter indicates that the quality of the video frame to which it belongs is abnormal
  • the abnormal packet quality parameter indicates that the quality of the data packet to which it belongs is abnormal
  • the video quality is associated with the video frame and the data packet
  • the abnormal frame quality parameter and the abnormal The packet quality parameter is associated with the abnormal video quality, so that according to the abnormal frame quality parameter and the abnormal packet quality parameter, the cause and equipment that cause the abnormal video quality of the video player can be determined.
  • the video quality problem determination method of the present application jointly determines the cause and equipment that cause the video quality abnormality at the video playback end through abnormal frame quality parameters at the frame level and abnormal packet quality parameters at the packet level, which can reduce the cost of completing the determination of the cause and equipment once. Time cost, and improve the accuracy of determining the cause and equipment.
  • the protocol information can also be extracted according to the payload header, and the cause and device that cause the video quality abnormality at the video playback end can be accurately determined. Expand the applicability of methods for determining video quality issues.
  • the protocol information includes streaming media layer protocol information, network layer protocol information, and transport layer protocol information of data packets
  • the stream The media layer protocol information includes the streaming media layer protocol information of the data packet on the video playback end
  • the network layer protocol information includes the network layer protocol information of the data packet on the network device and the video playback end
  • the transport layer protocol information includes The transport layer protocol information of the data packet on the network device and on the video playback end
  • said determining abnormal frame quality parameters and abnormal packet quality parameters according to the protocol information includes: determining at least one according to the streaming media layer protocol information The video frame and each data packet corresponding to each frame in the at least one video frame; according to the streaming media layer protocol information and the network layer protocol information, determine the frame quality parameters of each frame in the at least one video frame; according to The network layer protocol information and the transport layer protocol information determine the packet quality parameters of each data packet corresponding to each frame in the at least one video frame; according to the frame quality parameters corresponding to each frame
  • the frame quality parameter and the packet quality parameter can be determined through the combination of different protocol information, so as to reflect the quality of the video frame and the quality of the data packets under the video frame. Whether the frame quality parameter and the packet quality parameter are abnormal can be determined by the frame quality parameter threshold and the packet quality parameter threshold respectively, making it more convenient to determine the abnormal frame quality parameter and the abnormal packet quality parameter.
  • the second possible implementation of the method for determining video quality problems according to the frame quality parameters corresponding to each frame in the at least one video frame and the frame A quality parameter threshold, determining the abnormal frame quality parameter, determining the abnormal packet quality parameter according to the packet quality parameter and the packet quality parameter threshold of each data packet corresponding to each frame in the at least one video frame, including: For each frame of the at least one video frame, among the frame quality parameters of the video frame, the frame quality parameter whose value is greater than the frame quality parameter threshold is determined as the abnormal frame quality parameter; for the at least one video frame For each frame, among the packet quality parameters of the data packets corresponding to the video frame, the packet quality parameter whose value is greater than the packet quality parameter threshold is determined as the abnormal packet quality parameter.
  • abnormal frame quality parameters and packet quality parameters can be determined.
  • Abnormal parameters are determined by comparing parameter values with threshold values, and the determination of abnormal parameters can be completed accurately and quickly.
  • the streaming media layer protocol information of the data packet includes The frame time stamp of the video frame
  • the network layer protocol information of the data packet includes the packet time indicating the time of the data packet
  • the frame quality parameter includes a frame header jitter parameter and a frame tail packet jitter parameter
  • the frame header packet The jitter parameter represents the delay jitter situation of the first data packet corresponding to the video frame
  • the frame tail packet jitter parameter represents the delay jitter situation of the last data packet corresponding to the video frame
  • determining the frame quality parameters of each frame in the at least one video frame includes: for each frame of the at least one video frame, determining the frame quality parameter according to the packet time of the data packet corresponding to the video frame
  • the first packet arrival time and the last packet arrival time of the video frame, the first packet arrival time represents the arrival time of the first data packet corresponding to the video frame
  • the first frame packet jitter parameter representing the delay jitter of the first data packet corresponding to the video frame and the frame end packet jitter representing the delay jitter of the last data packet corresponding to the video frame can be calculated parameter, while characterizing the quality of the video frame, it improves the closeness between the frame quality parameter of the video frame and the actual jitter of the video frame.
  • the stream of data packets includes a stream media layer sequence number indicating the sequence of the data packet in the video frame to which it belongs, the network layer protocol information of the data packet includes a packet time indicating the time of the data packet, and the frame quality parameter includes a frame loss Packet parameter and frame out-of-sequence parameter, described frame packet loss parameter represents the loss situation of the data packet of video frame, and described frame out-of-sequence parameter represents the out-of-sequence situation of the data packet of video frame, and described according to described streaming media layer protocol Information and the network layer protocol information, determining the frame quality parameters of each frame in the at least one video frame includes: for each frame of the at least one video frame, according to the streaming media layer of the data packet corresponding to the video frame The serial number determines the frame packet loss parameter of the video frame; for each frame of the at least one video frame, sorts the
  • the frame packet loss parameter representing the loss of data packets of the video frame and the frame disorder parameter representing the disorder of the data packets of the video frame can be calculated, which improves the quality of the video frame while characterizing the quality of the video frame. Flexibility in choice of frame quality parameters.
  • determining the frame loss parameter of the video frame includes: for each frame of the at least one video frame, according to the streaming media layer sequence number of the data packet corresponding to the video frame, determining The maximum value of the streaming media layer sequence number of the data packet corresponding to this video frame, the minimum value and the number of streaming media layer sequence numbers, according to the maximum value and minimum value of the streaming media layer sequence number, determine the corresponding data of this video frame
  • the theoretical value of the number of packets according to the difference between the theoretical value of the number of data packets corresponding to the video frame and the number of streaming media layer serial numbers of the data packets corresponding to the video frame, determine the frame packet loss parameter of the video frame ; According to the sequence number of the streaming media layer of the data packet corresponding to the sorting result and the video frame, determine the frame disorder parameter of the
  • the frame packet loss parameter can reflect the information of whether the data packet in the video frame is lost or not, and when there is a packet loss, it can also reflect the information of the number of the packet loss; the frame disorder parameter can reflect the information in the video frame
  • the information about whether the data packets are out of order can also reflect the information about the out-of-order depth of the out-of-order data packets when there is out-of-order, so that the accuracy of determining the quality of video frames according to the frame quality parameters can be improved.
  • the at least one video frame The packet quality parameters of each data packet corresponding to each frame in the frame are determined according to the network layer protocol information and the transport layer protocol information of the data packet, and the packet quality parameters include: the packet representing the time interval between the current data packet and the previous data packet The interval parameter, the packet jitter parameter indicating the delay jitter between the current data packet and the previous data packet, the out-of-order parameter indicating the disorder of the data packet, the packet loss parameter indicating the packet loss, and the packet retransmission The retransmission parameter, the delay parameter indicating the delay of the data packet and the corresponding response message, the IP packet fragmentation parameter indicating whether there is IP packet fragmentation in the data packet, and whether the checksum of the data packet is One or more of the wrong checksum parameters occurred.
  • the abnormal frame quality parameter and/or the abnormal packet quality Parameter determination causes the cause and equipment of abnormal video quality at the video playback end, including: for any video frame, when the frame quality parameter of the video frame and the packet quality parameter of the data packet corresponding to the video frame meet the first condition, determine The cause of the abnormal video quality at the video playback end is a video encoding problem, and it is determined that the device causing the abnormal video quality at the video playback end is a device used for video encoding; wherein, the first condition includes: the frame loss parameter of the video frame is abnormal And the packet loss parameter of the data packet corresponding to the video frame is normal, or the frame disorder parameter of the video frame is abnormal and the disorder parameter of the data packet corresponding to the video frame is normal.
  • the frame quality parameter and the packet quality parameter can reflect the abnormal situation in the transmission process, and the frame packet loss parameter abnormality indicates that there is a data packet under the video frame being transmitted If the packet loss parameter of the data packet under the video frame is normal at this time, it means that no data packet is lost during transmission, so it can be determined that the data packet is lost before transmission, that is, during video encoding; frame disorder Abnormal parameters indicate that there are data packets under the video frame that are out of order during transmission.
  • the out-of-order parameters of the data packets under the video frame are normal at this time, it means that the data packets are not out of order during transmission, so it can be determined that the data packets are in the out-of-order state.
  • the first condition is that the frame packet loss parameter of the video frame is abnormal and the packet loss parameter of the data packet corresponding to the video frame is normal, or the video frame
  • the out-of-sequence parameter of the frame is abnormal and the out-of-order parameter of the data packet corresponding to the video frame is normal, which can accurately reflect the video encoding problem.
  • the abnormal packet quality parameter determines the cause and equipment that cause the abnormal video quality of the video player, including: for any video frame, the frame quality parameter of the video frame and the packet quality parameter of the data packet corresponding to the video frame meet the second condition, determine that the cause of the abnormal video quality at the video player end is a terminal parameter problem, and determine that the device causing the abnormal video quality at the video player end is the device used for video playback; wherein, the second condition includes: the frame of the video frame Any parameter in the first packet jitter parameter and the frame tail packet jitter parameter is abnormal, and any parameter in the IP packet fragmentation parameter and the checksum error parameter of the data packet corresponding to the video frame is abnormal.
  • the frame quality parameter and the packet quality parameter can reflect the abnormal situation in the transmission process, and the abnormality of the first frame packet jitter parameter/frame end packet jitter parameter indicates that the video The delay jitter of the first/last data packet in the frame is too large during transmission. If the IP packet fragmentation parameter of the data packet in the video frame is abnormal at this time, it means that the data packet has experienced fragmentation during transmission.
  • the parameter configuration of the video player fails to meet the requirements of data packet transmission without fragmentation; if the checksum error parameter of the data packet under the video frame is abnormal at this time, it means that the data packet failed to The verification with the video playback end is successfully completed, so it can be determined that the parameter configuration of the video playback end fails to meet the requirements for successful verification with the data packet; based on the above reasons, the second condition, that is, the frame header jitter parameters of the video frame and the frame Any parameter in the tail packet jitter parameter is abnormal and any parameter in the IP packet fragmentation parameter and the checksum error parameter of the data packet corresponding to the video frame is abnormal, which can accurately reflect the terminal parameter problem.
  • the The frame quality parameter of the video frame and/or the packet quality parameter of the abnormality determine the cause and equipment that cause the abnormal video quality of the video player, including: for any video frame, the frame quality parameter of the video frame and the corresponding video frame
  • the third condition includes: the frame packet loss parameter of the video frame is abnormal and the video frame
  • the packet loss parameter of the data packet corresponding to the frame is abnormal, or the frame out-of-order parameter of the video frame is abnormal and the out-of-order parameter of the data packet corresponding to the video frame is abnormal, or the frame header jitter parameter of the video frame and the frame Any parameter in the last packet jitter parameter is abnormal and any parameter in the packet jitter parameter, packet interval parameter, retrans
  • the frame quality parameter and the packet quality parameter can reflect the abnormal situation in the transmission process, and the frame packet loss parameter abnormality indicates that there is a data packet under the video frame being transmitted If the packet loss parameter of the data packet under the video frame is abnormal at this time, it means that there is a data packet lost during transmission, so it can be determined that there is a problem with the network transmission; the abnormal frame disorder parameter indicates that there is a data packet under the video frame It is in an out-of-order state during transmission.
  • the out-of-order parameters of the data packets under the video frame are abnormal at this time, it means that some data packets are in out-of-order during transmission, so it can be determined that there is a problem in network transmission; based on the above reasons, in the third condition "The frame packet loss parameter of the video frame is abnormal and the packet loss parameter of the data packet corresponding to the video frame is abnormal, or the frame out-of-order parameter of the video frame is abnormal and the out-of-order data packet corresponding to the video frame Abnormal parameter", which can accurately reflect the network transmission problem; the abnormality of the frame first packet jitter parameter/frame end packet jitter parameter indicates that the delay jitter of the first/last data packet under the video frame is too large during transmission.
  • the packet interval parameter of the data packet under the frame is abnormal, it means that the time difference between the two data packets in the transmission process is too large, and it can be determined that there is a problem in the network transmission; if the packet jitter parameter of the data packet under the video frame is abnormal at this time, it means that the data packet If the delay and jitter in the transmission process is too large, it can be determined that there is a problem in network transmission; if the retransmission parameters of the data packet under the video frame are abnormal at this time, it means that the data packet has undergone multiple transmissions during the transmission process, and it can be determined that there is a network transmission problem.
  • the delay parameter of the data packet under the video frame is abnormal at this time, it means that the transmission time of the data packet is too long during the transmission process, and it can be determined that there is a problem with the network transmission.
  • the third condition "any parameter in the frame header jitter parameter and the frame tail packet jitter parameter of the video frame is abnormal and the packet jitter parameter, the packet interval parameter, and the packet interval parameter of the data packet corresponding to the video frame are Any one of the retransmission parameters and delay parameters is abnormal" can accurately reflect the terminal parameter problem.
  • the The abnormal frame quality parameter and/or the abnormal packet quality parameter determine the cause and equipment that cause the abnormal video quality of the video player, and also include: according to the network layer protocol information of the data packet, determine the abnormal packet quality parameter The network layer sequence number of the corresponding data packet; according to the transport layer protocol information of the data packet, determine the packet time, transport layer sequence number, and checksum of the data packet corresponding to the abnormal packet quality parameter; receive the network layer on the network device Topology data, determine the transmission path of each data packet in the network according to the network topology data; according to the transmission path of the data packet corresponding to the abnormal packet quality parameter described in the network, find out the packet time, The data packet whose network layer serial number, transport layer serial number, and checksum all meet the conditions; according to the found packet quality parameters of the data packet that meets the conditions, determine from each network
  • the packet quality parameter of the data packet on each device can indicate the impact of the device on the transmission of the data packet, and by finding the corresponding data packets in each network device on the transmission path, the statistics can be calculated using the found data packets In the process of packet transmission, the impact of different network devices on the transmission of data packets, and determine the specific device that causes the abnormal video quality of the video player.
  • the packet time, network layer sequence number, transport layer sequence number, checksum The conditions to be met include: the absolute value of the difference between the packet time and the packet time of the data packet corresponding to the abnormal packet quality parameter is less than a preset threshold, and the network layer sequence number, the transport layer sequence number, the checksum and the The network layer sequence number, transport layer sequence number, and checksum of the data packets corresponding to the abnormal packet quality parameters are all the same.
  • the same data packet on different network devices along the transmission path can be found.
  • the cause of the abnormality of the packet quality parameters on different devices is the current device or the upstream device of the current device.
  • the cause of the abnormal video quality at the video playback end is a network transmission problem, and the specific network device that causes the abnormal video quality at the video playback end.
  • the twelfth possible implementation of the method for determining video quality problems how many data packets correspond to the abnormal packet quality parameter
  • the packet quality parameters of the data packets that meet the conditions found from each network device on the transmission path of the data packets, determine the network that causes the abnormal video quality of the video playback end.
  • Equipment including: according to the packet quality parameters of multiple sets of data packets that meet the conditions, from each network device on the transmission path of the data packet, repeatedly determine the network equipment that may cause abnormal video quality at the video playback end; count the multiple determinations Among the network devices that may cause abnormal video quality at the video playback end, the network device that appears most frequently is the network device that causes abnormal video quality at the video playback end.
  • the accuracy of the determined network device that causes abnormal video quality can be improved, so that the determined network that causes abnormal video quality After the device implements the corresponding solution, the probability of abnormal video quality caused by the same problem on the same device is reduced.
  • an embodiment of the present application provides an apparatus for determining a video quality problem, the apparatus including: an information receiving module, configured to receive protocol information on a video player and a network device, and the network device is used to convert the video The data is transmitted to the video player, and the protocol information indicates the sending mode of the video frame, and the video frame includes a plurality of data packets; the parameter determination module is used to determine abnormal frame quality parameters and abnormal packet quality according to the protocol information Parameters, the abnormal frame quality parameter represents the abnormal quality of the video frame to which the abnormal frame quality parameter belongs, and the abnormal packet quality parameter represents the abnormal quality of the data packet to which the abnormal packet quality parameter belongs; abnormal reason The determining module is configured to determine the cause and equipment for abnormal video quality at the video playback terminal according to the abnormal frame quality parameter and/or the abnormal packet quality parameter.
  • the protocol information includes streaming media layer protocol information, network layer protocol information, and transport layer protocol information of data packets
  • the stream The media layer protocol information includes the streaming media layer protocol information of the data packet on the video playback end
  • the network layer protocol information includes the network layer protocol information of the data packet on the network device and the video playback end
  • the transport layer protocol information includes The transport layer protocol information of the data packet on the network device and on the video playback end
  • said determining abnormal frame quality parameters and abnormal packet quality parameters according to the protocol information includes: determining at least one according to the streaming media layer protocol information The video frame and each data packet corresponding to each frame in the at least one video frame; according to the streaming media layer protocol information and the network layer protocol information, determine the frame quality parameters of each frame in the at least one video frame; according to The network layer protocol information and the transport layer protocol information determine the packet quality parameters of each data packet corresponding to each frame in the at least one video frame; according to the frame quality parameters corresponding to each frame
  • the second possible implementation manner of the apparatus for determining video quality problems according to the frame quality parameters corresponding to each frame in the at least one video frame and the frame A quality parameter threshold, determining the abnormal frame quality parameter, determining the abnormal packet quality parameter according to the packet quality parameter and the packet quality parameter threshold of each data packet corresponding to each frame in the at least one video frame, including: For each frame of the at least one video frame, among the frame quality parameters of the video frame, the frame quality parameter whose value is greater than the frame quality parameter threshold is determined as the abnormal frame quality parameter; for the at least one video frame For each frame, among the packet quality parameters of the data packets corresponding to the video frame, the packet quality parameter whose value is greater than the packet quality parameter threshold is determined as the abnormal packet quality parameter.
  • the streaming media layer protocol information of the data packet includes The frame time stamp of the video frame
  • the network layer protocol information of the data packet includes the packet time indicating the time of the data packet
  • the frame quality parameter includes a frame header jitter parameter and a frame tail packet jitter parameter
  • the frame header packet The jitter parameter represents the delay jitter situation of the first data packet corresponding to the video frame
  • the frame tail packet jitter parameter represents the delay jitter situation of the last data packet corresponding to the video frame
  • determining the frame quality parameters of each frame in the at least one video frame includes: for each frame of the at least one video frame, determining the frame quality parameter according to the packet time of the data packet corresponding to the video frame
  • the first packet arrival time and the last packet arrival time of the video frame, the first packet arrival time represents the arrival time of the first data packet corresponding to the video frame
  • the stream of data packets includes a stream media layer sequence number indicating the sequence of the data packet in the video frame to which it belongs, the network layer protocol information of the data packet includes a packet time indicating the time of the data packet, and the frame quality parameter includes a frame loss Packet parameter and frame out-of-sequence parameter, described frame packet loss parameter represents the loss situation of the data packet of video frame, and described frame out-of-sequence parameter represents the out-of-sequence situation of the data packet of video frame, and described according to described streaming media layer protocol Information and the network layer protocol information, determining the frame quality parameters of each frame in the at least one video frame includes: for each frame of the at least one video frame, according to the streaming media layer of the data packet corresponding to the video frame The serial number determines the frame packet loss parameter of the video frame; for each frame of the at least one video frame, sorts the
  • determining the frame loss parameter of the video frame includes: for each frame of the at least one video frame, according to the streaming media layer sequence number of the data packet corresponding to the video frame, determining The maximum value of the streaming media layer sequence number of the data packet corresponding to this video frame, the minimum value and the number of streaming media layer sequence numbers, according to the maximum value and minimum value of the streaming media layer sequence number, determine the corresponding data of this video frame
  • the theoretical value of the number of packets according to the difference between the theoretical value of the number of data packets corresponding to the video frame and the number of streaming media layer serial numbers of the data packets corresponding to the video frame, determine the frame packet loss parameter of the video frame ; According to the sequence number of the streaming media layer of the data packet corresponding to the sorting result and the video frame, determine the frame disorder parameter of the video frame
  • the at least one video frame The packet quality parameters of each data packet corresponding to each frame in the frame are determined according to the network layer protocol information and the transport layer protocol information of the data packet, and the packet quality parameters include: the packet representing the time interval between the current data packet and the previous data packet The interval parameter, the packet jitter parameter indicating the delay jitter between the current data packet and the previous data packet, the out-of-order parameter indicating the disorder of the data packet, the packet loss parameter indicating the packet loss, and the packet retransmission Retransmission parameters, delay parameters indicating the delay of data packets and corresponding response messages, IP packet fragmentation parameters indicating whether there is IP packet fragmentation in data packets, indicating whether there is an error in the checksum of data packets One or more of the checksum error parameters.
  • the abnormal frame quality parameter and/or the abnormal packet quality Parameter determination causes the cause and equipment of abnormal video quality at the video playback end, including: for any video frame, when the frame quality parameter of the video frame and the packet quality parameter of the data packet corresponding to the video frame meet the first condition, determine The cause of the abnormal video quality at the video playback end is a video encoding problem, and it is determined that the device causing the abnormal video quality at the video playback end is a device used for video encoding; wherein, the first condition includes: the frame loss parameter of the video frame is abnormal And the packet loss parameter of the data packet corresponding to the video frame is normal, or the frame disorder parameter of the video frame is abnormal and the disorder parameter of the data packet corresponding to the video frame is normal.
  • the abnormal packet quality parameter determines the cause and equipment that cause the abnormal video quality of the video player, including: for any video frame, the frame quality parameter of the video frame and the packet quality parameter of the data packet corresponding to the video frame meet the second condition, determine that the cause of the abnormal video quality at the video player end is a terminal parameter problem, and determine that the device causing the abnormal video quality at the video player end is the device used for video playback; wherein, the second condition includes: the frame of the video frame Any parameter in the first packet jitter parameter and the frame tail packet jitter parameter is abnormal, and any parameter in the IP packet fragmentation parameter and the checksum error parameter of the data packet corresponding to the video frame is abnormal.
  • the The frame quality parameter of the video frame and/or the packet quality parameter of the abnormality determine the cause and equipment that cause the abnormal video quality of the video player, including: for any video frame, the frame quality parameter of the video frame and the corresponding video frame
  • the third condition includes: the frame packet loss parameter of the video frame is abnormal and the video frame
  • the packet loss parameter of the data packet corresponding to the frame is abnormal, or the frame out-of-order parameter of the video frame is abnormal and the out-of-order parameter of the data packet corresponding to the video frame is abnormal, or the frame header jitter parameter of the video frame and the frame Any parameter in the last packet jitter parameter is abnormal and any parameter in the packet jitter parameter, packet interval parameter, re
  • the The abnormal frame quality parameter and/or the abnormal packet quality parameter determine the cause and equipment that cause the abnormal video quality of the video player, and also include: according to the network layer protocol information of the data packet, determine the abnormal packet quality parameter The network layer sequence number of the corresponding data packet; according to the transport layer protocol information of the data packet, determine the packet time, transport layer sequence number, and checksum of the data packet corresponding to the abnormal packet quality parameter; receive the network layer on the network device Topology data, determine the transmission path of each data packet in the network according to the network topology data; according to the transmission path of the data packet corresponding to the abnormal packet quality parameter described in the network, find out the packet time, The data packet whose network layer serial number, transport layer serial number, and checksum all meet the conditions; according to the found packet quality parameters of the data packet that meets the conditions, determine
  • the packet time, network layer sequence number, transport layer sequence number, checksum The conditions to be met include: the absolute value of the difference between the packet time and the packet time of the data packet corresponding to the abnormal packet quality parameter is less than a preset threshold, and the network layer sequence number, the transport layer sequence number, the checksum and the The network layer sequence number, transport layer sequence number, and checksum of the data packets corresponding to the abnormal packet quality parameters are all the same.
  • the apparatus for determining video quality problems how many data packets correspond to the abnormal packet quality parameter
  • the packet quality parameters of the data packets that meet the conditions found from each network device on the transmission path of the data packets, determine the network that causes the abnormal video quality of the video playback end.
  • Equipment including: according to the packet quality parameters of multiple sets of data packets that meet the conditions, from each network device on the transmission path of the data packet, repeatedly determine the network equipment that may cause abnormal video quality at the video playback end; count the multiple determinations Among the network devices that may cause abnormal video quality at the video playback end, the network device that appears most frequently is the network device that causes abnormal video quality at the video playback end.
  • an embodiment of the present application provides an apparatus for determining a video quality problem, including: a processor; a memory for storing processor-executable instructions; wherein, the processor is configured to execute the above-mentioned first aspect or the first aspect A method for determining a video quality problem in one or several possible implementation manners of one aspect.
  • the embodiments of the present application provide a non-volatile computer-readable storage medium, on which computer program instructions are stored, and when the computer program instructions are executed by a processor, the above-mentioned first aspect or multiple aspects of the first aspect are implemented.
  • the embodiments of the present application provide a computer program product, including computer readable code, or a non-volatile computer readable storage medium bearing computer readable code, when the computer readable code is stored in an electronic
  • the processor in the electronic device executes the method for determining a video quality problem in the first aspect or one or more of the multiple possible implementations of the first aspect.
  • Fig. 1 shows an exemplary application scenario of a method for determining a video quality problem according to an embodiment of the present application.
  • FIG. 2 shows an example of identifying data stream types in this embodiment of the present application.
  • Fig. 3 shows an exemplary method schematic diagram of a method for determining a video quality problem according to an embodiment of the present application.
  • Fig. 4 shows a schematic diagram of an exemplary method for determining an abnormal frame quality parameter and/or an abnormal packet quality parameter according to an embodiment of the present application.
  • Fig. 5 shows an example of a method for determining a video frame and a data packet corresponding to the video frame according to an embodiment of the present application.
  • FIG. 6 shows an example of a calculation method of a packet jitter parameter at the beginning of a frame and a packet jitter parameter at the end of a frame according to an embodiment of the present application.
  • FIG. 7 shows an example of a calculation manner of a frame packet loss parameter according to an embodiment of the present application.
  • FIG. 8 shows an example of a calculation manner of a frame out-of-sequence parameter according to an embodiment of the present application.
  • FIG. 9 shows an example of a normal distribution probability curve generated according to an embodiment of the present application.
  • Fig. 10 shows an example of realizing abnormal condition determination of parameters according to an embodiment of the present application.
  • Fig. 11 shows an exemplary schematic diagram of the correspondence between abnormal frame quality parameters, abnormal packet quality parameters, causes of abnormal video quality at the video player end, and devices according to an embodiment of the present application.
  • FIG. 12 shows an example of determining a specific network device that causes abnormal video quality at a video player end according to an embodiment of the present application.
  • Fig. 13 shows an exemplary structural diagram of an apparatus for determining a video quality problem according to an embodiment of the present application.
  • Fig. 14 shows an exemplary structural diagram of an apparatus for determining a video quality problem according to an embodiment of the present application.
  • user experience data and asset management data are obtained from user devices (ie, video playback devices), and network topology data is obtained from network devices through data collection methods reported by devices.
  • the user experience data includes the average video mean opinion score (vMOS), freeze duration, freeze frequency, and video quality switching times (such as switching between 1080P, 720P, and 360P video display formats). times), etc.
  • the user experience data is used to represent the quality of the user's experience and perception when watching a video, and the video playback quality can be determined according to the user experience data.
  • Asset management data includes users' network access information. Asset management data is used to represent the connection relationship between user equipment and network equipment.
  • Network topology data is used to represent the connection relationship between network devices. According to the asset management data and network topology data, the total number of users connected to each network device can be determined.
  • the percentage of the number of users with poor video playback quality in the total number of users on the network device may be determined as the poor quality rate of the network device.
  • the poor quality rate of each network device is counted, and the distribution of the poor quality rate of network devices in the network can be determined according to the connection relationship between network devices.
  • Quality of experience is determined according to the determined poor quality rate of each network device and a preset threshold.
  • the quality of experience includes calculating the coefficient of variation of the poor quality rate, the average value of the poor quality rate, etc., and determining the problem equipment through the quality of experience, such as determining the degree of skewed distribution between the coefficient of variation of the poor quality rate and the preset threshold or the mean value of the poor quality rate. The degree of skewed distribution with the preset threshold, and find the equipment that causes a large deviation through the degree of skewed distribution.
  • the network equipment determines whether the network equipment has a lower-level network equipment, if not, then the network equipment is the network equipment that causes the video quality problem determined by the solution of the prior art; if so, through the lower-level network equipment Quality of Experience further identifies the cause and device causing video quality issues.
  • the statistical distribution scheme using big data proposed in the prior art still has certain shortcomings.
  • the solution determines the cause of the video quality problem and the time cost of the equipment is high, and the real-time performance of the solution is poor.
  • this solution requires an overall analysis of the data collected when video quality problems occur multiple times. That is to say, the causes and equipment that lead to video quality problems determined by the existing technology are also determined for multiple video quality problems. , while multiple video quality issues may have different causes and devices.
  • the cause and equipment of the video quality problem determined by the prior art may be only one of the causes and equipment of the video quality problem many times, and the determined cause and equipment of the video quality problem are not accurate enough. Optimizing the device based on the identified cause of the video quality issue and optimizing the device will not reduce the chances of some of the same video quality issues recurring in the future.
  • this application provides a video quality problem determination method, device, storage medium, and program product.
  • the video quality problem determination method in the embodiment of the application can quickly and accurately determine the cause and effect of the video quality problem. equipment.
  • Fig. 1 shows an exemplary application scenario of a method for determining a video quality problem according to an embodiment of the present application.
  • the scene may be, for example, a live video scene, which may include a video provider for providing video data, a plurality of network devices for transmitting video data, and a video server for displaying video images to users. player side.
  • the video provider may be a camera capable of collecting video data, or a device capable of receiving, storing and outputting video data.
  • the video provider can encode the collected or received video data, and encapsulate it into a live streaming form according to the streaming media layer protocol.
  • the encapsulated video data may be transmitted through network equipment, and the network equipment may include, for example, the wireless base station, bearer network equipment, core network equipment, switch, etc. in FIG. 1 .
  • the wireless base station may be, for example, a 5G base station (next generation NB, gNB).
  • the core network device may be, for example, a unified distributed gateway (unified distributed gateway, UDG), etc.
  • the switch may, for example, be a switch (end of row, EoR) using a certain deployment method.
  • the video data is finally output to a video player, which can be, for example, a mobile phone, a tablet computer, a notebook, and the like.
  • the video data in the form of live streaming can be decapsulated, decoded, and rendered, so that users can watch the video through the video player end.
  • the application scenario in FIG. 1 also includes a terminal device (or server) for determining the cause of the video quality problem and the device, and the terminal device (or server) may be different from the above-mentioned video provider, network device, and video player.
  • the terminal device (or server) may include the apparatus for determining a video quality problem in the embodiment of the present application, which can be used to execute the method for determining a video quality problem in the embodiment of the present application.
  • the terminal device may also include a protocol information collection device for collecting protocol information from the network device and the video player, and a topology data collection device for collecting network topology data from the network device.
  • a protocol information collection device for collecting protocol information from the network device and the video player
  • a topology data collection device for collecting network topology data from the network device.
  • the device for determining video quality problems, the device for collecting protocol information, and the device for collecting topology data can also be respectively set on a single terminal device or server, or any two of the three can be set together on the same terminal device or server.
  • the application scenarios of the embodiments of the present application are not limited to the foregoing devices.
  • the protocol information collection device and the topology data collection device may collect protocol information and network topology data respectively.
  • the protocol information collection device can continuously collect the protocol information on the video playback terminal and network equipment. If there is no change in the connection relationship of the network equipment during this process, the topology data collection device only needs to collect the network topology data once.
  • using the method for determining the video quality problem in the embodiment of the present application can determine the cause of the abnormal video quality of the video player and the device.
  • the device for collecting protocol information firstly obtains data streams on the video playback terminal and network equipment.
  • the data streams on the video playback terminal and the network device may include video streams (video), and may also include other types of data streams such as voice streams.
  • the protocol information collection device can identify the collected data stream in combination with the streaming media protocol, and obtain data packets of the video stream type from the data stream. After determining the data whose type is video stream, the protocol information acquisition device can further obtain the streaming media layer protocol information and network layer protocol information of the data packet from the data whose type is video stream according to the streaming media layer protocol, network layer protocol, transport layer protocol, etc. Information, transport layer protocol information, so as to complete the collection of protocol information.
  • the collection of protocol information can be realized by deploying probes, or through network port packet capture through computers and other equipment, or through functions such as user tracking that come with network equipment.
  • This section uses probes to collect protocol information as an example.
  • the probe can have deep packet inspection (deep packet inspection, DPI) capability, and can automatically realize the identification of different types of data flows and the acquisition of protocol information.
  • DPI deep packet inspection
  • a data packet may include a payload header (packet header) and a payload, wherein the payload part includes the specific content of the data.
  • the payload header includes protocol information indicating the transmission mode of the data packet. In order to ensure data security, when obtaining the protocol information, the payload of the data packet can be encrypted, or only the payload header (packet header) of the data packet can be detected.
  • the streaming media layer payload header, network layer payload header, and transport layer payload header can be detected and the corresponding streaming media layer protocol information, network layer protocol information, and transport layer protocol information can be extracted
  • the network layer payload header and the transport layer payload header can be detected and the corresponding network layer protocol information and transport layer protocol information can be extracted.
  • protocol information extraction can be realized by identifying the application type and protocol type.
  • the application type of a certain data flow in the data can be identified by using the service awareness (SA) technology. For example, if a user experiences abnormal video quality when using an application to watch a live video at a certain time period, the user can watch the live video from the user according to the user identity information, the time information of the data packet, and/or the type of application, etc. Obtain data streams related to video quality exceptions that need to be analyzed from the data streams on the video playback end. By default, it is obtained from all data streams on the video player.
  • SA service awareness
  • the judgment method specified in the existing protocol can be used to identify the data stream type layer by layer from the network layer, transport layer, streaming media layer and application layer, and determine the video stream existing in the data stream Furthermore, specific types of video streams are distinguished to determine the type of video streams containing video frames.
  • FIG. 2 shows an example of identifying data stream types in this embodiment of the present application.
  • the protocol used by the network layer can include Internet Protocol (Internet Protocol, IP), and the protocol used by the transport layer can include Transmission Control Protocol (transmission control protocol, TCP) and user datagram protocol (user datagram). protocol, UDP).
  • the protocols used by the streaming media layer may include real-time streaming protocol (real time streaming protocol, RTSP), real-time messaging protocol (real time messaging protocol, RTMP), real-time transport protocol (real-time transport protocol, RTP), real-time transmission control protocol (real-time transport control protocol, RTCP), user datagram protocol-based data transfer protocol (UDP-based data transfer protocol, UDT) or secure reliable transport protocol (secure reliable transport, SRT), and MPEG2 transport stream (MPEG -2 transport stream, MPEG2-TS).
  • the protocol used by the application layer may include the H.264 video standard protocol or the H.265 video standard protocol.
  • the supported video stream types can include: TCP+RTMP video stream, TCP+RTSP+RTP video stream, UDP+ RTP video stream, UDP+RTP+MPEG2-TS video stream, UDP+SRT/UDT+MPEG2-TS video stream, and UDP+MPEG2-TS video stream.
  • the above protocols can also support control streams, such as TCP+RTMP control streams, TCP+RTSP control streams, UDP+RTCP control streams, etc. in FIG. 2 , and the control streams do not contain video frames.
  • the protocol information can be obtained from the data packets under the video stream.
  • the protocol information may include the network layer protocol information, the transport layer protocol information, the streaming media layer protocol information of the data packets in the video stream, and the calculated transport layer checksum obtained according to the standard calculation method of checksum (CHECKSUM). and (hereinafter referred to as checksum).
  • network topology data can be collected from network devices.
  • the network topology data may include the topology connection relationship or service path of each network device in the network where the network device connected to the video playback terminal is located.
  • the service path represents the connection relationship between network devices that the service flow passes through. It makes it possible to determine the upstream and downstream relationship of network devices according to the network topology data.
  • the protocol information collecting device and the topology data collecting device can respectively transmit the collected information or data to the video quality problem determining device.
  • the device for determining a video quality problem uses the method for determining a video quality problem according to an embodiment of the present application. Protocol information and network topology data can be used to determine the cause and equipment that cause abnormal video quality at the video playback end.
  • Fig. 3 shows an exemplary method schematic diagram of a method for determining a video quality problem according to an embodiment of the present application.
  • the method for determining a video quality problem includes:
  • the network device is used to transmit video data to the video player, the protocol information indicates a sending method of a video frame, and the video frame includes a plurality of data packets;
  • the abnormal frame quality parameter indicates that the quality of the video frame to which the abnormal frame quality parameter belongs is abnormal
  • the abnormal packet quality parameter Indicating that the quality of the data packet to which the abnormal packet quality parameter belongs is abnormal
  • the video frame and the content included in the video frame can be determined according to the protocol information.
  • the transmission mode of multiple data packets can further determine abnormal frame quality parameters and abnormal packet quality parameters.
  • the abnormal frame quality parameter indicates that the quality of the video frame to which it belongs is abnormal
  • the abnormal packet quality parameter indicates that the quality of the data packet to which it belongs is abnormal
  • the video quality is associated with the video frame and the data packet
  • the abnormal frame quality parameter and the abnormal The packet quality parameter is associated with the abnormal video quality, so that according to the abnormal frame quality parameter and the abnormal packet quality parameter, the cause and equipment that cause the abnormal video quality of the video player can be determined.
  • the video quality problem determination method of the present application jointly determines the cause and equipment that cause the video quality abnormality at the video playback end through abnormal frame quality parameters at the frame level and abnormal packet quality parameters at the packet level, which can reduce the cost of completing the determination of the cause and equipment once. Time cost, and improve the accuracy of determining the cause and equipment.
  • the protocol information can also be extracted according to the payload header, and the cause and device that cause the video quality abnormality at the video playback end can be accurately determined. Expand the applicability of methods for determining video quality issues.
  • step S1 protocol information can be obtained.
  • step S2 the recognition of the video frame and the extraction of the data packets under the video frame can be realized.
  • frame quality parameters can be defined to characterize the quality of video frames.
  • Different frame quality parameters can be preset with different calculation methods. Through the preset calculation method of frame quality parameters, the value of frame quality parameters can be calculated according to the protocol information, and the calculated value of frame quality parameters can be obtained through the frame quality parameter threshold value Anomaly detection is performed to determine frame quality parameters with abnormal values, that is, abnormal frame quality parameters.
  • Packet quality parameters can be defined to characterize the quality of data packets.
  • packet quality parameters such as packet interval parameters, packet jitter parameters, packet loss parameters, out-of-sequence parameters, retransmission parameters, delay parameters, IP packet fragmentation parameters, and checksum errors mentioned below parameter.
  • Different packet quality parameters can be preset with different calculation methods. Through the preset calculation method of packet quality parameters, the value of the packet quality parameter can be calculated according to the protocol information, and the value of the packet quality parameter calculated by the packet quality parameter threshold value Anomaly detection is performed to determine packet quality parameters with abnormal values, that is, abnormal packet quality parameters.
  • step S3 according to whether the abnormal frame quality parameters of the abnormal video frame and the abnormal packet quality parameters of the data packets under the abnormal video frame meet the corresponding conditions, determine the cause and equipment causing the abnormal video quality.
  • the only device that can be determined to cause abnormal video quality is the device used for video playback, that is, the video playback terminal.
  • the video quality problem determination method has been realized to determine the cause and equipment that lead to abnormal video quality. If the device that causes the abnormal video quality cannot be uniquely determined based on the determined cause of the abnormal video quality, for example, it is determined that the cause of the abnormal video quality is a network transmission problem. Since multiple network devices may participate in the network transmission process, it cannot be uniquely determined. Devices that cause abnormal video quality.
  • This application can determine the abnormal data packets according to the abnormal packet quality parameters, and according to the protocol information of the abnormal data packets, find multiple data packets whose protocol information satisfies the conditions on multiple network devices participating in the network transmission process, and use the found multiple The packet quality parameter of the data packet is analyzed to determine the device causing the abnormal video quality.
  • the frame quality parameter threshold and packet quality parameter threshold used may be determined according to the AI model.
  • the AI model can be trained by using the frame quality parameters and packet quality parameters calculated for a period of time before determining the current cause of abnormal video quality at the video playback end and the device as samples, which can solve common samples that need to be marked and abnormal samples
  • the modeled data inaccessibility problem reduces the complexity of determining abnormal frame quality parameters and abnormal packet quality parameters.
  • the abnormal frame quality parameter may be an abnormal parameter among the frame quality parameters
  • the abnormal packet quality parameter may be an abnormal parameter among the packet quality parameters.
  • the frame quality parameter and the packet quality parameter may be determined first according to the protocol information, and then the abnormal frame quality parameter and the abnormal packet quality parameter are determined according to the frame quality parameter and the packet quality parameter.
  • Fig. 4 shows a schematic diagram of an exemplary method for determining an abnormal frame quality parameter and/or an abnormal packet quality parameter according to an embodiment of the present application.
  • the protocol information includes streaming media layer protocol information, network layer protocol information and transport layer protocol information of the data packet
  • the streaming media layer protocol information includes the video player
  • the streaming media layer protocol information of the data packet on the network layer protocol information includes the network layer protocol information of the data packet on the network device and the video player end
  • the transport layer protocol information includes the network layer protocol information on the network device and the video player end
  • the transport layer protocol information of the data packet, step S2 includes:
  • the frame quality parameters may include frame header jitter parameters, frame tail packet jitter parameters, Frame loss parameters, frame disorder parameters.
  • the packet quality parameters may include packet interval parameters, packet jitter parameters, Packet loss parameters, out-of-sequence parameters, retransmission parameters, delay parameters, IP packet fragmentation parameters, and checksum error parameters.
  • the frame quality parameter and the packet quality parameter can be determined through the combination of different protocol information, so as to reflect the quality of the video frame and the quality of the data packets under the video frame. Whether the frame quality parameter and the packet quality parameter are abnormal can be determined by the frame quality parameter threshold and the packet quality parameter threshold respectively, making it more convenient to determine the abnormal frame quality parameter and the abnormal packet quality parameter.
  • Step S21 can be implemented based on existing technologies. For example, in step S21, for the acquired protocol information, video frame identification and data packets corresponding to the video frame are extracted according to different types of video streams (see above FIG. 2 and related descriptions). A common method is to find a data packet with a streaming media type in the video stream according to the streaming media layer protocol information of the data packet (see step S211 below for an example).
  • Extract the information of the streaming media type from the streaming media layer protocol information of the data packet with the streaming media type found (see step S212 below for an example), and obtain in the streaming media layer protocol information of the data packet of the video streaming media type
  • the serial number of the streaming media layer and then according to the serial number of the streaming media layer, the data packets used to calculate and obtain the packet quality parameter and the frame time stamps of these data packets are found.
  • Count the frame time stamps of all data packets used to calculate and obtain the packet quality parameter, and use the packets with the same frame time stamp as the data packets belonging to the same video frame (see step S213 below for an example).
  • each frame in at least one video frame may include data packets with the same frame time stamp, and the frame time stamps of the data packets in different video frames may be different, so that each video frame and each video frame corresponding to each frame may be determined. data pack.
  • the streaming media type can be passed in the protocol information
  • the value under the Stream type under the TS header is determined.
  • Streaming media layer sequence number can be determined by the value of Stream PID when the value under Stream type in the protocol information is Video (video); for the video stream (TCP+RTSP+TCP+RTSP+ RTP video stream, UDP+RTP video stream), the streaming media type can be determined by the value under Payload type in the protocol information, and the serial number of the streaming media layer can be determined by the value of RTP SEQUENCE NUMBER when the value under Payload type is Video (video) Determine; for video streams carrying RTMP (TCP+RTMP video streams) other than video streams carrying MPEG2-TS and video streams carrying RTP, the streaming media type can be determined by the value under Type ID in the protocol information, streaming media The layer sequence number can be determined by the protocol information in the data packet whose value under Type ID is Video (video).
  • Fig. 5 shows an example of a method for determining a video frame and a data packet corresponding to the video frame according to an embodiment of the present application.
  • step S21 As shown in Figure 5, taking the video stream whose type is UDP+RTP+MPEG2-TS as an example, the exemplary process of step S21 is as follows:
  • the TS PID field value of TS 1# in FIG. 5 is 0, indicating that the data type of the TS transmission segment to which the TS header belongs is a program association table (program association table, PAT).
  • PAT program association table
  • the Program Map PID field value of TS 1# in Figure 5 is 0x0010f.
  • all TS transmission segments including the obtained Program Map PID value (0x0010f), such as the TS transmission segment corresponding to TS 8# in Figure 5, are data packets with streaming media type.
  • the method in the above step S211 is executed to determine all data packets with the streaming media type.
  • S212 From the TS header of the determined data packet with the streaming media type, first determine the streaming media type according to the Stream type in the program mapping table. For example, it can be known from the description of S211 that TS 8# in Fig. 5 is the TS header of the data packet with streaming media type.
  • the Stream type of the program mapping table (Program Map Table, PMT) is Video, indicating that the streaming media type of the packet to which TS 8# belongs is video.
  • PMT Program Map Table
  • the value of the Stream PID field of PMT is 0x0100, which is the serial number of the streaming media layer of the data packet to which TS 8# belongs.
  • the protocol information includes the data packet with the obtained Stream PID value (0x0100), that is, the data packet whose streaming media type is video.
  • the data packets corresponding to TS 11#, TS 12#, TS 13#, and TS 14# in Figure 5 are data packets whose streaming media type is video.
  • the method in the above step S212 is executed to find all the data packets with the streaming media type being video.
  • each data packet includes a plurality of TS transmission segments, for example, as shown in Figure 5, the data packets corresponding to TS 11# and TS 12# are combined to obtain a data packet. Combine the data packets corresponding to TS 13# and TS 14# to get a data packet. Wherein, the combination manner of the data packets may be random combination. These combined or encapsulated data packets may be used to calculate and obtain packet quality parameters.
  • the protocol information contains the data of the packetized elementary stream (Packetized Elementary Stream, PES) header, and the decoding time stamp (decode time stamp, DTS) is extracted from the PES header, and the unit of DTS is converted into seconds.
  • the value obtained after unit conversion is the frame time stamp of the data packet, that is, the frame time stamp of the video frame to which the data packet belongs. Since the identifier of the video frame is the frame time stamp of the streaming media layer, it can be considered that the data packets with the same frame time stamp belong to the same video frame.
  • the method of step S213 above is executed to identify different video frames and determine the data packets corresponding to different video frames.
  • the data packet with the streaming media layer can be further determined, and the frame time stamp and the streaming media layer serial number etc. are obtained from the streaming media layer of the data packet, and the The transport layer obtains the transport layer sequence number, checksum, confirmation message sequence number (ACK Number), etc.; obtains the network layer sequence number, fragmentation flag (Don't Fragment, DF) and packet time from the network layer of the data packet etc.
  • the transport layer obtains the transport layer sequence number, checksum, confirmation message sequence number (ACK Number), etc.; obtains the network layer sequence number, fragmentation flag (Don't Fragment, DF) and packet time from the network layer of the data packet etc.
  • At least one video frame may also include a part of all video frames identified in step S21 (frames to which data packets whose streaming media type is video belong). It can be further set to filter out at least one video frame from the identified video frames according to whether the frame timestamp of the video frame is in the same time period, or to obtain at least one video frame from the identified video frame according to the streaming layer sequence number of the data packet in the identified video frame
  • the frame determines at least one video frame, or selects at least one video frame from identified video frames according to a preset sampling mechanism. As long as the streaming media type of the data packet in at least one video frame is video, the present application does not limit the specific manner of determining at least one video frame according to the streaming media layer protocol information.
  • the frame quality parameters of each video frame are obtained according to the streaming media layer protocol information and the network layer protocol information of the data packets corresponding to the different video frames.
  • the frame quality parameters of the video frame may, for example, include one or more of a frame header packet jitter parameter, a frame tail packet jitter parameter, a frame packet loss parameter, and a frame disorder parameter.
  • the cause and equipment that cause the video quality problem can be determined, for example, it is determined that the cause of the video quality problem is a video encoding problem, and at the same time, it is determined The device used for video encoding, or, it is determined that the cause of the video quality problem is a video playback problem, and at the same time, it is determined that the device causing the video quality problem is the device used for video playback, or, it is determined that the cause of the video quality problem is network transmission problem while identifying the device causing the video quality issue as a network device, etc. Exemplary descriptions are given below for the calculation manners of different frame quality parameters.
  • FIG. 6 shows an example of a calculation method of a packet jitter parameter at the beginning of a frame and a packet jitter parameter at the end of a frame according to an embodiment of the present application.
  • the streaming media layer protocol information of the data packet includes a frame time stamp indicating a video frame to which the data packet belongs.
  • the network layer protocol information of the data packet includes a packet time indicating the time of the data packet.
  • the frame quality parameters include frame header jitter parameters and frame tail packet jitter parameters.
  • the first packet jitter parameter of the frame represents the delay jitter situation of the first data packet corresponding to the video frame
  • the frame tail packet jitter parameter represents the delay jitter situation of the last data packet corresponding to the video frame
  • Step S22 including:
  • the first packet arrival time represents the arrival time of the first data packet corresponding to the video frame
  • the tail packet arrival time represents the arrival time of the last data packet corresponding to the video frame
  • the first packet interval and the last packet interval of adjacent video frames are respectively calculated.
  • the first packet interval represents the arrival time difference of the first data packet corresponding to adjacent video frames
  • the last packet interval represents the arrival time difference of the last data packet corresponding to adjacent video frames.
  • the first packet interval, the frame interval, and the first frame packet jitter parameter of the previous video frame calculate the first frame packet jitter parameter of the current video frame
  • the trailing packet interval, the frame interval, and the frame trailing packet jitter parameter of the previous video frame calculate the frame trailing packet jitter parameter of the current video frame.
  • the first frame packet jitter parameter representing the delay jitter of the first data packet corresponding to the video frame and the frame end packet jitter representing the delay jitter of the last data packet corresponding to the video frame can be calculated parameter, while characterizing the quality of the video frame, it improves the closeness between the frame quality parameter of the video frame and the actual jitter of the video frame.
  • the frame header jitter parameter and frame tail packet jitter parameter in the embodiment of the present application can be used to characterize the delay jitter of the data packet corresponding to the video frame. The higher the probability of picture blurring and freezing.
  • the first frame packet jitter parameter and the frame end packet jitter parameter can be calculated in the following manner:
  • At least one video frame may include 4 frames, for each video frame in video frames 1-4, according to the network layer protocol information of the data packet corresponding to the video frame, the For the packet time of time, among the data packets corresponding to the video frame, the data packet with the earliest packet time can be named as the first packet, and the packet time of the first packet is the arrival time of the first packet.
  • a data packet with the latest packet time is named as the tail packet, and the packet time of the tail packet is the arrival time of the tail packet.
  • the first packet and the first packet arrival of each video frame in at least one video frame can be determined Time, Tail Packet, Tail Packet Arrival Time. Based on this, the arrival time of the first packet of video frames 1-4 can be recorded as T1, T2, T3, T4 respectively, and the arrival time of the last packet of video frames 1-4 can be recorded as T1', T2', T3', T4'.
  • the first packet arrival time and the last packet arrival time of each video frame in video frames 1-4 calculate the first packet interval and the last packet interval of adjacent video frames, wherein, when 2 ⁇ n ⁇ 4 and it is an integer, the video frame
  • the first packet interval Deltan of n and video frame n-1 can be calculated by the difference between the first packet arrival time Tn of video frame n and the first packet arrival time Tn-1 of video frame n-1, video frame n and video frame n-
  • the tail packet interval Delta' of 1 can be calculated by the difference between the tail packet arrival time Tn' of video frame n and the tail packet arrival time Tn-1' of video frame n-1.
  • the first packet of video frame 1 The interval Delta1 and the tail packet interval Delta1' are equal to 0 by default.
  • the first packet interval Delta3 between video frame 3 and video frame 2 T3-T2
  • the first packet interval Delta4 between video frame 4 and video frame 3 T4-T3.
  • the tail packet interval Delta1' 0 of video frame 1
  • the tail packet interval Delta2' of video frame 2 and video frame 1 T2'-T1'
  • Delta3' T3'-T2' between video frame 3 and video frame 2
  • Delta4' T4'-T3' between video frame 4 and video frame 3.
  • the frame interval of adjacent video frames can be calculated.
  • the frame timestamps of video frames 1-4 can be recorded as TS1, TS2, TS3, and TS4 respectively.
  • the frame interval between video frame n and video frame n-1 Intervaln can be calculated by the difference between the frame time stamp TSn of video frame n and the frame time stamp TSn-1 of video frame n ⁇ 1.
  • the frame interval Interval1 0 of video 1
  • the frame interval Interval2 TS2-TS1 of video frame 2 and video frame 1
  • the video frame 1-4 can be calculated Frame header packet jitter parameters for each video frame.
  • the frame header jitter parameter of video frame 1 is equal to 0 by default. Except for video frame 1, an example of the calculation method of the frame header jitter parameters of other video frames is shown in formula (1):
  • Jittern Jittern-1*15/16+(Deltan-Intervaln)*1/16 (1)
  • Jittern represents the frame header jitter parameter of the video frame n
  • 15/16 and 1/16 are preset control parameters
  • the values of the control parameters can be different by setting The optimal parameter value determined after comparing the calculated frame first packet jitter parameter (or frame tail packet jitter parameter) with the real frame first packet jitter (or frame tail packet jitter), the control parameter can be used to represent the previous The ratio of the value of the first packet jitter parameter (or frame end packet jitter parameter) of a video frame to the value of the frame header packet jitter parameter (or frame end packet jitter parameter) of the current video frame.
  • the frame first packet jitter parameters of video frames 1-4 can be obtained as follows:
  • the frame header jitter parameter Jitter1 0 of video frame 1;
  • the frame first packet jitter parameter Jitter2 Jitter1*15/16+(Delta2-Interval2)*1/16 of video frame 2;
  • the frame first packet jitter parameter Jitter3 Jitter2*15/16+(Delta3-Interval3)*1/16 of video frame 3;
  • the video frame 1-4 can be calculated End-of-frame packet jitter parameters for each video frame.
  • the frame end packet jitter parameter of video frame 1 is equal to 0 by default. Except video frame 1, an example of the calculation method of the frame end packet jitter parameter of other video frames is shown in formula (2):
  • Jittern’ Jittern-1’*15/16+(Deltan’-Intervaln’)*1/16 (2)
  • the frame tail packet jitter parameter Jitter1' 0 of video frame 1;
  • the frame end packet jitter parameter Jitter2' Jitter1'*15/16+(Delta2'-Interval2')*1/16 of the frame tail of video frame 1;
  • the frame end packet jitter parameter Jitter3' Jitter2'*15/16+(Delta3'-Interval3')*1/16 of the frame tail of video frame 1;
  • the frame end packet jitter parameter of video frame 1 Jitter4' Jitter3'*15/16+(Delta4'-Interval4')*1/16.
  • FIG. 7 and FIG. 8 respectively show examples of calculation manners of a frame packet loss parameter and a frame disorder parameter according to an embodiment of the present application.
  • the streaming media layer protocol information of the data packet includes a streaming media layer sequence number indicating a sequence of the data packet in the video frame to which it belongs.
  • the network layer protocol information of the data packet includes the packet time indicating the time of the data packet, and the frame quality parameter includes a frame loss parameter and a frame out-of-sequence parameter, and the frame loss parameter indicates the loss situation of the data packet of the video frame , the frame out-of-sequence parameter represents the out-of-order situation of the data packets of the video frame,
  • Step S22 including:
  • the frame packet loss parameter representing the loss of data packets of the video frame and the frame disorder parameter representing the disorder of the data packets of the video frame can be calculated, which improves the quality of the video frame while characterizing the quality of the video frame. Flexibility in choice of frame quality parameters.
  • the frame loss situation can be determined from the perspective of the streaming media layer of the data packet, and it can be realized by counting the sequence numbers of the streaming media layer and analyzing them.
  • the media layer serial numbers S a -S i can be 11, 12, 13, 15, 16, 17, 18, 19, 20 respectively, and the stream media layer serial numbers S a -S i obtained according to the statistics can be analyzed to determine the frame loss Condition.
  • Frame out-of-sequence can be determined from the perspective of the streaming media layer and the network layer of the data packet.
  • the sorting result is obtained by sorting the data packets according to the packet time, and combined with the sorting result and the stream media layer sequence number of the statistical data packet to analyze and determine.
  • the streaming media layer sequence numbers SA - SK of the data packet AK corresponding to the video frame 3 are 21, 22, 23, 25, 26, 27, 28, 24, 29, 30, 31 respectively
  • the serial numbers S A -SK of the media layer can analyze and determine the packet loss of the frame. For an exemplary implementation thereof, reference may be made to the description below.
  • determining the frame packet loss parameter of the video frame according to the streaming media layer sequence number of the data packet corresponding to the video frame includes:
  • the streaming media layer sequence number of the data packet corresponding to the sorting result and the video frame determine the frame out-of-sequence parameter of the video frame, including:
  • the current data The minimum value of the streaming layer sequence number of the packet and the streaming layer sequence number of the data packet corresponding to the video frame determines the frame disorder parameter corresponding to the video frame.
  • the frame packet loss parameter can reflect the information of whether the data packet in the video frame is lost or not, and when there is a packet loss, it can also reflect the information of the number of the packet loss; the frame disorder parameter can reflect the information in the video frame
  • the information about whether the data packets are out of order can also reflect the information about the out-of-order depth of the out-of-order data packets when there is out-of-order, so that the accuracy of determining the quality of video frames according to the frame quality parameters can be improved.
  • the streaming layer sequence numbers S a -S i of the data packets ai corresponding to video frame 2 are 11, 12, 13, 15, 16, 17, 18, 19, 20 respectively, according to
  • the streaming media layer sequence numbers SA - SK of the data packet AK corresponding to the video frame 3 are 21, 22, 23, 25, 26, 27, 28, 24, 29, 30, 31 respectively, sorted
  • the out-of-order depth of the out-of-order data packet can be used as the value of the frame out-of-order parameter corresponding to the video frame.
  • the sum of the out-of-order depth of each out-of-order data packet can be averaged according to the number of out-of-order data packets to obtain the average out-of-order depth, and the average out-of-order depth is used as The value of the frame out-of-order parameter corresponding to this video frame.
  • the frame packet loss parameter and the frame disorder parameter can be calculated.
  • the packet quality parameters of the data packets are obtained to reflect the data packet quality
  • the packet quality parameters may include, for example, one or more of packet interval parameters, packet jitter parameters, out-of-sequence parameters, packet loss parameters, retransmission parameters, delay parameters, IP packet fragmentation parameters, and checksum error parameters.
  • the packet quality parameter of each data packet corresponding to each frame in the at least one video frame is determined according to the network layer protocol information and the transport layer protocol information of the data packet, and the packet quality parameter includes : The packet interval parameter that represents the time interval between the current data packet and the previous data packet, the packet jitter parameter that represents the delay jitter between the current data packet and the previous data packet, the out-of-order parameter that represents the disordered state of the data packet, and the data packet The packet loss parameter for packet loss, the retransmission parameter for data packet retransmission, the delay parameter for data packet delay, the IP packet fragmentation parameter for IP packet fragmentation, and the If the checksum of the packet is incorrect one or more of the checksum error parameters.
  • the packet jitter parameter can be determined according to the packet time in the network layer protocol information of the data packet and the preset control parameters, and its calculation method can refer to the example of the calculation method of the first frame packet jitter parameter or the frame end packet jitter parameter above.
  • the packet time indicating the time of the data packet can calculate the packet interval parameter.
  • the packet jitter parameter of the previous data packet and the preset control parameter the packet jitter parameter of each data packet can be calculated.
  • video frame 4 may include 5 data packets, for example, when 2 ⁇ m ⁇ 5 and is an integer, the packet jitter parameters of data packet m and data packet m-1 can be passed through data packet m and data packet m
  • the packet interval parameter of -1, the packet jitter parameter of data packet m-1, and the control parameters are determined.
  • the out-of-order parameter can be determined according to the network layer serial number in the network layer protocol information of the current data packet and the previous data packet and the transport layer serial number in the transport layer protocol information.
  • the value of the parameter can be equal to 1, and when the current data packet is not an out-of-order data packet, the value of the out-of-order parameter can be equal to 0.
  • the data packets are sorted according to the packet time. If the transport layer sequence number and the network layer sequence number of the current data packet are reduced compared with the transport layer sequence number and the network layer sequence number of the previous data packet, it indicates that the current data packet Packets are out-of-order packets.
  • the packet loss parameter can be determined according to the network layer serial number in the network layer protocol information of the data packet and the transport layer serial number, checksum, and confirmation message serial number in the transport layer protocol information.
  • the current data packet is a lost data packet
  • the value of the packet loss parameter may be equal to 1
  • the value of the packet loss parameter may be equal to 0.
  • the data packets can be sorted according to the packet time.
  • the current data packet If compared with the transport layer sequence number and the network layer sequence number of the previous data packet, the current data packet The serial number of the transport layer decreases, the serial number of the network layer increases, and before the packet time of the current data packet, in the video buffer, the network layer serial number, the serial number of the transport layer, and the checksum of the current data packet have not appeared The same data packet, but a data packet with the same sequence number as the confirmation message of the current data packet has appeared, which indicates that the current data packet is a lost data packet.
  • the network layer sequence number of the data packet can be directly used to determine whether the packet is lost.
  • the data packets can be sorted according to the packet time, and if the network layer sequence number of the current data packet decreases compared with the network layer sequence number of the previous data packet, it indicates that the current data packet is a lost data packet.
  • the retransmission parameters can be determined according to the network layer sequence number in the network layer protocol information of the data packet and the transport layer sequence number, checksum, and confirmation message sequence number in the transport layer protocol information.
  • the current data packet is a retransmitted data packet
  • the value of the retransmission parameter may be equal to 1
  • the value of the retransmission parameter may be equal to 0.
  • the data packets can be sorted according to the packet time, if compared with the transport layer sequence number and the network layer sequence number of the previous data packet, the current data packet.
  • the serial number of the transport layer decreases, the serial number of the network layer increases, and before the packet time of the current data packet, in the video buffer, the same as the network layer serial number, transport layer serial number, and checksum of the current data packet appear , it indicates that the current data packet is a retransmitted data packet.
  • Another example is to calculate the retransmission parameters of the data packets corresponding to the video stream using the UDP protocol, and the data packets can be sorted according to the packet time. If the network layer sequence number and checksum of the current data packet are the same, and the packet time A data packet earlier than the packet time of the current data packet indicates that the current data packet is a retransmitted data packet.
  • the time delay parameter can be determined according to the packet time in the network layer protocol information of the data packet and the confirmation message sequence number in the transport layer protocol information. For example, the time delay parameter of the data packet corresponding to the video stream using the TCP protocol can be calculated according The confirmation message sequence number of the current data packet Find the data packet with the same confirmation message sequence number as the current data packet, and determine the delay according to the packet time of the data packet and the difference between the packet time of the found data packet and the current data packet The numeric value of the parameter.
  • the IP packet fragmentation parameter can be determined according to the fragmentation flag in the network layer protocol information of the data packet. For example, when there is a fragmentation flag in the network layer protocol information, it means that the data packet has an IP The value of the fragment parameter can be equal to 1. When there is no fragment flag in the network layer protocol information, it means that there is no IP packet fragmentation in the data packet, and the value of the IP packet fragment parameter can be equal to 0.
  • the checksum error parameter can be determined according to the checksum in the transport layer protocol information of the data packet and the checksum value calculated according to the prior art. If the two values are inconsistent, it means that the current data packet has a checksum error.
  • the value of the checksum error parameter is equal to 1 when there is a checksum error.
  • the value of the checksum error parameter is equal to zero when there are no checksum errors. Wherein, when the value of the checksum in the transport layer protocol information is an invalid value (the value is 0), the checksum in the transport layer protocol information and the calculated checksum value are not compared.
  • step S24 for the frame quality parameter calculated in step S22 and the packet quality parameter calculated in step S23, abnormal determination of the parameters is performed in combination with the frame quality parameter threshold and the packet quality parameter threshold respectively.
  • step S24 includes:
  • the frame quality parameter whose value is greater than the frame quality parameter threshold is determined as the abnormal frame quality parameter
  • the packet quality parameter whose value is greater than the packet quality parameter threshold is determined as the abnormal packet quality parameter.
  • abnormal frame quality parameters and packet quality parameters can be determined.
  • Abnormal parameters are determined by comparing parameter values with threshold values, and the determination of abnormal parameters can be completed accurately and quickly.
  • the frame quality parameter threshold and the packet quality parameter threshold can be determined in real time by using a preset fixed value or by using an AI model.
  • An exemplary method for determining the threshold of the frame quality parameter and the threshold of the packet quality parameter by using the AI model is introduced below.
  • each frame quality parameter may correspond to a frame quality parameter threshold; and each packet quality parameter may correspond to a packet quality parameter threshold.
  • the AI model determines a frame quality parameter threshold (or packet quality parameter threshold) corresponding to a frame quality parameter (or packet quality parameter)
  • the data used can be calculated during a period of time before the current moment, and multiple video Multiple values of this type of frame quality parameter corresponding to frames (or multiple values of this type of packet quality parameter corresponding to multiple data packets).
  • FIG. 9 shows an example of a normal distribution probability curve generated according to an embodiment of the present application. As shown in FIG. 9 , the histogram shows the numerical distribution of the jitter parameter of the first packet of the historical frame, and the curve is a normal distribution probability curve P(x) fitted according to the distribution of the jitter parameter of the first packet of the historical frame.
  • An abnormality threshold is set in advance, and when the cumulative distribution function F(a) is equal to the abnormality threshold, the value of a can be the corresponding frame quality parameter threshold. If the frame header packet jitter parameter calculated after the current moment is greater than the threshold, it can be determined to be an abnormal frame header packet jitter parameter, that is, to be determined to be an abnormal frame quality parameter.
  • the abnormality threshold is preset as 75%, and calculated according to the cumulative distribution function of the normal distribution probability curve, when the value of the cumulative distribution function F(a) is equal to 75%, The corresponding value of a may be equal to 100, for example. In this case, the normal range of the value of the frame header jitter parameter is 0-100.
  • Fig. 10 shows an example of realizing abnormal condition determination of parameters according to an embodiment of the present application.
  • the value of a frame header jitter parameter that needs to be determined to be abnormal is 240, and the value is greater than 100.
  • the frame header jitter parameter is an abnormal frame quality parameter, so that the abnormality of the parameter can be determined.
  • the frame quality parameter (or packet quality parameter threshold) obtained by the AI model can be used to determine the frame quality parameter (or packet quality parameter) that needs to be determined to be abnormal. or packet quality parameter) is an abnormal frame quality parameter (or abnormal packet quality parameter). Further, the parameter samples that have been determined to be abnormal frame quality parameters (or abnormal packet quality parameters) in the parameter samples can also be cropped, so that the frame quality parameter threshold (or packet quality parameter threshold) is also updated as the parameter samples change .
  • the method described above is used to determine the abnormality of the frame quality parameter, and the determined abnormality of the frame quality parameter can be shown in Table 1 below, for example.
  • the value of 1 for abnormal jitter at the beginning of the frame, abnormal jitter at the end of the frame, abnormal packet loss, and abnormal frame disorder indicates that the corresponding frame quality parameter of the frame is an abnormal frame quality parameter, this frame is also an abnormal frame.
  • video frame 1 has no frame quality parameter abnormality
  • the first frame packet jitter parameter of video frame 2 is abnormal
  • the frame out-of-sequence parameter is abnormal
  • the frame first packet jitter parameter of video frame 3 is abnormal
  • the frame tail packet jitter parameter is abnormal
  • the frame loss parameter is abnormal
  • the frame quality parameter of video frame 4 is abnormal.
  • the method described above is used to determine the abnormal situation of the packet quality parameter, and the determined abnormal situation of the packet quality parameter can be shown in Table 2 below, for example.
  • gNB, UDG, and EoR represent 5G base stations, unified distributed gateways, and switches using a certain deployment method, respectively.
  • abnormal packet loss, out-of-sequence abnormality, packet jitter abnormality, packet interval abnormality, retransmission abnormality, delay abnormality, IP packet fragmentation abnormality, and checksum error abnormality have a value of 1 Indicates that the package quality parameter is an abnormal package quality parameter, and the package is also an abnormal package.
  • the packet quality parameters of data packets 1, 3, 4, and 5 are not abnormal, and the packet jitter parameters of data packet 2 are abnormal; on the unified distributed gateway UDG, the packet jitter parameters of data packet 1 are abnormal , the packet loss parameter and delay parameter of data packet 2 are abnormal, and the packet loss parameter and packet jitter parameter of data packet 3 are abnormal; The packet loss parameter is abnormal, and the packet loss parameter and packet jitter parameter of packet 3 are abnormal.
  • step S3 After the abnormal frame quality parameters and abnormal packet quality parameters are obtained in step S2, in step S3, it can be determined according to the relationship between the abnormal frame quality parameters, the abnormal packet quality parameters and the preset conditions, which causes the abnormal video quality of the video playback terminal. Causes and equipment.
  • Fig. 11 shows an exemplary schematic diagram of the correspondence between abnormal frame quality parameters, abnormal packet quality parameters, causes of abnormal video quality at the video player end, and devices according to an embodiment of the present application.
  • the packet quality parameter corresponding to the frame quality parameter can be found by using the correspondence between the video frame and the data packet, so that the data packet to which the packet quality parameter belongs is the data packet under the video frame to which the frame quality parameter belongs.
  • the frame quality parameter and its corresponding packet quality parameter usually have a certain correlation. For example, when the packet loss parameter of a certain data packet is abnormal, the situation of the frame packet loss parameter of the video frame to which the data packet belongs can be checked. When the out-of-sequence parameter of a data packet is abnormal, you can check the frame out-of-sequence parameter of the video frame to which the data packet belongs.
  • the packet interval parameter or packet jitter parameter of a certain data packet When the packet interval parameter or packet jitter parameter of a certain data packet is abnormal, it may cause the data packet to fail to arrive at the expected time of decoding, which may cause the video frame to which the data packet belongs to have a large jitter. You can view the video frame to which the data packet belongs The case of the first frame packet jitter parameter and the frame end packet jitter parameter.
  • the sending of the data packet may be slowed down, which may cause the video frame to which the data packet belongs to shake greatly. You can view the video frame to which the data packet belongs. The situation of the jitter parameters of the first packet of the frame and the jitter parameters of the last packet of the frame.
  • the IP packet fragmentation parameter and the checksum error parameter of the data packet are also associated with the jitter of the video frame to which the data packet belongs, therefore.
  • the IP packet fragmentation parameters or checksum error parameters of a data packet are abnormal, you can check the frame header jitter parameters and frame tail packet jitter parameters of the video frame to which the data packet belongs.
  • step S3 includes:
  • the cause of the abnormal video quality at the video playback end is a video encoding problem
  • the The device with abnormal video quality at the video playback end is the device used for video encoding
  • the first condition includes:
  • the frame packet loss parameter of the video frame is abnormal and the packet loss parameter of the data packet corresponding to the video frame is normal, or
  • the frame out-of-order parameter of the video frame is abnormal and the out-of-order parameter of the data packet corresponding to the video frame is normal.
  • the frame quality parameter and the packet quality parameter can reflect the abnormal situation in the transmission process, and the frame packet loss parameter abnormality indicates that there is a data packet under the video frame being transmitted If the packet loss parameter of the data packet under the video frame is normal at this time, it means that no data packet is lost during transmission, so it can be determined that the data packet is lost before transmission, that is, during video encoding; frame disorder Abnormal parameters indicate that there are data packets under the video frame that are out of order during transmission.
  • the out-of-order parameters of the data packets under the video frame are normal at this time, it means that the data packets are not out of order during transmission, so it can be determined that the data packets are in the out-of-order state.
  • the first condition is that the frame packet loss parameter of the video frame is abnormal and the packet loss parameter of the data packet corresponding to the video frame is normal, or the video frame
  • the out-of-sequence parameter of the frame is abnormal and the out-of-order parameter of the data packet corresponding to the video frame is normal, which can accurately reflect the video encoding problem.
  • the frame loss parameter in the frame quality parameter is abnormal and the packet loss parameter in the packet quality parameter is normal, or the frame disorder parameter in the frame quality parameter is abnormal and the disorder parameter in the packet quality parameter is normal , it can be determined that the abnormal frame quality parameter and the abnormal packet quality parameter meet the first condition, and then determine that the cause of the video quality problem occurs during the video encoding process, the video encoding process is dominated by the equipment used for video encoding, and the video encoding There is one and only one device used, so the only device that can be sure to cause the video encoding problem is the device used for video encoding.
  • the cause and device that cause the abnormal video quality at the video playback end can be directly determined without having to determine the frame quality
  • the cause and device that cause the abnormal video quality at the video playback end can be directly determined without having to determine the frame quality
  • the parameter and the packet quality parameter satisfy the remaining ones in the first condition.
  • it may also be set to determine whether the frame quality parameter and the packet quality parameter satisfy each possibility in the first condition, and after determining that the frame quality parameter and the packet quality parameter satisfy at least one possibility in the first condition, then determine the result Reasons and equipment for abnormal video quality at the video playback end.
  • both of the above two setting methods can be used to determine the cause and equipment that cause the abnormal video quality of the video playback terminal, and this application does not limit this.
  • step S3 includes:
  • the cause of the abnormal video quality at the video playback end is a terminal parameter problem, and it is determined that the cause
  • the device with abnormal video quality at the video playback end is the device used for video playback;
  • the second condition includes:
  • Any parameter in the frame header jitter parameter and frame tail packet jitter parameter of the video frame is abnormal and any parameter in the IP packet fragmentation parameter and checksum error parameter of the data packet corresponding to the video frame is abnormal .
  • the frame quality parameter and the packet quality parameter can reflect the abnormal situation in the transmission process, and the abnormality of the first frame packet jitter parameter/frame end packet jitter parameter indicates that the video The delay jitter of the first/last data packet in the frame is too large during transmission. If the IP packet fragmentation parameter of the data packet in the video frame is abnormal at this time, it means that the data packet has experienced fragmentation during transmission.
  • the parameter configuration of the video playback terminal fails to meet the requirements for data packets to be transmitted without fragmentation;
  • the video playback end successfully completes the verification, so it can be determined that the parameter configuration of the video playback end fails to meet the requirements for successful verification of the data packet;
  • the second condition that is, the first frame packet jitter parameter and the end of the frame of the video frame Any parameter in the packet jitter parameters is abnormal and any parameter in the IP packet fragmentation parameter and the checksum error parameter of the data packet corresponding to the video frame is abnormal, which can accurately reflect the terminal parameter problem.
  • the frame first packet jitter parameter/frame end packet jitter parameter in the frame quality parameter is abnormal and the IP packet fragmentation parameter/checksum error parameter in the packet quality parameter is normal, it can be determined that the abnormal The frame quality parameter and the abnormal packet quality parameter meet the second condition, and then it is determined that the cause of the video quality problem appears on the playback parameters during the video playback process, the video playback process is dominated by the device used for video playback, and the video playback There is only one device used (that is, the video playback terminal), so it can be uniquely determined that the device that causes the terminal parameter problem is the device used for video playback.
  • the cause and device that cause the abnormal video quality at the video playback end can be directly determined without having to determine the frame quality parameters and packet quality parameters satisfy the remaining possible cases in the second condition.
  • it may also be set to determine whether the frame quality parameter and the packet quality parameter satisfy each possibility in the second condition, and after determining that the frame quality parameter and the packet quality parameter satisfy at least one possibility in the second condition, then determine the result Reasons and equipment for abnormal video quality at the video playback end.
  • step S3 includes:
  • the third condition includes:
  • the frame packet loss parameter of the video frame is abnormal and the packet loss parameter of the data packet corresponding to the video frame is abnormal, or
  • the frame out-of-order parameter of the video frame is abnormal and the out-of-order parameter of the data packet corresponding to the video frame is abnormal, or
  • Any one of the frame header jitter parameters and frame tail packet jitter parameters of the video frame is abnormal and any of the packet jitter parameters, packet interval parameters, retransmission parameters, and delay parameters of the data packets corresponding to the video frame A parameter exception.
  • the frame quality parameter and the packet quality parameter can reflect the abnormal situation in the transmission process, and the frame packet loss parameter abnormality indicates that there is a data packet under the video frame being transmitted If the packet loss parameter of the data packet under the video frame is abnormal at this time, it means that there is a data packet lost during transmission, so it can be determined that there is a problem with the network transmission; the abnormal frame disorder parameter indicates that there is a data packet under the video frame It is in an out-of-order state during transmission.
  • the out-of-order parameters of the data packets under the video frame are abnormal at this time, it means that some data packets are in out-of-order during transmission, so it can be determined that there is a problem in network transmission; based on the above reasons, in the third condition "The frame packet loss parameter of the video frame is abnormal and the packet loss parameter of the data packet corresponding to the video frame is abnormal, or the frame out-of-order parameter of the video frame is abnormal and the out-of-order data packet corresponding to the video frame Abnormal parameter", which can accurately reflect the network transmission problem; the abnormality of the frame first packet jitter parameter/frame end packet jitter parameter indicates that the delay jitter of the first/last data packet under the video frame is too large during transmission.
  • the packet interval parameter of the data packet under the frame is abnormal, it means that the time difference between the two data packets in the transmission process is too large, and it can be determined that there is a problem in the network transmission; if the packet jitter parameter of the data packet under the video frame is abnormal at this time, it means that the data packet If the delay and jitter in the transmission process is too large, it can be determined that there is a problem in network transmission; if the retransmission parameters of the data packet under the video frame are abnormal at this time, it means that the data packet has undergone multiple transmissions during the transmission process, and it can be determined that there is a network transmission problem.
  • the delay parameter of the data packet under the video frame is abnormal at this time, it means that the transmission time of the data packet is too long during the transmission process, and it can be determined that there is a problem with the network transmission.
  • the third condition "any parameter in the frame header jitter parameter and the frame tail packet jitter parameter of the video frame is abnormal and the packet jitter parameter, the packet interval parameter, and the packet interval parameter of the data packet corresponding to the video frame are Any one of the retransmission parameters and delay parameters is abnormal" can accurately reflect the terminal parameter problem.
  • the frame loss parameter in the frame quality parameter is abnormal and the packet loss parameter in the packet quality parameter is abnormal, or the frame disorder parameter in the frame quality parameter is abnormal and the disorder parameter in the packet quality parameter is abnormal , or if the frame first packet jitter parameter/frame end packet jitter parameter in the frame quality parameter is abnormal and the packet jitter parameter/packet interval parameter/retransmission parameter/delay parameter in the packet quality parameter is abnormal, you can determine the abnormal frame quality parameter and all The aforementioned abnormal packet quality parameters meet the third condition, and then it is determined that the cause of the abnormal video quality occurs during network transmission, and the abnormal video quality is caused by network equipment.
  • Table 3 shows an example of determining that the cause of the video quality problem is a network transmission problem according to the embodiment of the present application.
  • a frame timestamp identifies a unique frame.
  • the packet information that needs to be viewed corresponding to a frame may include packet time, network layer sequence number, transport layer sequence number, checksum, and abnormality of packet quality parameters.
  • For abnormal packet quality parameters according to the association relationship between frame quality parameters and packet quality parameters, in the "Analysis Result" column, the analysis results that lead to video quality problems can be given.
  • the frame packet loss parameter of video frame 1 is abnormal
  • the packet loss parameter of data packet 2 corresponding to video frame 1 is abnormal
  • the packet loss parameter of data packet 3 corresponding to video frame 1 is abnormal, therefore satisfying the third conditions, it can be determined that the cause of the video quality problem is a network transmission problem.
  • the cause of the abnormal video quality at the video playback end can be directly determined without having to determine the frame quality parameter and Whether the packet quality parameter satisfies the remaining possibilities in the third condition.
  • it may also be set to determine whether the frame quality parameter and the packet quality parameter satisfy each possibility in the third condition, and after determining that the frame quality parameter and the packet quality parameter satisfy at least one possibility in the third condition, then determine the result The cause of abnormal video quality on the video player side.
  • the network transmission process may use multiple network devices, it is also possible to further determine the specific device causing the terminal parameter problem.
  • step S3 further includes:
  • the network layer protocol information of the data packet determine the network layer serial number of the data packet corresponding to the abnormal packet quality parameter
  • the transport layer protocol information of the data packet determine the packet time, transport layer sequence number, and checksum of the data packet corresponding to the abnormal packet quality parameter
  • the transmission path of the data packet corresponding to the abnormal packet quality parameter described in the network find the data packet that satisfies the conditions of packet time, network layer serial number, transport layer serial number, and checksum in each network device on the transmission path ;
  • the network equipment causing the abnormal video quality of the video playback terminal is determined from among the network equipments on the transmission path of the data packets.
  • the packet quality parameter of the data packet on each device can indicate the impact of the device on the transmission of the data packet, and by finding the corresponding data packets in each network device on the transmission path, the statistics can be calculated using the found data packets During the transmission of the packet, the impact of different network devices on the transmission of the data packet, and determine the specific device that causes the abnormal video quality of the video player.
  • the network layer sequence number of the data packet corresponding to the abnormal packet quality parameter can be determined, and according to the transport layer
  • the protocol information can determine the packet time, transport layer sequence number, and checksum of the data packet corresponding to the abnormal packet quality parameter.
  • the transmission path of the data packet corresponding to the abnormal packet quality parameter on the network device can be obtained.
  • the abnormal packet quality parameter can be, for example, the packet loss parameter of data packet 2 and the packet loss parameter of data packet 3.
  • it can be determined, for example, that the transmission path of data packet 2 and data packet 3 can be gNB ⁇ UDG ⁇ EoR.
  • the transmission path of the data packet corresponding to the abnormal packet quality parameter in the network you can find the data packet that meets the conditions of the packet time, network layer serial number, transport layer serial number, and checksum in each network device on the transmission path.
  • the network device that causes the abnormal video quality of the video playback terminal is determined. For example, see Table 3, based on packet time (8:14:12.008), network layer sequence number (48160), transport layer sequence number (3480724955), checksum (1231221433) of packet 2, and packet 3 Packet time (8:14:12.019), network layer sequence number (48162), transport layer sequence number (3480726183), checksum (2134423523), and find a packet that meets the conditions.
  • the packet time, the network layer serial number, the transport layer serial number, and the checksum satisfying conditions include:
  • the absolute value of the difference between the packet time and the packet time of the data packet corresponding to the abnormal packet quality parameter is less than a preset threshold, and the network layer sequence number, the transport layer sequence number, the checksum and the abnormal packet quality parameter.
  • the network layer sequence number, transport layer sequence number, and checksum of the corresponding data packets are all the same.
  • the same data packet on different network devices along the transmission path can be found.
  • the cause of the abnormality of the packet quality parameters on different devices is the current device or the upstream device of the current device.
  • the cause of the abnormal video quality at the video playback end is a network transmission problem, and the specific network device that causes the abnormal video quality at the video playback end.
  • the network layer serial number (48162), transport layer serial number (3480726183), and checksum (2134423523) of data packet 3 in Table 3 it can be found in Table 2 that the network layer serial number is equal to 48162, and the transport layer serial number is equal to 3480726183, the data packet whose checksum is equal to 2134423523, you can find the data packet 5 on the gNB, the data packet 3 on the UDG and the data packet 3 on the EoR that meet the requirements, and then further determine the packet time of the found data packet and Table 3 Whether the absolute value of the difference between the packet time (8:14:12.019) of data packet 3 is less than the preset threshold, for example, the value of the preset threshold can be equal to 0.01, in this case, the data packet 5 on the gNB, the The absolute value of the packet time difference between data packet 3 and data packet 3 on EoR and data packet 3 in Table 3 is less than the preset threshold, data packet 5 on gNB, data packet 3 on UDG and data packet on E
  • the specific network device causing the abnormal video quality at the video playback end can be determined.
  • FIG. 12 shows an example of determining a specific network device that causes abnormal video quality at a video player end according to an embodiment of the present application.
  • A, B, and C are gNB, UDG, and EoR respectively, and the data packets on gNB, UDG, and EoR that meet the conditions found for data packet 2 in Table 3 (hereinafter referred to as A , B, and C devices) as an example, according to the network topology data, it can be determined that the transmission path of the data packet is gNB ⁇ UDG ⁇ EoR.
  • the abnormal packet quality parameter of data packet 2 in Table 3 is the packet loss parameter.
  • the packet loss parameters of the data packets on devices A, B, and C are all abnormal, it can be determined that the packet loss introduced by device A (gNB) leads to The video quality is abnormal; the packet loss parameters of data packets on B and C are abnormal, and when the packet loss parameters of data packets on device A are normal, it can be determined that device B (UDG) introduces packet loss, which leads to abnormal video quality; device C The packet loss parameters of the above data packets are abnormal, and when the packet loss parameters of the data packets on devices A and B are normal, it can be determined that device C (EoR) introduces packet loss, which leads to abnormal video quality.
  • the packet loss parameters of device A are abnormal, the packet loss parameters of devices B and C must be abnormal; if the packet loss parameters of device B are abnormal, the packet loss parameters of device C must be abnormal. Must be abnormal.
  • collection errors may occur, causing errors in the protocol information, which in turn may cause errors in the packet quality parameters determined according to the protocol information. Therefore, according to different network devices found on the transmission path When determining the network device that causes the video quality problem of the data packets that meet the conditions, the influence of the protocol information collection error can be further excluded.
  • the packet loss parameters of data packets on devices A and B are abnormal, and the packet loss parameters of data packets on device C are normal, it can be considered that there is an error when collecting protocol information from device C, and it can be determined that device A has introduced packet loss, and then The video quality is abnormal; the packet loss parameters on devices A and C are abnormal, and when the packet loss parameters on device B are normal, it can be considered that there is an error when collecting protocol information from device B, and it can be determined that device A introduced Packet loss, resulting in abnormal video quality.
  • packet loss parameters on devices A, B, and C There are other examples of packet loss parameters on devices A, B, and C.
  • the packet loss parameters on devices A, B, and C are all normal, and the packet loss parameters on device A are abnormal.
  • Examples of normal packet loss parameters on devices B and C, abnormal packet loss parameters on device B, and normal packet loss parameters on devices A and C, because these examples have a very low probability of occurrence It will not be described in detail here.
  • each data packet (packet 2, packet 3) with abnormal packet quality parameters is uniquely identified by a network layer sequence number, a transport layer sequence number and a checksum.
  • the abnormal packet quality parameter is a packet quality parameter that needs to be compared with the found data packets.
  • the packet loss represents the abnormality of the abnormal packet quality parameters that need to be compared on the device. 0 means that the packet quality parameters are normal, and 1 means that the packet quality parameters are abnormal. Combining with FIG. 11 , it can be determined that the network device that causes the abnormality of data packet 2 and data packet 3 in Table 3 and then causes abnormal video quality is UDG.
  • the determined network devices that cause abnormal video quality are the same, and in other application scenarios, due to errors, it may also occur There are many cases of network devices with abnormal video quality.
  • the determined multiple network devices that cause abnormal video quality may be further screened to obtain a network device that is most likely to cause abnormal video quality.
  • the network device that causes the abnormal video quality of the video player including:
  • the network device with the most occurrences is counted as the network device that causes abnormal video quality at the video playback end.
  • the accuracy of the determined network device that causes abnormal video quality can be improved, so that the determined network that causes abnormal video quality After the device implements the corresponding solution, the probability of abnormal video quality caused by the same problem on the same device is reduced.
  • the network device most likely to cause abnormal video quality is determined.
  • Table 4 there are 2 times of abnormal packet loss parameters caused by UDG, and 0 times of abnormal packet loss parameters caused by other devices, so the network device most likely to cause abnormal video quality is UDG. If in another example, there are 2 packet loss parameter exceptions caused by UDG, 5 packet loss parameter exceptions caused by EoR, and 0 packet loss parameter exceptions caused by gNB, then the network with the greatest possibility of video quality abnormality The device is EoR.
  • Fig. 13 shows an exemplary structural diagram of an apparatus for determining a video quality problem according to an embodiment of the present application.
  • the present application also proposes an apparatus for determining video quality problems, the apparatus including: an information receiving module 130, configured to receive protocol information on the video playback terminal and network equipment , the network device is used to transmit the video data to the video player, the protocol information indicates the sending mode of the video frame, and the video frame includes a plurality of data packets; the parameter determination module 131 is used to determine according to the protocol information An abnormal frame quality parameter and an abnormal packet quality parameter, the abnormal frame quality parameter indicating that the quality of the video frame to which the abnormal frame quality parameter belongs is abnormal, and the abnormal packet quality parameter indicating the abnormal packet quality parameter The quality of the associated data packet is abnormal; the abnormal cause determination module 132 is used to determine the cause and equipment that cause the abnormal video quality of the video playback terminal according to the abnormal frame quality parameter and/or the abnormal packet quality parameter.
  • an information receiving module 130 configured to receive protocol information on the video playback terminal and network equipment , the network device is used to transmit the video data to the video player, the protocol information indicates the sending mode of the video frame, and the video frame
  • the protocol information includes streaming media layer protocol information, network layer protocol information, and transport layer protocol information of the data packet
  • the streaming media layer protocol information includes the flow of the data packet on the video playback end.
  • Media layer protocol information, the network layer protocol information includes the network layer protocol information of the data packet on the network device and the video playback end
  • the transport layer protocol information includes the transport layer of the data packet on the network device and the video playback end Protocol information
  • the determination of abnormal frame quality parameters and abnormal packet quality parameters according to the protocol information includes: according to the streaming media layer protocol information, determining at least one video frame and the frame corresponding to each frame in the at least one video frame Each data packet; according to the streaming media layer protocol information and the network layer protocol information, determine the frame quality parameters of each frame in the at least one video frame; according to the network layer protocol information and the transport layer protocol information, Determining the packet quality parameter of each data packet corresponding to each frame in the at least one video frame; determining the abnormal frame quality parameter according to the frame quality parameter corresponding to each frame in the at least one video
  • the abnormal frame quality parameter is determined according to the frame quality parameter corresponding to each frame in the at least one video frame and the frame quality parameter threshold, and the abnormal frame quality parameter is determined according to each frame quality parameter in the at least one video frame.
  • the packet quality parameter of each data packet corresponding to the frame and the packet quality parameter threshold value, determining the abnormal packet quality parameter includes: for each frame of the at least one video frame, among the frame quality parameters of the video frame, the value A frame quality parameter greater than the frame quality parameter threshold is determined as the abnormal frame quality parameter; for each frame of the at least one video frame, among the packet quality parameters of the data packet corresponding to the video frame, the value is greater than The packet quality parameter of the packet quality parameter threshold is determined as the abnormal packet quality parameter.
  • the streaming media layer protocol information of the data packet includes a frame time stamp indicating the video frame to which the data packet belongs
  • the network layer protocol information of the data packet includes a packet time indicating the time of the data packet
  • the frame quality parameter includes a frame header jitter parameter and a frame tail packet jitter parameter
  • the frame header jitter parameter represents the delay jitter of the first data packet corresponding to the video frame
  • the frame tail packet jitter parameter represents The delay and jitter situation of the last data packet corresponding to the video frame, according to the streaming media layer protocol information and the network layer protocol information, determine the frame quality parameters of each frame in the at least one video frame, including: for For each frame of the at least one video frame, the arrival time of the first packet and the arrival time of the last packet of the video frame are determined according to the packet time of the data packet corresponding to the video frame, and the arrival time of the first packet represents the first packet corresponding to the video frame.
  • the arrival time of a data packet, the arrival time of the last packet corresponding to the video frame is represented by the tail packet arrival time; according to the arrival time of the first packet and the arrival time of the tail packet, the first packet interval and the first packet interval of adjacent video frames are calculated respectively.
  • the tail packet interval, the first packet interval represents the arrival time difference of the first data packet corresponding to the adjacent video frame, and the tail packet interval represents the arrival time difference of the last data packet corresponding to the adjacent video frame; according to the frame time stamp, respectively calculate the frame interval of adjacent video frames; according to the first packet interval, frame interval, and the frame first packet jitter parameter of the previous video frame, calculate the frame first packet jitter parameter of the current video frame; according to the tail packet interval, frame interval, and the frame end packet jitter parameter of the previous video frame, and calculate the frame end packet jitter parameter of the current video frame.
  • the streaming media layer protocol information of the data packet includes a streaming media layer sequence number indicating the sequence of the data packet in the video frame to which it belongs
  • the network layer protocol information of the data packet includes indicating data
  • the packet time of the time of packet, described frame quality parameter comprises frame packet loss parameter and frame disorder parameter
  • described frame packet loss parameter represents the loss situation of the data packet of video frame
  • described frame disorder parameter represents the data of video frame Out-of-sequence situation of the packet
  • determining the frame packet loss parameter of the video frame according to the streaming media layer sequence number of the data packet corresponding to the video frame includes: For each frame of the at least one video frame, according to the streaming media layer serial number of the data packet corresponding to the video frame, determine the maximum value, the minimum value and the streaming media layer serial number of the data packet corresponding to the video frame Layer sequence number, according to the maximum value and the minimum value of the streaming media layer sequence number, determine the theoretical value of the data packet number corresponding to the video frame, according to the theoretical value of the data packet number corresponding to the video frame and the The difference of the streaming media layer sequence number of the data packet corresponding to the video frame determines the frame packet loss parameter of the video frame; according to the streaming media layer serial number of the data packet corresponding to the sorting result and the video frame, determine The frame out-of-sequence parameters of the video frame include: when the numerical value of the streaming media layer serial number of the current data packet is greater than the streaming media layer
  • the packet quality parameter of each data packet corresponding to each frame in the at least one video frame is determined according to the network layer protocol information and the transport layer protocol information of the data packet, and the packet quality parameter includes : The packet interval parameter that represents the time interval between the current data packet and the previous data packet, the packet jitter parameter that represents the delay jitter between the current data packet and the previous data packet, the out-of-order parameter that represents the disordered state of the data packet, and the data packet Packet loss parameter for packet loss, retransmission parameter for data packet retransmission, delay parameter for data packet and corresponding response message delay, IP packet fragmentation for data packet One or more of the text fragmentation parameter and the checksum error parameter indicating whether the checksum of the data packet is wrong.
  • the determining the cause and device for abnormal video quality at the video playback end according to the abnormal frame quality parameter and/or the abnormal packet quality parameter includes: for any video frame, When the frame quality parameter of the video frame and the packet quality parameter of the data packet corresponding to the video frame meet the first condition, it is determined that the cause of the abnormal video quality at the video playback end is a video encoding problem, and it is determined that the video quality at the video playback end is abnormal
  • the device is a device used for video encoding; wherein the first condition includes: the frame loss parameter of the video frame is abnormal and the packet loss parameter of the data packet corresponding to the video frame is normal, or the frame loss parameter of the video frame
  • the out-of-order parameter is abnormal and the out-of-order parameter of the data packet corresponding to the video frame is normal.
  • the determining the cause and device for abnormal video quality at the video playback end according to the abnormal frame quality parameter and/or the abnormal packet quality parameter includes: for any video frame, When the frame quality parameter of the video frame and the packet quality parameter of the data packet corresponding to the video frame meet the second condition, it is determined that the cause of the abnormal video quality at the video playback end is a terminal parameter problem, and it is determined that the video quality at the video playback end is abnormal
  • the device is a device used for video playback; wherein, the second condition includes: any parameter in the first frame packet jitter parameter and the frame end packet jitter parameter of the video frame is abnormal and the data packet corresponding to the video frame Any of the IP packet fragmentation parameters and checksum error parameters is abnormal.
  • the determining the cause and device for abnormal video quality at the video playback end according to the abnormal frame quality parameter and/or the abnormal packet quality parameter includes: for any video frame, When the frame quality parameter of the video frame and the packet quality parameter of the data packet corresponding to the video frame meet the third condition, it is determined that the cause of the abnormal video quality at the video playback end is a network transmission problem; wherein the third condition includes : The frame packet loss parameter of the video frame is abnormal and the packet loss parameter of the data packet corresponding to the video frame is abnormal, or the frame out-of-order parameter of the video frame is abnormal and the out-of-order parameter of the data packet corresponding to the video frame is abnormal Abnormal, or any parameter in the frame first packet jitter parameter and frame end packet jitter parameter of the video frame is abnormal and the packet jitter parameter, packet interval parameter, retransmission parameter, and delay parameter of the data packet corresponding to the video frame Any parameter in is abnormal.
  • the reason and equipment of abnormal video quality also include: according to the network layer protocol information of the data packet, determine the network layer sequence number of the data packet corresponding to the abnormal packet quality parameter; according to the transport layer protocol information of the data packet, determine Packet time, transport layer sequence number, and checksum of the data packet corresponding to the abnormal packet quality parameter; receive network topology data on the network device, and determine the transmission path of each data packet in the network according to the network topology data; The transmission path of the data packet corresponding to the abnormal packet quality parameter is found in each network device on the transmission path, and the packet time, the network layer serial number, the transport layer serial number, and the checksum all meet the conditions; according to the found The packet quality parameters of the data packets satisfying the conditions are determined from the network devices on the transmission path of the data packets to determine the network device that causes the
  • the conditions for satisfying the packet time, the network layer sequence number, the transport layer sequence number, and the checksum include: the difference between the packet time and the packet time of the data packet corresponding to the abnormal packet quality parameter The absolute value of the difference is less than the preset threshold, and the network layer sequence number, transport layer sequence number, checksum and the network layer sequence number, transport layer sequence number, checksum of the data packet corresponding to the abnormal packet quality parameter are the same.
  • the network device that causes the abnormal video quality of the video player including: according to the packet quality parameters of multiple sets of data packets that meet the conditions, from each network device on the transmission path of the data packet Among the network devices that may cause abnormal video quality at the video playback end, the network device that may cause abnormal video quality at the video playback end is determined multiple times; among the network devices that may cause abnormal video quality at the video playback end, the network device with the most occurrences is counted as the network device that causes abnormal video quality at the video playback end. network equipment.
  • An embodiment of the present application provides an apparatus for determining a video quality problem, including: a processor and a memory for storing instructions executable by the processor; wherein the processor is configured to implement the above method when executing the instructions.
  • An embodiment of the present application provides a non-volatile computer-readable storage medium, on which computer program instructions are stored, and when the computer program instructions are executed by a processor, the foregoing method is realized.
  • An embodiment of the present application provides a computer program product, including computer-readable codes, or a non-volatile computer-readable storage medium bearing computer-readable codes, when the computer-readable codes are stored in a processor of an electronic device When running in the electronic device, the processor in the electronic device executes the above method.
  • Fig. 14 shows an exemplary structural diagram of an apparatus for determining a video quality problem according to an embodiment of the present application.
  • the device for determining video quality problems may include a mobile phone, a foldable electronic device, a tablet computer, a desktop computer, a laptop computer, a handheld computer, a notebook computer, an ultra-mobile personal computer (ultra-mobile personal computer, UMPC) ), netbooks, cellular phones, personal digital assistants (personal digital assistant, PDA), augmented reality (augmented reality, AR) devices, virtual reality (virtual reality, VR) devices, artificial intelligence (artificial intelligence, AI) devices, wearable At least one of portable devices, vehicle-mounted devices, smart home devices, smart city devices, and server devices.
  • PDA personal digital assistant
  • augmented reality augmented reality, AR
  • VR virtual reality
  • AI artificial intelligence
  • the embodiment of the present application does not specifically limit the specific type of the apparatus for determining a video quality problem.
  • the apparatus for determining a video quality problem may include a processor 110 , a memory 121 , and a communication module 160 . It can be understood that the structure shown in the embodiment of the present application does not constitute a specific limitation on the apparatus for determining a video quality problem. In some other embodiments of the present application, the device for determining a video quality problem may include more or fewer components than shown in the figure, or combine some components, or split some components, or arrange different components. The illustrated components can be realized in hardware, software or a combination of software and hardware.
  • the processor 110 may include one or more processing units, for example: the processor 110 may include an application processor (application processor, AP), a modem processor, a graphics processing unit (graphics processing unit, GPU), an image signal processor (image signal processor, ISP), controller, video codec, digital signal processor (digital signal processor, DSP), baseband processor, and/or neural network processor (neural-network processing unit, NPU), etc. Wherein, different processing units may be independent devices, or may be integrated in one or more processors.
  • application processor application processor, AP
  • modem processor graphics processing unit
  • GPU graphics processing unit
  • image signal processor image signal processor
  • ISP image signal processor
  • controller video codec
  • digital signal processor digital signal processor
  • baseband processor baseband processor
  • neural network processor neural-network processing unit
  • the processor 110 can generate an operation control signal according to the instruction opcode and the timing signal, and complete the control of fetching and executing the instruction.
  • a memory may also be provided in the processor 110 for storing instructions and data.
  • the memory in processor 110 may be a cache memory.
  • the memory may store instructions or data used by the processor 110 or used frequently. If the processor 110 needs to use the instruction or data, it can be called directly from the memory. Repeated access is avoided, and the waiting time of the processor 110 is reduced, thus improving the efficiency of the system.
  • the memory 121 may be used to store computer-executable program code including instructions.
  • the memory 121 may include an area for storing programs and an area for storing data.
  • the stored program area can store an operating system, an application program required by at least one function (such as an abnormal frame quality parameter determination function, an abnormal packet quality parameter determination function) and the like.
  • the storage data area can store data (such as frame quality parameters, packet quality parameters, etc.) created during the use of the device for determining video quality problems.
  • the memory 121 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one magnetic disk storage device, flash memory device, universal flash storage (universal flash storage, UFS) and the like.
  • the processor 110 executes the instructions stored in the memory 121 and/or the instructions stored in the memory provided in the processor to execute various function methods of the device for determining video quality problems or the above-mentioned method for determining video quality problems.
  • the communication module 160 can be used to receive streaming data (such as the protocol information collection device in the embodiment of the application) from other devices or equipment (such as the protocol information collection device and the topology data collection device in the embodiment of the application) through wireless communication/wired communication. information, network topology data), and output streaming data to other devices or devices (such as the cause of the video quality problem and device information determined in the embodiment of this application).
  • streaming data such as the protocol information collection device in the embodiment of the application
  • it can provide WLAN (such as Wi-Fi network), Bluetooth (Bluetooth, BT), global navigation satellite system (global navigation satellite system, GNSS), frequency modulation (frequency modulation, FM), near field communication technology (near field communication) , NFC), infrared technology (infrared, IR) and other wireless communication solutions.
  • a computer readable storage medium may be a tangible device that can retain and store instructions for use by an instruction execution device.
  • a computer readable storage medium may be, for example, but is not limited to, an electrical storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing.
  • Non-exhaustive list of computer-readable storage media include: portable computer disk, hard disk, random access memory (Random Access Memory, RAM), read only memory (Read Only Memory, ROM), erasable Electrically Programmable Read-Only-Memory (EPROM or flash memory), Static Random-Access Memory (Static Random-Access Memory, SRAM), Portable Compression Disk Read-Only Memory (Compact Disc Read-Only Memory, CD -ROM), Digital Video Disc (DVD), memory sticks, floppy disks, mechanically encoded devices such as punched cards or raised structures in grooves with instructions stored thereon, and any suitable combination of the foregoing .
  • RAM Random Access Memory
  • ROM read only memory
  • EPROM or flash memory erasable Electrically Programmable Read-Only-Memory
  • Static Random-Access Memory SRAM
  • Portable Compression Disk Read-Only Memory Compact Disc Read-Only Memory
  • CD -ROM Compact Disc Read-Only Memory
  • DVD Digital Video Disc
  • Computer readable program instructions or codes described herein may be downloaded from a computer readable storage medium to a respective computing/processing device, or downloaded to an external computer or external storage device over a network, such as the Internet, local area network, wide area network, and/or wireless network.
  • the network may include copper transmission cables, fiber optic transmission, wireless transmission, routers, firewalls, switches, gateway computers, and/or edge servers.
  • a network adapter card or a network interface in each computing/processing device receives computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in a computer-readable storage medium in each computing/processing device .
  • Computer program instructions for performing the operations of the present application may be assembly instructions, instruction set architecture (Instruction Set Architecture, ISA) instructions, machine instructions, machine-related instructions, microcode, firmware instructions, state setting data, or in one or more source or object code written in any combination of programming languages, including object-oriented programming languages—such as Smalltalk, C++, etc., and conventional procedural programming languages—such as the “C” language or similar programming languages.
  • Computer readable program instructions may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer, or entirely on the remote computer or server implement.
  • the remote computer can be connected to the user's computer through any kind of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or it can be connected to an external computer such as use an Internet service provider to connect via the Internet).
  • electronic circuits such as programmable logic circuits, field-programmable gate arrays (Field-Programmable Gate Array, FPGA) or programmable logic arrays (Programmable Logic Array, PLA), the electronic circuit can execute computer-readable program instructions, thereby realizing various aspects of the present application.
  • These computer-readable program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine such that when executed by the processor of the computer or other programmable data processing apparatus , producing an apparatus for realizing the functions/actions specified in one or more blocks in the flowchart and/or block diagram.
  • These computer-readable program instructions can also be stored in a computer-readable storage medium, and these instructions cause computers, programmable data processing devices and/or other devices to work in a specific way, so that the computer-readable medium storing instructions includes An article of manufacture comprising instructions for implementing various aspects of the functions/acts specified in one or more blocks in flowcharts and/or block diagrams.
  • each block in a flowchart or block diagram may represent a module, a portion of a program segment, or an instruction that includes one or more Executable instructions.
  • the functions noted in the block may occur out of the order noted in the figures. For example, two blocks in succession may, in fact, be executed substantially concurrently, or they may sometimes be executed in the reverse order, depending upon the functionality involved.
  • each block in the block diagrams and/or flowcharts, and combinations of blocks in the block diagrams and/or flowcharts can be implemented with hardware (such as circuits or ASIC (Application Specific Integrated Circuit, application-specific integrated circuit)), or can be implemented with a combination of hardware and software, such as firmware.
  • hardware such as circuits or ASIC (Application Specific Integrated Circuit, application-specific integrated circuit)
  • firmware such as firmware

Abstract

The present application relates to a video quality problem determination method and apparatus, a storage medium, and a program product. The video quality problem determination method comprises: receiving protocol information on a video player and a network device; determining an abnormal frame quality parameter and an abnormal packet quality parameter according to the protocol information; and determining, according to the abnormal frame quality parameter and/or the abnormal packet quality parameter, a cause and a device resulting in abnormal video quality of the video player. According to the video quality problem determination method in the embodiments of the present application, the cause and device resulting in a video quality problem can be quickly and accurately determined.

Description

视频质量问题确定方法、装置、存储介质及程序产品Video quality problem determination method, device, storage medium and program product
本申请要求于2021年8月27日提交中国专利局、申请号为202110993951.3、申请名称为“视频质量问题确定方法、装置、存储介质及程序产品”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。This application claims the priority of the Chinese patent application with the application number 202110993951.3 and the application name "Video Quality Problem Determining Method, Device, Storage Medium, and Program Product" submitted to the China Patent Office on August 27, 2021, the entire content of which is passed References are incorporated in this application.
技术领域technical field
本申请涉及视频质量检测领域,尤其涉及一种视频质量问题确定方法、装置、存储介质及程序产品。The present application relates to the field of video quality detection, and in particular to a video quality problem determination method, device, storage medium and program product.
背景技术Background technique
5G技术相较4G具备大带宽、低时延的优势,因此可以为高清视频直播、摄像头实时监控、无人机拍摄等需要实时传输视频流媒体的视频回传场景提供技术支持。Compared with 4G, 5G technology has the advantages of large bandwidth and low latency, so it can provide technical support for high-definition video live broadcast, real-time camera monitoring, drone shooting and other video return scenarios that require real-time transmission of video streaming media.
视频回传是一种基于流媒体的实时业务场景。以高清视频直播为例,经过摄像头等设备完成视频采集后得到视频帧,视频帧通过编码器/背包服务器等完成视频编码压缩,压缩后的视频帧通过流媒体层协议封装生成直播流,直播流经过网络设备传输到视频服务器,并通过解封装和解码后由视频播放器进行画面渲染并显示。Video backhaul is a real-time business scenario based on streaming media. Taking high-definition video live broadcast as an example, video frames are obtained after video capture by cameras and other equipment, and video frames are encoded and compressed by encoders/backpack servers, etc., compressed video frames are encapsulated by streaming media layer protocols to generate live streams, live streams It is transmitted to the video server through the network equipment, and after decapsulation and decoding, the video player renders and displays the picture.
伴随着视频回传场景的应用普及,产生了在该场景下视频质量问题的定位分析需求。其中,视频质量问题包括:卡顿、花屏等在用户观看视频过程中可能出现的、导致用户体验差的问题。其中,上述卡顿、花屏等问题是由视频帧的异常引发的,而可能有多个设备参与了视频帧采集到编码、封装、传输、解封装、解码的过程。为了提升用户体验,需要对导致视频出现质量问题的设备以及该设备使得视频出现质量问题的具体原因进行定位。现有的技术尚不能迅速、准确的完成导致视频质量问题的原因及设备的确定。With the popularization of the application of video backhaul scenarios, there is a need for location analysis of video quality problems in this scenario. Among them, video quality problems include: freezing, blurred screen and other problems that may occur when users watch videos and lead to poor user experience. Among them, the above-mentioned problems such as freezing and blurring are caused by the abnormality of the video frame, and there may be multiple devices involved in the process of video frame collection, encoding, packaging, transmission, decapsulation, and decoding. In order to improve user experience, it is necessary to locate the device that causes the video quality problem and the specific reason why the device causes the video quality problem. Existing technologies are still unable to quickly and accurately complete the determination of the causes and equipment that lead to video quality problems.
发明内容Contents of the invention
有鉴于此,提出了一种视频质量问题确定方法、装置、存储介质及程序产品,根据本申请实施例的视频质量问题确定方法、装置、存储介质及程序产品,可以迅速、准确的完成导致视频质量问题的原因及设备的确定。In view of this, a method, device, storage medium, and program product for determining video quality problems are proposed. According to the method, device, storage medium, and program product for determining video quality problems in the embodiments of the present application, it is possible to quickly and accurately complete the video quality problem. Causes of quality problems and determination of equipment.
第一方面,本申请的实施例提供了一种视频质量问题确定方法,所述方法包括:接收视频播放端和网络设备上的协议信息,所述网络设备用于将视频数据传输至视频播放端,所述协议信息指示视频帧的发送方式,所述视频帧包括多个数据包;根据所述协议信息确定异常的帧质量参数以及异常的包质量参数,所述异常的帧质量参数表示所述异常的帧质量参数所属的视频帧的质量异常,所述异常的包质量参数表示所述异常的包质量参数所属的数据包的质量异常;根据所述异常的帧质量参数和/或所述异常的包质量参数确定导致视频播放端视频质量异常的原因及设备。In the first aspect, the embodiments of the present application provide a method for determining video quality problems, the method comprising: receiving protocol information on the video player and the network device, and the network device is used to transmit video data to the video player , the protocol information indicates the transmission mode of the video frame, and the video frame includes a plurality of data packets; an abnormal frame quality parameter and an abnormal packet quality parameter are determined according to the protocol information, and the abnormal frame quality parameter indicates the The quality of the video frame to which the abnormal frame quality parameter belongs is abnormal, and the abnormal packet quality parameter indicates that the quality of the data packet to which the abnormal packet quality parameter belongs is abnormal; according to the abnormal frame quality parameter and/or the abnormal Determine the cause and device of the abnormal video quality at the video playback end.
根据本申请的视频质量问题确定方法,通过接收视频播放端发送的协议信息和用于将视频数据传输至视频播放端的网络设备发送的协议信息,使得根据协议信息可以确定视频帧和视频帧包括的多个数据包的发送方式,进而能够确定异常的帧质量参数以及异常的包质量参 数。由于异常的帧质量参数表示所属的视频帧的质量异常,异常的包质量参数表示所属的数据包的质量异常,且视频质量与视频帧以及数据包具有关联关系,因此异常的帧质量参数和异常的包质量参数与出现的视频质量异常相关联,使得根据异常的帧质量参数和异常的包质量参数,可以确定导致视频播放端视频质量异常的原因及设备。本申请的视频质量问题确定方法通过帧级别的异常的帧质量参数和包级别的异常的包质量参数联合确定导致视频播放端视频质量异常的原因及设备,可以降低完成一次原因及设备的确定的时间成本,并提高确定的原因及设备的准确度。According to the method for determining video quality problems of the present application, by receiving the protocol information sent by the video playback end and the protocol information sent by the network device used to transmit video data to the video playback end, the video frame and the content included in the video frame can be determined according to the protocol information. The transmission mode of multiple data packets can further determine abnormal frame quality parameters and abnormal packet quality parameters. Because the abnormal frame quality parameter indicates that the quality of the video frame to which it belongs is abnormal, and the abnormal packet quality parameter indicates that the quality of the data packet to which it belongs is abnormal, and the video quality is associated with the video frame and the data packet, so the abnormal frame quality parameter and the abnormal The packet quality parameter is associated with the abnormal video quality, so that according to the abnormal frame quality parameter and the abnormal packet quality parameter, the cause and equipment that cause the abnormal video quality of the video player can be determined. The video quality problem determination method of the present application jointly determines the cause and equipment that cause the video quality abnormality at the video playback end through abnormal frame quality parameters at the frame level and abnormal packet quality parameters at the packet level, which can reduce the cost of completing the determination of the cause and equipment once. Time cost, and improve the accuracy of determining the cause and equipment.
根据本申请的视频质量问题确定方法,使得在某些设备上只能获取净荷头的时候,也能根据净荷头提取协议信息,准确确定导致视频播放端视频质量异常的原因及设备,可以扩大视频质量问题确定方法的适用范围。According to the method for determining the video quality problem of the present application, when only the payload header can be obtained on some devices, the protocol information can also be extracted according to the payload header, and the cause and device that cause the video quality abnormality at the video playback end can be accurately determined. Expand the applicability of methods for determining video quality issues.
根据第一方面,在所述视频质量问题确定方法的第一种可能的实现方式中,所述协议信息包括数据包的流媒体层协议信息、网络层协议信息和传输层协议信息,所述流媒体层协议信息包括视频播放端上的数据包的流媒体层协议信息,所述网络层协议信息包括网络设备上以及视频播放端上的数据包的网络层协议信息,所述传输层协议信息包括网络设备上以及视频播放端上的数据包的传输层协议信息,所述根据所述协议信息确定异常的帧质量参数以及异常的包质量参数包括:根据所述流媒体层协议信息,确定至少一个视频帧和所述至少一个视频帧中各帧对应的各数据包;根据所述流媒体层协议信息和所述网络层协议信息,确定所述至少一个视频帧中各帧的帧质量参数;根据所述网络层协议信息和所述传输层协议信息,确定所述至少一个视频帧中各帧对应的各数据包的包质量参数;根据所述至少一个视频帧中各帧对应的帧质量参数以及帧质量参数阈值,确定所述异常的帧质量参数,根据所述至少一个视频帧中各帧对应的各数据包的包质量参数以及包质量参数阈值,确定所述异常的包质量参数。According to the first aspect, in the first possible implementation of the method for determining video quality problems, the protocol information includes streaming media layer protocol information, network layer protocol information, and transport layer protocol information of data packets, and the stream The media layer protocol information includes the streaming media layer protocol information of the data packet on the video playback end, the network layer protocol information includes the network layer protocol information of the data packet on the network device and the video playback end, and the transport layer protocol information includes The transport layer protocol information of the data packet on the network device and on the video playback end, said determining abnormal frame quality parameters and abnormal packet quality parameters according to the protocol information includes: determining at least one according to the streaming media layer protocol information The video frame and each data packet corresponding to each frame in the at least one video frame; according to the streaming media layer protocol information and the network layer protocol information, determine the frame quality parameters of each frame in the at least one video frame; according to The network layer protocol information and the transport layer protocol information determine the packet quality parameters of each data packet corresponding to each frame in the at least one video frame; according to the frame quality parameters corresponding to each frame in the at least one video frame and The frame quality parameter threshold determines the abnormal frame quality parameter, and determines the abnormal packet quality parameter according to the packet quality parameter of each data packet corresponding to each frame in the at least one video frame and the packet quality parameter threshold.
通过这种方式,可以实现通过不同的协议信息的组合来确定帧质量参数和包质量参数,以体现视频帧的质量和视频帧下的数据包的质量。帧质量参数和包质量参数是否异常可以分别通过帧质量参数阈值与包质量参数阈值确定,使得确定异常的帧质量参数和异常的包质量参数的方式更为便捷。In this way, the frame quality parameter and the packet quality parameter can be determined through the combination of different protocol information, so as to reflect the quality of the video frame and the quality of the data packets under the video frame. Whether the frame quality parameter and the packet quality parameter are abnormal can be determined by the frame quality parameter threshold and the packet quality parameter threshold respectively, making it more convenient to determine the abnormal frame quality parameter and the abnormal packet quality parameter.
根据第一方面的第一种可能的实现方式,在所述视频质量问题确定方法的第二种可能的实现方式中,所述根据所述至少一个视频帧中各帧对应的帧质量参数以及帧质量参数阈值,确定所述异常的帧质量参数,根据所述至少一个视频帧中各帧对应的各数据包的包质量参数以及包质量参数阈值,确定所述异常的包质量参数,包括:针对所述至少一个视频帧的每一帧,将该视频帧的帧质量参数中,数值大于所述帧质量参数阈值的帧质量参数,确定为所述异常的帧质量参数;针对所述至少一个视频帧的每一帧,将该视频帧对应的数据包的包质量参数中,数值大于所述包质量参数阈值的包质量参数,确定为所述异常的包质量参数。According to the first possible implementation of the first aspect, in the second possible implementation of the method for determining video quality problems, according to the frame quality parameters corresponding to each frame in the at least one video frame and the frame A quality parameter threshold, determining the abnormal frame quality parameter, determining the abnormal packet quality parameter according to the packet quality parameter and the packet quality parameter threshold of each data packet corresponding to each frame in the at least one video frame, including: For each frame of the at least one video frame, among the frame quality parameters of the video frame, the frame quality parameter whose value is greater than the frame quality parameter threshold is determined as the abnormal frame quality parameter; for the at least one video frame For each frame, among the packet quality parameters of the data packets corresponding to the video frame, the packet quality parameter whose value is greater than the packet quality parameter threshold is determined as the abnormal packet quality parameter.
通过这种方式,可以确定异常的帧质量参数和包质量参数。采用参数数值与阈值进行比较的方式确定异常参数,可以准确、快速地完成异常参数的确定。In this way, abnormal frame quality parameters and packet quality parameters can be determined. Abnormal parameters are determined by comparing parameter values with threshold values, and the determination of abnormal parameters can be completed accurately and quickly.
根据第一方面的第一种或第二种可能的实现方式,在所述视频质量问题确定方法的第三种可能的实现方式中,所述数据包的流媒体层协议信息包括指示数据包所属的视频帧的帧时间戳,所述数据包的网络层协议信息包括指示数据包的时间的包时间,所述帧质量参数包括帧首包抖动参数和帧尾包抖动参数,所述帧首包抖动参数表示视频帧对应的第一个数据包的 时延抖动情况,所述帧尾包抖动参数表示视频帧对应的最后一个数据包的时延抖动情况,所述根据所述流媒体层协议信息和所述网络层协议信息,确定所述至少一个视频帧中各帧的帧质量参数,包括:针对所述至少一个视频帧的每一帧,根据该视频帧对应的数据包的包时间确定该视频帧的首包到达时间和尾包到达时间,所述首包到达时间表示视频帧对应的第一个数据包的到达时间,所述尾包到达时间表示视频帧对应的最后一个数据包的到达时间;根据所述首包到达时间、尾包到达时间,分别计算相邻视频帧的首包间隔和尾包间隔,所述首包间隔表示相邻视频帧对应的第一个数据包的到达时间差,所述尾包间隔表示相邻视频帧对应的最后一个数据包的到达时间差;根据所述帧时间戳,分别计算相邻视频帧的帧间隔;根据所述首包间隔、帧间隔,以及前一视频帧的帧首包抖动参数,计算当前视频帧的帧首包抖动参数;根据所述尾包间隔、帧间隔,以及前一视频帧的帧尾包抖动参数,计算当前视频帧的帧尾包抖动参数。According to the first or second possible implementation of the first aspect, in the third possible implementation of the method for determining video quality problems, the streaming media layer protocol information of the data packet includes The frame time stamp of the video frame, the network layer protocol information of the data packet includes the packet time indicating the time of the data packet, the frame quality parameter includes a frame header jitter parameter and a frame tail packet jitter parameter, and the frame header packet The jitter parameter represents the delay jitter situation of the first data packet corresponding to the video frame, and the frame tail packet jitter parameter represents the delay jitter situation of the last data packet corresponding to the video frame, and the described stream media layer protocol information according to the and the network layer protocol information, determining the frame quality parameters of each frame in the at least one video frame includes: for each frame of the at least one video frame, determining the frame quality parameter according to the packet time of the data packet corresponding to the video frame The first packet arrival time and the last packet arrival time of the video frame, the first packet arrival time represents the arrival time of the first data packet corresponding to the video frame, and the tail packet arrival time represents the arrival of the last data packet corresponding to the video frame Time; according to the arrival time of the first packet and the arrival time of the tail packet, calculate the first packet interval and the tail packet interval of adjacent video frames respectively, and the first packet interval represents the arrival time difference of the first data packet corresponding to the adjacent video frame , the tail packet interval represents the arrival time difference of the last data packet corresponding to the adjacent video frame; according to the frame timestamp, calculate the frame interval of the adjacent video frame respectively; according to the first packet interval, frame interval, and previous The first frame packet jitter parameter of a video frame calculates the first frame packet jitter parameter of the current video frame; according to the tail packet interval, the frame interval, and the frame tail packet jitter parameter of the previous video frame, the frame tail of the current video frame is calculated Packet jitter parameters.
通过这种方式,可以计算得到表示视频帧对应的第一个数据包的时延抖动情况的帧首包抖动参数,以及表示视频帧对应的最后一个数据包的时延抖动情况的帧尾包抖动参数,在表征视频帧质量的同时,提升了视频帧的帧质量参数与视频帧的实际的抖动情况的接近程度。In this way, the first frame packet jitter parameter representing the delay jitter of the first data packet corresponding to the video frame and the frame end packet jitter representing the delay jitter of the last data packet corresponding to the video frame can be calculated parameter, while characterizing the quality of the video frame, it improves the closeness between the frame quality parameter of the video frame and the actual jitter of the video frame.
根据第一方面的第一种至第三种可能的实现方式中的任意一种可能的实现方式,在所述视频质量问题确定方法的第四种可能的实现方式中,所述数据包的流媒体层协议信息包括指示数据包在所属的视频帧中的顺序的流媒体层序列号,所述数据包的网络层协议信息包括指示数据包的时间的包时间,所述帧质量参数包括帧丢包参数和帧乱序参数,所述帧丢包参数表示视频帧的数据包的丢失情况,所述帧乱序参数表示视频帧的数据包的乱序情况,所述根据所述流媒体层协议信息和所述网络层协议信息,确定所述至少一个视频帧中各帧的帧质量参数,包括:针对所述至少一个视频帧的每一帧,根据该视频帧对应的数据包的流媒体层序列号,确定该视频帧的帧丢包参数;针对所述至少一个视频帧的每一帧,根据该视频帧对应的数据包的包时间的先后顺序,对该视频帧对应的数据包进行排序,得到该视频帧对应的排序结果,根据所述排序结果以及该视频帧对应的数据包的流媒体层序列号,确定该视频帧的帧乱序参数。According to any one of the first to third possible implementations of the first aspect, in the fourth possible implementation of the method for determining video quality problems, the stream of data packets The media layer protocol information includes a stream media layer sequence number indicating the sequence of the data packet in the video frame to which it belongs, the network layer protocol information of the data packet includes a packet time indicating the time of the data packet, and the frame quality parameter includes a frame loss Packet parameter and frame out-of-sequence parameter, described frame packet loss parameter represents the loss situation of the data packet of video frame, and described frame out-of-sequence parameter represents the out-of-sequence situation of the data packet of video frame, and described according to described streaming media layer protocol Information and the network layer protocol information, determining the frame quality parameters of each frame in the at least one video frame includes: for each frame of the at least one video frame, according to the streaming media layer of the data packet corresponding to the video frame The serial number determines the frame packet loss parameter of the video frame; for each frame of the at least one video frame, sorts the data packets corresponding to the video frame according to the order of packet time of the data packets corresponding to the video frame , obtaining the sorting result corresponding to the video frame, and determining the frame out-of-sequence parameter of the video frame according to the sorting result and the streaming media layer sequence number of the data packet corresponding to the video frame.
通过这种方式,可以计算得到表示视频帧的数据包的丢失情况的帧丢包参数,以及表示视频帧的数据包的乱序情况的帧乱序参数,在表征视频帧质量的同时,提升了帧质量参数的选择的灵活性。In this way, the frame packet loss parameter representing the loss of data packets of the video frame and the frame disorder parameter representing the disorder of the data packets of the video frame can be calculated, which improves the quality of the video frame while characterizing the quality of the video frame. Flexibility in choice of frame quality parameters.
根据第一方面的第四种可能的实现方式,在所述视频质量问题确定方法的第五种可能的实现方式中,所述针对所述至少一个视频帧的每一帧,根据该视频帧对应的数据包的流媒体层序列号,确定该视频帧的帧丢包参数,包括:针对所述至少一个视频帧的每一帧,根据该视频帧对应的数据包的流媒体层序列号,确定该视频帧对应的数据包的流媒体层序列号的最大值、最小值以及流媒体层序列号个数,根据所述流媒体层序列号的最大值、最小值,确定该视频帧对应的数据包个数的理论值,根据该视频帧对应的数据包个数的理论值与该视频帧对应的数据包的流媒体层序列号个数之差,确定所述该视频帧的帧丢包参数;根据所述排序结果以及该视频帧对应的数据包的流媒体层序列号,确定该视频帧的帧乱序参数,包括:当前数据包的流媒体层序列号的数值大于所述排序结果中、所述当前数据包之前的数据包的流媒体层序列号时,根据所述排序结果中当前数据包的排序序号、当前数据包的流媒体层序列号、以及该视频帧对应的数据包的流媒体层序列号的最小值,确定该视频帧对应的帧乱序参 数。According to the fourth possible implementation manner of the first aspect, in the fifth possible implementation manner of the method for determining video quality problems, for each frame of the at least one video frame, according to the corresponding The streaming media layer sequence number of the data packet, determining the frame loss parameter of the video frame includes: for each frame of the at least one video frame, according to the streaming media layer sequence number of the data packet corresponding to the video frame, determining The maximum value of the streaming media layer sequence number of the data packet corresponding to this video frame, the minimum value and the number of streaming media layer sequence numbers, according to the maximum value and minimum value of the streaming media layer sequence number, determine the corresponding data of this video frame The theoretical value of the number of packets, according to the difference between the theoretical value of the number of data packets corresponding to the video frame and the number of streaming media layer serial numbers of the data packets corresponding to the video frame, determine the frame packet loss parameter of the video frame ; According to the sequence number of the streaming media layer of the data packet corresponding to the sorting result and the video frame, determine the frame disorder parameter of the video frame, including: the numerical value of the streaming media layer serial number of the current data packet is greater than that in the sorting result , the streaming media layer serial number of the data packet before the current data packet, according to the sorting serial number of the current data packet in the sorting result, the streaming media layer serial number of the current data packet, and the data packet corresponding to the video frame The minimum value of the serial number of the streaming media layer determines the frame disorder parameter corresponding to the video frame.
通过这种方式,使得帧丢包参数可以体现视频帧中数据包是否丢包的信息,在存在丢包时,还可以体现丢包的个数的信息;使得帧乱序参数可以体现视频帧中数据包是否乱序的信息,在存在乱序时,还可以体现乱序的数据包的乱序深度的信息,从而能够提升根据帧质量参数确定视频帧的质量情况的准确性。In this way, the frame packet loss parameter can reflect the information of whether the data packet in the video frame is lost or not, and when there is a packet loss, it can also reflect the information of the number of the packet loss; the frame disorder parameter can reflect the information in the video frame The information about whether the data packets are out of order can also reflect the information about the out-of-order depth of the out-of-order data packets when there is out-of-order, so that the accuracy of determining the quality of video frames according to the frame quality parameters can be improved.
根据第一方面的第一种至第五种可能的实现方式中的任意一种可能的实现方式,在所述视频质量问题确定方法的第六种可能的实现方式中,所述至少一个视频帧中各帧对应的各数据包的包质量参数根据所述数据包的网络层协议信息以及传输层协议信息确定,所述包质量参数包括:表示当前数据包与前一数据包的时间间隔的包间隔参数、表示当前数据包与前一数据包的时延抖动的包抖动参数、表示数据包乱序情况的乱序参数、表示数据包丢包情况的丢包参数、表示数据包重传情况的重传参数、表示数据包和对应的响应报文的时延情况的时延参数、表示数据包是否存在I P报文分片的I P报文分片参数、表示数据包的校验和是否出现错误的校验和错误参数中的一个或多个。According to any one of the first to fifth possible implementations of the first aspect, in the sixth possible implementation of the method for determining video quality problems, the at least one video frame The packet quality parameters of each data packet corresponding to each frame in the frame are determined according to the network layer protocol information and the transport layer protocol information of the data packet, and the packet quality parameters include: the packet representing the time interval between the current data packet and the previous data packet The interval parameter, the packet jitter parameter indicating the delay jitter between the current data packet and the previous data packet, the out-of-order parameter indicating the disorder of the data packet, the packet loss parameter indicating the packet loss, and the packet retransmission The retransmission parameter, the delay parameter indicating the delay of the data packet and the corresponding response message, the IP packet fragmentation parameter indicating whether there is IP packet fragmentation in the data packet, and whether the checksum of the data packet is One or more of the wrong checksum parameters occurred.
通过这种方式,可以获得用于表征数据包质量的多种包质量参数,通过获取多种包质量参数,使得根据包质量参数确定的数据包质量更接近实际的数据包质量,可以提升后续根据异常的包质量参数和异常的帧质量参数确定导致视频质量问题的原因及设备的准确程度。In this way, a variety of packet quality parameters used to represent the quality of the data packet can be obtained. By obtaining a variety of packet quality parameters, the quality of the data packet determined according to the packet quality parameters is closer to the actual data packet quality, which can improve the subsequent basis. Abnormal Packet Quality Parameters and Abnormal Frame Quality Parameters determine what is causing video quality issues and how accurate the device is.
根据第一方面的第六种可能的实现方式,在所述视频质量问题确定方法的第七种可能的实现方式中,所述根据所述异常的帧质量参数和/或所述异常的包质量参数确定导致视频播放端视频质量异常的原因及设备,包括:针对任一视频帧,所述视频帧的帧质量参数和所述视频帧对应的数据包的包质量参数满足第一条件时,确定导致视频播放端视频质量异常的原因是视频编码问题,确定导致视频播放端视频质量异常的设备是视频编码使用的设备;其中,所述第一条件包括:所述视频帧的帧丢包参数异常且所述视频帧对应的数据包的丢包参数正常,或者所述视频帧的帧乱序参数异常且所述视频帧对应的数据包的乱序参数正常。According to the sixth possible implementation manner of the first aspect, in the seventh possible implementation manner of the method for determining video quality problems, the abnormal frame quality parameter and/or the abnormal packet quality Parameter determination causes the cause and equipment of abnormal video quality at the video playback end, including: for any video frame, when the frame quality parameter of the video frame and the packet quality parameter of the data packet corresponding to the video frame meet the first condition, determine The cause of the abnormal video quality at the video playback end is a video encoding problem, and it is determined that the device causing the abnormal video quality at the video playback end is a device used for video encoding; wherein, the first condition includes: the frame loss parameter of the video frame is abnormal And the packet loss parameter of the data packet corresponding to the video frame is normal, or the frame disorder parameter of the video frame is abnormal and the disorder parameter of the data packet corresponding to the video frame is normal.
由于数据包的协议信息是在网络设备和视频播放端处获取的,因此,帧质量参数和包质量参数可以体现传输过程中的异常情况,帧丢包参数异常表示视频帧下有数据包在传输时处于丢失状态,如果此时视频帧下的数据包的丢包参数正常,表示没有数据包在传输过程中丢失,因此可以确定数据包是在传输前、也即视频编码时丢失;帧乱序参数异常表示视频帧下有数据包在传输时处于乱序状态,如果此时视频帧下的数据包的乱序参数正常,表示数据包在传输过程中没有乱序,因此可以确定数据包是在传输前、也即视频编码时乱序;基于上述原因,第一条件,即所述视频帧的帧丢包参数异常且所述视频帧对应的数据包的丢包参数正常,或者所述视频帧的帧乱序参数异常且所述视频帧对应的数据包的乱序参数正常,能够准确反映出视频编码问题。Since the protocol information of the data packet is obtained at the network device and the video player, the frame quality parameter and the packet quality parameter can reflect the abnormal situation in the transmission process, and the frame packet loss parameter abnormality indicates that there is a data packet under the video frame being transmitted If the packet loss parameter of the data packet under the video frame is normal at this time, it means that no data packet is lost during transmission, so it can be determined that the data packet is lost before transmission, that is, during video encoding; frame disorder Abnormal parameters indicate that there are data packets under the video frame that are out of order during transmission. If the out-of-order parameters of the data packets under the video frame are normal at this time, it means that the data packets are not out of order during transmission, so it can be determined that the data packets are in the out-of-order state. Before transmission, that is, out of order during video encoding; based on the above reasons, the first condition is that the frame packet loss parameter of the video frame is abnormal and the packet loss parameter of the data packet corresponding to the video frame is normal, or the video frame The out-of-sequence parameter of the frame is abnormal and the out-of-order parameter of the data packet corresponding to the video frame is normal, which can accurately reflect the video encoding problem.
根据第一方面的第六种或第七种可能的实现方式,在所述视频质量问题确定方法的第八种可能的实现方式中,所述根据所述异常的帧质量参数和/或所述异常的包质量参数确定导致视频播放端视频质量异常的原因及设备,包括:针对任一视频帧,所述视频帧的帧质量参数和所述视频帧对应的数据包的包质量参数满足第二条件时,确定导致视频播放端视频质量异常的原因是终端参数问题,确定导致视频播放端视频质量异常的设备是视频播放使用的设备;其中,所述第二条件包括:所述视频帧的帧首包抖动参数和帧尾包抖动参数中的任一参数异常且所述视频帧对应的数据包的IP报文分片参数、校验和错误参数中的任一参数异常。According to the sixth or seventh possible implementation manner of the first aspect, in the eighth possible implementation manner of the method for determining a video quality problem, according to the abnormal frame quality parameter and/or the The abnormal packet quality parameter determines the cause and equipment that cause the abnormal video quality of the video player, including: for any video frame, the frame quality parameter of the video frame and the packet quality parameter of the data packet corresponding to the video frame meet the second condition, determine that the cause of the abnormal video quality at the video player end is a terminal parameter problem, and determine that the device causing the abnormal video quality at the video player end is the device used for video playback; wherein, the second condition includes: the frame of the video frame Any parameter in the first packet jitter parameter and the frame tail packet jitter parameter is abnormal, and any parameter in the IP packet fragmentation parameter and the checksum error parameter of the data packet corresponding to the video frame is abnormal.
由于数据包的协议信息是在网络设备和视频播放端处获取的,因此,帧质量参数和包质量参数可以体现传输过程中的异常情况,帧首包抖动参数/帧尾包抖动参数异常表示视频帧下第一个/最后一个数据包在传输时的时延抖动过大,如果此时视频帧下的数据包的I P报文分片参数异常,表示数据包在传输过程中经历了分片,因此可以确定视频播放端的参数配置未能满足数据包在不分片时进行传输的要求;如果此时视频帧下的数据包的校验和错误参数异常,表示数据包在传输过程中未能与视频播放端成功完成校验,因此可以确定视频播放端的参数配置未能满足与数据包成功校验的要求;基于上述原因,第二条件,即所述视频帧的帧首包抖动参数和帧尾包抖动参数中的任一参数异常且所述视频帧对应的数据包的I P报文分片参数、校验和错误参数中的任一参数异常,能够准确反映出终端参数问题。Since the protocol information of the data packet is obtained at the network device and the video player, the frame quality parameter and the packet quality parameter can reflect the abnormal situation in the transmission process, and the abnormality of the first frame packet jitter parameter/frame end packet jitter parameter indicates that the video The delay jitter of the first/last data packet in the frame is too large during transmission. If the IP packet fragmentation parameter of the data packet in the video frame is abnormal at this time, it means that the data packet has experienced fragmentation during transmission. , so it can be determined that the parameter configuration of the video player fails to meet the requirements of data packet transmission without fragmentation; if the checksum error parameter of the data packet under the video frame is abnormal at this time, it means that the data packet failed to The verification with the video playback end is successfully completed, so it can be determined that the parameter configuration of the video playback end fails to meet the requirements for successful verification with the data packet; based on the above reasons, the second condition, that is, the frame header jitter parameters of the video frame and the frame Any parameter in the tail packet jitter parameter is abnormal and any parameter in the IP packet fragmentation parameter and the checksum error parameter of the data packet corresponding to the video frame is abnormal, which can accurately reflect the terminal parameter problem.
根据第一方面的第六种至第八种可能的实现方式中的任意一种可能的实现方式,在所述视频质量问题确定方法的第九种可能的实现方式中,所述根据所述异常的帧质量参数和/或所述异常的包质量参数确定导致视频播放端视频质量异常的原因及设备,包括:针对任一视频帧,所述视频帧的帧质量参数和所述视频帧对应的数据包的包质量参数满足第三条件时,确定导致视频播放端视频质量异常的原因是网络传输问题;其中,所述第三条件包括:所述视频帧的帧丢包参数异常且所述视频帧对应的数据包的丢包参数异常,或者所述视频帧的帧乱序参数异常且所述视频帧对应的数据包的乱序参数异常,或者所述视频帧的帧首包抖动参数和帧尾包抖动参数中的任一参数异常且所述视频帧对应的数据包的包抖动参数、包间隔参数、重传参数、时延参数中的任一参数异常。According to any possible implementation manner of the sixth to eighth possible implementation manners of the first aspect, in the ninth possible implementation manner of the method for determining video quality problems, the The frame quality parameter of the video frame and/or the packet quality parameter of the abnormality determine the cause and equipment that cause the abnormal video quality of the video player, including: for any video frame, the frame quality parameter of the video frame and the corresponding video frame When the packet quality parameter of the data packet satisfies the third condition, it is determined that the cause of the abnormal video quality at the video playback end is a network transmission problem; wherein, the third condition includes: the frame packet loss parameter of the video frame is abnormal and the video frame The packet loss parameter of the data packet corresponding to the frame is abnormal, or the frame out-of-order parameter of the video frame is abnormal and the out-of-order parameter of the data packet corresponding to the video frame is abnormal, or the frame header jitter parameter of the video frame and the frame Any parameter in the last packet jitter parameter is abnormal and any parameter in the packet jitter parameter, packet interval parameter, retransmission parameter, and delay parameter of the data packet corresponding to the video frame is abnormal.
由于数据包的协议信息是在网络设备和视频播放端处获取的,因此,帧质量参数和包质量参数可以体现传输过程中的异常情况,帧丢包参数异常表示视频帧下有数据包在传输时处于丢失状态,如果此时视频帧下的数据包的丢包参数异常,表示有数据包在传输过程中丢失,因此可以确定网络传输存在问题;帧乱序参数异常表示视频帧下有数据包在传输时处于乱序状态,如果此时视频帧下的数据包的乱序参数异常,表示有数据包在传输过程中乱序,因此可以确定网络传输存在问题;基于上述原因,第三条件中的“所述视频帧的帧丢包参数异常且所述视频帧对应的数据包的丢包参数异常,或者所述视频帧的帧乱序参数异常且所述视频帧对应的数据包的乱序参数异常”,能够准确反映出网络传输问题;帧首包抖动参数/帧尾包抖动参数异常表示视频帧下第一个/最后一个数据包在传输时的时延抖动过大,如果此时视频帧下的数据包的包间隔参数异常,表示两个数据包在传输过程中的时间差过大,可以确定网络传输存在问题;如果此时视频帧下的数据包的包抖动参数异常,表示数据包在传输过程中的时延抖动过大,可以确定网络传输存在问题;如果此时视频帧下的数据包的重传参数异常,表示数据包在传输过程中经历多次传输,可以确定网络传输存在问题;如果此时视频帧下的数据包的时延参数异常,表示数据包在传输过程中传输耗时过长,可以确定网络传输存在问题。基于上述原因,第三条件中的“所述视频帧的帧首包抖动参数和帧尾包抖动参数中的任一参数异常且所述视频帧对应的数据包的包抖动参数、包间隔参数、重传参数、时延参数中的任一参数异常”能够准确反映出终端参数问题。Since the protocol information of the data packet is obtained at the network device and the video player, the frame quality parameter and the packet quality parameter can reflect the abnormal situation in the transmission process, and the frame packet loss parameter abnormality indicates that there is a data packet under the video frame being transmitted If the packet loss parameter of the data packet under the video frame is abnormal at this time, it means that there is a data packet lost during transmission, so it can be determined that there is a problem with the network transmission; the abnormal frame disorder parameter indicates that there is a data packet under the video frame It is in an out-of-order state during transmission. If the out-of-order parameters of the data packets under the video frame are abnormal at this time, it means that some data packets are in out-of-order during transmission, so it can be determined that there is a problem in network transmission; based on the above reasons, in the third condition "The frame packet loss parameter of the video frame is abnormal and the packet loss parameter of the data packet corresponding to the video frame is abnormal, or the frame out-of-order parameter of the video frame is abnormal and the out-of-order data packet corresponding to the video frame Abnormal parameter", which can accurately reflect the network transmission problem; the abnormality of the frame first packet jitter parameter/frame end packet jitter parameter indicates that the delay jitter of the first/last data packet under the video frame is too large during transmission. If the packet interval parameter of the data packet under the frame is abnormal, it means that the time difference between the two data packets in the transmission process is too large, and it can be determined that there is a problem in the network transmission; if the packet jitter parameter of the data packet under the video frame is abnormal at this time, it means that the data packet If the delay and jitter in the transmission process is too large, it can be determined that there is a problem in network transmission; if the retransmission parameters of the data packet under the video frame are abnormal at this time, it means that the data packet has undergone multiple transmissions during the transmission process, and it can be determined that there is a network transmission problem. Problem: If the delay parameter of the data packet under the video frame is abnormal at this time, it means that the transmission time of the data packet is too long during the transmission process, and it can be determined that there is a problem with the network transmission. Based on the above reasons, in the third condition "any parameter in the frame header jitter parameter and the frame tail packet jitter parameter of the video frame is abnormal and the packet jitter parameter, the packet interval parameter, and the packet interval parameter of the data packet corresponding to the video frame are Any one of the retransmission parameters and delay parameters is abnormal" can accurately reflect the terminal parameter problem.
根据第一方面的第九种可能的实现方式,在所述视频质量问题确定方法的第十种可能的实现方式中,确定导致视频播放端视频质量异常的原因是网络传输问题后,所述根据所述异常的帧质量参数和/或所述异常的包质量参数确定导致视频播放端视频质量异常的原因及设备,还包括:根据所述数据包的网络层协议信息,确定异常的包质量参数对应的数据包的网 络层序列号;根据所述数据包的传输层协议信息,确定异常的包质量参数对应的数据包的包时间、传输层序列号、校验和;接收网络设备上的网络拓扑数据,根据所述网络拓扑数据确定网络中各数据包的传输路径;根据网络中所述异常的包质量参数对应的数据包的传输路径,找到传输路径上的各网络设备中,包时间、网络层序列号、传输层序列号、校验和均满足条件的数据包;根据找到的满足条件的数据包的包质量参数,从数据包的传输路径上的各网络设备中,确定导致视频播放端视频质量异常的网络设备。According to the ninth possible implementation of the first aspect, in the tenth possible implementation of the method for determining video quality problems, after determining that the cause of abnormal video quality at the video playback end is a network transmission problem, the The abnormal frame quality parameter and/or the abnormal packet quality parameter determine the cause and equipment that cause the abnormal video quality of the video player, and also include: according to the network layer protocol information of the data packet, determine the abnormal packet quality parameter The network layer sequence number of the corresponding data packet; according to the transport layer protocol information of the data packet, determine the packet time, transport layer sequence number, and checksum of the data packet corresponding to the abnormal packet quality parameter; receive the network layer on the network device Topology data, determine the transmission path of each data packet in the network according to the network topology data; according to the transmission path of the data packet corresponding to the abnormal packet quality parameter described in the network, find out the packet time, The data packet whose network layer serial number, transport layer serial number, and checksum all meet the conditions; according to the found packet quality parameters of the data packet that meets the conditions, determine from each network device on the transmission path of the data packet that causes the video to play The network device with abnormal video quality.
每一设备上的数据包的包质量参数可以指示该设备对于该数据包的传输带来的影响,通过找到传输路径上的各网络设备中的对应数据包,使得使用找到的数据包可以统计数据包的传输过程中,不同网络设备对数据包的传输带来的影响,确定导致视频播放端视频质量异常的原因的具体设备。The packet quality parameter of the data packet on each device can indicate the impact of the device on the transmission of the data packet, and by finding the corresponding data packets in each network device on the transmission path, the statistics can be calculated using the found data packets In the process of packet transmission, the impact of different network devices on the transmission of data packets, and determine the specific device that causes the abnormal video quality of the video player.
根据第一方面的第十种可能的实现方式,在所述视频质量问题确定方法的第十一种可能的实现方式中,所述包时间、网络层序列号、传输层序列号、校验和满足的条件包括:包时间与所述异常的包质量参数对应的数据包的包时间之差的绝对值小于预设阈值,并且,网络层序列号、传输层序列号、校验和与所述异常的包质量参数对应的数据包的网络层序列号、传输层序列号、校验和均相同。According to the tenth possible implementation of the first aspect, in the eleventh possible implementation of the method for determining video quality problems, the packet time, network layer sequence number, transport layer sequence number, checksum The conditions to be met include: the absolute value of the difference between the packet time and the packet time of the data packet corresponding to the abnormal packet quality parameter is less than a preset threshold, and the network layer sequence number, the transport layer sequence number, the checksum and the The network layer sequence number, transport layer sequence number, and checksum of the data packets corresponding to the abnormal packet quality parameters are all the same.
通过这种方式,可以找到传输路径上不同的网络设备上的同一数据包。使得对于同一数据包,根据传输路径上的各设备的同一数据包的包质量参数异常情况,可以推断出导致其在不同设备上包质量参数异常的原因是当前设备或者当前设备的上游设备中的一个,通过进一步确定上游设备上包质量参数异常情况,可以准确地确定导致视频播放端视频质量异常的原因是网络传输问题时,导致视频播放端视频质量异常的具体网络设备。In this way, the same data packet on different network devices along the transmission path can be found. For the same data packet, according to the abnormality of the packet quality parameters of the same data packet of each device on the transmission path, it can be inferred that the cause of the abnormality of the packet quality parameters on different devices is the current device or the upstream device of the current device. One, by further determining the abnormality of the packet quality parameters on the upstream device, it can be accurately determined that the cause of the abnormal video quality at the video playback end is a network transmission problem, and the specific network device that causes the abnormal video quality at the video playback end.
根据第一方面的第十种或第十一种可能的实现方式,在所述视频质量问题确定方法的第十二种可能的实现方式中,所述异常的包质量参数对应的数据包有多个时,找到的满足条件的数据包有多组,根据找到的满足条件的数据包的包质量参数,从数据包的传输路径上的各网络设备中,确定导致视频播放端视频质量异常的网络设备,包括:根据多组满足条件的数据包的包质量参数,从数据包的传输路径上的各网络设备中,多次确定可能导致视频播放端视频质量异常的网络设备;统计多次确定的可能导致视频播放端视频质量异常的网络设备中,出现次数最多的网络设备,作为导致视频播放端视频质量异常的网络设备。According to the tenth or eleventh possible implementation of the first aspect, in the twelfth possible implementation of the method for determining video quality problems, how many data packets correspond to the abnormal packet quality parameter When there are multiple groups of data packets that meet the conditions found, according to the packet quality parameters of the data packets that meet the conditions found, from each network device on the transmission path of the data packets, determine the network that causes the abnormal video quality of the video playback end. Equipment, including: according to the packet quality parameters of multiple sets of data packets that meet the conditions, from each network device on the transmission path of the data packet, repeatedly determine the network equipment that may cause abnormal video quality at the video playback end; count the multiple determinations Among the network devices that may cause abnormal video quality at the video playback end, the network device that appears most frequently is the network device that causes abnormal video quality at the video playback end.
通过使用多个数据包在传输路径上的各网络设备上的包质量参数进行多次确定,可以提升确定的导致视频质量异常的网络设备的准确度,从而使得针对确定的导致视频质量异常的网络设备执行对应的解决方案后,因同一设备出现同样问题使得视频质量异常的概率得以降低。By using the packet quality parameters of multiple data packets on each network device on the transmission path to perform multiple determinations, the accuracy of the determined network device that causes abnormal video quality can be improved, so that the determined network that causes abnormal video quality After the device implements the corresponding solution, the probability of abnormal video quality caused by the same problem on the same device is reduced.
第二方面,本申请的实施例提供了一种视频质量问题确定装置,所述装置包括:信息接收模块,用于接收视频播放端和网络设备上的协议信息,所述网络设备用于将视频数据传输至视频播放端,所述协议信息指示视频帧的发送方式,所述视频帧包括多个数据包;参数确定模块,用于根据所述协议信息确定异常的帧质量参数以及异常的包质量参数,所述异常的帧质量参数表示所述异常的帧质量参数所属的视频帧的质量异常,所述异常的包质量参数表示所述异常的包质量参数所属的数据包的质量异常;异常原因确定模块,用于根据所述异常的帧质量参数和/或所述异常的包质量参数确定导致视频播放端视频质量异常的原因及设备。In the second aspect, an embodiment of the present application provides an apparatus for determining a video quality problem, the apparatus including: an information receiving module, configured to receive protocol information on a video player and a network device, and the network device is used to convert the video The data is transmitted to the video player, and the protocol information indicates the sending mode of the video frame, and the video frame includes a plurality of data packets; the parameter determination module is used to determine abnormal frame quality parameters and abnormal packet quality according to the protocol information Parameters, the abnormal frame quality parameter represents the abnormal quality of the video frame to which the abnormal frame quality parameter belongs, and the abnormal packet quality parameter represents the abnormal quality of the data packet to which the abnormal packet quality parameter belongs; abnormal reason The determining module is configured to determine the cause and equipment for abnormal video quality at the video playback terminal according to the abnormal frame quality parameter and/or the abnormal packet quality parameter.
根据第二方面,在所述视频质量问题确定装置的第一种可能的实现方式中,所述协议信 息包括数据包的流媒体层协议信息、网络层协议信息和传输层协议信息,所述流媒体层协议信息包括视频播放端上的数据包的流媒体层协议信息,所述网络层协议信息包括网络设备上以及视频播放端上的数据包的网络层协议信息,所述传输层协议信息包括网络设备上以及视频播放端上的数据包的传输层协议信息,所述根据所述协议信息确定异常的帧质量参数以及异常的包质量参数包括:根据所述流媒体层协议信息,确定至少一个视频帧和所述至少一个视频帧中各帧对应的各数据包;根据所述流媒体层协议信息和所述网络层协议信息,确定所述至少一个视频帧中各帧的帧质量参数;根据所述网络层协议信息和所述传输层协议信息,确定所述至少一个视频帧中各帧对应的各数据包的包质量参数;根据所述至少一个视频帧中各帧对应的帧质量参数以及帧质量参数阈值,确定所述异常的帧质量参数,根据所述至少一个视频帧中各帧对应的各数据包的包质量参数以及包质量参数阈值,确定所述异常的包质量参数。According to the second aspect, in the first possible implementation of the device for determining video quality problems, the protocol information includes streaming media layer protocol information, network layer protocol information, and transport layer protocol information of data packets, and the stream The media layer protocol information includes the streaming media layer protocol information of the data packet on the video playback end, the network layer protocol information includes the network layer protocol information of the data packet on the network device and the video playback end, and the transport layer protocol information includes The transport layer protocol information of the data packet on the network device and on the video playback end, said determining abnormal frame quality parameters and abnormal packet quality parameters according to the protocol information includes: determining at least one according to the streaming media layer protocol information The video frame and each data packet corresponding to each frame in the at least one video frame; according to the streaming media layer protocol information and the network layer protocol information, determine the frame quality parameters of each frame in the at least one video frame; according to The network layer protocol information and the transport layer protocol information determine the packet quality parameters of each data packet corresponding to each frame in the at least one video frame; according to the frame quality parameters corresponding to each frame in the at least one video frame and The frame quality parameter threshold determines the abnormal frame quality parameter, and determines the abnormal packet quality parameter according to the packet quality parameter of each data packet corresponding to each frame in the at least one video frame and the packet quality parameter threshold.
根据第二方面的第一种可能的实现方式,在所述视频质量问题确定装置的第二种可能的实现方式中,所述根据所述至少一个视频帧中各帧对应的帧质量参数以及帧质量参数阈值,确定所述异常的帧质量参数,根据所述至少一个视频帧中各帧对应的各数据包的包质量参数以及包质量参数阈值,确定所述异常的包质量参数,包括:针对所述至少一个视频帧的每一帧,将该视频帧的帧质量参数中,数值大于所述帧质量参数阈值的帧质量参数,确定为所述异常的帧质量参数;针对所述至少一个视频帧的每一帧,将该视频帧对应的数据包的包质量参数中,数值大于所述包质量参数阈值的包质量参数,确定为所述异常的包质量参数。According to the first possible implementation manner of the second aspect, in the second possible implementation manner of the apparatus for determining video quality problems, according to the frame quality parameters corresponding to each frame in the at least one video frame and the frame A quality parameter threshold, determining the abnormal frame quality parameter, determining the abnormal packet quality parameter according to the packet quality parameter and the packet quality parameter threshold of each data packet corresponding to each frame in the at least one video frame, including: For each frame of the at least one video frame, among the frame quality parameters of the video frame, the frame quality parameter whose value is greater than the frame quality parameter threshold is determined as the abnormal frame quality parameter; for the at least one video frame For each frame, among the packet quality parameters of the data packets corresponding to the video frame, the packet quality parameter whose value is greater than the packet quality parameter threshold is determined as the abnormal packet quality parameter.
根据第二方面的第一种或第二种可能的实现方式,在所述视频质量问题确定装置的第三种可能的实现方式中,所述数据包的流媒体层协议信息包括指示数据包所属的视频帧的帧时间戳,所述数据包的网络层协议信息包括指示数据包的时间的包时间,所述帧质量参数包括帧首包抖动参数和帧尾包抖动参数,所述帧首包抖动参数表示视频帧对应的第一个数据包的时延抖动情况,所述帧尾包抖动参数表示视频帧对应的最后一个数据包的时延抖动情况,所述根据所述流媒体层协议信息和所述网络层协议信息,确定所述至少一个视频帧中各帧的帧质量参数,包括:针对所述至少一个视频帧的每一帧,根据该视频帧对应的数据包的包时间确定该视频帧的首包到达时间和尾包到达时间,所述首包到达时间表示视频帧对应的第一个数据包的到达时间,所述尾包到达时间表示视频帧对应的最后一个数据包的到达时间;根据所述首包到达时间、尾包到达时间,分别计算相邻视频帧的首包间隔和尾包间隔,所述首包间隔表示相邻视频帧对应的第一个数据包的到达时间差,所述尾包间隔表示相邻视频帧对应的最后一个数据包的到达时间差;根据所述帧时间戳,分别计算相邻视频帧的帧间隔;根据所述首包间隔、帧间隔,以及前一视频帧的帧首包抖动参数,计算当前视频帧的帧首包抖动参数;根据所述尾包间隔、帧间隔,以及前一视频帧的帧尾包抖动参数,计算当前视频帧的帧尾包抖动参数。According to the first or second possible implementation of the second aspect, in the third possible implementation of the device for determining video quality problems, the streaming media layer protocol information of the data packet includes The frame time stamp of the video frame, the network layer protocol information of the data packet includes the packet time indicating the time of the data packet, the frame quality parameter includes a frame header jitter parameter and a frame tail packet jitter parameter, and the frame header packet The jitter parameter represents the delay jitter situation of the first data packet corresponding to the video frame, and the frame tail packet jitter parameter represents the delay jitter situation of the last data packet corresponding to the video frame, and the described stream media layer protocol information according to the and the network layer protocol information, determining the frame quality parameters of each frame in the at least one video frame includes: for each frame of the at least one video frame, determining the frame quality parameter according to the packet time of the data packet corresponding to the video frame The first packet arrival time and the last packet arrival time of the video frame, the first packet arrival time represents the arrival time of the first data packet corresponding to the video frame, and the tail packet arrival time represents the arrival of the last data packet corresponding to the video frame Time; according to the arrival time of the first packet and the arrival time of the tail packet, calculate the first packet interval and the tail packet interval of adjacent video frames respectively, and the first packet interval represents the arrival time difference of the first data packet corresponding to the adjacent video frame , the tail packet interval represents the arrival time difference of the last data packet corresponding to the adjacent video frame; according to the frame timestamp, calculate the frame interval of the adjacent video frame respectively; according to the first packet interval, frame interval, and previous The first frame packet jitter parameter of a video frame calculates the first frame packet jitter parameter of the current video frame; according to the tail packet interval, the frame interval, and the frame tail packet jitter parameter of the previous video frame, the frame tail of the current video frame is calculated Packet jitter parameters.
根据第二方面的第一种至第三种可能的实现方式中的任意一种可能的实现方式,在所述视频质量问题确定装置的第四种可能的实现方式中,所述数据包的流媒体层协议信息包括指示数据包在所属的视频帧中的顺序的流媒体层序列号,所述数据包的网络层协议信息包括指示数据包的时间的包时间,所述帧质量参数包括帧丢包参数和帧乱序参数,所述帧丢包参数表示视频帧的数据包的丢失情况,所述帧乱序参数表示视频帧的数据包的乱序情况,所述根据所述流媒体层协议信息和所述网络层协议信息,确定所述至少一个视频帧中各帧的帧质量 参数,包括:针对所述至少一个视频帧的每一帧,根据该视频帧对应的数据包的流媒体层序列号,确定该视频帧的帧丢包参数;针对所述至少一个视频帧的每一帧,根据该视频帧对应的数据包的包时间的先后顺序,对该视频帧对应的数据包进行排序,得到该视频帧对应的排序结果,根据所述排序结果以及该视频帧对应的数据包的流媒体层序列号,确定该视频帧的帧乱序参数。According to any one of the first to third possible implementations of the second aspect, in the fourth possible implementation of the device for determining video quality problems, the stream of data packets The media layer protocol information includes a stream media layer sequence number indicating the sequence of the data packet in the video frame to which it belongs, the network layer protocol information of the data packet includes a packet time indicating the time of the data packet, and the frame quality parameter includes a frame loss Packet parameter and frame out-of-sequence parameter, described frame packet loss parameter represents the loss situation of the data packet of video frame, and described frame out-of-sequence parameter represents the out-of-sequence situation of the data packet of video frame, and described according to described streaming media layer protocol Information and the network layer protocol information, determining the frame quality parameters of each frame in the at least one video frame includes: for each frame of the at least one video frame, according to the streaming media layer of the data packet corresponding to the video frame The serial number determines the frame packet loss parameter of the video frame; for each frame of the at least one video frame, sorts the data packets corresponding to the video frame according to the order of packet time of the data packets corresponding to the video frame , obtaining the sorting result corresponding to the video frame, and determining the frame out-of-sequence parameter of the video frame according to the sorting result and the streaming media layer sequence number of the data packet corresponding to the video frame.
根据第二方面的第四种可能的实现方式,在所述视频质量问题确定装置的第五种可能的实现方式中,所述针对所述至少一个视频帧的每一帧,根据该视频帧对应的数据包的流媒体层序列号,确定该视频帧的帧丢包参数,包括:针对所述至少一个视频帧的每一帧,根据该视频帧对应的数据包的流媒体层序列号,确定该视频帧对应的数据包的流媒体层序列号的最大值、最小值以及流媒体层序列号个数,根据所述流媒体层序列号的最大值、最小值,确定该视频帧对应的数据包个数的理论值,根据该视频帧对应的数据包个数的理论值与该视频帧对应的数据包的流媒体层序列号个数之差,确定所述该视频帧的帧丢包参数;根据所述排序结果以及该视频帧对应的数据包的流媒体层序列号,确定该视频帧的帧乱序参数,包括:当前数据包的流媒体层序列号的数值大于所述排序结果中、所述当前数据包之前的数据包的流媒体层序列号时,根据所述排序结果中当前数据包的排序序号、当前数据包的流媒体层序列号、以及该视频帧对应的数据包的流媒体层序列号的最小值,确定该视频帧对应的帧乱序参数。According to the fourth possible implementation of the second aspect, in the fifth possible implementation of the device for determining video quality problems, for each frame of the at least one video frame, according to the corresponding The streaming media layer sequence number of the data packet, determining the frame loss parameter of the video frame includes: for each frame of the at least one video frame, according to the streaming media layer sequence number of the data packet corresponding to the video frame, determining The maximum value of the streaming media layer sequence number of the data packet corresponding to this video frame, the minimum value and the number of streaming media layer sequence numbers, according to the maximum value and minimum value of the streaming media layer sequence number, determine the corresponding data of this video frame The theoretical value of the number of packets, according to the difference between the theoretical value of the number of data packets corresponding to the video frame and the number of streaming media layer serial numbers of the data packets corresponding to the video frame, determine the frame packet loss parameter of the video frame ; According to the sequence number of the streaming media layer of the data packet corresponding to the sorting result and the video frame, determine the frame disorder parameter of the video frame, including: the numerical value of the streaming media layer serial number of the current data packet is greater than that in the sorting result , the streaming media layer serial number of the data packet before the current data packet, according to the sorting serial number of the current data packet in the sorting result, the streaming media layer serial number of the current data packet, and the data packet corresponding to the video frame The minimum value of the serial number of the streaming media layer determines the frame disorder parameter corresponding to the video frame.
根据第二方面的第一种至第五种可能的实现方式中的任意一种可能的实现方式,在所述视频质量问题确定装置的第六种可能的实现方式中,所述至少一个视频帧中各帧对应的各数据包的包质量参数根据所述数据包的网络层协议信息以及传输层协议信息确定,所述包质量参数包括:表示当前数据包与前一数据包的时间间隔的包间隔参数、表示当前数据包与前一数据包的时延抖动的包抖动参数、表示数据包乱序情况的乱序参数、表示数据包丢包情况的丢包参数、表示数据包重传情况的重传参数、表示数据包和对应的响应报文的时延情况的时延参数、表示数据包是否存在IP报文分片的IP报文分片参数、表示数据包的校验和是否出现错误的校验和错误参数中的一个或多个。According to any one possible implementation manner of the first to fifth possible implementation manners of the second aspect, in a sixth possible implementation manner of the apparatus for determining video quality problems, the at least one video frame The packet quality parameters of each data packet corresponding to each frame in the frame are determined according to the network layer protocol information and the transport layer protocol information of the data packet, and the packet quality parameters include: the packet representing the time interval between the current data packet and the previous data packet The interval parameter, the packet jitter parameter indicating the delay jitter between the current data packet and the previous data packet, the out-of-order parameter indicating the disorder of the data packet, the packet loss parameter indicating the packet loss, and the packet retransmission Retransmission parameters, delay parameters indicating the delay of data packets and corresponding response messages, IP packet fragmentation parameters indicating whether there is IP packet fragmentation in data packets, indicating whether there is an error in the checksum of data packets One or more of the checksum error parameters.
根据第二方面的第六种可能的实现方式,在所述视频质量问题确定装置的第七种可能的实现方式中,所述根据所述异常的帧质量参数和/或所述异常的包质量参数确定导致视频播放端视频质量异常的原因及设备,包括:针对任一视频帧,所述视频帧的帧质量参数和所述视频帧对应的数据包的包质量参数满足第一条件时,确定导致视频播放端视频质量异常的原因是视频编码问题,确定导致视频播放端视频质量异常的设备是视频编码使用的设备;其中,所述第一条件包括:所述视频帧的帧丢包参数异常且所述视频帧对应的数据包的丢包参数正常,或者所述视频帧的帧乱序参数异常且所述视频帧对应的数据包的乱序参数正常。According to the sixth possible implementation manner of the second aspect, in the seventh possible implementation manner of the apparatus for determining video quality problems, the abnormal frame quality parameter and/or the abnormal packet quality Parameter determination causes the cause and equipment of abnormal video quality at the video playback end, including: for any video frame, when the frame quality parameter of the video frame and the packet quality parameter of the data packet corresponding to the video frame meet the first condition, determine The cause of the abnormal video quality at the video playback end is a video encoding problem, and it is determined that the device causing the abnormal video quality at the video playback end is a device used for video encoding; wherein, the first condition includes: the frame loss parameter of the video frame is abnormal And the packet loss parameter of the data packet corresponding to the video frame is normal, or the frame disorder parameter of the video frame is abnormal and the disorder parameter of the data packet corresponding to the video frame is normal.
根据第二方面的第六种或第七种可能的实现方式,在所述视频质量问题确定装置的第八种可能的实现方式中,所述根据所述异常的帧质量参数和/或所述异常的包质量参数确定导致视频播放端视频质量异常的原因及设备,包括:针对任一视频帧,所述视频帧的帧质量参数和所述视频帧对应的数据包的包质量参数满足第二条件时,确定导致视频播放端视频质量异常的原因是终端参数问题,确定导致视频播放端视频质量异常的设备是视频播放使用的设备;其中,所述第二条件包括:所述视频帧的帧首包抖动参数和帧尾包抖动参数中的任一参数异常且所述视频帧对应的数据包的IP报文分片参数、校验和错误参数中的任一参数异常。According to the sixth or seventh possible implementation manner of the second aspect, in the eighth possible implementation manner of the apparatus for determining video quality problems, according to the abnormal frame quality parameter and/or the The abnormal packet quality parameter determines the cause and equipment that cause the abnormal video quality of the video player, including: for any video frame, the frame quality parameter of the video frame and the packet quality parameter of the data packet corresponding to the video frame meet the second condition, determine that the cause of the abnormal video quality at the video player end is a terminal parameter problem, and determine that the device causing the abnormal video quality at the video player end is the device used for video playback; wherein, the second condition includes: the frame of the video frame Any parameter in the first packet jitter parameter and the frame tail packet jitter parameter is abnormal, and any parameter in the IP packet fragmentation parameter and the checksum error parameter of the data packet corresponding to the video frame is abnormal.
根据第二方面的第六种至第八种可能的实现方式中的任意一种可能的实现方式,在所述视频质量问题确定装置的第九种可能的实现方式中,所述根据所述异常的帧质量参数和/或所述异常的包质量参数确定导致视频播放端视频质量异常的原因及设备,包括:针对任一视频帧,所述视频帧的帧质量参数和所述视频帧对应的数据包的包质量参数满足第三条件时,确定导致视频播放端视频质量异常的原因是网络传输问题;其中,所述第三条件包括:所述视频帧的帧丢包参数异常且所述视频帧对应的数据包的丢包参数异常,或者所述视频帧的帧乱序参数异常且所述视频帧对应的数据包的乱序参数异常,或者所述视频帧的帧首包抖动参数和帧尾包抖动参数中的任一参数异常且所述视频帧对应的数据包的包抖动参数、包间隔参数、重传参数、时延参数中的任一参数异常。According to any one possible implementation manner of the sixth to eighth possible implementation manners of the second aspect, in the ninth possible implementation manner of the apparatus for determining video quality problems, the The frame quality parameter of the video frame and/or the packet quality parameter of the abnormality determine the cause and equipment that cause the abnormal video quality of the video player, including: for any video frame, the frame quality parameter of the video frame and the corresponding video frame When the packet quality parameter of the data packet satisfies the third condition, it is determined that the cause of the abnormal video quality at the video playback end is a network transmission problem; wherein, the third condition includes: the frame packet loss parameter of the video frame is abnormal and the video frame The packet loss parameter of the data packet corresponding to the frame is abnormal, or the frame out-of-order parameter of the video frame is abnormal and the out-of-order parameter of the data packet corresponding to the video frame is abnormal, or the frame header jitter parameter of the video frame and the frame Any parameter in the last packet jitter parameter is abnormal and any parameter in the packet jitter parameter, packet interval parameter, retransmission parameter, and delay parameter of the data packet corresponding to the video frame is abnormal.
根据第二方面的第九种可能的实现方式,在所述视频质量问题确定装置的第十种可能的实现方式中,确定导致视频播放端视频质量异常的原因是网络传输问题后,所述根据所述异常的帧质量参数和/或所述异常的包质量参数确定导致视频播放端视频质量异常的原因及设备,还包括:根据所述数据包的网络层协议信息,确定异常的包质量参数对应的数据包的网络层序列号;根据所述数据包的传输层协议信息,确定异常的包质量参数对应的数据包的包时间、传输层序列号、校验和;接收网络设备上的网络拓扑数据,根据所述网络拓扑数据确定网络中各数据包的传输路径;根据网络中所述异常的包质量参数对应的数据包的传输路径,找到传输路径上的各网络设备中,包时间、网络层序列号、传输层序列号、校验和均满足条件的数据包;根据找到的满足条件的数据包的包质量参数,从数据包的传输路径上的各网络设备中,确定导致视频播放端视频质量异常的网络设备。According to the ninth possible implementation manner of the second aspect, in the tenth possible implementation manner of the device for determining video quality problems, after determining that the cause of the abnormal video quality at the video playback end is a network transmission problem, the The abnormal frame quality parameter and/or the abnormal packet quality parameter determine the cause and equipment that cause the abnormal video quality of the video player, and also include: according to the network layer protocol information of the data packet, determine the abnormal packet quality parameter The network layer sequence number of the corresponding data packet; according to the transport layer protocol information of the data packet, determine the packet time, transport layer sequence number, and checksum of the data packet corresponding to the abnormal packet quality parameter; receive the network layer on the network device Topology data, determine the transmission path of each data packet in the network according to the network topology data; according to the transmission path of the data packet corresponding to the abnormal packet quality parameter described in the network, find out the packet time, The data packet whose network layer serial number, transport layer serial number, and checksum all meet the conditions; according to the found packet quality parameters of the data packet that meets the conditions, determine from each network device on the transmission path of the data packet that causes the video to play The network device with abnormal video quality.
根据第二方面的第十种可能的实现方式,在所述视频质量问题确定装置的第十一种可能的实现方式中,所述包时间、网络层序列号、传输层序列号、校验和满足的条件包括:包时间与所述异常的包质量参数对应的数据包的包时间之差的绝对值小于预设阈值,并且,网络层序列号、传输层序列号、校验和与所述异常的包质量参数对应的数据包的网络层序列号、传输层序列号、校验和均相同。According to the tenth possible implementation of the second aspect, in the eleventh possible implementation of the device for determining video quality problems, the packet time, network layer sequence number, transport layer sequence number, checksum The conditions to be met include: the absolute value of the difference between the packet time and the packet time of the data packet corresponding to the abnormal packet quality parameter is less than a preset threshold, and the network layer sequence number, the transport layer sequence number, the checksum and the The network layer sequence number, transport layer sequence number, and checksum of the data packets corresponding to the abnormal packet quality parameters are all the same.
根据第二方面的第十种或第十一种可能的实现方式,在所述视频质量问题确定装置的第十二种可能的实现方式中,所述异常的包质量参数对应的数据包有多个时,找到的满足条件的数据包有多组,根据找到的满足条件的数据包的包质量参数,从数据包的传输路径上的各网络设备中,确定导致视频播放端视频质量异常的网络设备,包括:根据多组满足条件的数据包的包质量参数,从数据包的传输路径上的各网络设备中,多次确定可能导致视频播放端视频质量异常的网络设备;统计多次确定的可能导致视频播放端视频质量异常的网络设备中,出现次数最多的网络设备,作为导致视频播放端视频质量异常的网络设备。According to the tenth or eleventh possible implementation manner of the second aspect, in the twelfth possible implementation manner of the apparatus for determining video quality problems, how many data packets correspond to the abnormal packet quality parameter When there are multiple groups of data packets that meet the conditions found, according to the packet quality parameters of the data packets that meet the conditions found, from each network device on the transmission path of the data packets, determine the network that causes the abnormal video quality of the video playback end. Equipment, including: according to the packet quality parameters of multiple sets of data packets that meet the conditions, from each network device on the transmission path of the data packet, repeatedly determine the network equipment that may cause abnormal video quality at the video playback end; count the multiple determinations Among the network devices that may cause abnormal video quality at the video playback end, the network device that appears most frequently is the network device that causes abnormal video quality at the video playback end.
第三方面,本申请的实施例提供了一种视频质量问题确定装置,包括:处理器;用于存储处理器可执行指令的存储器;其中,处理器被配置为可以执行上述第一方面或者第一方面的多种可能的实现方式中的一种或几种的视频质量问题确定方法。In a third aspect, an embodiment of the present application provides an apparatus for determining a video quality problem, including: a processor; a memory for storing processor-executable instructions; wherein, the processor is configured to execute the above-mentioned first aspect or the first aspect A method for determining a video quality problem in one or several possible implementation manners of one aspect.
第四方面,本申请实施例提供一种非易失性计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述第一方面或者第一方面的多种可能的实现方式中的一种或几种的视频质量问题确定方法。In a fourth aspect, the embodiments of the present application provide a non-volatile computer-readable storage medium, on which computer program instructions are stored, and when the computer program instructions are executed by a processor, the above-mentioned first aspect or multiple aspects of the first aspect are implemented. A method for determining a video quality problem in one or several possible implementation manners.
第五方面,本申请的实施例提供了一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,当所述计算机可读代码在电子设备中 运行时,所述电子设备中的处理器执行上述第一方面或者第一方面的多种可能的实现方式中的一种或几种的视频质量问题确定方法。In the fifth aspect, the embodiments of the present application provide a computer program product, including computer readable code, or a non-volatile computer readable storage medium bearing computer readable code, when the computer readable code is stored in an electronic When running in the device, the processor in the electronic device executes the method for determining a video quality problem in the first aspect or one or more of the multiple possible implementations of the first aspect.
本申请的这些和其他方面在以下(多个)实施例的描述中会更加简明易懂。These and other aspects of the present application will be made more apparent in the following description of the embodiment(s).
附图说明Description of drawings
包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本申请的示例性实施例、特征和方面,并且用于解释本申请的原理。The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate exemplary embodiments, features, and aspects of the application and, together with the specification, serve to explain the principles of the application.
图1示出根据本申请实施例的视频质量问题确定方法的示例性应用场景。Fig. 1 shows an exemplary application scenario of a method for determining a video quality problem according to an embodiment of the present application.
图2示出本申请实施例进行数据流类型的识别的一个示例。FIG. 2 shows an example of identifying data stream types in this embodiment of the present application.
图3示出根据本申请实施例的视频质量问题确定方法的示例性方法示意图。Fig. 3 shows an exemplary method schematic diagram of a method for determining a video quality problem according to an embodiment of the present application.
图4示出根据本申请实施例确定异常的帧质量参数和/或异常的包质量参数的示例性方法示意图。Fig. 4 shows a schematic diagram of an exemplary method for determining an abnormal frame quality parameter and/or an abnormal packet quality parameter according to an embodiment of the present application.
图5示出根据本申请实施例的视频帧和视频帧对应的数据包的确定方法的一个示例。Fig. 5 shows an example of a method for determining a video frame and a data packet corresponding to the video frame according to an embodiment of the present application.
图6示出根据本申请实施例的帧首包抖动参数、帧尾包抖动参数的计算方式的一个示例。FIG. 6 shows an example of a calculation method of a packet jitter parameter at the beginning of a frame and a packet jitter parameter at the end of a frame according to an embodiment of the present application.
图7示出根据本申请实施例的帧丢包参数的计算方式的示例。FIG. 7 shows an example of a calculation manner of a frame packet loss parameter according to an embodiment of the present application.
图8示出根据本申请实施例的帧乱序参数的计算方式的示例。FIG. 8 shows an example of a calculation manner of a frame out-of-sequence parameter according to an embodiment of the present application.
图9示出根据本申请实施例生成的正态分布概率曲线的示例。FIG. 9 shows an example of a normal distribution probability curve generated according to an embodiment of the present application.
图10示出根据本申请实施例实现参数的异常情况确定的示例。Fig. 10 shows an example of realizing abnormal condition determination of parameters according to an embodiment of the present application.
图11示出根据本申请实施例的异常的帧质量参数、异常的包质量参数与导致视频播放端视频质量异常的原因及设备的对应关系的示例性示意图。Fig. 11 shows an exemplary schematic diagram of the correspondence between abnormal frame quality parameters, abnormal packet quality parameters, causes of abnormal video quality at the video player end, and devices according to an embodiment of the present application.
图12示出根据本申请实施例确定导致视频播放端视频质量异常的具体网络设备的一个示例。FIG. 12 shows an example of determining a specific network device that causes abnormal video quality at a video player end according to an embodiment of the present application.
图13示出根据本申请实施例的视频质量问题确定装置的示例性结构示意图。Fig. 13 shows an exemplary structural diagram of an apparatus for determining a video quality problem according to an embodiment of the present application.
图14示出根据本申请实施例的视频质量问题确定装置的示例性结构示意图。Fig. 14 shows an exemplary structural diagram of an apparatus for determining a video quality problem according to an embodiment of the present application.
具体实施方式Detailed ways
以下将参考附图详细说明本申请的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。Various exemplary embodiments, features, and aspects of the present application will be described in detail below with reference to the accompanying drawings. The same reference numbers in the figures indicate functionally identical or similar elements. While various aspects of the embodiments are shown in drawings, the drawings are not necessarily drawn to scale unless specifically indicated.
在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。The word "exemplary" is used exclusively herein to mean "serving as an example, embodiment, or illustration." Any embodiment described herein as "exemplary" is not necessarily to be construed as superior or better than other embodiments.
另外,为了更好的说明本申请,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本申请同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本申请的主旨。In addition, in order to better illustrate the present application, numerous specific details are given in the following specific implementation manners. It will be understood by those skilled in the art that the present application may be practiced without certain of the specific details. In some instances, methods, means, components and circuits well known to those skilled in the art have not been described in detail in order to highlight the gist of the present application.
现有技术中,为实现卡顿、花屏等由视频帧的异常引发的视频质量问题的产生原因定位,提出了一种基于现网(即产生异常的视频帧所处的网络)中设备进行大量的数据采集,然后利用大数据的统计分布,对采集到的数据进行分析,找出导致视频质量问题的原因和设备的方案。该技术方案的具体实现方式如下:In the prior art, in order to locate the causes of video quality problems caused by abnormal video frames, such as stuttering and blurred screens, a device based on the live network (that is, the network where the abnormal video frame is located) is proposed to perform a large number of Data collection, and then use the statistical distribution of big data to analyze the collected data to find out the cause of the video quality problem and the solution of the equipment. The specific implementation of this technical solution is as follows:
通过探针获取和设备上报等数据采集方式,从用户设备(即视频播放设备)获得用户体验数据和资管数据,并通过设备上报的数据采集方式从网络设备上获得网络拓扑数据。其中,用户体验数据包括用户对视频的意见打分平均值(video mean opinion score,vMOS)、卡顿时长、卡顿频次、视频质量切换次数(例如视频显示格式在1080P、720P、360P之间的切换次数)等。用户体验数据用于表征用户在观看视频时的体验观感的好坏,根据用户体验数据可以确定视频播放质量。资管数据包括用户的入网信息。资管数据用于表征用户设备与网络设备之间的连接关系。网络拓扑数据用于表征网络设备之间的连接关系,根据资管数据和网络拓扑数据,可以确定连接到各网络设备上的用户总数。Through data collection methods such as probe acquisition and device reporting, user experience data and asset management data are obtained from user devices (ie, video playback devices), and network topology data is obtained from network devices through data collection methods reported by devices. Among them, the user experience data includes the average video mean opinion score (vMOS), freeze duration, freeze frequency, and video quality switching times (such as switching between 1080P, 720P, and 360P video display formats). times), etc. The user experience data is used to represent the quality of the user's experience and perception when watching a video, and the video playback quality can be determined according to the user experience data. Asset management data includes users' network access information. Asset management data is used to represent the connection relationship between user equipment and network equipment. Network topology data is used to represent the connection relationship between network devices. According to the asset management data and network topology data, the total number of users connected to each network device can be determined.
针对每一网络设备,可以确定该网络设备上,视频播放质量较差的用户数占用户总数的百分比,作为该网络设备的质差率。统计各网络设备的质差率,根据网络设备之间的连接关系,可以确定网络中的网络设备的质差率分布情况。For each network device, the percentage of the number of users with poor video playback quality in the total number of users on the network device may be determined as the poor quality rate of the network device. The poor quality rate of each network device is counted, and the distribution of the poor quality rate of network devices in the network can be determined according to the connection relationship between network devices.
根据确定的各网络设备的质差率和预设阈值,确定体验质量(quality of experience,QoE)。体验质量包括计算质差率的变异系数、质差率的均值等,并通过体验质量来确定问题设备,例如确定质差率的变异系数与预设阈值的偏态分布程度或者质差率的均值与预设阈值的偏态分布程度,并通过偏态分布程度找到导致偏差较大的设备。Quality of experience (QoE) is determined according to the determined poor quality rate of each network device and a preset threshold. The quality of experience includes calculating the coefficient of variation of the poor quality rate, the average value of the poor quality rate, etc., and determining the problem equipment through the quality of experience, such as determining the degree of skewed distribution between the coefficient of variation of the poor quality rate and the preset threshold or the mean value of the poor quality rate The degree of skewed distribution with the preset threshold, and find the equipment that causes a large deviation through the degree of skewed distribution.
根据网络设备之间的连接关系,确定该网络设备是否具有下层网络设备,如没有,则该网络设备就是现有技术的方案确定的导致视频质量问题的网络设备;如有,通过下层网络设备的体验质量进一步确认导致视频质量问题的原因及设备。According to the connection relationship between the network equipment, determine whether the network equipment has a lower-level network equipment, if not, then the network equipment is the network equipment that causes the video quality problem determined by the solution of the prior art; if so, through the lower-level network equipment Quality of Experience further identifies the cause and device causing video quality issues.
现有技术提出的利用大数据的统计分布方案尚有一定缺点。首先,该方案确定一次导致视频质量问题的原因及设备的时间成本较高、方案的实时性较差。其次,该方案需要对视频质量问题多次产生时采集到的数据做总体分析,也就是说,现有技术确定的导致视频质量问题的原因及设备,也是针对多次产生视频质量问题时确定的,而多次产生视频质量问题的原因及设备可能不同。现有技术确定的导致视频质量问题的原因及设备,可能仅是多次产生视频质量问题的原因及设备之一,确定的导致视频质量问题的原因及设备尚不够准确。即使根据确定的导致视频质量问题的原因及设备对该设备进行优化,也无法降低后续再次出现某些同样的视频质量问题的概率。The statistical distribution scheme using big data proposed in the prior art still has certain shortcomings. First of all, the solution determines the cause of the video quality problem and the time cost of the equipment is high, and the real-time performance of the solution is poor. Secondly, this solution requires an overall analysis of the data collected when video quality problems occur multiple times. That is to say, the causes and equipment that lead to video quality problems determined by the existing technology are also determined for multiple video quality problems. , while multiple video quality issues may have different causes and devices. The cause and equipment of the video quality problem determined by the prior art may be only one of the causes and equipment of the video quality problem many times, and the determined cause and equipment of the video quality problem are not accurate enough. Optimizing the device based on the identified cause of the video quality issue and optimizing the device will not reduce the chances of some of the same video quality issues recurring in the future.
综上所述,现有的技术尚不能迅速、准确的完成导致视频质量问题的原因及设备的确定。To sum up, the existing technology is still unable to quickly and accurately complete the determination of the cause of the video quality problem and the device.
为了解决上述技术问题,本申请提供了一种视频质量问题确定方法、装置、存储介质及程序产品,本申请实施例的视频质量问题确定方法能够实现迅速、准确的确定导致视频质量问题的原因及设备。In order to solve the above technical problems, this application provides a video quality problem determination method, device, storage medium, and program product. The video quality problem determination method in the embodiment of the application can quickly and accurately determine the cause and effect of the video quality problem. equipment.
图1示出根据本申请实施例的视频质量问题确定方法的示例性应用场景。Fig. 1 shows an exemplary application scenario of a method for determining a video quality problem according to an embodiment of the present application.
如图1所示,该场景可例如是视频直播场景,该场景可以包括用于提供视频数据的视频提供端、多个用于传输视频数据的网络设备、以及用于为用户展示视频画面的视频播放端。其中,视频提供端可以是具备视频数据采集能力的摄像头等,或者能够接收、存储并输出视频数据的设备。该视频提供端可以对采集到或者接收到的视频数据进行编码,并根据流媒体层协议封装为直播流形式。封装后的视频数据可以通过网络设备进行传输,网络设备可例如包括图1中的无线基站、承载网设备、核心网设备、交换机等。其中无线基站例如可以是5G基站(next generation NB,gNB)等。核心网设备例如可以是统一分布式网关(unified distributed gateway,UDG)等,交换机例如可以是使用某种部署方式的交换机(end of row, EoR)等。视频数据最终输出至视频播放端,视频播放端可例如是手机、平板电脑、笔记本等。在视频播放端上,直播流形式的视频数据可以进行解封装、解码以及画面渲染,使得用户可以通过视频播放端观看视频。As shown in Figure 1, the scene may be, for example, a live video scene, which may include a video provider for providing video data, a plurality of network devices for transmitting video data, and a video server for displaying video images to users. player side. Wherein, the video provider may be a camera capable of collecting video data, or a device capable of receiving, storing and outputting video data. The video provider can encode the collected or received video data, and encapsulate it into a live streaming form according to the streaming media layer protocol. The encapsulated video data may be transmitted through network equipment, and the network equipment may include, for example, the wireless base station, bearer network equipment, core network equipment, switch, etc. in FIG. 1 . The wireless base station may be, for example, a 5G base station (next generation NB, gNB). The core network device may be, for example, a unified distributed gateway (unified distributed gateway, UDG), etc., and the switch may, for example, be a switch (end of row, EoR) using a certain deployment method. The video data is finally output to a video player, which can be, for example, a mobile phone, a tablet computer, a notebook, and the like. On the video player end, the video data in the form of live streaming can be decapsulated, decoded, and rendered, so that users can watch the video through the video player end.
其中,图1的应用场景中还包括用于确定视频质量问题原因及设备的终端设备(或服务器),该终端设备(或服务器)与上述视频提供端、网络设备以及视频播放端可以不同。该终端设备(或服务器)可以包括本申请实施例的视频质量问题确定装置,能够用于执行本申请实施例的视频质量问题确定方法。Wherein, the application scenario in FIG. 1 also includes a terminal device (or server) for determining the cause of the video quality problem and the device, and the terminal device (or server) may be different from the above-mentioned video provider, network device, and video player. The terminal device (or server) may include the apparatus for determining a video quality problem in the embodiment of the present application, which can be used to execute the method for determining a video quality problem in the embodiment of the present application.
其中,终端设备(或服务器)上还可以包括用于从网络设备和视频播放端上采集协议信息的协议信息采集装置,以及包括用于从网络设备上采集网络拓扑数据的拓扑数据采集装置。或者,视频质量问题确定装置、协议信息采集装置、拓扑数据采集装置也可以分别设置在一个单独的终端设备或服务器上,或者三者中的任意两个共同设置在同一终端设备或服务器上。Wherein, the terminal device (or server) may also include a protocol information collection device for collecting protocol information from the network device and the video player, and a topology data collection device for collecting network topology data from the network device. Alternatively, the device for determining video quality problems, the device for collecting protocol information, and the device for collecting topology data can also be respectively set on a single terminal device or server, or any two of the three can be set together on the same terminal device or server.
本领域技术人员应理解,本申请实施例的应用场景中不限于上述设备。例如,连接在网络设备上的视频播放端可以有多个,针对每个视频播放端的视频质量问题,在终端设备(或服务器)上,可以分别执行本申请实施例的视频质量问题确定方法。Those skilled in the art should understand that the application scenarios of the embodiments of the present application are not limited to the foregoing devices. For example, there may be multiple video playback terminals connected to the network device, and for the video quality problem of each video playback terminal, on the terminal device (or server), the method for determining the video quality problem of the embodiment of the present application may be respectively executed.
在一种可能的实现方式中,以图1的应用场景为例,协议信息采集装置、拓扑数据采集装置可以分别采集协议信息和网络拓扑数据。其中,在视频提供端持续不断地输出直播流时,协议信息采集装置可以持续不断地采集视频播放端和网络设备上的协议信息。如果这一过程中,网络设备的连接关系没有变化,拓扑数据采集装置采集一次网络拓扑数据即可。根据视频播放端和网络设备上的协议信息,采用本申请实施例的视频质量问题确定方法可以确定导致视频播放端视频质量异常的原因及设备。In a possible implementation manner, taking the application scenario in FIG. 1 as an example, the protocol information collection device and the topology data collection device may collect protocol information and network topology data respectively. Wherein, when the video provider continuously outputs the live stream, the protocol information collection device can continuously collect the protocol information on the video playback terminal and network equipment. If there is no change in the connection relationship of the network equipment during this process, the topology data collection device only needs to collect the network topology data once. According to the protocol information on the video player and the network device, using the method for determining the video quality problem in the embodiment of the present application can determine the cause of the abnormal video quality of the video player and the device.
下面介绍本申请实施例中协议信息的示例性采集方法。An exemplary collection method of protocol information in the embodiment of the present application is introduced below.
在一种可能的实现方式中,采集协议信息可以基于现有技术来实现。例如,协议信息采集装置首先获取视频播放端和网络设备上的数据流。视频播放端和网络设备上的数据流可能包括视频流(video),也可能包括语音流等其他类型的数据流。协议信息采集装置可以结合流媒体协议对采集到的数据流进行识别,从数据流中获取类型为视频流的数据包。确定类型为视频流的数据后,协议信息采集装置可以进一步根据流媒体层协议、网络层协议、传输层协议等从类型为视频流的数据中获取数据包的流媒体层协议信息、网络层协议信息、传输层协议信息,从而完成协议信息的采集。In a possible implementation manner, collecting protocol information may be implemented based on existing technologies. For example, the device for collecting protocol information firstly obtains data streams on the video playback terminal and network equipment. The data streams on the video playback terminal and the network device may include video streams (video), and may also include other types of data streams such as voice streams. The protocol information collection device can identify the collected data stream in combination with the streaming media protocol, and obtain data packets of the video stream type from the data stream. After determining the data whose type is video stream, the protocol information acquisition device can further obtain the streaming media layer protocol information and network layer protocol information of the data packet from the data whose type is video stream according to the streaming media layer protocol, network layer protocol, transport layer protocol, etc. Information, transport layer protocol information, so as to complete the collection of protocol information.
协议信息的采集,可以通过部署探针实现,或者通过计算机等设备进行网口抓包实现,或者通过网络设备自带的用户跟踪等功能实现。在此以通过探针采集协议信息为例进行介绍。其中,探针可具备深度数据包检测(deep packet inspection,DPI)能力,可以自动实现不同类型的数据流的识别和协议信息的获取。The collection of protocol information can be realized by deploying probes, or through network port packet capture through computers and other equipment, or through functions such as user tracking that come with network equipment. This section uses probes to collect protocol information as an example. Among them, the probe can have deep packet inspection (deep packet inspection, DPI) capability, and can automatically realize the identification of different types of data flows and the acquisition of protocol information.
数据包可包括净荷头(包头)和净荷,其中净荷部分包括数据的具体内容。净荷头包括表示数据包传输方式的协议信息,为了保证数据安全性,在获取协议信息时,可以对数据包进行净荷加密,或者只检测数据包的净荷头(包头)。例如,对于视频播放端上的数据包可检测其流媒体层净荷头、网络层净荷头、传输层净荷头并提取对应的流媒体层协议信息、网络层协议信息、传输层协议信息,对于其他网络设备上的数据包可检测网络层净荷头、传输层净荷头并提取对应的网络层协议信息、传输层协议信息。A data packet may include a payload header (packet header) and a payload, wherein the payload part includes the specific content of the data. The payload header includes protocol information indicating the transmission mode of the data packet. In order to ensure data security, when obtaining the protocol information, the payload of the data packet can be encrypted, or only the payload header (packet header) of the data packet can be detected. For example, for the data packet on the video playback end, its streaming media layer payload header, network layer payload header, and transport layer payload header can be detected and the corresponding streaming media layer protocol information, network layer protocol information, and transport layer protocol information can be extracted , for data packets on other network devices, the network layer payload header and the transport layer payload header can be detected and the corresponding network layer protocol information and transport layer protocol information can be extracted.
举例来说,针对流媒体层净荷头,可以通过应用类型和协议类型的识别实现协议信息提 取。使用态势识别技术(service awareness,SA)可以识别出数据中某条数据流的应用类型。例如,某个用户在某时间段下使用某个应用程序观看视频直播时出现视频质量异常,就可以根据用户身份信息、数据包的时间信息、和/或应用程序类型等,从用户观看视频直播使用的视频播放端上的数据流中获取与视频质量异常相关的、需要进行分析的数据流。默认从针对视频播放端上的所有数据流中获取。对于获取到的数据流,可以使用现有的协议规定的判决方式,从网络层、传输层、流媒体层和应用层等逐层进行数据流类型的识别,确定出数据流中存在的视频流并针对视频流的具体类型进行区分,确定含有视频帧的视频流类型。图2示出本申请实施例进行数据流类型的识别的一个示例。For example, for the payload header of the streaming media layer, protocol information extraction can be realized by identifying the application type and protocol type. The application type of a certain data flow in the data can be identified by using the service awareness (SA) technology. For example, if a user experiences abnormal video quality when using an application to watch a live video at a certain time period, the user can watch the live video from the user according to the user identity information, the time information of the data packet, and/or the type of application, etc. Obtain data streams related to video quality exceptions that need to be analyzed from the data streams on the video playback end. By default, it is obtained from all data streams on the video player. For the obtained data stream, the judgment method specified in the existing protocol can be used to identify the data stream type layer by layer from the network layer, transport layer, streaming media layer and application layer, and determine the video stream existing in the data stream Furthermore, specific types of video streams are distinguished to determine the type of video streams containing video frames. FIG. 2 shows an example of identifying data stream types in this embodiment of the present application.
如图2所示,网络层使用的协议可包括网际互连协议(internet protocol,IP),传输层使用的协议可包括传输控制协议(transmission control protocol,TCP)、以及用户数据报协议(user datagram protocol,UDP)。流媒体层使用的协议可包括实时流传输协议(real time streaming protocol,RTSP)、实时消息传输协议(real time messaging protocol,RTMP)、实时传输协议(real-time transport protocol,RTP)、实时传输控制协议(real-time transport control protocol,RTCP)、基于用户数据报协议的数据传输协议(UDP-based data transfer protocol,UDT)或者安全可靠传输协议(secure reliable transport,SRT)、以及MPEG2传输流(MPEG-2 transport stream,MPEG2-TS)。应用层使用的协议可以包括H.264视频标准协议或H.265视频标准协议。As shown in Figure 2, the protocol used by the network layer can include Internet Protocol (Internet Protocol, IP), and the protocol used by the transport layer can include Transmission Control Protocol (transmission control protocol, TCP) and user datagram protocol (user datagram). protocol, UDP). The protocols used by the streaming media layer may include real-time streaming protocol (real time streaming protocol, RTSP), real-time messaging protocol (real time messaging protocol, RTMP), real-time transport protocol (real-time transport protocol, RTP), real-time transmission control protocol (real-time transport control protocol, RTCP), user datagram protocol-based data transfer protocol (UDP-based data transfer protocol, UDT) or secure reliable transport protocol (secure reliable transport, SRT), and MPEG2 transport stream (MPEG -2 transport stream, MPEG2-TS). The protocol used by the application layer may include the H.264 video standard protocol or the H.265 video standard protocol.
参见图2,根据上述传输层使用的协议、流媒体层使用的协议以及应用层使用的协议,可支持的视频流类型可以包括:TCP+RTMP视频流、TCP+RTSP+RTP视频流、UDP+RTP视频流、UDP+RTP+MPEG2-TS视频流、UDP+SRT/UDT+MPEG2-TS视频流、以及UDP+MPEG2-TS视频流。上述协议还可支持控制流,例如图2中的TCP+RTMP控制流、TCP+RTSP控制流、UDP+RTCP控制流等,控制流不含有视频帧。Referring to Figure 2, according to the protocol used by the above transport layer, the protocol used by the streaming media layer and the protocol used by the application layer, the supported video stream types can include: TCP+RTMP video stream, TCP+RTSP+RTP video stream, UDP+ RTP video stream, UDP+RTP+MPEG2-TS video stream, UDP+SRT/UDT+MPEG2-TS video stream, and UDP+MPEG2-TS video stream. The above protocols can also support control streams, such as TCP+RTMP control streams, TCP+RTSP control streams, UDP+RTCP control streams, etc. in FIG. 2 , and the control streams do not contain video frames.
针对不同的视频流,可以从视频流下的数据包中获取协议信息。其中,协议信息可包括视频流中数据包的网络层协议信息、传输层协议信息、流媒体层协议信息、以及根据校验和(CHECKSUM)的标准计算方法得出的计算后的传输层校验和(下文称为校验和)。For different video streams, the protocol information can be obtained from the data packets under the video stream. Wherein, the protocol information may include the network layer protocol information, the transport layer protocol information, the streaming media layer protocol information of the data packets in the video stream, and the calculated transport layer checksum obtained according to the standard calculation method of checksum (CHECKSUM). and (hereinafter referred to as checksum).
下面介绍本申请实施例中网络拓扑数据的示例性采集方法。An exemplary collection method of network topology data in the embodiment of the present application is introduced below.
举例来说,网络拓扑数据可以从网络设备上采集得到。网络拓扑数据可以包括视频播放端所连接的网络设备所处的网络中,各网络设备的拓扑连接关系或业务路径。其中业务路径表征业务流所经过的网络设备之间的连接关系。使得可以根据网络拓扑数据确定网络设备的上下游关系。For example, network topology data can be collected from network devices. The network topology data may include the topology connection relationship or service path of each network device in the network where the network device connected to the video playback terminal is located. The service path represents the connection relationship between network devices that the service flow passes through. It makes it possible to determine the upstream and downstream relationship of network devices according to the network topology data.
采集得到协议信息和网络拓扑数据后,协议信息采集装置、拓扑数据采集装置可以分别将采集得到的信息或数据传输给视频质量问题确定装置。视频质量问题确定装置使用根据本申请实施例的视频质量问题确定方法。协议信息和网络拓扑数据可以用于确定导致视频播放端视频质量异常的原因及设备。After the protocol information and network topology data are collected, the protocol information collecting device and the topology data collecting device can respectively transmit the collected information or data to the video quality problem determining device. The device for determining a video quality problem uses the method for determining a video quality problem according to an embodiment of the present application. Protocol information and network topology data can be used to determine the cause and equipment that cause abnormal video quality at the video playback end.
图3示出根据本申请实施例的视频质量问题确定方法的示例性方法示意图。Fig. 3 shows an exemplary method schematic diagram of a method for determining a video quality problem according to an embodiment of the present application.
如图3所示,在一种可能的实现方式中,根据本申请实施例的视频质量问题确定方法,包括:As shown in FIG. 3, in a possible implementation manner, the method for determining a video quality problem according to an embodiment of the present application includes:
S1,接收视频播放端和网络设备上的协议信息,所述网络设备用于将视频数据传输至视频播放端,所述协议信息指示视频帧的发送方式,所述视频帧包括多个数据包;S1, receiving protocol information on a video player and a network device, the network device is used to transmit video data to the video player, the protocol information indicates a sending method of a video frame, and the video frame includes a plurality of data packets;
S2,根据所述协议信息确定异常的帧质量参数以及异常的包质量参数,所述异常的帧质量参数表示所述异常的帧质量参数所属的视频帧的质量异常,所述异常的包质量参数表示所述异常的包质量参数所属的数据包的质量异常;S2. Determine an abnormal frame quality parameter and an abnormal packet quality parameter according to the protocol information, the abnormal frame quality parameter indicates that the quality of the video frame to which the abnormal frame quality parameter belongs is abnormal, and the abnormal packet quality parameter Indicating that the quality of the data packet to which the abnormal packet quality parameter belongs is abnormal;
S3,根据所述异常的帧质量参数和/或所述异常的包质量参数确定导致视频播放端视频质量异常的原因及设备。S3. Determine the cause and equipment causing the abnormal video quality at the video playback terminal according to the abnormal frame quality parameter and/or the abnormal packet quality parameter.
根据本申请的视频质量问题确定方法,通过接收视频播放端发送的协议信息和用于将视频数据传输至视频播放端的网络设备发送的协议信息,使得根据协议信息可以确定视频帧和视频帧包括的多个数据包的发送方式,进而能够确定异常的帧质量参数以及异常的包质量参数。由于异常的帧质量参数表示所属的视频帧的质量异常,异常的包质量参数表示所属的数据包的质量异常,且视频质量与视频帧以及数据包具有关联关系,因此异常的帧质量参数和异常的包质量参数与出现的视频质量异常相关联,使得根据异常的帧质量参数和异常的包质量参数,可以确定导致视频播放端视频质量异常的原因及设备。本申请的视频质量问题确定方法通过帧级别的异常的帧质量参数和包级别的异常的包质量参数联合确定导致视频播放端视频质量异常的原因及设备,可以降低完成一次原因及设备的确定的时间成本,并提高确定的原因及设备的准确度。According to the method for determining video quality problems of the present application, by receiving the protocol information sent by the video playback end and the protocol information sent by the network device used to transmit video data to the video playback end, the video frame and the content included in the video frame can be determined according to the protocol information. The transmission mode of multiple data packets can further determine abnormal frame quality parameters and abnormal packet quality parameters. Because the abnormal frame quality parameter indicates that the quality of the video frame to which it belongs is abnormal, and the abnormal packet quality parameter indicates that the quality of the data packet to which it belongs is abnormal, and the video quality is associated with the video frame and the data packet, so the abnormal frame quality parameter and the abnormal The packet quality parameter is associated with the abnormal video quality, so that according to the abnormal frame quality parameter and the abnormal packet quality parameter, the cause and equipment that cause the abnormal video quality of the video player can be determined. The video quality problem determination method of the present application jointly determines the cause and equipment that cause the video quality abnormality at the video playback end through abnormal frame quality parameters at the frame level and abnormal packet quality parameters at the packet level, which can reduce the cost of completing the determination of the cause and equipment once. Time cost, and improve the accuracy of determining the cause and equipment.
根据本申请的视频质量问题确定方法,使得在某些设备上只能获取净荷头的时候,也能根据净荷头提取协议信息,准确确定导致视频播放端视频质量异常的原因及设备,可以扩大视频质量问题确定方法的适用范围。According to the method for determining the video quality problem of the present application, when only the payload header can be obtained on some devices, the protocol information can also be extracted according to the payload header, and the cause and device that cause the video quality abnormality at the video playback end can be accurately determined. Expand the applicability of methods for determining video quality issues.
举例来说,在步骤S1中,可以获取到协议信息。在步骤S2中,可以实现视频帧的识别和视频帧下数据包的提取。针对视频花屏、卡顿等视频质量问题,可以定义帧质量参数来表征视频帧的质量。帧质量参数可以有多个,例如下文中提及的帧首包抖动参数、帧尾包抖动参数、帧丢包参数、帧乱序参数。不同的帧质量参数可以预先设置不同的计算方式,通过帧质量参数的预设计算方式,根据协议信息可以计算得到帧质量参数的数值,并通过帧质量参数阈值对计算得到的帧质量参数的数值进行异常检测,从而确定数值异常的帧质量参数,即异常的帧质量参数。根据异常的帧质量参数,可以进一步确定对应的异常视频帧,以及该异常视频帧下的全部数据包。可以定义包质量参数来表征数据包的质量。包质量参数可以有多个,例如下文中提及的包间隔参数、包抖动参数、丢包参数、乱序参数、重传参数、时延参数、I P报文分片参数、校验和错误参数。不同的包质量参数可以预先设置不同的计算方式,通过包质量参数的预设计算方式,根据协议信息可以计算得到包质量参数的数值,并通过包质量参数阈值对计算得到的包质量参数的数值进行异常检测,从而确定数值异常的包质量参数,即异常的包质量参数。For example, in step S1, protocol information can be obtained. In step S2, the recognition of the video frame and the extraction of the data packets under the video frame can be realized. For video quality problems such as blurred screen and freezing, frame quality parameters can be defined to characterize the quality of video frames. There may be multiple frame quality parameters, such as the first frame packet jitter parameter, frame end packet jitter parameter, frame packet loss parameter, and frame disorder parameter mentioned below. Different frame quality parameters can be preset with different calculation methods. Through the preset calculation method of frame quality parameters, the value of frame quality parameters can be calculated according to the protocol information, and the calculated value of frame quality parameters can be obtained through the frame quality parameter threshold value Anomaly detection is performed to determine frame quality parameters with abnormal values, that is, abnormal frame quality parameters. According to the abnormal frame quality parameter, the corresponding abnormal video frame and all data packets under the abnormal video frame can be further determined. Packet quality parameters can be defined to characterize the quality of data packets. There can be multiple packet quality parameters, such as packet interval parameters, packet jitter parameters, packet loss parameters, out-of-sequence parameters, retransmission parameters, delay parameters, IP packet fragmentation parameters, and checksum errors mentioned below parameter. Different packet quality parameters can be preset with different calculation methods. Through the preset calculation method of packet quality parameters, the value of the packet quality parameter can be calculated according to the protocol information, and the value of the packet quality parameter calculated by the packet quality parameter threshold value Anomaly detection is performed to determine packet quality parameters with abnormal values, that is, abnormal packet quality parameters.
在步骤S3中,根据异常视频帧的异常的帧质量参数与该异常视频帧下的数据包的异常的包质量参数是否满足对应的条件,确定导致视频质量异常的原因及设备。条件可以有多个,例如下文中提及的第一条件、第二条件以及第三条件。其中,在满足不同的条件时,确定的导致视频质量异常的原因及设备可能不同。如果根据确定的导致视频质量异常的原因可以唯一确定导致视频质量异常的设备。例如确定导致视频质量异常的原因是视频编码问题,那么可以唯一确定导致视频质量异常的设备就是视频编码使用的设备。又例如确定导致视频质量异常的原因是终端参数问题,那么可以唯一确定导致视频质量异常的设备就是视频播放使用的设备,也即视频播放端。在此情况下,根据本申请实施例的视频质量问题确定方法已经实 现了确定导致视频质量异常的原因及设备。如果根据确定的导致视频质量异常的原因不能唯一确定导致视频质量异常的设备,例如确定导致视频质量异常的原因是网络传输问题,由于网络传输过程中可能有多个网络设备参与,所以不能唯一确定导致视频质量异常的设备。本申请可以根据异常的包质量参数确定异常数据包,并根据异常数据包的协议信息,找到参与网络传输过程的多个网络设备上,协议信息满足条件的多个数据包,通过找到的多个数据包的包质量参数,分析确定导致视频质量异常的设备。In step S3, according to whether the abnormal frame quality parameters of the abnormal video frame and the abnormal packet quality parameters of the data packets under the abnormal video frame meet the corresponding conditions, determine the cause and equipment causing the abnormal video quality. There may be multiple conditions, such as the first condition, the second condition and the third condition mentioned below. Wherein, when different conditions are met, the determined causes and devices that lead to abnormal video quality may be different. If the device causing the abnormal video quality can be uniquely identified based on the determined cause of the abnormal video quality. For example, if it is determined that the cause of abnormal video quality is a video encoding problem, then the only device that can be determined to cause abnormal video quality is the device used for video encoding. For another example, if it is determined that the cause of abnormal video quality is a terminal parameter problem, then the only device that can be determined to cause abnormal video quality is the device used for video playback, that is, the video playback terminal. In this case, the video quality problem determination method according to the embodiment of the present application has been realized to determine the cause and equipment that lead to abnormal video quality. If the device that causes the abnormal video quality cannot be uniquely determined based on the determined cause of the abnormal video quality, for example, it is determined that the cause of the abnormal video quality is a network transmission problem. Since multiple network devices may participate in the network transmission process, it cannot be uniquely determined. Devices that cause abnormal video quality. This application can determine the abnormal data packets according to the abnormal packet quality parameters, and according to the protocol information of the abnormal data packets, find multiple data packets whose protocol information satisfies the conditions on multiple network devices participating in the network transmission process, and use the found multiple The packet quality parameter of the data packet is analyzed to determine the device causing the abnormal video quality.
其中,执行本申请实施例的视频质量问题确定方法以确定当前一次导致视频播放端视频质量异常的原因及设备时,使用的帧质量参数阈值和包质量参数阈值可以是根据AI模型判定得到的。AI模型可以分别以确定当前一次导致视频播放端视频质量异常的原因及设备之前,一段时间内计算得到的帧质量参数和包质量参数作为样本训练的,可以解决常见的样本需要设置标记和异常样本建模的数据难获取性的问题,降低确定异常的帧质量参数和异常的包质量参数的复杂度。Wherein, when performing the video quality problem determination method of the embodiment of the present application to determine the cause and equipment that caused the video quality abnormality at the video playback end last time, the frame quality parameter threshold and packet quality parameter threshold used may be determined according to the AI model. The AI model can be trained by using the frame quality parameters and packet quality parameters calculated for a period of time before determining the current cause of abnormal video quality at the video playback end and the device as samples, which can solve common samples that need to be marked and abnormal samples The modeled data inaccessibility problem reduces the complexity of determining abnormal frame quality parameters and abnormal packet quality parameters.
由上文描述可知,异常的帧质量参数可以是帧质量参数中的异常参数,异常的包质量参数可以是包质量参数中的异常参数。步骤S2中,可以根据所述协议信息,先确定帧质量参数和包质量参数,再根据帧质量参数和包质量参数确定异常的帧质量参数以及异常的包质量参数。It can be seen from the above description that the abnormal frame quality parameter may be an abnormal parameter among the frame quality parameters, and the abnormal packet quality parameter may be an abnormal parameter among the packet quality parameters. In step S2, the frame quality parameter and the packet quality parameter may be determined first according to the protocol information, and then the abnormal frame quality parameter and the abnormal packet quality parameter are determined according to the frame quality parameter and the packet quality parameter.
图4示出根据本申请实施例确定异常的帧质量参数和/或异常的包质量参数的示例性方法示意图。Fig. 4 shows a schematic diagram of an exemplary method for determining an abnormal frame quality parameter and/or an abnormal packet quality parameter according to an embodiment of the present application.
如图4所示,在一种可能的实现方式中,所述协议信息包括数据包的流媒体层协议信息、网络层协议信息和传输层协议信息,所述流媒体层协议信息包括视频播放端上的数据包的流媒体层协议信息,所述网络层协议信息包括网络设备上以及视频播放端上的数据包的网络层协议信息,所述传输层协议信息包括网络设备上以及视频播放端上的数据包的传输层协议信息,步骤S2包括:As shown in Figure 4, in a possible implementation, the protocol information includes streaming media layer protocol information, network layer protocol information and transport layer protocol information of the data packet, and the streaming media layer protocol information includes the video player The streaming media layer protocol information of the data packet on the network layer protocol information includes the network layer protocol information of the data packet on the network device and the video player end, and the transport layer protocol information includes the network layer protocol information on the network device and the video player end The transport layer protocol information of the data packet, step S2 includes:
S21,根据所述流媒体层协议信息,确定至少一个视频帧和所述至少一个视频帧中各帧对应的各数据包。S21. Determine at least one video frame and each data packet corresponding to each frame in the at least one video frame according to the streaming media layer protocol information.
S22,根据所述流媒体层协议信息和所述网络层协议信息,确定所述至少一个视频帧中各帧的帧质量参数;帧质量参数可包括帧首包抖动参数、帧尾包抖动参数、帧丢包参数、帧乱序参数。S22. Determine the frame quality parameters of each frame in the at least one video frame according to the streaming media layer protocol information and the network layer protocol information; the frame quality parameters may include frame header jitter parameters, frame tail packet jitter parameters, Frame loss parameters, frame disorder parameters.
S23,根据所述网络层协议信息和所述传输层协议信息,确定所述至少一个视频帧中各帧对应的各数据包的包质量参数;包质量参数可包括包间隔参数、包抖动参数、丢包参数、乱序参数、重传参数、时延参数、IP报文分片参数、校验和错误参数。S23. According to the network layer protocol information and the transport layer protocol information, determine the packet quality parameters of each data packet corresponding to each frame in the at least one video frame; the packet quality parameters may include packet interval parameters, packet jitter parameters, Packet loss parameters, out-of-sequence parameters, retransmission parameters, delay parameters, IP packet fragmentation parameters, and checksum error parameters.
S24,根据所述至少一个视频帧中各帧对应的帧质量参数以及帧质量参数阈值,确定所述异常的帧质量参数,根据所述至少一个视频帧中各帧对应的各数据包的包质量参数以及包质量参数阈值,确定所述异常的包质量参数。S24. Determine the abnormal frame quality parameter according to the frame quality parameter corresponding to each frame in the at least one video frame and the frame quality parameter threshold, and according to the packet quality of each data packet corresponding to each frame in the at least one video frame parameter and the packet quality parameter threshold, and determine the abnormal packet quality parameter.
通过这种方式,可以实现通过不同的协议信息的组合来确定帧质量参数和包质量参数,以体现视频帧的质量和视频帧下的数据包的质量。帧质量参数和包质量参数是否异常可以分别通过帧质量参数阈值与包质量参数阈值确定,使得确定异常的帧质量参数和异常的包质量参数的方式更为便捷。In this way, the frame quality parameter and the packet quality parameter can be determined through the combination of different protocol information, so as to reflect the quality of the video frame and the quality of the data packets under the video frame. Whether the frame quality parameter and the packet quality parameter are abnormal can be determined by the frame quality parameter threshold and the packet quality parameter threshold respectively, making it more convenient to determine the abnormal frame quality parameter and the abnormal packet quality parameter.
步骤S21可以基于现有技术来实现。举例来说,在步骤S21中,对于获取的协议信息, 先根据视频流的不同类型(参见上文图2及相关描述)进行视频帧的识别和该视频帧对应的数据包的提取。通用的方法是,根据数据包的流媒体层协议信息找到视频流中具备流媒体类型的数据包(示例参见下文的步骤S211)。从找到的具备流媒体类型的数据包的流媒体层协议信息中提取出流媒体类型的信息(示例参见下文的步骤S212),在流媒体类型为视频的数据包的流媒体层协议信息中获取流媒体层序列号,然后根据流媒体层序列号找到用于计算获得包质量参数的数据包以及这些数据包的帧时间戳。统计所有的用于计算获得包质量参数的数据包的帧时间戳,将具有同样帧时间戳的包,作为所属于同一视频帧的数据包(示例参见下文的步骤S213)。在此情况下,至少一个视频帧中的各帧可以包括具有同样帧时间戳的数据包,不同视频帧中数据包的帧时间戳可以不同,从而可以确定各视频帧和各视频帧对应的各数据包。Step S21 can be implemented based on existing technologies. For example, in step S21, for the acquired protocol information, video frame identification and data packets corresponding to the video frame are extracted according to different types of video streams (see above FIG. 2 and related descriptions). A common method is to find a data packet with a streaming media type in the video stream according to the streaming media layer protocol information of the data packet (see step S211 below for an example). Extract the information of the streaming media type from the streaming media layer protocol information of the data packet with the streaming media type found (see step S212 below for an example), and obtain in the streaming media layer protocol information of the data packet of the video streaming media type The serial number of the streaming media layer, and then according to the serial number of the streaming media layer, the data packets used to calculate and obtain the packet quality parameter and the frame time stamps of these data packets are found. Count the frame time stamps of all data packets used to calculate and obtain the packet quality parameter, and use the packets with the same frame time stamp as the data packets belonging to the same video frame (see step S213 below for an example). In this case, each frame in at least one video frame may include data packets with the same frame time stamp, and the frame time stamps of the data packets in different video frames may be different, so that each video frame and each video frame corresponding to each frame may be determined. data pack.
其中,对于携带MPEG2-TS的视频流(UDP+RTP+MPEG2-TS视频流、UDP+SRT/UDT+MPEG2-TS视频流、UDP+MPEG2-TS视频流),流媒体类型可以通过协议信息中TS头下的Stream type下的值确定。流媒体层序列号可以通过协议信息中Stream type下的值为Video(视频)时的Stream PID的值确定;对于除携带MPEG2-TS的视频流之外的携带RTP的视频流(TCP+RTSP+RTP视频流、UDP+RTP视频流),流媒体类型可以通过协议信息中Payload type下的值确定,流媒体层序列号可以通过Payload type下的值为Video(视频)时的RTP SEQUENCE NUMBER的值确定;对于除携带MPEG2-TS的视频流和携带RTP的视频流之外的携带RTMP的视频流(TCP+RTMP视频流),流媒体类型可以通过协议信息中Type ID下的值确定,流媒体层序列号可以通过Type ID下的值为Video(视频)的数据包中的协议信息确定。Among them, for the video stream carrying MPEG2-TS (UDP+RTP+MPEG2-TS video stream, UDP+SRT/UDT+MPEG2-TS video stream, UDP+MPEG2-TS video stream), the streaming media type can be passed in the protocol information The value under the Stream type under the TS header is determined. Streaming media layer sequence number can be determined by the value of Stream PID when the value under Stream type in the protocol information is Video (video); for the video stream (TCP+RTSP+TCP+RTSP+ RTP video stream, UDP+RTP video stream), the streaming media type can be determined by the value under Payload type in the protocol information, and the serial number of the streaming media layer can be determined by the value of RTP SEQUENCE NUMBER when the value under Payload type is Video (video) Determine; for video streams carrying RTMP (TCP+RTMP video streams) other than video streams carrying MPEG2-TS and video streams carrying RTP, the streaming media type can be determined by the value under Type ID in the protocol information, streaming media The layer sequence number can be determined by the protocol information in the data packet whose value under Type ID is Video (video).
图5示出根据本申请实施例的视频帧和视频帧对应的数据包的确定方法的一个示例。Fig. 5 shows an example of a method for determining a video frame and a data packet corresponding to the video frame according to an embodiment of the present application.
如图5所示,以类型为UDP+RTP+MPEG2-TS的视频流为例,步骤S21的示例性过程如下:As shown in Figure 5, taking the video stream whose type is UDP+RTP+MPEG2-TS as an example, the exemplary process of step S21 is as follows:
S211,在获取到的协议信息中,先根据TS头的TS PID字段的值,确定数据的类型。例如图5中的TS 1#的TS PID字段值为0,表示该TS头所属的TS传输段的数据类型为节目关联表(program association table,PAT)。确定TS传输段的数据类型为节目关联表后,再根据该TS头中的Program Map PID的值确定具备流媒体类型的数据包。例如,图5中TS 1#的Program Map PID字段值为0x0010f。协议信息中,所有包括获取到的Program Map PID值(0x0010f)的TS传输段,例如图5中的TS 8#对应的TS传输段,即为具备流媒体类型的数据包。针对流媒体层协议信息中所有的TS头,都执行上述步骤S211的方法,确定具备流媒体类型的所有数据包。S211. In the obtained protocol information, first determine the data type according to the value of the TS PID field of the TS header. For example, the TS PID field value of TS 1# in FIG. 5 is 0, indicating that the data type of the TS transmission segment to which the TS header belongs is a program association table (program association table, PAT). After determining that the data type of the TS transmission segment is the program association table, then determine the data packet with the streaming media type according to the value of the Program Map PID in the TS header. For example, the Program Map PID field value of TS 1# in Figure 5 is 0x0010f. In the protocol information, all TS transmission segments including the obtained Program Map PID value (0x0010f), such as the TS transmission segment corresponding to TS 8# in Figure 5, are data packets with streaming media type. For all TS headers in the streaming media layer protocol information, the method in the above step S211 is executed to determine all data packets with the streaming media type.
S212,从确定的具备流媒体类型的数据包的TS头中,先根据节目映射表的Stream type确定流媒体类型。例如,由S211描述可知,图5中的TS 8#是具备流媒体类型的数据包的TS头。在TS 8#中,节目映射表(Program Map Table,PMT)的Stream type为Video,表示TS 8#所属的数据包的流媒体类型为视频。确定流媒体类型为视频后,再根据节目映射表的Stream PID的值确定流媒体类型为视频的数据包的流媒体层序列号。例如TS 8#中,PMT的Stream PID字段的值为0x0100,即为TS 8#所属的数据包的流媒体层序列号。协议信息包括获取到的Stream PID值(0x0100)的数据包,即为流媒体类型为视频的数据包。例如图5中的TS 11#、TS 12#、TS 13#、TS 14#对应的数据包,即为流媒体类型为视频的数据包。针对具备流媒体类型的所有数据包的TS头,都执行上述步骤S212的方法,找到流媒体类型为视频的所有数据包。S212. From the TS header of the determined data packet with the streaming media type, first determine the streaming media type according to the Stream type in the program mapping table. For example, it can be known from the description of S211 that TS 8# in Fig. 5 is the TS header of the data packet with streaming media type. In TS 8#, the Stream type of the program mapping table (Program Map Table, PMT) is Video, indicating that the streaming media type of the packet to which TS 8# belongs is video. After determining that the streaming media type is video, then determine the streaming media layer serial number of the data packet that the streaming media type is video according to the value of the Stream PID of the program mapping table. For example, in TS 8#, the value of the Stream PID field of PMT is 0x0100, which is the serial number of the streaming media layer of the data packet to which TS 8# belongs. The protocol information includes the data packet with the obtained Stream PID value (0x0100), that is, the data packet whose streaming media type is video. For example, the data packets corresponding to TS 11#, TS 12#, TS 13#, and TS 14# in Figure 5 are data packets whose streaming media type is video. For the TS headers of all data packets with the streaming media type, the method in the above step S212 is executed to find all the data packets with the streaming media type being video.
S213,将流媒体类型为视频的至少一个TS传输段的数据包,组合或封装得到多个数据包。组合或封装后,每个数据包中包括多个TS传输段,例如,如图5所示,TS 11#、TS 12#对应的数据包进行组合后得到一个数据包。TS 13#、TS 14#对应的数据包进行组合后得到一个数据包。其中,数据包的组合方式可以是随机组合。这些组合或封装后的数据包可以是用于计算获得包质量参数的数据包。根据协议信息,确定协议信息中含有包基本流(Packetized Elementary Stream,PES)头的数据,从PES头中提取解码时间标记(decode time stamp,DTS),并将DTS的单位转换为秒。单位转换后得到的数值即为该数据包的帧时间戳,也即,该数据包所属的视频帧的帧时间戳。由于视频帧的标识为流媒体层的帧时间戳,因此,可以认为具备相同帧时间戳的数据包是所属于同一视频帧的数据包。针对流媒体类型为视频的所有数据包,都执行上述步骤S213的方法,识别不同视频帧并确定不同视频帧对应的各数据包。S213. Combine or encapsulate the data packets of at least one TS transmission segment whose streaming media type is video to obtain multiple data packets. After combination or encapsulation, each data packet includes a plurality of TS transmission segments, for example, as shown in Figure 5, the data packets corresponding to TS 11# and TS 12# are combined to obtain a data packet. Combine the data packets corresponding to TS 13# and TS 14# to get a data packet. Wherein, the combination manner of the data packets may be random combination. These combined or encapsulated data packets may be used to calculate and obtain packet quality parameters. According to the protocol information, it is determined that the protocol information contains the data of the packetized elementary stream (Packetized Elementary Stream, PES) header, and the decoding time stamp (decode time stamp, DTS) is extracted from the PES header, and the unit of DTS is converted into seconds. The value obtained after unit conversion is the frame time stamp of the data packet, that is, the frame time stamp of the video frame to which the data packet belongs. Since the identifier of the video frame is the frame time stamp of the streaming media layer, it can be considered that the data packets with the same frame time stamp belong to the same video frame. For all data packets whose streaming media type is video, the method of step S213 above is executed to identify different video frames and determine the data packets corresponding to different video frames.
步骤S21实现不同视频帧的识别和对应的数据包的确定后,可以进一步确定具有流媒体层的数据包,从数据包的流媒体层获取帧时间戳和流媒体层序列号等,从数据包的传输层获取传输层序列号、校验和、确认报文序列号(ACK Number)等;从数据包的网络层获取网络层序列号、分片标志(Don't Fragment,DF)、包时间等,这些信息可以在计算帧质量参数和包质量参数的过程用使用到。After step S21 realizes the identification of different video frames and the determination of the corresponding data packets, the data packet with the streaming media layer can be further determined, and the frame time stamp and the streaming media layer serial number etc. are obtained from the streaming media layer of the data packet, and the The transport layer obtains the transport layer sequence number, checksum, confirmation message sequence number (ACK Number), etc.; obtains the network layer sequence number, fragmentation flag (Don't Fragment, DF) and packet time from the network layer of the data packet etc. These information can be used in the process of calculating frame quality parameters and packet quality parameters.
本领域技术人员应理解,至少一个视频帧也可以包括通过步骤S21识别到的全部视频帧(流媒体类型为视频的数据包所属的帧)中的部分。可以进一步设置根据视频帧的帧时间戳是否位于同一时间段从识别到的视频帧中筛选得到至少一个视频帧,或者根据识别到的视频帧中数据包的流媒体层序列号从识别到的视频帧确定至少一个视频帧,或者根据预先设置的抽样机制从识别到的视频帧中筛选得到至少一个视频帧。只要满足至少一个视频帧中的数据包的流媒体类型为视频即可,本申请不限制根据流媒体层协议信息,确定至少一个视频帧的具体方式。Those skilled in the art should understand that at least one video frame may also include a part of all video frames identified in step S21 (frames to which data packets whose streaming media type is video belong). It can be further set to filter out at least one video frame from the identified video frames according to whether the frame timestamp of the video frame is in the same time period, or to obtain at least one video frame from the identified video frame according to the streaming layer sequence number of the data packet in the identified video frame The frame determines at least one video frame, or selects at least one video frame from identified video frames according to a preset sampling mechanism. As long as the streaming media type of the data packet in at least one video frame is video, the present application does not limit the specific manner of determining at least one video frame according to the streaming media layer protocol information.
在步骤S22中,对于步骤S21识别到的不同视频帧,根据不同视频帧对应的数据包的流媒体层协议信息和网络层协议信息,得到各视频帧的帧质量参数。视频帧的帧质量参数可例如包括帧首包抖动参数、帧尾包抖动参数、帧丢包参数、帧乱序参数中的一个或多个。结合视频帧的帧质量参数,和视频帧对应的数据包的包质量参数,可以确定导致视频质量问题的原因及设备,例如确定导致视频质量问题的原因是视频编码问题,同时确定导致视频质量问题的设备是视频编码使用的设备,或者,确定导致视频质量问题的原因是视频播放问题,同时确定导致视频质量问题的设备是视频播放使用的设备,或者,确定导致视频质量问题的原因是网络传输问题,同时确定导致视频质量问题的设备是网络设备等等。下面分别针对不同帧质量参数的计算方式进行示例性描述。In step S22, for the different video frames identified in step S21, the frame quality parameters of each video frame are obtained according to the streaming media layer protocol information and the network layer protocol information of the data packets corresponding to the different video frames. The frame quality parameters of the video frame may, for example, include one or more of a frame header packet jitter parameter, a frame tail packet jitter parameter, a frame packet loss parameter, and a frame disorder parameter. Combining the frame quality parameters of the video frame and the packet quality parameters of the data packets corresponding to the video frame, the cause and equipment that cause the video quality problem can be determined, for example, it is determined that the cause of the video quality problem is a video encoding problem, and at the same time, it is determined The device used for video encoding, or, it is determined that the cause of the video quality problem is a video playback problem, and at the same time, it is determined that the device causing the video quality problem is the device used for video playback, or, it is determined that the cause of the video quality problem is network transmission problem while identifying the device causing the video quality issue as a network device, etc. Exemplary descriptions are given below for the calculation manners of different frame quality parameters.
图6示出根据本申请实施例的帧首包抖动参数、帧尾包抖动参数的计算方式的一个示例。FIG. 6 shows an example of a calculation method of a packet jitter parameter at the beginning of a frame and a packet jitter parameter at the end of a frame according to an embodiment of the present application.
在一种可能的实现方式中,所述数据包的流媒体层协议信息包括指示数据包所属的视频帧的帧时间戳。所述数据包的网络层协议信息包括指示数据包的时间的包时间。所述帧质量参数包括帧首包抖动参数和帧尾包抖动参数。所述帧首包抖动参数表示视频帧对应的第一个数据包的时延抖动情况,所述帧尾包抖动参数表示视频帧对应的最后一个数据包的时延抖动情况,In a possible implementation manner, the streaming media layer protocol information of the data packet includes a frame time stamp indicating a video frame to which the data packet belongs. The network layer protocol information of the data packet includes a packet time indicating the time of the data packet. The frame quality parameters include frame header jitter parameters and frame tail packet jitter parameters. The first packet jitter parameter of the frame represents the delay jitter situation of the first data packet corresponding to the video frame, and the frame tail packet jitter parameter represents the delay jitter situation of the last data packet corresponding to the video frame,
步骤S22,包括:Step S22, including:
针对所述至少一个视频帧的每一帧,根据该视频帧对应的数据包的包时间确定该视频帧 的首包到达时间和尾包到达时间。所述首包到达时间表示视频帧对应的第一个数据包的到达时间,所述尾包到达时间表示视频帧对应的最后一个数据包的到达时间;For each frame of the at least one video frame, determine the first packet arrival time and the tail packet arrival time of the video frame according to the packet time of the data packet corresponding to the video frame. The first packet arrival time represents the arrival time of the first data packet corresponding to the video frame, and the tail packet arrival time represents the arrival time of the last data packet corresponding to the video frame;
根据所述首包到达时间、尾包到达时间,分别计算相邻视频帧的首包间隔和尾包间隔。所述首包间隔表示相邻视频帧对应的第一个数据包的到达时间差,所述尾包间隔表示相邻视频帧对应的最后一个数据包的到达时间差。According to the arrival time of the first packet and the arrival time of the last packet, the first packet interval and the last packet interval of adjacent video frames are respectively calculated. The first packet interval represents the arrival time difference of the first data packet corresponding to adjacent video frames, and the last packet interval represents the arrival time difference of the last data packet corresponding to adjacent video frames.
根据所述帧时间戳,分别计算相邻视频帧的帧间隔;According to the frame time stamp, calculate the frame interval of adjacent video frames respectively;
根据所述首包间隔、帧间隔,以及前一视频帧的帧首包抖动参数,计算当前视频帧的帧首包抖动参数;According to the first packet interval, the frame interval, and the first frame packet jitter parameter of the previous video frame, calculate the first frame packet jitter parameter of the current video frame;
根据所述尾包间隔、帧间隔,以及前一视频帧的帧尾包抖动参数,计算当前视频帧的帧尾包抖动参数。According to the trailing packet interval, the frame interval, and the frame trailing packet jitter parameter of the previous video frame, calculate the frame trailing packet jitter parameter of the current video frame.
通过这种方式,可以计算得到表示视频帧对应的第一个数据包的时延抖动情况的帧首包抖动参数,以及表示视频帧对应的最后一个数据包的时延抖动情况的帧尾包抖动参数,在表征视频帧质量的同时,提升了视频帧的帧质量参数与视频帧的实际的抖动情况的接近程度。In this way, the first frame packet jitter parameter representing the delay jitter of the first data packet corresponding to the video frame and the frame end packet jitter representing the delay jitter of the last data packet corresponding to the video frame can be calculated parameter, while characterizing the quality of the video frame, it improves the closeness between the frame quality parameter of the video frame and the actual jitter of the video frame.
举例来说,本申请实施例中的帧首包抖动参数和帧尾包抖动参数,可用于表征视频帧对应的数据包的时延抖动,时延抖动越大的数据包对应的时间上,视频画面花屏、卡顿概率越高。For example, the frame header jitter parameter and frame tail packet jitter parameter in the embodiment of the present application can be used to characterize the delay jitter of the data packet corresponding to the video frame. The higher the probability of picture blurring and freezing.
根据步骤S21得到至少一个视频帧和至少一个视频帧对应的数据包后,帧首包抖动参数和帧尾包抖动参数可以通过以下方式计算:After at least one video frame and at least one data packet corresponding to the video frame are obtained according to step S21, the first frame packet jitter parameter and the frame end packet jitter parameter can be calculated in the following manner:
例如,以图6为例,至少一个视频帧可例如包括4帧,针对视频帧1-4中的每一视频帧,根据该视频帧对应的数据包的网络层协议信息中,指示数据包的时间的包时间,可以将该视频帧对应的数据包中,包时间最早的一个数据包命名为首包,首包的包时间即为首包到达时间。将包时间最晚的一个数据包命名为尾包,尾包的包时间即为尾包到达时间,通过这种方式,可以确定至少一个视频帧中的每一视频帧的首包、首包到达时间、尾包、尾包到达时间。基于此,视频帧1-4的首包到达时间,可以分别记录为T1、T2、T3、T4,视频帧1-4的尾包到达时间,可以分别记录为T1’、T2’、T3’、T4’。For example, taking FIG. 6 as an example, at least one video frame may include 4 frames, for each video frame in video frames 1-4, according to the network layer protocol information of the data packet corresponding to the video frame, the For the packet time of time, among the data packets corresponding to the video frame, the data packet with the earliest packet time can be named as the first packet, and the packet time of the first packet is the arrival time of the first packet. A data packet with the latest packet time is named as the tail packet, and the packet time of the tail packet is the arrival time of the tail packet. In this way, the first packet and the first packet arrival of each video frame in at least one video frame can be determined Time, Tail Packet, Tail Packet Arrival Time. Based on this, the arrival time of the first packet of video frames 1-4 can be recorded as T1, T2, T3, T4 respectively, and the arrival time of the last packet of video frames 1-4 can be recorded as T1', T2', T3', T4'.
根据视频帧1-4中每个视频帧的首包到达时间和尾包到达时间,计算相邻视频帧的首包间隔和尾包间隔,其中,2≤n≤4且为整数时,视频帧n和视频帧n-1的首包间隔Deltan可以通过视频帧n的首包到达时间Tn与视频帧n-1的首包到达时间Tn-1之差来计算,视频帧n和视频帧n-1的尾包间隔Deltan’可以通过视频帧n的尾包到达时间Tn’与视频帧n-1的尾包到达时间Tn-1’之差来计算,n=1时,视频帧1的首包间隔Delta1和尾包间隔Delta1’默认等于0。以图6为例,根据视频帧1-4的首包到达时间T1、T2、T3、T4,可以得到视频帧1的首包间隔Delta1=0,视频帧2和视频帧1的首包间隔Delta2=T2-T1,视频帧3和视频帧2的首包间隔Delta3=T3-T2,视频帧4和视频帧3的首包间隔Delta4=T4-T3。根据视频帧1-4的尾包到达时间T1’、T2’、T3’、T4’,可以得到视频帧1的尾包间隔Delta1’=0,视频帧2和视频帧1的尾包间隔Delta2’=T2’-T1’,视频帧3和视频帧2的尾包间隔Delta3’=T3’-T2’,视频帧4和视频帧3的尾包间隔Delta4’=T4’-T3’。According to the first packet arrival time and the last packet arrival time of each video frame in video frames 1-4, calculate the first packet interval and the last packet interval of adjacent video frames, wherein, when 2≤n≤4 and it is an integer, the video frame The first packet interval Deltan of n and video frame n-1 can be calculated by the difference between the first packet arrival time Tn of video frame n and the first packet arrival time Tn-1 of video frame n-1, video frame n and video frame n- The tail packet interval Delta' of 1 can be calculated by the difference between the tail packet arrival time Tn' of video frame n and the tail packet arrival time Tn-1' of video frame n-1. When n=1, the first packet of video frame 1 The interval Delta1 and the tail packet interval Delta1' are equal to 0 by default. Taking Figure 6 as an example, according to the first packet arrival times T1, T2, T3, and T4 of video frames 1-4, the first packet interval Delta1=0 of video frame 1, and the first packet interval Delta2 of video frame 2 and video frame 1 can be obtained =T2-T1, the first packet interval Delta3 between video frame 3 and video frame 2=T3-T2, the first packet interval Delta4 between video frame 4 and video frame 3=T4-T3. According to the tail packet arrival time T1', T2', T3', T4' of video frames 1-4, the tail packet interval Delta1'=0 of video frame 1, and the tail packet interval Delta2' of video frame 2 and video frame 1 can be obtained =T2'-T1', Delta3'=T3'-T2' between video frame 3 and video frame 2, Delta4'=T4'-T3' between video frame 4 and video frame 3.
针对视频帧1-4中的每一视频帧,根据该视频帧对应的数据包的网络层协议信息中,指示数据包所属的视频帧的帧时间戳,可以计算相邻视频帧的帧间隔。以图6为例,视频帧1-4的帧时间戳,可以分别记录为TS1,TS2,TS3,TS4。2≤n≤4且为整数时,视频帧n和视频 帧n-1的帧间隔Intervaln可以通过视频帧n的帧时间戳TSn与视频帧n-1的帧时间戳TSn-1之差来计算,n=1时,视频帧1的帧间隔Interval1默认等于0。在此情况下,根据视频帧1-4的帧时间戳TS1,TS2,TS3,TS4,可以得到视频1的帧间隔Interval1=0,视频帧2和视频帧1的帧间隔Interval2=TS2-TS1,视频帧3和视频帧2的帧间隔Interval3=TS3-TS2,视频帧4和视频帧3的帧间隔Interval4=TS4-TS3。For each of the video frames 1-4, according to the frame time stamp indicating the video frame to which the data packet belongs in the network layer protocol information of the data packet corresponding to the video frame, the frame interval of adjacent video frames can be calculated. Taking Figure 6 as an example, the frame timestamps of video frames 1-4 can be recorded as TS1, TS2, TS3, and TS4 respectively. When 2≤n≤4 and is an integer, the frame interval between video frame n and video frame n-1 Intervaln can be calculated by the difference between the frame time stamp TSn of video frame n and the frame time stamp TSn-1 of video frame n−1. When n=1, the frame interval Interval1 of video frame 1 is equal to 0 by default. In this case, according to the frame time stamps TS1, TS2, TS3, and TS4 of video frames 1-4, the frame interval Interval1=0 of video 1, the frame interval Interval2=TS2-TS1 of video frame 2 and video frame 1, The frame interval of video frame 3 and video frame 2 is Interval3=TS3-TS2, and the frame interval of video frame 4 and video frame 3 is Interval4=TS4-TS3.
根据视频帧1-4中的每一视频帧与其前一视频帧之间的首包间隔和帧间隔,以及该前一视频帧的帧首包抖动参数,可以计算得到视频帧1-4中的每一视频帧的帧首包抖动参数。视频帧1的帧首包抖动参数默认等于0。除视频帧1外,其他视频帧的帧首包抖动参数的计算方式的一个示例如公式(1)所示:According to the first packet interval and the frame interval between each video frame in the video frame 1-4 and its previous video frame, and the frame first packet jitter parameter of the previous video frame, the video frame 1-4 can be calculated Frame header packet jitter parameters for each video frame. The frame header jitter parameter of video frame 1 is equal to 0 by default. Except for video frame 1, an example of the calculation method of the frame header jitter parameters of other video frames is shown in formula (1):
Jittern=Jittern-1*15/16+(Deltan-Intervaln)*1/16      (1)Jittern=Jittern-1*15/16+(Deltan-Intervaln)*1/16 (1)
公式(1)中,2≤n≤4且为整数,Jittern表示视频帧n的帧首包抖动参数,15/16和1/16为预先设置的控制参数,控制参数的数值可以是通过设置不同的数值对计算得到的帧首包抖动参数(或帧尾包抖动参数)与真实的帧首包抖动(或帧尾包抖动)进行对比后确定的最优参数值,控制参数可以用于表示前一视频帧的帧首包抖动参数(或帧尾包抖动参数)的数值在当前视频帧的帧首包抖动参数(或帧尾包抖动参数)的数值中所占比例。以图6中视频帧1-4的首包间隔和帧间隔为例,结合公式(1)可以得到视频帧1-4的帧首包抖动参数如下:In the formula (1), 2≤n≤4 and is an integer, Jittern represents the frame header jitter parameter of the video frame n, 15/16 and 1/16 are preset control parameters, and the values of the control parameters can be different by setting The optimal parameter value determined after comparing the calculated frame first packet jitter parameter (or frame tail packet jitter parameter) with the real frame first packet jitter (or frame tail packet jitter), the control parameter can be used to represent the previous The ratio of the value of the first packet jitter parameter (or frame end packet jitter parameter) of a video frame to the value of the frame header packet jitter parameter (or frame end packet jitter parameter) of the current video frame. Taking the first packet interval and frame interval of video frames 1-4 in Figure 6 as an example, combined with formula (1), the frame first packet jitter parameters of video frames 1-4 can be obtained as follows:
视频帧1的帧首包抖动参数Jitter1=0;The frame header jitter parameter Jitter1=0 of video frame 1;
视频帧2的帧首包抖动参数Jitter2=Jitter1*15/16+(Delta2-Interval2)*1/16;The frame first packet jitter parameter Jitter2=Jitter1*15/16+(Delta2-Interval2)*1/16 of video frame 2;
视频帧3的帧首包抖动参数Jitter3=Jitter2*15/16+(Delta3-Interval3)*1/16;The frame first packet jitter parameter Jitter3=Jitter2*15/16+(Delta3-Interval3)*1/16 of video frame 3;
视频帧4的帧首包抖动参数Jitter4=Jitter3*15/16+(Delta4-Interval4)*1/16。The frame header jitter parameter of video frame 4 is Jitter4=Jitter3*15/16+(Delta4-Interval4)*1/16.
根据视频帧1-4中的每一视频帧与其前一视频帧之间的尾包间隔和帧间隔,以及该前一视频帧的帧尾包抖动参数,可以计算得到视频帧1-4中的每一视频帧的帧尾包抖动参数。视频帧1的帧尾包抖动参数默认等于0。除视频帧1外,其他视频帧的帧尾包抖动参数的计算方式的一个示例如公式(2)所示:According to the tail packet interval and frame interval between each video frame in the video frame 1-4 and its previous video frame, and the frame tail packet jitter parameter of the previous video frame, the video frame 1-4 can be calculated End-of-frame packet jitter parameters for each video frame. The frame end packet jitter parameter of video frame 1 is equal to 0 by default. Except video frame 1, an example of the calculation method of the frame end packet jitter parameter of other video frames is shown in formula (2):
Jittern’=Jittern-1’*15/16+(Deltan’-Intervaln’)*1/16      (2)Jittern’=Jittern-1’*15/16+(Deltan’-Intervaln’)*1/16 (2)
公式(2)中,2≤n≤4且为整数,Jittern’表示视频帧n的帧尾包抖动参数,15/16和1/16为预先设置的控制参数。以图6中视频帧1-4的尾包间隔和帧间隔为例,结合公式(2)可以得到视频帧1-4的帧尾包抖动参数如下:In formula (2), 2≤n≤4 is an integer, Jittern' represents the frame end packet jitter parameter of video frame n, and 15/16 and 1/16 are preset control parameters. Taking the tail packet interval and frame interval of video frames 1-4 in Figure 6 as an example, combined with formula (2), the frame tail packet jitter parameters of video frames 1-4 can be obtained as follows:
视频帧1的帧尾包抖动参数Jitter1’=0;The frame tail packet jitter parameter Jitter1'=0 of video frame 1;
视频帧1的帧尾包抖动参数Jitter2’=Jitter1’*15/16+(Delta2’-Interval2’)*1/16;The frame end packet jitter parameter Jitter2'=Jitter1'*15/16+(Delta2'-Interval2')*1/16 of the frame tail of video frame 1;
视频帧1的帧尾包抖动参数Jitter3’=Jitter2’*15/16+(Delta3’-Interval3’)*1/16;The frame end packet jitter parameter Jitter3'=Jitter2'*15/16+(Delta3'-Interval3')*1/16 of the frame tail of video frame 1;
视频帧1的帧尾包抖动参数Jitter4’=Jitter3’*15/16+(Delta4’-Interval4’)*1/16。The frame end packet jitter parameter of video frame 1 Jitter4'=Jitter3'*15/16+(Delta4'-Interval4')*1/16.
通过这种方式,可以完成帧首包抖动参数和帧尾包抖动参数的计算。In this way, the calculation of the jitter parameters of the first packet of the frame and the jitter parameters of the last packet of the frame can be completed.
图7和图8分别示出根据本申请实施例的帧丢包参数和帧乱序参数的计算方式的示例。FIG. 7 and FIG. 8 respectively show examples of calculation manners of a frame packet loss parameter and a frame disorder parameter according to an embodiment of the present application.
在一种可能的实现方式中,所述数据包的流媒体层协议信息包括指示数据包在所属的视频帧中的顺序的流媒体层序列号。所述数据包的网络层协议信息包括指示数据包的时间的包时间,所述帧质量参数包括帧丢包参数和帧乱序参数,所述帧丢包参数表示视频帧的数据包的丢失情况,所述帧乱序参数表示视频帧的数据包的乱序情况,In a possible implementation manner, the streaming media layer protocol information of the data packet includes a streaming media layer sequence number indicating a sequence of the data packet in the video frame to which it belongs. The network layer protocol information of the data packet includes the packet time indicating the time of the data packet, and the frame quality parameter includes a frame loss parameter and a frame out-of-sequence parameter, and the frame loss parameter indicates the loss situation of the data packet of the video frame , the frame out-of-sequence parameter represents the out-of-order situation of the data packets of the video frame,
步骤S22,包括:Step S22, including:
针对所述至少一个视频帧的每一帧,根据该视频帧对应的数据包的流媒体层序列号,确定该视频帧的帧丢包参数;For each frame of the at least one video frame, determine the frame packet loss parameter of the video frame according to the streaming layer sequence number of the data packet corresponding to the video frame;
针对所述至少一个视频帧的每一帧,根据该视频帧对应的数据包的包时间的先后顺序,对该视频帧对应的数据包进行排序,得到该视频帧对应的排序结果,根据所述排序结果以及该视频帧对应的数据包的流媒体层序列号,确定该视频帧的帧乱序参数。For each frame of the at least one video frame, sort the data packets corresponding to the video frame according to the packet time sequence of the data packets corresponding to the video frame, and obtain the corresponding sorting result of the video frame, according to the The sorting result and the streaming layer sequence number of the data packet corresponding to the video frame determine the frame out-of-sequence parameter of the video frame.
通过这种方式,可以计算得到表示视频帧的数据包的丢失情况的帧丢包参数,以及表示视频帧的数据包的乱序情况的帧乱序参数,在表征视频帧质量的同时,提升了帧质量参数的选择的灵活性。In this way, the frame packet loss parameter representing the loss of data packets of the video frame and the frame disorder parameter representing the disorder of the data packets of the video frame can be calculated, which improves the quality of the video frame while characterizing the quality of the video frame. Flexibility in choice of frame quality parameters.
举例来说,帧丢包情况可以从数据包的流媒体层角度确定,通过统计流媒体层序列号并进行分析来实现,例如,如图7所示,视频帧2对应的数据包a-i的流媒体层序列号S a-S i可以分别为11、12、13、15、16、17、18、19、20,根据统计得到的流媒体层序列号S a-S i可以分析确定帧丢包情况。其示例性实现方式可参照下文的描述。 For example, the frame loss situation can be determined from the perspective of the streaming media layer of the data packet, and it can be realized by counting the sequence numbers of the streaming media layer and analyzing them. For example, as shown in FIG. The media layer serial numbers S a -S i can be 11, 12, 13, 15, 16, 17, 18, 19, 20 respectively, and the stream media layer serial numbers S a -S i obtained according to the statistics can be analyzed to determine the frame loss Condition. For an exemplary implementation thereof, reference may be made to the description below.
帧乱序情况可以从数据包的流媒体层和网络层的角度确定,通过对数据包按照包时间进行排序得到排序结果,并结合排序结果以及统计的数据包的流媒体层序列号分析确定。例如,如图8所示,视频帧3对应的数据包A-K的流媒体层序列号S A-S K分别为21、22、23、25、26、27、28、24、29、30、31,视频帧3对应的数据包A-K的排序结果可例如为P={A、B、C、D、E、F、G、H、I、J、K},根据排序结果P以及统计得到的流媒体层序列号S A-S K可以分析确定帧丢包情况。其示例性实现方式可参照下文的描述。 Frame out-of-sequence can be determined from the perspective of the streaming media layer and the network layer of the data packet. The sorting result is obtained by sorting the data packets according to the packet time, and combined with the sorting result and the stream media layer sequence number of the statistical data packet to analyze and determine. For example, as shown in Figure 8, the streaming media layer sequence numbers SA - SK of the data packet AK corresponding to the video frame 3 are 21, 22, 23, 25, 26, 27, 28, 24, 29, 30, 31 respectively , the sorting result of the data packet AK corresponding to the video frame 3 can be, for example, P={A, B, C, D, E, F, G, H, I, J, K}, according to the sorting result P and the statistically obtained flow The serial numbers S A -SK of the media layer can analyze and determine the packet loss of the frame. For an exemplary implementation thereof, reference may be made to the description below.
在一种可能的实现方式中,针对所述至少一个视频帧的每一帧,根据该视频帧对应的数据包的流媒体层序列号,确定该视频帧的帧丢包参数,包括:In a possible implementation manner, for each frame of the at least one video frame, determining the frame packet loss parameter of the video frame according to the streaming media layer sequence number of the data packet corresponding to the video frame includes:
针对所述至少一个视频帧的每一帧,根据该视频帧对应的数据包的流媒体层序列号,确定该视频帧对应的数据包的流媒体层序列号的最大值、最小值以及流媒体层序列号个数,根据所述流媒体层序列号的最大值、最小值,确定该视频帧对应的数据包个数的理论值,根据该视频帧对应的数据包个数的理论值与该视频帧对应的数据包的流媒体层序列号个数之差,确定所述该视频帧的帧丢包参数。For each frame of the at least one video frame, according to the streaming media layer serial number of the data packet corresponding to the video frame, determine the maximum value, the minimum value and the streaming media layer serial number of the data packet corresponding to the video frame Layer sequence number, according to the maximum value and the minimum value of the streaming media layer sequence number, determine the theoretical value of the data packet number corresponding to the video frame, according to the theoretical value of the data packet number corresponding to the video frame and the The difference in the number of streaming media layer sequence numbers of the data packets corresponding to the video frame determines the frame packet loss parameter of the video frame.
根据所述排序结果以及该视频帧对应的数据包的流媒体层序列号,确定该视频帧的帧乱序参数,包括:According to the streaming media layer sequence number of the data packet corresponding to the sorting result and the video frame, determine the frame out-of-sequence parameter of the video frame, including:
当前数据包的流媒体层序列号的数值大于所述排序结果中、所述当前数据包之前的数据包的流媒体层序列号时,根据所述排序结果中当前数据包的排序序号、当前数据包的流媒体层序列号、以及该视频帧对应的数据包的流媒体层序列号的最小值,确定该视频帧对应的帧乱序参数。When the value of the streaming media layer serial number of the current data packet is greater than the streaming media layer serial number of the data packet before the current data packet in the sorting result, according to the sorting serial number of the current data packet in the sorting result, the current data The minimum value of the streaming layer sequence number of the packet and the streaming layer sequence number of the data packet corresponding to the video frame determines the frame disorder parameter corresponding to the video frame.
通过这种方式,使得帧丢包参数可以体现视频帧中数据包是否丢包的信息,在存在丢包时,还可以体现丢包的个数的信息;使得帧乱序参数可以体现视频帧中数据包是否乱序的信息,在存在乱序时,还可以体现乱序的数据包的乱序深度的信息,从而能够提升根据帧质量参数确定视频帧的质量情况的准确性。In this way, the frame packet loss parameter can reflect the information of whether the data packet in the video frame is lost or not, and when there is a packet loss, it can also reflect the information of the number of the packet loss; the frame disorder parameter can reflect the information in the video frame The information about whether the data packets are out of order can also reflect the information about the out-of-order depth of the out-of-order data packets when there is out-of-order, so that the accuracy of determining the quality of video frames according to the frame quality parameters can be improved.
举例来说,如图7所示,视频帧2对应的数据包a-i的流媒体层序列号S a-S i分别为11、12、13、15、16、17、18、19、20,根据视频帧2对应的数据包a-i的流媒体层序列号,可以确定视频帧2对应的数据包a-i的流媒体层序列号的最大值max=20,最小值min=11,流媒 体层序列号个数是9。根据视频帧2的流媒体层序列号的最大值20、最小值11,可以确定视频帧2对应的数据包个数的理论值q=max-min+1=20-11+1=10,与视频帧对应的数据包的流媒体层序列号个数9的差等于1,因此,视频帧2存在丢包情况,且丢包个数为1个。 For example, as shown in Figure 7, the streaming layer sequence numbers S a -S i of the data packets ai corresponding to video frame 2 are 11, 12, 13, 15, 16, 17, 18, 19, 20 respectively, according to The streaming layer sequence number of the data packet ai corresponding to the video frame 2 can determine the maximum value max=20 of the streaming layer sequence number of the data packet ai corresponding to the video frame 2, the minimum value min=11, and the streaming layer sequence number The number is 9. According to the maximum value 20 and the minimum value 11 of the streaming media layer sequence number of the video frame 2, the theoretical value q=max-min+1=20-11+1=10 of the corresponding data packet number of the video frame 2 can be determined, and The difference between the stream media layer serial number 9 of the data packet corresponding to the video frame is equal to 1, therefore, there is a packet loss in the video frame 2, and the number of packet loss is 1.
如图8所示,视频帧3对应的数据包A-K的流媒体层序列号S A-S K分别为21、22、23、25、26、27、28、24、29、30、31,排序结果可例如为P={A、B、C、D、E、F、G、H、I、J、K},根据视频帧3对应的数据包A-K的流媒体层序列号S A-S K,可以确定数据包H的流媒体层序列号的数值(24)小于排序结果P中、数据包H之前的数据包G的流媒体层序列号的数值(28),可以确定视频帧3出现乱序情况,且导致乱序的数据包是数据包H。可以根据数据包H的流媒体层序列号S H的数值24和视频帧3对应的数据包A-K的流媒体层序列号的最小值MIN=21,计算得到数据包H在排序结果P中的排序序号的理论值S H-MIN+1=4,再根据由排序结果P确定的数据包H的排序序号8和数据包H在排序结果P中的排序序号的理论值4,计算得到乱序深度8-4=4。其中,当导致乱序的数据包有且仅有一个时,乱序的数据包的乱序深度可以作为该视频帧对应的帧乱序参数的数值。当导致乱序的数据包有多个时,可以根据乱序的数据包个数对每个乱序的数据包的乱序深度之和求平均,得到平均乱序深度,使用平均乱序深度作为该视频帧对应的帧乱序参数的数值。 As shown in Figure 8, the streaming media layer sequence numbers SA - SK of the data packet AK corresponding to the video frame 3 are 21, 22, 23, 25, 26, 27, 28, 24, 29, 30, 31 respectively, sorted The result can be, for example, P={A, B, C, D, E, F, G, H, I, J, K}, according to the streaming media layer serial number S A -S K of the data packet AK corresponding to the video frame 3 , it can be determined that the numerical value (24) of the streaming media layer sequence number of the data packet H is less than the numerical value (28) of the streaming media layer serial number of the data packet G before the data packet H in the sorting result P, and it can be determined that the video frame 3 is out of order In the case of order, and the data packet that causes disorder is data packet H. The ordering of the data packet H in the sorting result P can be calculated according to the value 24 of the streaming media layer serial number SH of the data packet H and the minimum value MIN=21 of the streaming media layer serial number of the data packet AK corresponding to the video frame 3 The theoretical value of the serial number SH -MIN+1=4, and then according to the sorting serial number 8 of the data packet H determined by the sorting result P and the theoretical value 4 of the sorting serial number of the data packet H in the sorting result P, the disordered depth is calculated 8-4=4. Wherein, when there is only one out-of-order data packet, the out-of-order depth of the out-of-order data packet can be used as the value of the frame out-of-order parameter corresponding to the video frame. When there are multiple out-of-order data packets, the sum of the out-of-order depth of each out-of-order data packet can be averaged according to the number of out-of-order data packets to obtain the average out-of-order depth, and the average out-of-order depth is used as The value of the frame out-of-order parameter corresponding to this video frame.
通过这种方式,可以计算得到帧丢包参数以及帧乱序参数。In this way, the frame packet loss parameter and the frame disorder parameter can be calculated.
在步骤S23中,对于步骤S21识别到的不同视频帧,根据不同视频帧对应的数据包的网络层协议信息和传输层协议信息,得到数据包的包质量参数,以用于体现数据包质量,其中,包质量参数可例如包括包间隔参数、包抖动参数、乱序参数、丢包参数、重传参数、时延参数、IP报文分片参数、校验和错误参数中的一个或多个。这一过程可以基于现有技术来实现,下面分别针对不同包质量参数及其计算方式进行示例性描述。In step S23, for the different video frames identified in step S21, according to the network layer protocol information and the transport layer protocol information of the data packets corresponding to the different video frames, the packet quality parameters of the data packets are obtained to reflect the data packet quality, Wherein, the packet quality parameters may include, for example, one or more of packet interval parameters, packet jitter parameters, out-of-sequence parameters, packet loss parameters, retransmission parameters, delay parameters, IP packet fragmentation parameters, and checksum error parameters. . This process can be implemented based on the existing technology, and the following will give exemplary descriptions for different packet quality parameters and their calculation methods.
在一种可能的实现方式中,所述至少一个视频帧中各帧对应的各数据包的包质量参数根据所述数据包的网络层协议信息以及传输层协议信息确定,所述包质量参数包括:表示当前数据包与前一数据包的时间间隔的包间隔参数、表示当前数据包与前一数据包的时延抖动的包抖动参数、表示数据包乱序情况的乱序参数、表示数据包丢包情况的丢包参数、表示数据包重传情况的重传参数、表示数据包的时延情况的时延参数、表示数据包是否存在IP报文分片的IP报文分片参数、表示数据包的校验和是否出现错误的校验和错误参数中的一个或多个。In a possible implementation manner, the packet quality parameter of each data packet corresponding to each frame in the at least one video frame is determined according to the network layer protocol information and the transport layer protocol information of the data packet, and the packet quality parameter includes : The packet interval parameter that represents the time interval between the current data packet and the previous data packet, the packet jitter parameter that represents the delay jitter between the current data packet and the previous data packet, the out-of-order parameter that represents the disordered state of the data packet, and the data packet The packet loss parameter for packet loss, the retransmission parameter for data packet retransmission, the delay parameter for data packet delay, the IP packet fragmentation parameter for IP packet fragmentation, and the If the checksum of the packet is incorrect one or more of the checksum error parameters.
通过这种方式,可以获得用于表征数据包质量的多种包质量参数,通过获取多种包质量参数,使得根据包质量参数确定的数据包质量更接近实际的数据包质量,可以提升后续根据异常的包质量参数和异常的帧质量参数确定导致视频质量问题的原因及设备的准确程度。In this way, a variety of packet quality parameters used to represent the quality of the data packet can be obtained. By obtaining a variety of packet quality parameters, the quality of the data packet determined according to the packet quality parameters is closer to the actual data packet quality, which can improve the subsequent basis. Abnormal Packet Quality Parameters and Abnormal Frame Quality Parameters determine what is causing video quality issues and how accurate the device is.
下面分别介绍每种包质量参数的计算方法。The calculation method of each package quality parameter is introduced respectively below.
包间隔参数可以根据数据包的网络层协议信息中的包时间确定,其计算方式可以参照上文帧间隔的计算方式的示例。举例来说,假设视频帧4包括5个数据包,针对数据包1-5中的每一数据包,根据该数据包的网络层协议信息中指示数据包的时间的包时间,可以计算包间隔参数。其中,2≤m≤5且为整数时,数据包m和数据包m-1的包间隔参数可以通过数据包m的包时间与数据包m-1的包时间之差来计算,m=1时,数据包1的包间隔参数默认等于0。The packet interval parameter can be determined according to the packet time in the network layer protocol information of the data packet, and its calculation method can refer to the example of the calculation method of the frame interval above. For example, assuming that video frame 4 includes 5 data packets, for each data packet in data packets 1-5, according to the packet time indicating the time of the data packet in the network layer protocol information of the data packet, the packet interval can be calculated parameter. Among them, when 2≤m≤5 and it is an integer, the packet interval parameters of data packet m and data packet m-1 can be calculated by the difference between the packet time of data packet m and the packet time of data packet m-1, m=1 When , the packet interval parameter of data packet 1 is equal to 0 by default.
包抖动参数可以根据数据包的网络层协议信息中的包时间以及预设的控制参数确定,其计算方式可以参照上文帧首包抖动参数或者帧尾包抖动参数的计算方式的示例。举例来说,假设至少一个视频帧包括视频帧1-4。针对视频帧1-4中的每一视频帧,根据该视频帧对应 的数据包的网络层协议信息中,指示数据包的时间的包时间,可以计算包间隔参数。根据每一视频帧对应的每个数据包与前一数据包的包间隔参数、该前一数据包的包抖动参数以及预设的控制参数,可以计算得到每个数据包的包抖动参数。例如,针对视频帧4,视频帧4可例如包括5个数据包,2≤m≤5且为整数时,数据包m和数据包m-1的包抖动参数可以通过数据包m和数据包m-1的包间隔参数、数据包m-1的包抖动参数以及控制参数(例如15/16和1/16)确定。The packet jitter parameter can be determined according to the packet time in the network layer protocol information of the data packet and the preset control parameters, and its calculation method can refer to the example of the calculation method of the first frame packet jitter parameter or the frame end packet jitter parameter above. For example, assume that at least one video frame includes video frames 1-4. For each video frame in the video frame 1-4, according to the network layer protocol information of the data packet corresponding to the video frame, the packet time indicating the time of the data packet can calculate the packet interval parameter. According to each data packet corresponding to each video frame and the packet interval parameter of the previous data packet, the packet jitter parameter of the previous data packet and the preset control parameter, the packet jitter parameter of each data packet can be calculated. For example, for video frame 4, video frame 4 may include 5 data packets, for example, when 2≤m≤5 and is an integer, the packet jitter parameters of data packet m and data packet m-1 can be passed through data packet m and data packet m The packet interval parameter of -1, the packet jitter parameter of data packet m-1, and the control parameters (for example, 15/16 and 1/16) are determined.
乱序参数可以根据当前数据包和前一个数据包的网络层协议信息中的网络层序列号和传输层协议信息中的传输层序列号确定,当前数据包为乱序的数据包时,乱序参数的数值可以等于1,当前数据包不是乱序的数据包时,乱序参数的数值可以等于0。例如,根据包时间对数据包进行排序,如果和前一个数据包的传输层序列号、网络层序列号相比,当前数据包的传输层序列号、网络层序列号都减少,则表明当前数据包为乱序的数据包。The out-of-order parameter can be determined according to the network layer serial number in the network layer protocol information of the current data packet and the previous data packet and the transport layer serial number in the transport layer protocol information. The value of the parameter can be equal to 1, and when the current data packet is not an out-of-order data packet, the value of the out-of-order parameter can be equal to 0. For example, the data packets are sorted according to the packet time. If the transport layer sequence number and the network layer sequence number of the current data packet are reduced compared with the transport layer sequence number and the network layer sequence number of the previous data packet, it indicates that the current data packet Packets are out-of-order packets.
丢包参数可以根据数据包的网络层协议信息中的网络层序列号和传输层协议信息中的传输层序列号、校验和、确认报文序列号确定,当前数据包为丢包的数据包时,丢包参数的数值可以等于1,当前数据包不是丢包的数据包时,丢包参数的数值可以等于0。例如,计算使用TCP协议的视频流对应的数据包的丢包参数,可以根据包时间对数据包进行排序,如果和前一个数据包的传输层序列号和网络层序列号相比,当前数据包的传输层序列号减少、网络层序列号增加,且在当前数据包的包时间前,在视频缓冲区中,未出现过与当前数据包的网络层序列号、传输层序列号、校验和相同的数据包,但出现过与当前数据包的确认报文序列号相同的数据包,则表明当前数据包为丢包的数据包。又例如,计算使用UDP协议的视频流对应的数据包的丢包参数,可以直接使用数据包的网络层序列号来确定是否丢包。可以根据包时间对数据包进行排序,如果和前一个数据包的网络层序列号相比,当前数据包的网络层序列号减少,则表明当前数据包为丢包的数据包。The packet loss parameter can be determined according to the network layer serial number in the network layer protocol information of the data packet and the transport layer serial number, checksum, and confirmation message serial number in the transport layer protocol information. The current data packet is a lost data packet When , the value of the packet loss parameter may be equal to 1, and when the current data packet is not a lost data packet, the value of the packet loss parameter may be equal to 0. For example, to calculate the packet loss parameters of the data packets corresponding to the video stream using the TCP protocol, the data packets can be sorted according to the packet time. If compared with the transport layer sequence number and the network layer sequence number of the previous data packet, the current data packet The serial number of the transport layer decreases, the serial number of the network layer increases, and before the packet time of the current data packet, in the video buffer, the network layer serial number, the serial number of the transport layer, and the checksum of the current data packet have not appeared The same data packet, but a data packet with the same sequence number as the confirmation message of the current data packet has appeared, which indicates that the current data packet is a lost data packet. For another example, to calculate the packet loss parameter of the data packet corresponding to the video stream using the UDP protocol, the network layer sequence number of the data packet can be directly used to determine whether the packet is lost. The data packets can be sorted according to the packet time, and if the network layer sequence number of the current data packet decreases compared with the network layer sequence number of the previous data packet, it indicates that the current data packet is a lost data packet.
重传参数可以根据数据包的网络层协议信息中的网络层序列号和传输层协议信息中的传输层序列号、校验和、确认报文序列号确定,当前数据包为重传的数据包时,重传参数的数值可以等于1,当前数据包不是重传的数据包时,重传参数的数值可以等于0。例如,计算使用TCP协议的视频流对应的数据包的重传参数,可以根据包时间对数据包进行排序,如果和前一个数据包的传输层序列号和网络层序列号相比,当前数据包的传输层序列号减少、网络层序列号增加,且在当前数据包的包时间前,在视频缓冲区中,出现过与当前数据包的网络层序列号、传输层序列号、校验和相同的数据包,则表明当前数据包为重传的数据包。又例如,计算使用UDP协议的视频流对应的数据包的重传参数,可以根据包时间对数据包进行排序,如果存在与当前数据包的网络层序列号、校验和均相同,且包时间早于当前数据包的包时间的数据包,则表明当前数据包为重传的数据包。The retransmission parameters can be determined according to the network layer sequence number in the network layer protocol information of the data packet and the transport layer sequence number, checksum, and confirmation message sequence number in the transport layer protocol information. The current data packet is a retransmitted data packet , the value of the retransmission parameter may be equal to 1, and when the current data packet is not a retransmission data packet, the value of the retransmission parameter may be equal to 0. For example, to calculate the retransmission parameters of the data packets corresponding to the video stream using the TCP protocol, the data packets can be sorted according to the packet time, if compared with the transport layer sequence number and the network layer sequence number of the previous data packet, the current data packet The serial number of the transport layer decreases, the serial number of the network layer increases, and before the packet time of the current data packet, in the video buffer, the same as the network layer serial number, transport layer serial number, and checksum of the current data packet appear , it indicates that the current data packet is a retransmitted data packet. Another example is to calculate the retransmission parameters of the data packets corresponding to the video stream using the UDP protocol, and the data packets can be sorted according to the packet time. If the network layer sequence number and checksum of the current data packet are the same, and the packet time A data packet earlier than the packet time of the current data packet indicates that the current data packet is a retransmitted data packet.
时延参数可以根据数据包的网络层协议信息中的包时间和传输层协议信息中的确认报文序列号确定,例如,计算使用TCP协议的视频流对应的数据包的时延参数,可以根据当前数据包的确认报文序列号找到与当前数据包具有相同的确认报文序列号的数据包,根据数据包的包时间与找到的数据包与当前数据包的包时间的差值确定时延参数的数值。The time delay parameter can be determined according to the packet time in the network layer protocol information of the data packet and the confirmation message sequence number in the transport layer protocol information. For example, the time delay parameter of the data packet corresponding to the video stream using the TCP protocol can be calculated according The confirmation message sequence number of the current data packet Find the data packet with the same confirmation message sequence number as the current data packet, and determine the delay according to the packet time of the data packet and the difference between the packet time of the found data packet and the current data packet The numeric value of the parameter.
IP报文分片参数可以根据数据包的网络层协议信息中的分片标志确定,例如,网络层协议信息中存在分片标志时,代表该数据包存在IP报文分片,IP报文分片参数的数值可以等于1,网络层协议信息中未存在分片标志时,代表该数据包不存在IP报文分片,IP报文分 片参数的数值可以等于0。The IP packet fragmentation parameter can be determined according to the fragmentation flag in the network layer protocol information of the data packet. For example, when there is a fragmentation flag in the network layer protocol information, it means that the data packet has an IP The value of the fragment parameter can be equal to 1. When there is no fragment flag in the network layer protocol information, it means that there is no IP packet fragmentation in the data packet, and the value of the IP packet fragment parameter can be equal to 0.
校验和错误参数可以根据数据包的传输层协议信息中的校验和以及根据现有技术计算得到的校验和数值确定,如果二者的数值不一致,表示当前数据包存在校验和错误。在存在校验和错误时,校验和错误参数的数值等于1。在不存在校验和错误时,校验和错误参数的数值等于0。其中,当传输层协议信息中的校验和的数值为无效值(值为0)时,不对传输层协议信息中的校验和以及计算得到的校验和数值进行对比。The checksum error parameter can be determined according to the checksum in the transport layer protocol information of the data packet and the checksum value calculated according to the prior art. If the two values are inconsistent, it means that the current data packet has a checksum error. The value of the checksum error parameter is equal to 1 when there is a checksum error. The value of the checksum error parameter is equal to zero when there are no checksum errors. Wherein, when the value of the checksum in the transport layer protocol information is an invalid value (the value is 0), the checksum in the transport layer protocol information and the calculated checksum value are not compared.
通过这种方式,可以计算得到多样化的包质量参数。本领域人员应理解,包质量参数的种类以及计算方式应不止上述示例。只要能够通过包质量参数体现数据包的质量即可,本申请实施例不限制包质量参数的种类以及计算方式。In this way, various packet quality parameters can be calculated. Those skilled in the art should understand that the types and calculation methods of the packet quality parameters should not be limited to the above examples. As long as the quality of the data packet can be reflected by the packet quality parameter, the embodiment of the present application does not limit the type and calculation method of the packet quality parameter.
在步骤S24中,对于步骤S22计算得到的帧质量参数和步骤S23计算得到的包质量参数,分别结合帧质量参数阈值和包质量参数阈值进行参数的异常确定。In step S24, for the frame quality parameter calculated in step S22 and the packet quality parameter calculated in step S23, abnormal determination of the parameters is performed in combination with the frame quality parameter threshold and the packet quality parameter threshold respectively.
在一种可能的实现方式中,步骤S24,包括:In a possible implementation, step S24 includes:
针对所述至少一个视频帧的每一帧,将该视频帧的帧质量参数中,数值大于所述帧质量参数阈值的帧质量参数,确定为所述异常的帧质量参数;For each frame of the at least one video frame, among the frame quality parameters of the video frame, the frame quality parameter whose value is greater than the frame quality parameter threshold is determined as the abnormal frame quality parameter;
针对所述至少一个视频帧的每一帧,将该视频帧对应的数据包的包质量参数中,数值大于所述包质量参数阈值的包质量参数,确定为所述异常的包质量参数。For each frame of the at least one video frame, among the packet quality parameters of the data packets corresponding to the video frame, the packet quality parameter whose value is greater than the packet quality parameter threshold is determined as the abnormal packet quality parameter.
通过这种方式,可以确定异常的帧质量参数和包质量参数。采用参数数值与阈值进行比较的方式确定异常参数,可以准确、快速地完成异常参数的确定。In this way, abnormal frame quality parameters and packet quality parameters can be determined. Abnormal parameters are determined by comparing parameter values with threshold values, and the determination of abnormal parameters can be completed accurately and quickly.
举例来说,帧质量参数阈值以及包质量参数阈值可以采用预先设置固定值或者采用AI模型实时确定。下面介绍采用AI模型确定帧质量参数阈值以及包质量参数阈值的示例性方法。For example, the frame quality parameter threshold and the packet quality parameter threshold can be determined in real time by using a preset fixed value or by using an AI model. An exemplary method for determining the threshold of the frame quality parameter and the threshold of the packet quality parameter by using the AI model is introduced below.
举例来说,针对每一种帧质量参数,都可以对应一个帧质量参数阈值;针对每一种包质量参数,都可以对应一个包质量参数阈值。AI模型确定一种帧质量参数(或者包质量参数)对应的帧质量参数阈值(或者包质量参数阈值)时,使用的数据可以是确定当前时刻之前的一段时间内计算得到的,与多个视频帧分别对应的该种帧质量参数的多个数值(或者与多个数据包分别对应的该种包质量参数的多个数值)。例如,以当前时刻之前的一段时间内计算得到的帧首包抖动参数(以下简称为历史帧首包抖动参数)作为AI模型的参数样本,AI模型可以基于历史帧首包抖动参数的数值的统计情况,拟合生成一个历史帧首包抖动参数x的正态分布概率曲线P(x),并使用该正态分布概率曲线的累积分布函数F(a)(F(a)=P(x<=a))计算针对帧首包抖动参数的帧质量参数阈值a。图9示出根据本申请实施例生成的正态分布概率曲线的示例。如图9所示,柱状图为历史帧首包抖动参数的数值的分布示意,曲线为根据历史帧首包抖动参数分布拟合的正态分布概率曲线P(x)。For example, each frame quality parameter may correspond to a frame quality parameter threshold; and each packet quality parameter may correspond to a packet quality parameter threshold. When the AI model determines a frame quality parameter threshold (or packet quality parameter threshold) corresponding to a frame quality parameter (or packet quality parameter), the data used can be calculated during a period of time before the current moment, and multiple video Multiple values of this type of frame quality parameter corresponding to frames (or multiple values of this type of packet quality parameter corresponding to multiple data packets). For example, using the frame header jitter parameters calculated for a period of time before the current moment (hereinafter referred to as the historical frame header jitter parameters) as the parameter samples of the AI model, the AI model can be based on the statistics of the historical frame header jitter parameters case, fitting generates a normal distribution probability curve P(x) of the historical frame first packet jitter parameter x, and uses the cumulative distribution function F(a) of the normal distribution probability curve (F(a)=P(x< = a)) Calculate the frame quality parameter threshold a for the frame header jitter parameter. FIG. 9 shows an example of a normal distribution probability curve generated according to an embodiment of the present application. As shown in FIG. 9 , the histogram shows the numerical distribution of the jitter parameter of the first packet of the historical frame, and the curve is a normal distribution probability curve P(x) fitted according to the distribution of the jitter parameter of the first packet of the historical frame.
预先设置一个异常度阈值,在累积分布函数F(a)等于异常度阈值时,a的数值可以是对应的帧质量参数阈值。当前时刻之后计算到的帧首包抖动参数大于该阈值的,就可以确定是异常的帧首包抖动参数,即确定为异常的帧质量参数。以图9的正态分布概率曲线为例,异常度阈值例如预设为75%,根据正态分布概率曲线的累积分布函数计算得知,累积分布函数F(a)的值等于75%时,对应的a的值可例如等于100,在此情况下,帧首包抖动参数的数值的正常范围在0-100。图10示出根据本申请实施例实现参数的异常情况确定的示例。如图10所示,某个需要确定异常情况的帧首包抖动参数的数值为240,数值大于100,该帧首包抖动参数是异常的帧质量参数,从而能实现参数的异常情况确定。An abnormality threshold is set in advance, and when the cumulative distribution function F(a) is equal to the abnormality threshold, the value of a can be the corresponding frame quality parameter threshold. If the frame header packet jitter parameter calculated after the current moment is greater than the threshold, it can be determined to be an abnormal frame header packet jitter parameter, that is, to be determined to be an abnormal frame quality parameter. Taking the normal distribution probability curve in Fig. 9 as an example, the abnormality threshold is preset as 75%, and calculated according to the cumulative distribution function of the normal distribution probability curve, when the value of the cumulative distribution function F(a) is equal to 75%, The corresponding value of a may be equal to 100, for example. In this case, the normal range of the value of the frame header jitter parameter is 0-100. Fig. 10 shows an example of realizing abnormal condition determination of parameters according to an embodiment of the present application. As shown in Figure 10, the value of a frame header jitter parameter that needs to be determined to be abnormal is 240, and the value is greater than 100. The frame header jitter parameter is an abnormal frame quality parameter, so that the abnormality of the parameter can be determined.
当计算得到需要确定异常情况的帧质量参数(或包质量参数)时,就可以利用由AI模型得到的帧质量参数阈值(或包质量参数阈值),确定需要确定异常情况的的帧质量参数(或包质量参数)是否为异常的帧质量参数(或异常的包质量参数)。进一步地,还可以裁剪参数样本中已经确定为异常的帧质量参数(或异常的包质量参数)的参数样本,使得帧质量参数阈值(或包质量参数阈值)也随着参数样本的变化进行更新。When the frame quality parameter (or packet quality parameter) that needs to be determined to be abnormal is calculated, the frame quality parameter (or packet quality parameter threshold) obtained by the AI model can be used to determine the frame quality parameter (or packet quality parameter) that needs to be determined to be abnormal. or packet quality parameter) is an abnormal frame quality parameter (or abnormal packet quality parameter). Further, the parameter samples that have been determined to be abnormal frame quality parameters (or abnormal packet quality parameters) in the parameter samples can also be cropped, so that the frame quality parameter threshold (or packet quality parameter threshold) is also updated as the parameter samples change .
举例来说,采用上文描述的方法进行帧质量参数的异常情况确定,确定的帧质量参数的异常情况可例如下表1所示。For example, the method described above is used to determine the abnormality of the frame quality parameter, and the determined abnormality of the frame quality parameter can be shown in Table 1 below, for example.
表1Table 1
Figure PCTCN2022078279-appb-000001
Figure PCTCN2022078279-appb-000001
如表1所示,其中,帧首包抖动异常情况、帧尾包抖动异常情况、帧丢包异常情况和帧乱序异常情况的值为1代表该帧的对应帧质量参数为异常的帧质量参数,该帧也为异常帧。则根据表1可知,视频帧1没有帧质量参数异常,视频帧2的帧首包抖动参数异常、帧乱序参数异常,视频帧3的帧首包抖动参数异常、帧尾包抖动参数异常、帧丢包参数异常,视频帧4没有帧质量参数异常。As shown in Table 1, the value of 1 for abnormal jitter at the beginning of the frame, abnormal jitter at the end of the frame, abnormal packet loss, and abnormal frame disorder indicates that the corresponding frame quality parameter of the frame is an abnormal frame quality parameter, this frame is also an abnormal frame. Then according to Table 1, it can be seen that video frame 1 has no frame quality parameter abnormality, the first frame packet jitter parameter of video frame 2 is abnormal, the frame out-of-sequence parameter is abnormal, the frame first packet jitter parameter of video frame 3 is abnormal, the frame tail packet jitter parameter is abnormal, The frame loss parameter is abnormal, and the frame quality parameter of video frame 4 is abnormal.
采用上文描述的方法进行包质量参数的异常情况确定,确定的包质量参数的异常情况可例如下表2所示。The method described above is used to determine the abnormal situation of the packet quality parameter, and the determined abnormal situation of the packet quality parameter can be shown in Table 2 below, for example.
表2Table 2
Figure PCTCN2022078279-appb-000002
Figure PCTCN2022078279-appb-000002
表2中,gNB、UDG、EoR分别表示5G基站、统一分布式网关、使用某种部署方式的交换机。其中,丢包异常情况、乱序异常情况、包抖动异常情况、包间隔异常情况、重传异常情况、时延异常情况、IP报文分片异常情况、校验和错误异常情况的值为1代表该包质量参数为异常的包质量参数,该包也为异常包。则根据表2可知,5G基站gNB上,数据包1、3、4、5没有包质量参数异常,数据包2的包抖动参数异常;统一分布式网关UDG上,数据包1的包抖动参数异常,数据包2的丢包参数和时延参数异常,数据包3的丢包参数和包抖动参数异常;使用某种部署方式的交换机EoR上,数据包1的包抖动参数异常,数据包2的丢包参数异常,数据包3的丢包参数和包抖动参数异常。In Table 2, gNB, UDG, and EoR represent 5G base stations, unified distributed gateways, and switches using a certain deployment method, respectively. Among them, abnormal packet loss, out-of-sequence abnormality, packet jitter abnormality, packet interval abnormality, retransmission abnormality, delay abnormality, IP packet fragmentation abnormality, and checksum error abnormality have a value of 1 Indicates that the package quality parameter is an abnormal package quality parameter, and the package is also an abnormal package. According to Table 2, it can be seen that on the 5G base station gNB, the packet quality parameters of data packets 1, 3, 4, and 5 are not abnormal, and the packet jitter parameters of data packet 2 are abnormal; on the unified distributed gateway UDG, the packet jitter parameters of data packet 1 are abnormal , the packet loss parameter and delay parameter of data packet 2 are abnormal, and the packet loss parameter and packet jitter parameter of data packet 3 are abnormal; The packet loss parameter is abnormal, and the packet loss parameter and packet jitter parameter of packet 3 are abnormal.
步骤S2获得异常的帧质量参数和异常的包质量参数之后,在步骤S3中,可以根据异常的帧质量参数和异常的包质量参数与预设条件的关系,确定导致视频播放端视频质量异常的原因及设备。图11示出根据本申请实施例的异常的帧质量参数、异常的包质量参数与导致视频播放端视频质量异常的原因及设备的对应关系的示例性示意图。After the abnormal frame quality parameters and abnormal packet quality parameters are obtained in step S2, in step S3, it can be determined according to the relationship between the abnormal frame quality parameters, the abnormal packet quality parameters and the preset conditions, which causes the abnormal video quality of the video playback terminal. Causes and equipment. Fig. 11 shows an exemplary schematic diagram of the correspondence between abnormal frame quality parameters, abnormal packet quality parameters, causes of abnormal video quality at the video player end, and devices according to an embodiment of the present application.
如图11所示,可以利用视频帧和数据包的对应关系找到与帧质量参数对应的包质量参数,使得包质量参数所属的数据包是帧质量参数所属的视频帧下的数据包。帧质量参数以及其对应的包质量参数通常具有一定的关联关系。例如,某一数据包的丢包参数异常时,可以查看该数据包所属的视频帧的帧丢包参数的情况。某一数据包的乱序参数异常时,可以查看该数 据包所属的视频帧的帧乱序参数的情况。某一数据包的包间隔参数或包抖动参数异常时,可能会导致数据包不能按照解码期望时间到达,从而可能导致该数据包所属的视频帧出现大幅抖动,可以查看该数据包所属的视频帧的帧首包抖动参数和帧尾包抖动参数的情况。某一数据包的重传参数或时延参数异常时,可能会导致该数据包的发送变慢,从而可能导致该数据包所属的视频帧出现大幅抖动,可以查看该数据包所属的视频帧的帧首包抖动参数和帧尾包抖动参数的情况。数据包的IP报文分片参数和校验和错误参数同样与该数据包所属的视频帧的抖动相关联,因此。某一数据包的IP报文分片参数或校验和错误参数异常时,可以查看该数据包所属的视频帧的帧首包抖动参数和帧尾包抖动参数的情况。As shown in FIG. 11 , the packet quality parameter corresponding to the frame quality parameter can be found by using the correspondence between the video frame and the data packet, so that the data packet to which the packet quality parameter belongs is the data packet under the video frame to which the frame quality parameter belongs. The frame quality parameter and its corresponding packet quality parameter usually have a certain correlation. For example, when the packet loss parameter of a certain data packet is abnormal, the situation of the frame packet loss parameter of the video frame to which the data packet belongs can be checked. When the out-of-sequence parameter of a data packet is abnormal, you can check the frame out-of-sequence parameter of the video frame to which the data packet belongs. When the packet interval parameter or packet jitter parameter of a certain data packet is abnormal, it may cause the data packet to fail to arrive at the expected time of decoding, which may cause the video frame to which the data packet belongs to have a large jitter. You can view the video frame to which the data packet belongs The case of the first frame packet jitter parameter and the frame end packet jitter parameter. When the retransmission parameters or delay parameters of a data packet are abnormal, the sending of the data packet may be slowed down, which may cause the video frame to which the data packet belongs to shake greatly. You can view the video frame to which the data packet belongs. The situation of the jitter parameters of the first packet of the frame and the jitter parameters of the last packet of the frame. The IP packet fragmentation parameter and the checksum error parameter of the data packet are also associated with the jitter of the video frame to which the data packet belongs, therefore. When the IP packet fragmentation parameters or checksum error parameters of a data packet are abnormal, you can check the frame header jitter parameters and frame tail packet jitter parameters of the video frame to which the data packet belongs.
由上文描述可知,异常的帧质量参数和异常的包质量参数可以有多种,可以先设置与导致视频播放端视频质量异常的原因及设备具有对应关系的条件,再判断异常的帧质量参数和异常的包质量参数是否满足对应条件,来确定导致视频播放端视频质量异常的原因及设备。From the above description, we can see that there are many kinds of abnormal frame quality parameters and abnormal packet quality parameters. You can first set the conditions corresponding to the cause of abnormal video quality on the video playback end and the device, and then judge the abnormal frame quality parameters. and whether the abnormal packet quality parameters meet the corresponding conditions to determine the cause and equipment that cause the abnormal video quality of the video player.
下面结合图11对可能设置的条件以及根据条件确定的导致视频播放端视频质量异常的原因及设备进行示例性描述。The conditions that may be set and the causes and devices that lead to abnormal video quality at the video player end determined according to the conditions will be described exemplarily below in conjunction with FIG. 11 .
在一种可能的实现方式中,步骤S3,包括:In a possible implementation, step S3 includes:
针对任一视频帧,所述视频帧的帧质量参数和所述视频帧对应的数据包的包质量参数满足第一条件时,确定导致视频播放端视频质量异常的原因是视频编码问题,确定导致视频播放端视频质量异常的设备是视频编码使用的设备;For any video frame, when the frame quality parameter of the video frame and the packet quality parameter of the data packet corresponding to the video frame meet the first condition, it is determined that the cause of the abnormal video quality at the video playback end is a video encoding problem, and it is determined that the The device with abnormal video quality at the video playback end is the device used for video encoding;
其中,所述第一条件包括:Wherein, the first condition includes:
所述视频帧的帧丢包参数异常且所述视频帧对应的数据包的丢包参数正常,或者The frame packet loss parameter of the video frame is abnormal and the packet loss parameter of the data packet corresponding to the video frame is normal, or
所述视频帧的帧乱序参数异常且所述视频帧对应的数据包的乱序参数正常。The frame out-of-order parameter of the video frame is abnormal and the out-of-order parameter of the data packet corresponding to the video frame is normal.
由于数据包的协议信息是在网络设备和视频播放端处获取的,因此,帧质量参数和包质量参数可以体现传输过程中的异常情况,帧丢包参数异常表示视频帧下有数据包在传输时处于丢失状态,如果此时视频帧下的数据包的丢包参数正常,表示没有数据包在传输过程中丢失,因此可以确定数据包是在传输前、也即视频编码时丢失;帧乱序参数异常表示视频帧下有数据包在传输时处于乱序状态,如果此时视频帧下的数据包的乱序参数正常,表示数据包在传输过程中没有乱序,因此可以确定数据包是在传输前、也即视频编码时乱序;基于上述原因,第一条件,即所述视频帧的帧丢包参数异常且所述视频帧对应的数据包的丢包参数正常,或者所述视频帧的帧乱序参数异常且所述视频帧对应的数据包的乱序参数正常,能够准确反映出视频编码问题。Since the protocol information of the data packet is obtained at the network device and the video player, the frame quality parameter and the packet quality parameter can reflect the abnormal situation in the transmission process, and the frame packet loss parameter abnormality indicates that there is a data packet under the video frame being transmitted If the packet loss parameter of the data packet under the video frame is normal at this time, it means that no data packet is lost during transmission, so it can be determined that the data packet is lost before transmission, that is, during video encoding; frame disorder Abnormal parameters indicate that there are data packets under the video frame that are out of order during transmission. If the out-of-order parameters of the data packets under the video frame are normal at this time, it means that the data packets are not out of order during transmission, so it can be determined that the data packets are in the out-of-order state. Before transmission, that is, out of order during video encoding; based on the above reasons, the first condition is that the frame packet loss parameter of the video frame is abnormal and the packet loss parameter of the data packet corresponding to the video frame is normal, or the video frame The out-of-sequence parameter of the frame is abnormal and the out-of-order parameter of the data packet corresponding to the video frame is normal, which can accurately reflect the video encoding problem.
举例来说,如图11所示,如果帧质量参数中帧丢包参数异常且包质量参数中丢包参数正常,或者,帧质量参数中帧乱序参数异常且包质量参数中乱序参数正常,可以确定异常的帧质量参数和所述异常的包质量参数满足第一条件,进而确定导致视频质量问题的原因出现在视频编码过程中,视频编码过程由视频编码使用的设备主导,且视频编码使用的设备有且只有一个,因此可以唯一确定导致出现视频编码问题的设备是视频编码使用的设备。For example, as shown in Figure 11, if the frame loss parameter in the frame quality parameter is abnormal and the packet loss parameter in the packet quality parameter is normal, or the frame disorder parameter in the frame quality parameter is abnormal and the disorder parameter in the packet quality parameter is normal , it can be determined that the abnormal frame quality parameter and the abnormal packet quality parameter meet the first condition, and then determine that the cause of the video quality problem occurs during the video encoding process, the video encoding process is dominated by the equipment used for video encoding, and the video encoding There is one and only one device used, so the only device that can be sure to cause the video encoding problem is the device used for video encoding.
实际应用中,可以设置为只要能够确定帧质量参数和包质量参数满足第一条件中的任意一种可能,即可直接确定导致视频播放端视频质量异常的原因及设备,而不必再确定帧质量参数和包质量参数是否满足第一条件中的剩余的另一种可能。或者,也可以设置为确定帧质量参数和包质量参数是否满足第一条件中的每一种可能,在确定帧质量参数和包质量参数满足第一条件中的至少一种可能后,再确定导致视频播放端视频质量异常的原因及设备。本领 域人员应理解,上述两种设置方式均可以用于确定导致视频播放端视频质量异常的原因及设备,本申请对此不作限制。In practical applications, it can be set so that as long as the frame quality parameter and packet quality parameter can be determined to meet any possibility in the first condition, the cause and device that cause the abnormal video quality at the video playback end can be directly determined without having to determine the frame quality There is another possibility whether the parameter and the packet quality parameter satisfy the remaining ones in the first condition. Alternatively, it may also be set to determine whether the frame quality parameter and the packet quality parameter satisfy each possibility in the first condition, and after determining that the frame quality parameter and the packet quality parameter satisfy at least one possibility in the first condition, then determine the result Reasons and equipment for abnormal video quality at the video playback end. Those skilled in the art should understand that both of the above two setting methods can be used to determine the cause and equipment that cause the abnormal video quality of the video playback terminal, and this application does not limit this.
在一种可能的实现方式中,步骤S3,包括:In a possible implementation, step S3 includes:
针对任一视频帧,所述视频帧的帧质量参数和所述视频帧对应的数据包的包质量参数满足第二条件时,确定导致视频播放端视频质量异常的原因是终端参数问题,确定导致视频播放端视频质量异常的设备是视频播放使用的设备;For any video frame, when the frame quality parameter of the video frame and the packet quality parameter of the data packet corresponding to the video frame meet the second condition, it is determined that the cause of the abnormal video quality at the video playback end is a terminal parameter problem, and it is determined that the cause The device with abnormal video quality at the video playback end is the device used for video playback;
其中,所述第二条件包括:Wherein, the second condition includes:
所述视频帧的帧首包抖动参数和帧尾包抖动参数中的任一参数异常且所述视频帧对应的数据包的IP报文分片参数、校验和错误参数中的任一参数异常。Any parameter in the frame header jitter parameter and frame tail packet jitter parameter of the video frame is abnormal and any parameter in the IP packet fragmentation parameter and checksum error parameter of the data packet corresponding to the video frame is abnormal .
由于数据包的协议信息是在网络设备和视频播放端处获取的,因此,帧质量参数和包质量参数可以体现传输过程中的异常情况,帧首包抖动参数/帧尾包抖动参数异常表示视频帧下第一个/最后一个数据包在传输时的时延抖动过大,如果此时视频帧下的数据包的IP报文分片参数异常,表示数据包在传输过程中经历了分片,因此可以确定视频播放端的参数配置未能满足数据包在不分片时进行传输的要求;如果此时视频帧下的数据包的校验和错误参数异常,表示数据包在传输过程中未能与视频播放端成功完成校验,因此可以确定视频播放端的参数配置未能满足与数据包成功校验的要求;基于上述原因,第二条件,即所述视频帧的帧首包抖动参数和帧尾包抖动参数中的任一参数异常且所述视频帧对应的数据包的IP报文分片参数、校验和错误参数中的任一参数异常,能够准确反映出终端参数问题。Since the protocol information of the data packet is obtained at the network device and the video player, the frame quality parameter and the packet quality parameter can reflect the abnormal situation in the transmission process, and the abnormality of the first frame packet jitter parameter/frame end packet jitter parameter indicates that the video The delay jitter of the first/last data packet in the frame is too large during transmission. If the IP packet fragmentation parameter of the data packet in the video frame is abnormal at this time, it means that the data packet has experienced fragmentation during transmission. Therefore, it can be determined that the parameter configuration of the video playback terminal fails to meet the requirements for data packets to be transmitted without fragmentation; The video playback end successfully completes the verification, so it can be determined that the parameter configuration of the video playback end fails to meet the requirements for successful verification of the data packet; based on the above reasons, the second condition, that is, the first frame packet jitter parameter and the end of the frame of the video frame Any parameter in the packet jitter parameters is abnormal and any parameter in the IP packet fragmentation parameter and the checksum error parameter of the data packet corresponding to the video frame is abnormal, which can accurately reflect the terminal parameter problem.
举例来说,如图11所示,如果帧质量参数中帧首包抖动参数/帧尾包抖动参数异常且包质量参数中IP报文分片参数/校验和错误参数正常,可以确定异常的帧质量参数和所述异常的包质量参数满足第二条件,进而确定是导致视频质量问题的原因出现在视频播放过程中的播放参数上,视频播放过程由视频播放使用的设备主导,且视频播放使用的设备有且只有一个(也即视频播放端),因此可以唯一确定导致出现终端参数问题的设备是视频播放使用的设备。For example, as shown in Figure 11, if the frame first packet jitter parameter/frame end packet jitter parameter in the frame quality parameter is abnormal and the IP packet fragmentation parameter/checksum error parameter in the packet quality parameter is normal, it can be determined that the abnormal The frame quality parameter and the abnormal packet quality parameter meet the second condition, and then it is determined that the cause of the video quality problem appears on the playback parameters during the video playback process, the video playback process is dominated by the device used for video playback, and the video playback There is only one device used (that is, the video playback terminal), so it can be uniquely determined that the device that causes the terminal parameter problem is the device used for video playback.
实际应用中,可以设置为只要能够确定帧质量参数和包质量参数满足第二条件中的任意一种可能,即可直接确定导致视频播放端视频质量异常的原因及设备,而不必再确定帧质量参数和包质量参数是否满足第二条件中的剩余的可能情况。或者,也可以设置为确定帧质量参数和包质量参数是否满足第二条件中的每一种可能,在确定帧质量参数和包质量参数满足第二条件中的至少一种可能后,再确定导致视频播放端视频质量异常的原因及设备。本领域人员应理解,上述两种设置方式均可以用于导致视频播放端视频质量异常的原因及设备的确定,本申请对此不作限制。In practical applications, it can be set so that as long as the frame quality parameter and packet quality parameter can be determined to meet any of the possibilities in the second condition, the cause and device that cause the abnormal video quality at the video playback end can be directly determined without having to determine the frame quality parameters and packet quality parameters satisfy the remaining possible cases in the second condition. Alternatively, it may also be set to determine whether the frame quality parameter and the packet quality parameter satisfy each possibility in the second condition, and after determining that the frame quality parameter and the packet quality parameter satisfy at least one possibility in the second condition, then determine the result Reasons and equipment for abnormal video quality at the video playback end. Those skilled in the art should understand that both of the above two setting methods can be used to determine the cause of the abnormal video quality of the video player and the determination of the device, which is not limited in the present application.
在一种可能的实现方式中,步骤S3,包括:In a possible implementation, step S3 includes:
针对任一视频帧,所述视频帧的帧质量参数和所述视频帧对应的数据包的包质量参数满足第三条件时,确定导致视频播放端视频质量异常的原因是网络传输问题;For any video frame, when the frame quality parameter of the video frame and the packet quality parameter of the data packet corresponding to the video frame meet the third condition, it is determined that the cause of the abnormal video quality at the video playback end is a network transmission problem;
其中,所述第三条件包括:Wherein, the third condition includes:
所述视频帧的帧丢包参数异常且所述视频帧对应的数据包的丢包参数异常,或者The frame packet loss parameter of the video frame is abnormal and the packet loss parameter of the data packet corresponding to the video frame is abnormal, or
所述视频帧的帧乱序参数异常且所述视频帧对应的数据包的乱序参数异常,或者The frame out-of-order parameter of the video frame is abnormal and the out-of-order parameter of the data packet corresponding to the video frame is abnormal, or
所述视频帧的帧首包抖动参数和帧尾包抖动参数中的任一参数异常且所述视频帧对应的数据包的包抖动参数、包间隔参数、重传参数、时延参数中的任一参数异常。Any one of the frame header jitter parameters and frame tail packet jitter parameters of the video frame is abnormal and any of the packet jitter parameters, packet interval parameters, retransmission parameters, and delay parameters of the data packets corresponding to the video frame A parameter exception.
由于数据包的协议信息是在网络设备和视频播放端处获取的,因此,帧质量参数和包质量参数可以体现传输过程中的异常情况,帧丢包参数异常表示视频帧下有数据包在传输时处于丢失状态,如果此时视频帧下的数据包的丢包参数异常,表示有数据包在传输过程中丢失,因此可以确定网络传输存在问题;帧乱序参数异常表示视频帧下有数据包在传输时处于乱序状态,如果此时视频帧下的数据包的乱序参数异常,表示有数据包在传输过程中乱序,因此可以确定网络传输存在问题;基于上述原因,第三条件中的“所述视频帧的帧丢包参数异常且所述视频帧对应的数据包的丢包参数异常,或者所述视频帧的帧乱序参数异常且所述视频帧对应的数据包的乱序参数异常”,能够准确反映出网络传输问题;帧首包抖动参数/帧尾包抖动参数异常表示视频帧下第一个/最后一个数据包在传输时的时延抖动过大,如果此时视频帧下的数据包的包间隔参数异常,表示两个数据包在传输过程中的时间差过大,可以确定网络传输存在问题;如果此时视频帧下的数据包的包抖动参数异常,表示数据包在传输过程中的时延抖动过大,可以确定网络传输存在问题;如果此时视频帧下的数据包的重传参数异常,表示数据包在传输过程中经历多次传输,可以确定网络传输存在问题;如果此时视频帧下的数据包的时延参数异常,表示数据包在传输过程中传输耗时过长,可以确定网络传输存在问题。基于上述原因,第三条件中的“所述视频帧的帧首包抖动参数和帧尾包抖动参数中的任一参数异常且所述视频帧对应的数据包的包抖动参数、包间隔参数、重传参数、时延参数中的任一参数异常”能够准确反映出终端参数问题。Since the protocol information of the data packet is obtained at the network device and the video player, the frame quality parameter and the packet quality parameter can reflect the abnormal situation in the transmission process, and the frame packet loss parameter abnormality indicates that there is a data packet under the video frame being transmitted If the packet loss parameter of the data packet under the video frame is abnormal at this time, it means that there is a data packet lost during transmission, so it can be determined that there is a problem with the network transmission; the abnormal frame disorder parameter indicates that there is a data packet under the video frame It is in an out-of-order state during transmission. If the out-of-order parameters of the data packets under the video frame are abnormal at this time, it means that some data packets are in out-of-order during transmission, so it can be determined that there is a problem in network transmission; based on the above reasons, in the third condition "The frame packet loss parameter of the video frame is abnormal and the packet loss parameter of the data packet corresponding to the video frame is abnormal, or the frame out-of-order parameter of the video frame is abnormal and the out-of-order data packet corresponding to the video frame Abnormal parameter", which can accurately reflect the network transmission problem; the abnormality of the frame first packet jitter parameter/frame end packet jitter parameter indicates that the delay jitter of the first/last data packet under the video frame is too large during transmission. If the packet interval parameter of the data packet under the frame is abnormal, it means that the time difference between the two data packets in the transmission process is too large, and it can be determined that there is a problem in the network transmission; if the packet jitter parameter of the data packet under the video frame is abnormal at this time, it means that the data packet If the delay and jitter in the transmission process is too large, it can be determined that there is a problem in network transmission; if the retransmission parameters of the data packet under the video frame are abnormal at this time, it means that the data packet has undergone multiple transmissions during the transmission process, and it can be determined that there is a network transmission problem. Problem: If the delay parameter of the data packet under the video frame is abnormal at this time, it means that the transmission time of the data packet is too long during the transmission process, and it can be determined that there is a problem with the network transmission. Based on the above reasons, in the third condition "any parameter in the frame header jitter parameter and the frame tail packet jitter parameter of the video frame is abnormal and the packet jitter parameter, the packet interval parameter, and the packet interval parameter of the data packet corresponding to the video frame are Any one of the retransmission parameters and delay parameters is abnormal" can accurately reflect the terminal parameter problem.
举例来说,如图11所示,如果帧质量参数中帧丢包参数异常且包质量参数中丢包参数异常,或者,帧质量参数中帧乱序参数异常且包质量参数中乱序参数异常,或者,帧质量参数中帧首包抖动参数/帧尾包抖动参数异常且包质量参数中包抖动参数/包间隔参数/重传参数/时延参数异常,可以确定异常的帧质量参数和所述异常的包质量参数满足第三条件,进而确定导致视频质量异常的原因出现在网络传输过程中,导致视频质量异常的是网络设备。For example, as shown in Figure 11, if the frame loss parameter in the frame quality parameter is abnormal and the packet loss parameter in the packet quality parameter is abnormal, or the frame disorder parameter in the frame quality parameter is abnormal and the disorder parameter in the packet quality parameter is abnormal , or if the frame first packet jitter parameter/frame end packet jitter parameter in the frame quality parameter is abnormal and the packet jitter parameter/packet interval parameter/retransmission parameter/delay parameter in the packet quality parameter is abnormal, you can determine the abnormal frame quality parameter and all The aforementioned abnormal packet quality parameters meet the third condition, and then it is determined that the cause of the abnormal video quality occurs during network transmission, and the abnormal video quality is caused by network equipment.
表3示出根据本申请实施例确定导致视频质量问题的原因是网络传输问题的一个示例。Table 3 shows an example of determining that the cause of the video quality problem is a network transmission problem according to the embodiment of the present application.
表3table 3
Figure PCTCN2022078279-appb-000003
Figure PCTCN2022078279-appb-000003
参见表3,帧时间戳标识唯一一个帧。一个帧对应的需要查看的包信息可以包括包时间、网络层序列号、传输层序列号、校验和以及包质量参数异常情况。对于异常的包质量参数,可以根据的帧质量参数和包质量参数的关联关系,在“分析结果”列,给出分析得到的导致视频质量问题的结果。针对表3的示例,由于视频帧1的帧丢包参数异常,且视频帧1对应的数据包2的丢包参数异常,视频帧1对应的数据包3的丢包参数异常,因此满足第三条件, 可以确定导致视频质量问题的原因是网络传输问题。Referring to Table 3, a frame timestamp identifies a unique frame. The packet information that needs to be viewed corresponding to a frame may include packet time, network layer sequence number, transport layer sequence number, checksum, and abnormality of packet quality parameters. For abnormal packet quality parameters, according to the association relationship between frame quality parameters and packet quality parameters, in the "Analysis Result" column, the analysis results that lead to video quality problems can be given. For the example of table 3, because the frame packet loss parameter of video frame 1 is abnormal, and the packet loss parameter of data packet 2 corresponding to video frame 1 is abnormal, and the packet loss parameter of data packet 3 corresponding to video frame 1 is abnormal, therefore satisfying the third conditions, it can be determined that the cause of the video quality problem is a network transmission problem.
实际应用中,可以设置为只要能够确定帧质量参数和包质量参数满足第三条件中的任意一种可能,即可直接确定导致视频播放端视频质量异常的原因,而不必再确定帧质量参数和包质量参数是否满足第三条件中的剩余的可能情况。或者,也可以设置为确定帧质量参数和包质量参数是否满足第三条件中的每一种可能,在确定帧质量参数和包质量参数满足第三条件中的至少一种可能后,再确定导致视频播放端视频质量异常的原因。本领域人员应理解,上述两种设置方式均可以用于导致视频播放端视频质量异常的原因的确定,本申请对此不作限制。In practical applications, it can be set so that as long as the frame quality parameter and packet quality parameter can be determined to meet any possibility in the third condition, the cause of the abnormal video quality at the video playback end can be directly determined without having to determine the frame quality parameter and Whether the packet quality parameter satisfies the remaining possibilities in the third condition. Alternatively, it may also be set to determine whether the frame quality parameter and the packet quality parameter satisfy each possibility in the third condition, and after determining that the frame quality parameter and the packet quality parameter satisfy at least one possibility in the third condition, then determine the result The cause of abnormal video quality on the video player side. Those skilled in the art should understand that both of the above two setting manners can be used to determine the cause of the abnormal video quality at the video playback end, which is not limited in the present application.
由于网络传输过程可能使用多个网络设备,因此还可以进一步确定导致出现终端参数问题的具体设备。Since the network transmission process may use multiple network devices, it is also possible to further determine the specific device causing the terminal parameter problem.
在一种可能的实现方式中,确定导致视频播放端视频质量异常的原因是网络传输问题后,步骤S3还包括:In a possible implementation, after determining that the cause of the abnormal video quality at the video playback end is a network transmission problem, step S3 further includes:
根据所述数据包的网络层协议信息,确定异常的包质量参数对应的数据包的网络层序列号;According to the network layer protocol information of the data packet, determine the network layer serial number of the data packet corresponding to the abnormal packet quality parameter;
根据所述数据包的传输层协议信息,确定异常的包质量参数对应的数据包的包时间、传输层序列号、校验和;According to the transport layer protocol information of the data packet, determine the packet time, transport layer sequence number, and checksum of the data packet corresponding to the abnormal packet quality parameter;
接收网络设备上的网络拓扑数据,根据所述网络拓扑数据确定网络中各数据包的传输路径;receiving network topology data on the network device, and determining the transmission path of each data packet in the network according to the network topology data;
根据网络中所述异常的包质量参数对应的数据包的传输路径,找到传输路径上的各网络设备中,包时间、网络层序列号、传输层序列号、校验和均满足条件的数据包;According to the transmission path of the data packet corresponding to the abnormal packet quality parameter described in the network, find the data packet that satisfies the conditions of packet time, network layer serial number, transport layer serial number, and checksum in each network device on the transmission path ;
根据找到的满足条件的数据包的包质量参数,从数据包的传输路径上的各网络设备中,确定导致视频播放端视频质量异常的网络设备。According to the found packet quality parameters of the data packets satisfying the conditions, the network equipment causing the abnormal video quality of the video playback terminal is determined from among the network equipments on the transmission path of the data packets.
每一设备上的数据包的包质量参数可以指示该设备对于该数据包的传输带来的影响,通过找到传输路径上的各网络设备中的对应数据包,使得使用找到的数据包可以统计数据包的传输过程中,不同网络设备对该数据包的传输带来的影响,确定导致视频播放端视频质量异常的原因的具体设备。The packet quality parameter of the data packet on each device can indicate the impact of the device on the transmission of the data packet, and by finding the corresponding data packets in each network device on the transmission path, the statistics can be calculated using the found data packets During the transmission of the packet, the impact of different network devices on the transmission of the data packet, and determine the specific device that causes the abnormal video quality of the video player.
举例来说,确定异常的帧质量参数和所述异常的包质量参数满足第三条件后,根据网络层协议信息,可以确定异常的包质量参数对应的数据包的网络层序列号,根据传输层协议信息,可以确定异常的包质量参数对应的数据包的包时间、传输层序列号、校验和。根据拓扑数据采集装置采集得到的网络拓扑数据,可以得到异常的包质量参数对应的数据包在网络设备上的传输路径。例如,参见表3,异常的包质量参数可例如是数据包2的丢包参数、数据包3的丢包参数,根据网络拓扑数据,可例如确定数据包2、数据包3的传输路径可以是gNB→UDG→EoR。For example, after determining that the abnormal frame quality parameter and the abnormal packet quality parameter meet the third condition, according to the network layer protocol information, the network layer sequence number of the data packet corresponding to the abnormal packet quality parameter can be determined, and according to the transport layer The protocol information can determine the packet time, transport layer sequence number, and checksum of the data packet corresponding to the abnormal packet quality parameter. According to the network topology data collected by the topology data collection device, the transmission path of the data packet corresponding to the abnormal packet quality parameter on the network device can be obtained. For example, referring to Table 3, the abnormal packet quality parameter can be, for example, the packet loss parameter of data packet 2 and the packet loss parameter of data packet 3. According to the network topology data, it can be determined, for example, that the transmission path of data packet 2 and data packet 3 can be gNB→UDG→EoR.
根据网络中异常的包质量参数对应的数据包的传输路径,可以找到传输路径上的各网络设备中,包时间、网络层序列号、传输层序列号、校验和均满足条件的数据包,通过对满足条件的数据包的异常的包质量参数进行对比来确定导致视频播放端视频质量异常的网络设备。例如,参见表3,可以根据数据包2的包时间(8:14:12.008)、网络层序列号(48160)、传输层序列号(3480724955)、校验和(1231221433),以及根据数据包3的包时间(8:14:12.019)、网络层序列号(48162)、传输层序列号(3480726183)、校验和(2134423523),找到满足条 件的数据包。According to the transmission path of the data packet corresponding to the abnormal packet quality parameter in the network, you can find the data packet that meets the conditions of the packet time, network layer serial number, transport layer serial number, and checksum in each network device on the transmission path. By comparing the abnormal packet quality parameters of the data packets that meet the conditions, the network device that causes the abnormal video quality of the video playback terminal is determined. For example, see Table 3, based on packet time (8:14:12.008), network layer sequence number (48160), transport layer sequence number (3480724955), checksum (1231221433) of packet 2, and packet 3 Packet time (8:14:12.019), network layer sequence number (48162), transport layer sequence number (3480726183), checksum (2134423523), and find a packet that meets the conditions.
在一种可能的实现方式中,所述包时间、网络层序列号、传输层序列号、校验和满足的条件包括:In a possible implementation, the packet time, the network layer serial number, the transport layer serial number, and the checksum satisfying conditions include:
包时间与所述异常的包质量参数对应的数据包的包时间之差的绝对值小于预设阈值,并且,网络层序列号、传输层序列号、校验和与所述异常的包质量参数对应的数据包的网络层序列号、传输层序列号、校验和均相同。The absolute value of the difference between the packet time and the packet time of the data packet corresponding to the abnormal packet quality parameter is less than a preset threshold, and the network layer sequence number, the transport layer sequence number, the checksum and the abnormal packet quality parameter The network layer sequence number, transport layer sequence number, and checksum of the corresponding data packets are all the same.
通过这种方式,可以找到传输路径上不同的网络设备上的同一数据包。使得对于同一数据包,根据传输路径上的各设备的同一数据包的包质量参数异常情况,可以推断出导致其在不同设备上包质量参数异常的原因是当前设备或者当前设备的上游设备中的一个,通过进一步确定上游设备上包质量参数异常情况,可以准确地确定导致视频播放端视频质量异常的原因是网络传输问题时,导致视频播放端视频质量异常的具体网络设备。In this way, the same data packet on different network devices along the transmission path can be found. For the same data packet, according to the abnormality of the packet quality parameters of the same data packet of each device on the transmission path, it can be inferred that the cause of the abnormality of the packet quality parameters on different devices is the current device or the upstream device of the current device. One, by further determining the abnormality of the packet quality parameters on the upstream device, it can be accurately determined that the cause of the abnormal video quality at the video playback end is a network transmission problem, and the specific network device that causes the abnormal video quality at the video playback end.
例如,结合表2和表3,可以根据表3中数据包2的网络层序列号(48160)、传输层序列号(3480724955)、校验和(1231221433),在表2中找到满足网络层序列号等于48160、传输层序列号等于3480724955、校验和等于1231221433的数据包,可以找到满足要求的gNB上的数据包3、UDG上的数据包2以及EoR上的数据包2,再进一步确定找到的数据包的包时间与表3中数据包2的包时间(8:14:12.008)之差的绝对值是否小于预设阈值,例如预设阈值的数值可等于0.01,在此情况下,gNB上的数据包3、UDG上的数据包2以及EoR上的数据包2与表3中数据包2的包时间之差的绝对值均小于预设阈值,gNB上的数据包3、UDG上的数据包2以及EoR上的数据包2可以是针对表3的数据包2找到的满足条件的数据包。For example, combining Table 2 and Table 3, according to the network layer sequence number (48160), transport layer sequence number (3480724955), checksum (1231221433) of data packet 2 in Table 3, it can be found in Table 2 that the network layer sequence The data packet whose serial number is equal to 48160, the serial number of the transport layer is equal to 3480724955, and the checksum is equal to 1231221433 can find the data packet 3 on the gNB, the data packet 2 on the UDG, and the data packet 2 on the EoR that meet the requirements, and then further determine to find Whether the absolute value of the difference between the packet time of the data packet and the packet time (8:14:12.008) of data packet 2 in Table 3 is less than the preset threshold, for example, the value of the preset threshold can be equal to 0.01, in this case, gNB The absolute value of the packet time difference between packet 3 on UDG, packet 2 on UDG, and packet 2 on EoR and packet 2 in Table 3 is less than the preset threshold. Packet 3 on gNB, packet 2 on UDG The data packet 2 and the data packet 2 on the EoR may be the data packets found for the data packet 2 in Table 3 that meet the conditions.
可以根据表3中数据包3的网络层序列号(48162)、传输层序列号(3480726183)、校验和(2134423523),在表2中找到满足网络层序列号等于48162、传输层序列号等于3480726183、校验和等于2134423523的数据包,可以找到满足要求的gNB上的数据包5、UDG上的数据包3以及EoR上的数据包3,再进一步确定找到的数据包的包时间与表3中数据包3的包时间(8:14:12.019)之差的绝对值是否小于预设阈值,例如预设阈值的数值可等于0.01,在此情况下,gNB上的数据包5、UDG上的数据包3以及EoR上的数据包3与表3中数据包3的包时间之差的绝对值均小于预设阈值,gNB上的数据包5、UDG上的数据包3以及EoR上的数据包3可以是针对表3的数据包3找到的满足条件的数据包。According to the network layer serial number (48162), transport layer serial number (3480726183), and checksum (2134423523) of data packet 3 in Table 3, it can be found in Table 2 that the network layer serial number is equal to 48162, and the transport layer serial number is equal to 3480726183, the data packet whose checksum is equal to 2134423523, you can find the data packet 5 on the gNB, the data packet 3 on the UDG and the data packet 3 on the EoR that meet the requirements, and then further determine the packet time of the found data packet and Table 3 Whether the absolute value of the difference between the packet time (8:14:12.019) of data packet 3 is less than the preset threshold, for example, the value of the preset threshold can be equal to 0.01, in this case, the data packet 5 on the gNB, the The absolute value of the packet time difference between data packet 3 and data packet 3 on EoR and data packet 3 in Table 3 is less than the preset threshold, data packet 5 on gNB, data packet 3 on UDG and data packet on EoR 3 may be the packet found for packet 3 in Table 3 that satisfies the condition.
根据找到的满足条件的数据包的包质量参数,可以确定导致视频播放端视频质量异常的具体网络设备。图12示出根据本申请实施例确定导致视频播放端视频质量异常的具体网络设备的一个示例。According to the found packet quality parameters of the data packets satisfying the conditions, the specific network device causing the abnormal video quality at the video playback end can be determined. FIG. 12 shows an example of determining a specific network device that causes abnormal video quality at a video player end according to an embodiment of the present application.
举例来说,如图12所示,A、B、C分别为gNB,UDG和EoR,以针对表3的数据包2找到的满足条件的gNB,UDG和EoR上的数据包(以下简称为A、B、C设备上数据包)为例,根据网络拓扑数据,可以确定数据包的传输路径是gNB→UDG→EoR。表3的数据包2的异常的包质量参数是丢包参数,A、B、C设备上数据包的丢包参数都异常时,可以确定出是A设备(gNB)引入的丢包,进而导致了视频质量异常;B、C上数据包的丢包参数异常,A设备上数据包的丢包参数正常时,可以确定出B设备(UDG)引入丢包,进而导致了视频质量异常;C设备上数据包的丢包参数异常,A、B设备上数据包的丢包参数正常时,可以确定出是C设备(EoR)引入丢包,进而导致了视频质量异常。For example, as shown in Figure 12, A, B, and C are gNB, UDG, and EoR respectively, and the data packets on gNB, UDG, and EoR that meet the conditions found for data packet 2 in Table 3 (hereinafter referred to as A , B, and C devices) as an example, according to the network topology data, it can be determined that the transmission path of the data packet is gNB→UDG→EoR. The abnormal packet quality parameter of data packet 2 in Table 3 is the packet loss parameter. When the packet loss parameters of the data packets on devices A, B, and C are all abnormal, it can be determined that the packet loss introduced by device A (gNB) leads to The video quality is abnormal; the packet loss parameters of data packets on B and C are abnormal, and when the packet loss parameters of data packets on device A are normal, it can be determined that device B (UDG) introduces packet loss, which leads to abnormal video quality; device C The packet loss parameters of the above data packets are abnormal, and when the packet loss parameters of the data packets on devices A and B are normal, it can be determined that device C (EoR) introduces packet loss, which leads to abnormal video quality.
理论上,根据gNB→UDG→EoR的传输路径,如果A设备的丢包参数异常,则B、C设备的 丢包参数必定异常;如果B设备的丢包参数异常,则C设备的丢包参数必定异常。然而,通过探针采集协议信息时,可能会出现采集失误情况,使得协议信息出现误差,进而使得根据协议信息确定的包质量参数也可能出现误差,因此,根据传输路径上不同的网络设备上找到的满足条件的数据包,确定导致视频质量问题的网络设备时,还可以进一步排除由协议信息采集误差的影响。例如,A、B设备上数据包的丢包参数异常,C设备上数据包的丢包参数正常时,可以认为从C设备上采集协议信息时出现误差,可以确定出A设备引入丢包,进而导致了视频质量异常;A、C设备上数据包的丢包参数异常,B设备上数据包的丢包参数正常时,可以认为从B设备上采集协议信息时出现误差,可以确定出A设备引入丢包,进而导致了视频质量异常。Theoretically, according to the transmission path of gNB→UDG→EoR, if the packet loss parameters of device A are abnormal, the packet loss parameters of devices B and C must be abnormal; if the packet loss parameters of device B are abnormal, the packet loss parameters of device C must be abnormal. Must be abnormal. However, when collecting protocol information through probes, collection errors may occur, causing errors in the protocol information, which in turn may cause errors in the packet quality parameters determined according to the protocol information. Therefore, according to different network devices found on the transmission path When determining the network device that causes the video quality problem of the data packets that meet the conditions, the influence of the protocol information collection error can be further excluded. For example, if the packet loss parameters of data packets on devices A and B are abnormal, and the packet loss parameters of data packets on device C are normal, it can be considered that there is an error when collecting protocol information from device C, and it can be determined that device A has introduced packet loss, and then The video quality is abnormal; the packet loss parameters on devices A and C are abnormal, and when the packet loss parameters on device B are normal, it can be considered that there is an error when collecting protocol information from device B, and it can be determined that device A introduced Packet loss, resulting in abnormal video quality.
A、B、C设备上数据包的丢包参数情况还可以有其他示例,例如,A、B、C设备上数据包的丢包参数都正常的示例,A设备上数据包的丢包参数异常,B、C设备上数据包的丢包参数正常的示例,B设备上数据包的丢包参数异常,A、C设备上数据包的丢包参数正常的示例,由于这些示例出现概率极低,在此不作详细描述。There are other examples of packet loss parameters on devices A, B, and C. For example, the packet loss parameters on devices A, B, and C are all normal, and the packet loss parameters on device A are abnormal. , Examples of normal packet loss parameters on devices B and C, abnormal packet loss parameters on device B, and normal packet loss parameters on devices A and C, because these examples have a very low probability of occurrence, It will not be described in detail here.
通过这种方式,可以区分设备上的协议信息采集误差和传输过程的数据包丢包的不同情况,提升确定导致视频播放端视频质量异常的设备的准确性。In this way, different situations of protocol information collection errors on the device and data packet loss during transmission can be distinguished, and the accuracy of determining the device that causes abnormal video quality at the video playback end can be improved.
采用上述方法进行对比分析后,可以得到如表4所示的对比结果。After comparative analysis using the above method, the comparative results shown in Table 4 can be obtained.
表4Table 4
Figure PCTCN2022078279-appb-000004
Figure PCTCN2022078279-appb-000004
参见表4,其中,每个包质量参数异常的数据包(包2,包3)用网络层序列号、传输层序列号和校验和唯一标识。异常的包质量参数为需要对找到的数据包进行对比的包质量参数。丢包情况代表该设备上对于数据包的需要对比的异常的包质量参数的异常情况,0表示该包质量参数正常,1表示该包质量参数异常。结合图11,可以确定得出引发表3的数据包2和数据包3异常,进而导致视频质量异常的网络设备是UDG。See Table 4, wherein each data packet (packet 2, packet 3) with abnormal packet quality parameters is uniquely identified by a network layer sequence number, a transport layer sequence number and a checksum. The abnormal packet quality parameter is a packet quality parameter that needs to be compared with the found data packets. The packet loss represents the abnormality of the abnormal packet quality parameters that need to be compared on the device. 0 means that the packet quality parameters are normal, and 1 means that the packet quality parameters are abnormal. Combining with FIG. 11 , it can be determined that the network device that causes the abnormality of data packet 2 and data packet 3 in Table 3 and then causes abnormal video quality is UDG.
其中,表4的示例中,针对不同的数据包,确定的导致视频质量异常的网络设备是相同的,在其他的应用场景中,由于误差原因,也可能会出现针对不同的数据包确定的导致视频质量异常的网络设备有多个的情况。在此情况下,可以进一步对确定的导致视频质量异常的多个网络设备进行筛选,得到导致视频质量异常的可能性最大的一个网络设备。Among them, in the example of Table 4, for different data packets, the determined network devices that cause abnormal video quality are the same, and in other application scenarios, due to errors, it may also occur There are many cases of network devices with abnormal video quality. In this case, the determined multiple network devices that cause abnormal video quality may be further screened to obtain a network device that is most likely to cause abnormal video quality.
在一种可能的实现方式中,所述异常的包质量参数对应的数据包有多个时,找到的满足条件的数据包有多组,In a possible implementation manner, when there are multiple data packets corresponding to the abnormal packet quality parameter, multiple groups of data packets satisfying the conditions are found,
根据找到的满足条件的数据包的包质量参数,从数据包的传输路径上的各网络设备中,确定导致视频播放端视频质量异常的网络设备,包括:According to the packet quality parameters of the found data packets that meet the conditions, from each network device on the transmission path of the data packet, determine the network device that causes the abnormal video quality of the video player, including:
根据多组满足条件的数据包的包质量参数,从数据包的传输路径上的各网络设备中,多次确定可能导致视频播放端视频质量异常的网络设备;According to the packet quality parameters of multiple sets of data packets that meet the conditions, from each network device on the transmission path of the data packet, repeatedly determine the network device that may cause abnormal video quality at the video playback end;
统计多次确定的可能导致视频播放端视频质量异常的网络设备中,出现次数最多的网络设备,作为导致视频播放端视频质量异常的网络设备。Among the network devices that may cause abnormal video quality at the video playback end, the network device with the most occurrences is counted as the network device that causes abnormal video quality at the video playback end.
通过使用多个数据包在传输路径上的各网络设备上的包质量参数进行多次确定,可以提升确定的导致视频质量异常的网络设备的准确度,从而使得针对确定的导致视频质量异常的网络设备执行对应的解决方案后,因同一设备出现同样问题使得视频质量异常的概率得以降低。By using the packet quality parameters of multiple data packets on each network device on the transmission path to perform multiple determinations, the accuracy of the determined network device that causes abnormal video quality can be improved, so that the determined network that causes abnormal video quality After the device implements the corresponding solution, the probability of abnormal video quality caused by the same problem on the same device is reduced.
举例来说,根据所有异常视频帧下所有“引发异常的设备”列的设备出现次数统计,确定导致视频质量异常的可能性最大的网络设备。结合表4,UDG引发的丢包参数异常有2次,其他设备丢包参数异常有0次,则导致视频质量异常的可能性最大的网络设备是UDG。如果另一个示例中,UDG引发的丢包参数异常有2次,EoR引发的丢包参数异常有5次,gNB引发的丢包参数异常有0次,则导致视频质量异常的可能性最大的网络设备是EoR。For example, according to the statistics of the number of occurrences of all devices in the "device causing exception" column under all abnormal video frames, the network device most likely to cause abnormal video quality is determined. Combined with Table 4, there are 2 times of abnormal packet loss parameters caused by UDG, and 0 times of abnormal packet loss parameters caused by other devices, so the network device most likely to cause abnormal video quality is UDG. If in another example, there are 2 packet loss parameter exceptions caused by UDG, 5 packet loss parameter exceptions caused by EoR, and 0 packet loss parameter exceptions caused by gNB, then the network with the greatest possibility of video quality abnormality The device is EoR.
图13示出根据本申请实施例的视频质量问题确定装置的示例性结构示意图。Fig. 13 shows an exemplary structural diagram of an apparatus for determining a video quality problem according to an embodiment of the present application.
如图13所示,在一种可能的实现方式中,本申请还提出一种视频质量问题确定装置,所述装置包括:信息接收模块130,用于接收视频播放端和网络设备上的协议信息,所述网络设备用于将视频数据传输至视频播放端,所述协议信息指示视频帧的发送方式,所述视频帧包括多个数据包;参数确定模块131,用于根据所述协议信息确定异常的帧质量参数以及异常的包质量参数,所述异常的帧质量参数表示所述异常的帧质量参数所属的视频帧的质量异常,所述异常的包质量参数表示所述异常的包质量参数所属的数据包的质量异常;异常原因确定模块132,用于根据所述异常的帧质量参数和/或所述异常的包质量参数确定导致视频播放端视频质量异常的原因及设备。As shown in FIG. 13 , in a possible implementation, the present application also proposes an apparatus for determining video quality problems, the apparatus including: an information receiving module 130, configured to receive protocol information on the video playback terminal and network equipment , the network device is used to transmit the video data to the video player, the protocol information indicates the sending mode of the video frame, and the video frame includes a plurality of data packets; the parameter determination module 131 is used to determine according to the protocol information An abnormal frame quality parameter and an abnormal packet quality parameter, the abnormal frame quality parameter indicating that the quality of the video frame to which the abnormal frame quality parameter belongs is abnormal, and the abnormal packet quality parameter indicating the abnormal packet quality parameter The quality of the associated data packet is abnormal; the abnormal cause determination module 132 is used to determine the cause and equipment that cause the abnormal video quality of the video playback terminal according to the abnormal frame quality parameter and/or the abnormal packet quality parameter.
在一种可能的实现方式中,所述协议信息包括数据包的流媒体层协议信息、网络层协议信息和传输层协议信息,所述流媒体层协议信息包括视频播放端上的数据包的流媒体层协议信息,所述网络层协议信息包括网络设备上以及视频播放端上的数据包的网络层协议信息,所述传输层协议信息包括网络设备上以及视频播放端上的数据包的传输层协议信息,所述根据所述协议信息确定异常的帧质量参数以及异常的包质量参数包括:根据所述流媒体层协议信息,确定至少一个视频帧和所述至少一个视频帧中各帧对应的各数据包;根据所述流媒体层协议信息和所述网络层协议信息,确定所述至少一个视频帧中各帧的帧质量参数;根据所述网络层协议信息和所述传输层协议信息,确定所述至少一个视频帧中各帧对应的各数据包的包质量参数;根据所述至少一个视频帧中各帧对应的帧质量参数以及帧质量参数阈值,确定所述异常的帧质量参数,根据所述至少一个视频帧中各帧对应的各数据包的包质量参数以及包质量参数阈值,确定所述异常的包质量参数。In a possible implementation manner, the protocol information includes streaming media layer protocol information, network layer protocol information, and transport layer protocol information of the data packet, and the streaming media layer protocol information includes the flow of the data packet on the video playback end. Media layer protocol information, the network layer protocol information includes the network layer protocol information of the data packet on the network device and the video playback end, and the transport layer protocol information includes the transport layer of the data packet on the network device and the video playback end Protocol information, the determination of abnormal frame quality parameters and abnormal packet quality parameters according to the protocol information includes: according to the streaming media layer protocol information, determining at least one video frame and the frame corresponding to each frame in the at least one video frame Each data packet; according to the streaming media layer protocol information and the network layer protocol information, determine the frame quality parameters of each frame in the at least one video frame; according to the network layer protocol information and the transport layer protocol information, Determining the packet quality parameter of each data packet corresponding to each frame in the at least one video frame; determining the abnormal frame quality parameter according to the frame quality parameter corresponding to each frame in the at least one video frame and the frame quality parameter threshold, The abnormal packet quality parameter is determined according to the packet quality parameter of each data packet corresponding to each frame in the at least one video frame and the packet quality parameter threshold.
在一种可能的实现方式中,所述根据所述至少一个视频帧中各帧对应的帧质量参数以及帧质量参数阈值,确定所述异常的帧质量参数,根据所述至少一个视频帧中各帧对应的各数据包的包质量参数以及包质量参数阈值,确定所述异常的包质量参数,包括:针对所述至少一个视频帧的每一帧,将该视频帧的帧质量参数中,数值大于所述帧质量参数阈值的帧质量参数,确定为所述异常的帧质量参数;针对所述至少一个视频帧的每一帧,将该视频帧对应的数据包的包质量参数中,数值大于所述包质量参数阈值的包质量参数,确定为所述异常的包质量参数。In a possible implementation manner, the abnormal frame quality parameter is determined according to the frame quality parameter corresponding to each frame in the at least one video frame and the frame quality parameter threshold, and the abnormal frame quality parameter is determined according to each frame quality parameter in the at least one video frame. The packet quality parameter of each data packet corresponding to the frame and the packet quality parameter threshold value, determining the abnormal packet quality parameter includes: for each frame of the at least one video frame, among the frame quality parameters of the video frame, the value A frame quality parameter greater than the frame quality parameter threshold is determined as the abnormal frame quality parameter; for each frame of the at least one video frame, among the packet quality parameters of the data packet corresponding to the video frame, the value is greater than The packet quality parameter of the packet quality parameter threshold is determined as the abnormal packet quality parameter.
在一种可能的实现方式中,所述数据包的流媒体层协议信息包括指示数据包所属的视频 帧的帧时间戳,所述数据包的网络层协议信息包括指示数据包的时间的包时间,所述帧质量参数包括帧首包抖动参数和帧尾包抖动参数,所述帧首包抖动参数表示视频帧对应的第一个数据包的时延抖动情况,所述帧尾包抖动参数表示视频帧对应的最后一个数据包的时延抖动情况,所述根据所述流媒体层协议信息和所述网络层协议信息,确定所述至少一个视频帧中各帧的帧质量参数,包括:针对所述至少一个视频帧的每一帧,根据该视频帧对应的数据包的包时间确定该视频帧的首包到达时间和尾包到达时间,所述首包到达时间表示视频帧对应的第一个数据包的到达时间,所述尾包到达时间表示视频帧对应的最后一个数据包的到达时间;根据所述首包到达时间、尾包到达时间,分别计算相邻视频帧的首包间隔和尾包间隔,所述首包间隔表示相邻视频帧对应的第一个数据包的到达时间差,所述尾包间隔表示相邻视频帧对应的最后一个数据包的到达时间差;根据所述帧时间戳,分别计算相邻视频帧的帧间隔;根据所述首包间隔、帧间隔,以及前一视频帧的帧首包抖动参数,计算当前视频帧的帧首包抖动参数;根据所述尾包间隔、帧间隔,以及前一视频帧的帧尾包抖动参数,计算当前视频帧的帧尾包抖动参数。In a possible implementation manner, the streaming media layer protocol information of the data packet includes a frame time stamp indicating the video frame to which the data packet belongs, and the network layer protocol information of the data packet includes a packet time indicating the time of the data packet , the frame quality parameter includes a frame header jitter parameter and a frame tail packet jitter parameter, the frame header jitter parameter represents the delay jitter of the first data packet corresponding to the video frame, and the frame tail packet jitter parameter represents The delay and jitter situation of the last data packet corresponding to the video frame, according to the streaming media layer protocol information and the network layer protocol information, determine the frame quality parameters of each frame in the at least one video frame, including: for For each frame of the at least one video frame, the arrival time of the first packet and the arrival time of the last packet of the video frame are determined according to the packet time of the data packet corresponding to the video frame, and the arrival time of the first packet represents the first packet corresponding to the video frame. The arrival time of a data packet, the arrival time of the last packet corresponding to the video frame is represented by the tail packet arrival time; according to the arrival time of the first packet and the arrival time of the tail packet, the first packet interval and the first packet interval of adjacent video frames are calculated respectively. The tail packet interval, the first packet interval represents the arrival time difference of the first data packet corresponding to the adjacent video frame, and the tail packet interval represents the arrival time difference of the last data packet corresponding to the adjacent video frame; according to the frame time stamp, respectively calculate the frame interval of adjacent video frames; according to the first packet interval, frame interval, and the frame first packet jitter parameter of the previous video frame, calculate the frame first packet jitter parameter of the current video frame; according to the tail packet interval, frame interval, and the frame end packet jitter parameter of the previous video frame, and calculate the frame end packet jitter parameter of the current video frame.
在一种可能的实现方式中,所述数据包的流媒体层协议信息包括指示数据包在所属的视频帧中的顺序的流媒体层序列号,所述数据包的网络层协议信息包括指示数据包的时间的包时间,所述帧质量参数包括帧丢包参数和帧乱序参数,所述帧丢包参数表示视频帧的数据包的丢失情况,所述帧乱序参数表示视频帧的数据包的乱序情况,所述根据所述流媒体层协议信息和所述网络层协议信息,确定所述至少一个视频帧中各帧的帧质量参数,包括:针对所述至少一个视频帧的每一帧,根据该视频帧对应的数据包的流媒体层序列号,确定该视频帧的帧丢包参数;针对所述至少一个视频帧的每一帧,根据该视频帧对应的数据包的包时间的先后顺序,对该视频帧对应的数据包进行排序,得到该视频帧对应的排序结果,根据所述排序结果以及该视频帧对应的数据包的流媒体层序列号,确定该视频帧的帧乱序参数。In a possible implementation manner, the streaming media layer protocol information of the data packet includes a streaming media layer sequence number indicating the sequence of the data packet in the video frame to which it belongs, and the network layer protocol information of the data packet includes indicating data The packet time of the time of packet, described frame quality parameter comprises frame packet loss parameter and frame disorder parameter, and described frame packet loss parameter represents the loss situation of the data packet of video frame, and described frame disorder parameter represents the data of video frame Out-of-sequence situation of the packet, said determining the frame quality parameters of each frame in the at least one video frame according to the streaming media layer protocol information and the network layer protocol information, including: for each frame of the at least one video frame One frame, according to the streaming media layer sequence number of the data packet corresponding to the video frame, determine the frame packet loss parameter of the video frame; for each frame of the at least one video frame, according to the packet of the data packet corresponding to the video frame In order of time, the data packets corresponding to the video frame are sorted to obtain the corresponding sorting result of the video frame, and according to the streaming media layer sequence number of the data packet corresponding to the sorting result and the video frame, the video frame is determined Frame out-of-order parameters.
在一种可能的实现方式中,所述针对所述至少一个视频帧的每一帧,根据该视频帧对应的数据包的流媒体层序列号,确定该视频帧的帧丢包参数,包括:针对所述至少一个视频帧的每一帧,根据该视频帧对应的数据包的流媒体层序列号,确定该视频帧对应的数据包的流媒体层序列号的最大值、最小值以及流媒体层序列号个数,根据所述流媒体层序列号的最大值、最小值,确定该视频帧对应的数据包个数的理论值,根据该视频帧对应的数据包个数的理论值与该视频帧对应的数据包的流媒体层序列号个数之差,确定所述该视频帧的帧丢包参数;根据所述排序结果以及该视频帧对应的数据包的流媒体层序列号,确定该视频帧的帧乱序参数,包括:当前数据包的流媒体层序列号的数值大于所述排序结果中、所述当前数据包之前的数据包的流媒体层序列号时,根据所述排序结果中当前数据包的排序序号、当前数据包的流媒体层序列号、以及该视频帧对应的数据包的流媒体层序列号的最小值,确定该视频帧对应的帧乱序参数。In a possible implementation manner, for each frame of the at least one video frame, determining the frame packet loss parameter of the video frame according to the streaming media layer sequence number of the data packet corresponding to the video frame includes: For each frame of the at least one video frame, according to the streaming media layer serial number of the data packet corresponding to the video frame, determine the maximum value, the minimum value and the streaming media layer serial number of the data packet corresponding to the video frame Layer sequence number, according to the maximum value and the minimum value of the streaming media layer sequence number, determine the theoretical value of the data packet number corresponding to the video frame, according to the theoretical value of the data packet number corresponding to the video frame and the The difference of the streaming media layer sequence number of the data packet corresponding to the video frame determines the frame packet loss parameter of the video frame; according to the streaming media layer serial number of the data packet corresponding to the sorting result and the video frame, determine The frame out-of-sequence parameters of the video frame include: when the numerical value of the streaming media layer serial number of the current data packet is greater than the streaming media layer serial number of the data packet before the current data packet in the sorting result, according to the sorting The sequence number of the current data packet in the result, the streaming media layer serial number of the current data packet, and the minimum value of the streaming media layer serial number of the data packet corresponding to the video frame determine the frame out-of-sequence parameter corresponding to the video frame.
在一种可能的实现方式中,所述至少一个视频帧中各帧对应的各数据包的包质量参数根据所述数据包的网络层协议信息以及传输层协议信息确定,所述包质量参数包括:表示当前数据包与前一数据包的时间间隔的包间隔参数、表示当前数据包与前一数据包的时延抖动的包抖动参数、表示数据包乱序情况的乱序参数、表示数据包丢包情况的丢包参数、表示数据包重传情况的重传参数、表示数据包和对应的响应报文的时延情况的时延参数、表示数据包是否存在IP报文分片的IP报文分片参数、表示数据包的校验和是否出现错误的校验和错误 参数中的一个或多个。In a possible implementation manner, the packet quality parameter of each data packet corresponding to each frame in the at least one video frame is determined according to the network layer protocol information and the transport layer protocol information of the data packet, and the packet quality parameter includes : The packet interval parameter that represents the time interval between the current data packet and the previous data packet, the packet jitter parameter that represents the delay jitter between the current data packet and the previous data packet, the out-of-order parameter that represents the disordered state of the data packet, and the data packet Packet loss parameter for packet loss, retransmission parameter for data packet retransmission, delay parameter for data packet and corresponding response message delay, IP packet fragmentation for data packet One or more of the text fragmentation parameter and the checksum error parameter indicating whether the checksum of the data packet is wrong.
在一种可能的实现方式中,所述根据所述异常的帧质量参数和/或所述异常的包质量参数确定导致视频播放端视频质量异常的原因及设备,包括:针对任一视频帧,所述视频帧的帧质量参数和所述视频帧对应的数据包的包质量参数满足第一条件时,确定导致视频播放端视频质量异常的原因是视频编码问题,确定导致视频播放端视频质量异常的设备是视频编码使用的设备;其中,所述第一条件包括:所述视频帧的帧丢包参数异常且所述视频帧对应的数据包的丢包参数正常,或者所述视频帧的帧乱序参数异常且所述视频帧对应的数据包的乱序参数正常。In a possible implementation manner, the determining the cause and device for abnormal video quality at the video playback end according to the abnormal frame quality parameter and/or the abnormal packet quality parameter includes: for any video frame, When the frame quality parameter of the video frame and the packet quality parameter of the data packet corresponding to the video frame meet the first condition, it is determined that the cause of the abnormal video quality at the video playback end is a video encoding problem, and it is determined that the video quality at the video playback end is abnormal The device is a device used for video encoding; wherein the first condition includes: the frame loss parameter of the video frame is abnormal and the packet loss parameter of the data packet corresponding to the video frame is normal, or the frame loss parameter of the video frame The out-of-order parameter is abnormal and the out-of-order parameter of the data packet corresponding to the video frame is normal.
在一种可能的实现方式中,所述根据所述异常的帧质量参数和/或所述异常的包质量参数确定导致视频播放端视频质量异常的原因及设备,包括:针对任一视频帧,所述视频帧的帧质量参数和所述视频帧对应的数据包的包质量参数满足第二条件时,确定导致视频播放端视频质量异常的原因是终端参数问题,确定导致视频播放端视频质量异常的设备是视频播放使用的设备;其中,所述第二条件包括:所述视频帧的帧首包抖动参数和帧尾包抖动参数中的任一参数异常且所述视频帧对应的数据包的IP报文分片参数、校验和错误参数中的任一参数异常。In a possible implementation manner, the determining the cause and device for abnormal video quality at the video playback end according to the abnormal frame quality parameter and/or the abnormal packet quality parameter includes: for any video frame, When the frame quality parameter of the video frame and the packet quality parameter of the data packet corresponding to the video frame meet the second condition, it is determined that the cause of the abnormal video quality at the video playback end is a terminal parameter problem, and it is determined that the video quality at the video playback end is abnormal The device is a device used for video playback; wherein, the second condition includes: any parameter in the first frame packet jitter parameter and the frame end packet jitter parameter of the video frame is abnormal and the data packet corresponding to the video frame Any of the IP packet fragmentation parameters and checksum error parameters is abnormal.
在一种可能的实现方式中,所述根据所述异常的帧质量参数和/或所述异常的包质量参数确定导致视频播放端视频质量异常的原因及设备,包括:针对任一视频帧,所述视频帧的帧质量参数和所述视频帧对应的数据包的包质量参数满足第三条件时,确定导致视频播放端视频质量异常的原因是网络传输问题;其中,所述第三条件包括:所述视频帧的帧丢包参数异常且所述视频帧对应的数据包的丢包参数异常,或者所述视频帧的帧乱序参数异常且所述视频帧对应的数据包的乱序参数异常,或者所述视频帧的帧首包抖动参数和帧尾包抖动参数中的任一参数异常且所述视频帧对应的数据包的包抖动参数、包间隔参数、重传参数、时延参数中的任一参数异常。In a possible implementation manner, the determining the cause and device for abnormal video quality at the video playback end according to the abnormal frame quality parameter and/or the abnormal packet quality parameter includes: for any video frame, When the frame quality parameter of the video frame and the packet quality parameter of the data packet corresponding to the video frame meet the third condition, it is determined that the cause of the abnormal video quality at the video playback end is a network transmission problem; wherein the third condition includes : The frame packet loss parameter of the video frame is abnormal and the packet loss parameter of the data packet corresponding to the video frame is abnormal, or the frame out-of-order parameter of the video frame is abnormal and the out-of-order parameter of the data packet corresponding to the video frame is abnormal Abnormal, or any parameter in the frame first packet jitter parameter and frame end packet jitter parameter of the video frame is abnormal and the packet jitter parameter, packet interval parameter, retransmission parameter, and delay parameter of the data packet corresponding to the video frame Any parameter in is abnormal.
在一种可能的实现方式中,确定导致视频播放端视频质量异常的原因是网络传输问题后,所述根据所述异常的帧质量参数和/或所述异常的包质量参数确定导致视频播放端视频质量异常的原因及设备,还包括:根据所述数据包的网络层协议信息,确定异常的包质量参数对应的数据包的网络层序列号;根据所述数据包的传输层协议信息,确定异常的包质量参数对应的数据包的包时间、传输层序列号、校验和;接收网络设备上的网络拓扑数据,根据所述网络拓扑数据确定网络中各数据包的传输路径;根据网络中所述异常的包质量参数对应的数据包的传输路径,找到传输路径上的各网络设备中,包时间、网络层序列号、传输层序列号、校验和均满足条件的数据包;根据找到的满足条件的数据包的包质量参数,从数据包的传输路径上的各网络设备中,确定导致视频播放端视频质量异常的网络设备。In a possible implementation manner, after it is determined that the cause of the abnormal video quality at the video player end is a network transmission problem, the determination according to the abnormal frame quality parameter and/or the abnormal packet quality parameter causes the video player end The reason and equipment of abnormal video quality also include: according to the network layer protocol information of the data packet, determine the network layer sequence number of the data packet corresponding to the abnormal packet quality parameter; according to the transport layer protocol information of the data packet, determine Packet time, transport layer sequence number, and checksum of the data packet corresponding to the abnormal packet quality parameter; receive network topology data on the network device, and determine the transmission path of each data packet in the network according to the network topology data; The transmission path of the data packet corresponding to the abnormal packet quality parameter is found in each network device on the transmission path, and the packet time, the network layer serial number, the transport layer serial number, and the checksum all meet the conditions; according to the found The packet quality parameters of the data packets satisfying the conditions are determined from the network devices on the transmission path of the data packets to determine the network device that causes the abnormal video quality of the video player.
在一种可能的实现方式中,所述包时间、网络层序列号、传输层序列号、校验和满足的条件包括:包时间与所述异常的包质量参数对应的数据包的包时间之差的绝对值小于预设阈值,并且,网络层序列号、传输层序列号、校验和与所述异常的包质量参数对应的数据包的网络层序列号、传输层序列号、校验和均相同。In a possible implementation manner, the conditions for satisfying the packet time, the network layer sequence number, the transport layer sequence number, and the checksum include: the difference between the packet time and the packet time of the data packet corresponding to the abnormal packet quality parameter The absolute value of the difference is less than the preset threshold, and the network layer sequence number, transport layer sequence number, checksum and the network layer sequence number, transport layer sequence number, checksum of the data packet corresponding to the abnormal packet quality parameter are the same.
在一种可能的实现方式中,所述异常的包质量参数对应的数据包有多个时,找到的满足条件的数据包有多组,根据找到的满足条件的数据包的包质量参数,从数据包的传输路径上的各网络设备中,确定导致视频播放端视频质量异常的网络设备,包括:根据多组满足条件 的数据包的包质量参数,从数据包的传输路径上的各网络设备中,多次确定可能导致视频播放端视频质量异常的网络设备;统计多次确定的可能导致视频播放端视频质量异常的网络设备中,出现次数最多的网络设备,作为导致视频播放端视频质量异常的网络设备。In a possible implementation manner, when there are multiple data packets corresponding to the abnormal packet quality parameter, there are multiple groups of data packets found satisfying the conditions, and according to the packet quality parameters of the found data packets satisfying the conditions, from Among the network devices on the transmission path of the data packet, determine the network device that causes the abnormal video quality of the video player, including: according to the packet quality parameters of multiple sets of data packets that meet the conditions, from each network device on the transmission path of the data packet Among the network devices that may cause abnormal video quality at the video playback end, the network device that may cause abnormal video quality at the video playback end is determined multiple times; among the network devices that may cause abnormal video quality at the video playback end, the network device with the most occurrences is counted as the network device that causes abnormal video quality at the video playback end. network equipment.
本申请的实施例提供了一种视频质量问题确定装置,包括:处理器以及用于存储处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令时实现上述方法。An embodiment of the present application provides an apparatus for determining a video quality problem, including: a processor and a memory for storing instructions executable by the processor; wherein the processor is configured to implement the above method when executing the instructions.
本申请的实施例提供了一种非易失性计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述方法。An embodiment of the present application provides a non-volatile computer-readable storage medium, on which computer program instructions are stored, and when the computer program instructions are executed by a processor, the foregoing method is realized.
本申请的实施例提供了一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,当所述计算机可读代码在电子设备的处理器中运行时,所述电子设备中的处理器执行上述方法。An embodiment of the present application provides a computer program product, including computer-readable codes, or a non-volatile computer-readable storage medium bearing computer-readable codes, when the computer-readable codes are stored in a processor of an electronic device When running in the electronic device, the processor in the electronic device executes the above method.
图14示出根据本申请实施例的视频质量问题确定装置的示例性结构示意图。Fig. 14 shows an exemplary structural diagram of an apparatus for determining a video quality problem according to an embodiment of the present application.
如图14所示,视频质量问题确定装置可以包括手机、可折叠电子设备、平板电脑、桌面型计算机、膝上型计算机、手持计算机、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、蜂窝电话、个人数字助理(personal digital assistant,PDA)、增强现实(augmented reality,AR)设备、虚拟现实(virtual reality,VR)设备、人工智能(artificial intelligence,AI)设备、可穿戴式设备、车载设备、智能家居设备、或智慧城市设备、服务器设备中的至少一种。本申请实施例对该视频质量问题确定装置的具体类型不作特殊限制。As shown in Figure 14, the device for determining video quality problems may include a mobile phone, a foldable electronic device, a tablet computer, a desktop computer, a laptop computer, a handheld computer, a notebook computer, an ultra-mobile personal computer (ultra-mobile personal computer, UMPC) ), netbooks, cellular phones, personal digital assistants (personal digital assistant, PDA), augmented reality (augmented reality, AR) devices, virtual reality (virtual reality, VR) devices, artificial intelligence (artificial intelligence, AI) devices, wearable At least one of portable devices, vehicle-mounted devices, smart home devices, smart city devices, and server devices. The embodiment of the present application does not specifically limit the specific type of the apparatus for determining a video quality problem.
视频质量问题确定装置可以包括处理器110,存储器121,通信模块160。可以理解的是,本申请实施例示意的结构并不构成对视频质量问题确定装置的具体限定。在本申请另一些实施例中,视频质量问题确定装置可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。The apparatus for determining a video quality problem may include a processor 110 , a memory 121 , and a communication module 160 . It can be understood that the structure shown in the embodiment of the present application does not constitute a specific limitation on the apparatus for determining a video quality problem. In some other embodiments of the present application, the device for determining a video quality problem may include more or fewer components than shown in the figure, or combine some components, or split some components, or arrange different components. The illustrated components can be realized in hardware, software or a combination of software and hardware.
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processing unit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。The processor 110 may include one or more processing units, for example: the processor 110 may include an application processor (application processor, AP), a modem processor, a graphics processing unit (graphics processing unit, GPU), an image signal processor (image signal processor, ISP), controller, video codec, digital signal processor (digital signal processor, DSP), baseband processor, and/or neural network processor (neural-network processing unit, NPU), etc. Wherein, different processing units may be independent devices, or may be integrated in one or more processors.
处理器110可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。The processor 110 can generate an operation control signal according to the instruction opcode and the timing signal, and complete the control of fetching and executing the instruction.
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器可以为高速缓冲存储器。该存储器可以保存处理器110用过或使用频率较高的指令或数据。如果处理器110需要使用该指令或数据,可从该存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。A memory may also be provided in the processor 110 for storing instructions and data. In some embodiments, the memory in processor 110 may be a cache memory. The memory may store instructions or data used by the processor 110 or used frequently. If the processor 110 needs to use the instruction or data, it can be called directly from the memory. Repeated access is avoided, and the waiting time of the processor 110 is reduced, thus improving the efficiency of the system.
存储器121可以用于存储计算机可执行程序代码,该可执行程序代码包括指令。存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如异常的帧质量参数确定功能,异常的包质量参数确定功能)等。存储数据区可存储视频质量问题确定装置使用过程中所创建的数据(比如帧质量参数、包质量参数等) 等。此外,存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。处理器110通过运行存储在存储器121的指令,和/或存储在设置于处理器中的存储器的指令,执行视频质量问题确定装置的各种功能方法或上述视频质量问题确定方法。The memory 121 may be used to store computer-executable program code including instructions. The memory 121 may include an area for storing programs and an area for storing data. Wherein, the stored program area can store an operating system, an application program required by at least one function (such as an abnormal frame quality parameter determination function, an abnormal packet quality parameter determination function) and the like. The storage data area can store data (such as frame quality parameters, packet quality parameters, etc.) created during the use of the device for determining video quality problems. In addition, the memory 121 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one magnetic disk storage device, flash memory device, universal flash storage (universal flash storage, UFS) and the like. The processor 110 executes the instructions stored in the memory 121 and/or the instructions stored in the memory provided in the processor to execute various function methods of the device for determining video quality problems or the above-mentioned method for determining video quality problems.
通信模块160可以用于通过无线通信/有线通信的方式从其他装置或设备(例如本申请实施例中的协议信息采集装置、拓扑数据采集装置)接收流式数据(例如本申请实施例中的协议信息、网络拓扑数据),以及向其他装置或设备输出流式数据(例如本申请实施例中确定的导致视频质量问题的原因及设备的信息)。例如可以提供包括WLAN(如Wi-Fi网络)、蓝牙(Bluetooth,BT)、全球导航卫星系统(global navigation satellite system,GNSS)、调频(frequency modulation,FM)、近距离无线通信技术(near field communication,NFC)、红外技术(infrared,IR)等无线通信的解决方案。The communication module 160 can be used to receive streaming data (such as the protocol information collection device in the embodiment of the application) from other devices or equipment (such as the protocol information collection device and the topology data collection device in the embodiment of the application) through wireless communication/wired communication. information, network topology data), and output streaming data to other devices or devices (such as the cause of the video quality problem and device information determined in the embodiment of this application). For example, it can provide WLAN (such as Wi-Fi network), Bluetooth (Bluetooth, BT), global navigation satellite system (global navigation satellite system, GNSS), frequency modulation (frequency modulation, FM), near field communication technology (near field communication) , NFC), infrared technology (infrared, IR) and other wireless communication solutions.
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(Random Access Memory,RAM)、只读存储器(Read Only Memory,ROM)、可擦式可编程只读存储器(Electrically Programmable Read-Only-Memory,EPROM或闪存)、静态随机存取存储器(Static Random-Access Memory,SRAM)、便携式压缩盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、数字多功能盘(Digital Video Disc,DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。A computer readable storage medium may be a tangible device that can retain and store instructions for use by an instruction execution device. A computer readable storage medium may be, for example, but is not limited to, an electrical storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. More specific examples (non-exhaustive list) of computer-readable storage media include: portable computer disk, hard disk, random access memory (Random Access Memory, RAM), read only memory (Read Only Memory, ROM), erasable Electrically Programmable Read-Only-Memory (EPROM or flash memory), Static Random-Access Memory (Static Random-Access Memory, SRAM), Portable Compression Disk Read-Only Memory (Compact Disc Read-Only Memory, CD -ROM), Digital Video Disc (DVD), memory sticks, floppy disks, mechanically encoded devices such as punched cards or raised structures in grooves with instructions stored thereon, and any suitable combination of the foregoing .
这里所描述的计算机可读程序指令或代码可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。Computer readable program instructions or codes described herein may be downloaded from a computer readable storage medium to a respective computing/processing device, or downloaded to an external computer or external storage device over a network, such as the Internet, local area network, wide area network, and/or wireless network. The network may include copper transmission cables, fiber optic transmission, wireless transmission, routers, firewalls, switches, gateway computers, and/or edge servers. A network adapter card or a network interface in each computing/processing device receives computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in a computer-readable storage medium in each computing/processing device .
用于执行本申请操作的计算机程序指令可以是汇编指令、指令集架构(Instruction Set Architecture,ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(Local Area Network,LAN)或广域网(Wide Area Network,WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或可编程逻辑阵列(Programmable Logic Array,PLA),该电子电路可以执行计算机可读程序指令,从而实现本申请的各个方面。Computer program instructions for performing the operations of the present application may be assembly instructions, instruction set architecture (Instruction Set Architecture, ISA) instructions, machine instructions, machine-related instructions, microcode, firmware instructions, state setting data, or in one or more source or object code written in any combination of programming languages, including object-oriented programming languages—such as Smalltalk, C++, etc., and conventional procedural programming languages—such as the “C” language or similar programming languages. Computer readable program instructions may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer, or entirely on the remote computer or server implement. In cases involving a remote computer, the remote computer can be connected to the user's computer through any kind of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or it can be connected to an external computer such as use an Internet service provider to connect via the Internet). In some embodiments, electronic circuits, such as programmable logic circuits, field-programmable gate arrays (Field-Programmable Gate Array, FPGA) or programmable logic arrays (Programmable Logic Array, PLA), the electronic circuit can execute computer-readable program instructions, thereby realizing various aspects of the present application.
这里参照根据本申请实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本申请的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。Aspects of the present application are described herein with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the application. It should be understood that each block of the flowcharts and/or block diagrams, and combinations of blocks in the flowcharts and/or block diagrams, can be implemented by computer-readable program instructions.
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。These computer-readable program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine such that when executed by the processor of the computer or other programmable data processing apparatus , producing an apparatus for realizing the functions/actions specified in one or more blocks in the flowchart and/or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium, and these instructions cause computers, programmable data processing devices and/or other devices to work in a specific way, so that the computer-readable medium storing instructions includes An article of manufacture comprising instructions for implementing various aspects of the functions/acts specified in one or more blocks in flowcharts and/or block diagrams.
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。It is also possible to load computer-readable program instructions into a computer, other programmable data processing device, or other equipment, so that a series of operational steps are performed on the computer, other programmable data processing device, or other equipment to produce a computer-implemented process , so that instructions executed on computers, other programmable data processing devices, or other devices implement the functions/actions specified in one or more blocks in the flowcharts and/or block diagrams.
附图中的流程图和框图显示了根据本申请的多个实施例的装置、系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。The flowchart and block diagrams in the figures show the architecture, functions and operations of possible implementations of apparatuses, systems, methods and computer program products according to various embodiments of the present application. In this regard, each block in a flowchart or block diagram may represent a module, a portion of a program segment, or an instruction that includes one or more Executable instructions. In some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks in succession may, in fact, be executed substantially concurrently, or they may sometimes be executed in the reverse order, depending upon the functionality involved.
也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行相应的功能或动作的硬件(例如电路或ASIC(Application Specific Integrated Circuit,专用集成电路))来实现,或者可以用硬件和软件的组合,如固件等来实现。It should also be noted that each block in the block diagrams and/or flowcharts, and combinations of blocks in the block diagrams and/or flowcharts, can be implemented with hardware (such as circuits or ASIC (Application Specific Integrated Circuit, application-specific integrated circuit)), or can be implemented with a combination of hardware and software, such as firmware.
尽管在此结合各实施例对本发明进行了描述,然而,在实施所要求保护的本发明过程中,本领域技术人员通过查看所述附图、公开内容、以及所附权利要求书,可理解并实现所述公开实施例的其它变化。在权利要求中,“包括”(comprising)一词不排除其他组成部分或步骤,“一”或“一个”不排除多个的情况。单个处理器或其它单元可以实现权利要求中列举的若干项功能。相互不同的从属权利要求中记载了某些措施,但这并不表示这些措施不能组合起来产生良好的效果。Although the present invention has been described in conjunction with various embodiments herein, in the process of implementing the claimed invention, those skilled in the art can understand and Other variations of the disclosed embodiments are implemented. In the claims, the word "comprising" does not exclude other components or steps, and "a" or "an" does not exclude a plurality. A single processor or other unit may fulfill the functions of several items recited in the claims. The mere fact that certain measures are recited in mutually different dependent claims does not indicate that these measures cannot be combined to advantage.
以上已经描述了本申请的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。Having described various embodiments of the present application above, the foregoing description is exemplary, not exhaustive, and is not limited to the disclosed embodiments. Many modifications and alterations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments. The terminology used herein is chosen to best explain the principle of each embodiment, practical application or improvement of technology in the market, or to enable other ordinary skilled in the art to understand each embodiment disclosed herein.

Claims (15)

  1. 一种视频质量问题确定方法,其特征在于,所述方法包括:A method for determining a video quality problem, characterized in that the method comprises:
    接收视频播放端和网络设备上的协议信息,所述网络设备用于将视频数据传输至视频播放端,所述协议信息指示视频帧的发送方式,所述视频帧包括多个数据包;Receiving protocol information on the video playback terminal and network equipment, the network equipment is used to transmit video data to the video playback terminal, the protocol information indicates the transmission mode of the video frame, and the video frame includes a plurality of data packets;
    根据所述协议信息确定异常的帧质量参数以及异常的包质量参数,所述异常的帧质量参数表示所述异常的帧质量参数所属的视频帧的质量异常,所述异常的包质量参数表示所述异常的包质量参数所属的数据包的质量异常;Determine an abnormal frame quality parameter and an abnormal packet quality parameter according to the protocol information, the abnormal frame quality parameter indicates that the quality of the video frame to which the abnormal frame quality parameter belongs is abnormal, and the abnormal packet quality parameter indicates the abnormal quality parameter The quality of the data packet to which the abnormal packet quality parameter belongs is abnormal;
    根据所述异常的帧质量参数和/或所述异常的包质量参数确定导致视频播放端视频质量异常的原因及设备。According to the abnormal frame quality parameter and/or the abnormal packet quality parameter, determine the cause and equipment causing the abnormal video quality at the video playback terminal.
  2. 根据权利要求1所述的方法,其特征在于,所述协议信息包括数据包的流媒体层协议信息、网络层协议信息和传输层协议信息,所述流媒体层协议信息包括视频播放端上的数据包的流媒体层协议信息,所述网络层协议信息包括网络设备上以及视频播放端上的数据包的网络层协议信息,所述传输层协议信息包括网络设备上以及视频播放端上的数据包的传输层协议信息,The method according to claim 1, wherein the protocol information includes streaming media layer protocol information, network layer protocol information and transport layer protocol information of the data packet, and the streaming media layer protocol information includes the The streaming media layer protocol information of the data packet, the network layer protocol information includes the network layer protocol information of the data packet on the network device and the video player, and the transport layer protocol information includes the data on the network device and the video player The transport layer protocol information of the packet,
    所述根据所述协议信息确定异常的帧质量参数以及异常的包质量参数包括:The determining the abnormal frame quality parameter and the abnormal packet quality parameter according to the protocol information includes:
    根据所述流媒体层协议信息,确定至少一个视频帧和所述至少一个视频帧中各帧对应的各数据包;According to the streaming media layer protocol information, determine at least one video frame and each data packet corresponding to each frame in the at least one video frame;
    根据所述流媒体层协议信息和所述网络层协议信息,确定所述至少一个视频帧中各帧的帧质量参数;Determine the frame quality parameters of each frame in the at least one video frame according to the streaming media layer protocol information and the network layer protocol information;
    根据所述网络层协议信息和所述传输层协议信息,确定所述至少一个视频帧中各帧对应的各数据包的包质量参数;According to the network layer protocol information and the transport layer protocol information, determine the packet quality parameters of each data packet corresponding to each frame in the at least one video frame;
    根据所述至少一个视频帧中各帧对应的帧质量参数以及帧质量参数阈值,确定所述异常的帧质量参数,根据所述至少一个视频帧中各帧对应的各数据包的包质量参数以及包质量参数阈值,确定所述异常的包质量参数。Determine the abnormal frame quality parameter according to the frame quality parameter and the frame quality parameter threshold corresponding to each frame in the at least one video frame, and determine the abnormal frame quality parameter according to the packet quality parameter and the packet quality parameter of each data packet corresponding to each frame in the at least one video frame A packet quality parameter threshold is used to determine the abnormal packet quality parameter.
  3. 根据权利要求2所述的方法,其特征在于,所述根据所述至少一个视频帧中各帧对应的帧质量参数以及帧质量参数阈值,确定所述异常的帧质量参数,根据所述至少一个视频帧中各帧对应的各数据包的包质量参数以及包质量参数阈值,确定所述异常的包质量参数,包括:The method according to claim 2, wherein the abnormal frame quality parameter is determined according to the frame quality parameter corresponding to each frame in the at least one video frame and the frame quality parameter threshold, and according to the at least one The packet quality parameters and the packet quality parameter thresholds of each data packet corresponding to each frame in the video frame determine the abnormal packet quality parameters, including:
    针对所述至少一个视频帧的每一帧,将该视频帧的帧质量参数中,数值大于所述帧质量参数阈值的帧质量参数,确定为所述异常的帧质量参数;For each frame of the at least one video frame, among the frame quality parameters of the video frame, the frame quality parameter whose value is greater than the frame quality parameter threshold is determined as the abnormal frame quality parameter;
    针对所述至少一个视频帧的每一帧,将该视频帧对应的数据包的包质量参数中,数值大于所述包质量参数阈值的包质量参数,确定为所述异常的包质量参数。For each frame of the at least one video frame, among the packet quality parameters of the data packets corresponding to the video frame, the packet quality parameter whose value is greater than the packet quality parameter threshold is determined as the abnormal packet quality parameter.
  4. 根据权利要求2或3所述的方法,其特征在于,所述数据包的流媒体层协议信息包括指示数据包所属的视频帧的帧时间戳,所述数据包的网络层协议信息包括指示数据包的时间的包时间,所述帧质量参数包括帧首包抖动参数和帧尾包抖动参数,所述帧首包抖动参数表示视频帧对应的第一个数据包的时延抖动情况,所述帧尾包抖动参数表示视频帧对应的最后一个数据包的时延抖动情况,The method according to claim 2 or 3, wherein the streaming media layer protocol information of the data packet includes a frame time stamp indicating the video frame to which the data packet belongs, and the network layer protocol information of the data packet includes indicating data The packet time of the time of the packet, the frame quality parameter includes a frame first packet jitter parameter and a frame tail packet jitter parameter, and the frame first packet jitter parameter represents the delay jitter situation of the first data packet corresponding to the video frame, and the The frame end packet jitter parameter indicates the delay jitter of the last data packet corresponding to the video frame,
    所述根据所述流媒体层协议信息和所述网络层协议信息,确定所述至少一个视频帧中各帧的帧质量参数,包括:The determining the frame quality parameters of each frame in the at least one video frame according to the streaming media layer protocol information and the network layer protocol information includes:
    针对所述至少一个视频帧的每一帧,根据该视频帧对应的数据包的包时间确定该视频帧的首包到达时间和尾包到达时间,所述首包到达时间表示视频帧对应的第一个数据包的到达时间,所述尾包到达时间表示视频帧对应的最后一个数据包的到达时间;For each frame of the at least one video frame, the first packet arrival time and the last packet arrival time of the video frame are determined according to the packet time of the data packet corresponding to the video frame, and the first packet arrival time represents the first packet arrival time corresponding to the video frame. The arrival time of a data packet, the arrival time of the tail packet represents the arrival time of the last data packet corresponding to the video frame;
    根据所述首包到达时间、尾包到达时间,分别计算相邻视频帧的首包间隔和尾包间隔,所述首包间隔表示相邻视频帧对应的第一个数据包的到达时间差,所述尾包间隔表示相邻视频帧对应的最后一个数据包的到达时间差;According to the arrival time of the first packet and the arrival time of the last packet, the first packet interval and the last packet interval of adjacent video frames are calculated respectively, and the first packet interval represents the arrival time difference of the first data packet corresponding to the adjacent video frame, so Said tail packet interval represents the arrival time difference of the last data packet corresponding to adjacent video frames;
    根据所述帧时间戳,分别计算相邻视频帧的帧间隔;According to the frame time stamp, calculate the frame interval of adjacent video frames respectively;
    根据所述首包间隔、帧间隔,以及前一视频帧的帧首包抖动参数,计算当前视频帧的帧首包抖动参数;According to the first packet interval, the frame interval, and the first frame packet jitter parameter of the previous video frame, calculate the first frame packet jitter parameter of the current video frame;
    根据所述尾包间隔、帧间隔,以及前一视频帧的帧尾包抖动参数,计算当前视频帧的帧尾包抖动参数。According to the trailing packet interval, the frame interval, and the frame trailing packet jitter parameter of the previous video frame, calculate the frame trailing packet jitter parameter of the current video frame.
  5. 根据权利要求2-4中任一项所述的方法,其特征在于,所述数据包的流媒体层协议信息包括指示数据包在所属的视频帧中的顺序的流媒体层序列号,所述数据包的网络层协议信息包括指示数据包的时间的包时间,所述帧质量参数包括帧丢包参数和帧乱序参数,所述帧丢包参数表示视频帧的数据包的丢失情况,所述帧乱序参数表示视频帧的数据包的乱序情况,The method according to any one of claims 2-4, wherein the streaming media layer protocol information of the data packet includes a streaming media layer sequence number indicating the sequence of the data packet in the video frame to which it belongs, the The network layer protocol information of the data packet includes the packet time indicating the time of the data packet, and the frame quality parameter includes a frame packet loss parameter and a frame out-of-sequence parameter, and the frame packet loss parameter represents the loss situation of the data packet of the video frame, so The out-of-sequence parameter of the frame represents the out-of-order situation of the data packet of the video frame,
    所述根据所述流媒体层协议信息和所述网络层协议信息,确定所述至少一个视频帧中各帧的帧质量参数,包括:The determining the frame quality parameters of each frame in the at least one video frame according to the streaming media layer protocol information and the network layer protocol information includes:
    针对所述至少一个视频帧的每一帧,根据该视频帧对应的数据包的流媒体层序列号,确定该视频帧的帧丢包参数;For each frame of the at least one video frame, determine the frame packet loss parameter of the video frame according to the streaming layer sequence number of the data packet corresponding to the video frame;
    针对所述至少一个视频帧的每一帧,根据该视频帧对应的数据包的包时间的先后顺序,对该视频帧对应的数据包进行排序,得到该视频帧对应的排序结果,根据所述排序结果以及该视频帧对应的数据包的流媒体层序列号,确定该视频帧的帧乱序参数。For each frame of the at least one video frame, sort the data packets corresponding to the video frame according to the packet time sequence of the data packets corresponding to the video frame, and obtain the corresponding sorting result of the video frame, according to the The sorting result and the streaming layer sequence number of the data packet corresponding to the video frame determine the frame out-of-sequence parameter of the video frame.
  6. 根据权利要求5所述的方法,其特征在于,所述针对所述至少一个视频帧的每一帧,根据该视频帧对应的数据包的流媒体层序列号,确定该视频帧的帧丢包参数,包括:The method according to claim 5, wherein, for each frame of the at least one video frame, determine the frame loss of the video frame according to the streaming layer serial number of the data packet corresponding to the video frame parameters, including:
    针对所述至少一个视频帧的每一帧,根据该视频帧对应的数据包的流媒体层序列号,确定该视频帧对应的数据包的流媒体层序列号的最大值、最小值以及流媒体层序列号个数,根据所述流媒体层序列号的最大值、最小值,确定该视频帧对应的数据包个数的理论值,根据该视频帧对应的数据包个数的理论值与该视频帧对应的数据包的流媒体层序列号个数之差,确定所述该视频帧的帧丢包参数;For each frame of the at least one video frame, according to the streaming media layer serial number of the data packet corresponding to the video frame, determine the maximum value, the minimum value and the streaming media layer serial number of the data packet corresponding to the video frame Layer sequence number, according to the maximum value and the minimum value of the streaming media layer sequence number, determine the theoretical value of the data packet number corresponding to the video frame, according to the theoretical value of the data packet number corresponding to the video frame and the The difference between the streaming media layer sequence numbers of the data packets corresponding to the video frame determines the frame packet loss parameter of the video frame;
    根据所述排序结果以及该视频帧对应的数据包的流媒体层序列号,确定该视频帧的帧乱序参数,包括:According to the streaming media layer sequence number of the data packet corresponding to the sorting result and the video frame, determine the frame out-of-sequence parameter of the video frame, including:
    当前数据包的流媒体层序列号的数值大于所述排序结果中、所述当前数据包之前的数据包的流媒体层序列号时,根据所述排序结果中当前数据包的排序序号、当前数据包的流媒体层序列号、以及该视频帧对应的数据包的流媒体层序列号的最小值,确定该视频帧对应的帧乱序参数。When the value of the streaming media layer serial number of the current data packet is greater than the streaming media layer serial number of the data packet before the current data packet in the sorting result, according to the sorting serial number of the current data packet in the sorting result, the current data The minimum value of the streaming layer sequence number of the packet and the streaming layer sequence number of the data packet corresponding to the video frame determines the frame disorder parameter corresponding to the video frame.
  7. 根据权利要求2-6所述的方法,其特征在于,所述至少一个视频帧中各帧对应的各数据包的包质量参数根据所述数据包的网络层协议信息以及传输层协议信息确定,所述包质量参数包括:表示当前数据包与前一数据包的时间间隔的包间隔参数、表示当前数据包与前一数据包的时延抖动的包抖动参数、表示数据包乱序情况的乱序参数、表示数据包丢包情况的丢包参数、表示数据包重传情况的重传参数、表示数据包和对应的响应报文的时延情况的时延参数、表示数据包是否存在IP报文分片的IP报文分片参数、表示数据包的校验和是否出现错误的校验和错误参数中的一个或多个。The method according to claims 2-6, wherein the packet quality parameters of each data packet corresponding to each frame in the at least one video frame are determined according to the network layer protocol information and the transport layer protocol information of the data packet, The packet quality parameters include: a packet interval parameter representing the time interval between the current data packet and the previous data packet, a packet jitter parameter representing the time delay jitter between the current data packet and the previous data packet, and a packet jitter parameter representing the disorder of the data packet. sequence parameter, packet loss parameter indicating packet loss, retransmission parameter indicating packet retransmission, delay parameter indicating the delay of data packet and corresponding response message, indicating whether there is an IP packet One or more of the IP packet fragmentation parameters of the text fragmentation, and the checksum error parameters indicating whether the checksum of the data packet is wrong.
  8. 根据权利要求7所述的方法,其特征在于,所述根据所述异常的帧质量参数和/或所述异常的包质量参数确定导致视频播放端视频质量异常的原因及设备,包括:The method according to claim 7, wherein the determination of the cause and the device causing the abnormal video quality at the video playback terminal according to the abnormal frame quality parameter and/or the abnormal packet quality parameter includes:
    针对任一视频帧,所述视频帧的帧质量参数和所述视频帧对应的数据包的包质量参数满足第一条件时,确定导致视频播放端视频质量异常的原因是视频编码问题,确定导致视频播放端视频质量异常的设备是视频编码使用的设备;For any video frame, when the frame quality parameter of the video frame and the packet quality parameter of the data packet corresponding to the video frame meet the first condition, it is determined that the cause of the abnormal video quality at the video playback end is a video encoding problem, and it is determined that the The device with abnormal video quality at the video playback end is the device used for video encoding;
    其中,所述第一条件包括:Wherein, the first condition includes:
    所述视频帧的帧丢包参数异常且所述视频帧对应的数据包的丢包参数正常,或者The frame packet loss parameter of the video frame is abnormal and the packet loss parameter of the data packet corresponding to the video frame is normal, or
    所述视频帧的帧乱序参数异常且所述视频帧对应的数据包的乱序参数正常。The frame out-of-order parameter of the video frame is abnormal and the out-of-order parameter of the data packet corresponding to the video frame is normal.
  9. 根据权利要求7或8所述的方法,其特征在于,所述根据所述异常的帧质量参数和/或所述异常的包质量参数确定导致视频播放端视频质量异常的原因及设备,包括:The method according to claim 7 or 8, wherein the determination of the cause and the device causing the abnormal video quality at the video playback terminal according to the abnormal frame quality parameter and/or the abnormal packet quality parameter includes:
    针对任一视频帧,所述视频帧的帧质量参数和所述视频帧对应的数据包的包质量参数满足第二条件时,确定导致视频播放端视频质量异常的原因是终端参数问题,确定导致视频播 放端视频质量异常的设备是视频播放使用的设备;For any video frame, when the frame quality parameter of the video frame and the packet quality parameter of the data packet corresponding to the video frame meet the second condition, it is determined that the cause of the abnormal video quality at the video playback end is a terminal parameter problem, and it is determined that the cause The device with abnormal video quality at the video playback end is the device used for video playback;
    其中,所述第二条件包括:Wherein, the second condition includes:
    所述视频帧的帧首包抖动参数和帧尾包抖动参数中的任一参数异常且所述视频帧对应的数据包的IP报文分片参数、校验和错误参数中的任一参数异常。Any parameter in the frame header jitter parameter and frame tail packet jitter parameter of the video frame is abnormal and any parameter in the IP packet fragmentation parameter and checksum error parameter of the data packet corresponding to the video frame is abnormal .
  10. 根据权利要求7-9中任一项所述的方法,其特征在于,所述根据所述异常的帧质量参数和/或所述异常的包质量参数确定导致视频播放端视频质量异常的原因及设备,包括:The method according to any one of claims 7-9, characterized in that, according to the abnormal frame quality parameter and/or the abnormal packet quality parameter, the cause of the abnormal video quality at the video playback terminal is determined and equipment, including:
    针对任一视频帧,所述视频帧的帧质量参数和所述视频帧对应的数据包的包质量参数满足第三条件时,确定导致视频播放端视频质量异常的原因是网络传输问题;For any video frame, when the frame quality parameter of the video frame and the packet quality parameter of the data packet corresponding to the video frame meet the third condition, it is determined that the cause of the abnormal video quality at the video playback end is a network transmission problem;
    其中,所述第三条件包括:Wherein, the third condition includes:
    所述视频帧的帧丢包参数异常且所述视频帧对应的数据包的丢包参数异常,或者The frame packet loss parameter of the video frame is abnormal and the packet loss parameter of the data packet corresponding to the video frame is abnormal, or
    所述视频帧的帧乱序参数异常且所述视频帧对应的数据包的乱序参数异常,或者The frame out-of-order parameter of the video frame is abnormal and the out-of-order parameter of the data packet corresponding to the video frame is abnormal, or
    所述视频帧的帧首包抖动参数和帧尾包抖动参数中的任一参数异常且所述视频帧对应的数据包的包抖动参数、包间隔参数、重传参数、时延参数中的任一参数异常。Any one of the frame header jitter parameters and frame tail packet jitter parameters of the video frame is abnormal and any of the packet jitter parameters, packet interval parameters, retransmission parameters, and delay parameters of the data packets corresponding to the video frame A parameter exception.
  11. 根据权利要求10所述的方法,其特征在于,确定导致视频播放端视频质量异常的原因是网络传输问题后,所述根据所述异常的帧质量参数和/或所述异常的包质量参数确定导致视频播放端视频质量异常的原因及设备,还包括:The method according to claim 10, characterized in that, after determining that the cause of the abnormal video quality at the video player end is a network transmission problem, the determination is made according to the abnormal frame quality parameter and/or the abnormal packet quality parameter Reasons and equipment that lead to abnormal video quality at the video playback end, including:
    根据所述数据包的网络层协议信息,确定异常的包质量参数对应的数据包的网络层序列号;According to the network layer protocol information of the data packet, determine the network layer serial number of the data packet corresponding to the abnormal packet quality parameter;
    根据所述数据包的传输层协议信息,确定异常的包质量参数对应的数据包的包时间、传输层序列号、校验和;According to the transport layer protocol information of the data packet, determine the packet time, transport layer sequence number, and checksum of the data packet corresponding to the abnormal packet quality parameter;
    接收网络设备上的网络拓扑数据,根据所述网络拓扑数据确定网络中各数据包的传输路径;receiving network topology data on the network device, and determining the transmission path of each data packet in the network according to the network topology data;
    根据网络中所述异常的包质量参数对应的数据包的传输路径,找到传输路径上的各网络设备中,包时间、网络层序列号、传输层序列号、校验和均满足条件的数据包;According to the transmission path of the data packet corresponding to the abnormal packet quality parameter described in the network, find the data packet that satisfies the conditions of packet time, network layer serial number, transport layer serial number, and checksum in each network device on the transmission path ;
    根据找到的满足条件的数据包的包质量参数,从数据包的传输路径上的各网络设备中,确定导致视频播放端视频质量异常的网络设备。According to the found packet quality parameters of the data packets satisfying the conditions, the network equipment causing the abnormal video quality of the video playback terminal is determined from among the network equipments on the transmission path of the data packets.
  12. 一种视频质量问题确定装置,其特征在于,所述装置包括:A device for determining video quality problems, characterized in that the device includes:
    信息接收模块,用于接收视频播放端和网络设备上的协议信息,所述网络设备用于将视频数据传输至视频播放端,所述协议信息指示视频帧的发送方式,所述视频帧包括多个数据 包;The information receiving module is used to receive the protocol information on the video player and the network device, the network device is used to transmit the video data to the video player, the protocol information indicates the sending mode of the video frame, and the video frame includes multiple packets;
    参数确定模块,用于根据所述协议信息确定异常的帧质量参数以及异常的包质量参数,所述异常的帧质量参数表示所述异常的帧质量参数所属的视频帧的质量异常,所述异常的包质量参数表示所述异常的包质量参数所属的数据包的质量异常;A parameter determination module, configured to determine an abnormal frame quality parameter and an abnormal packet quality parameter according to the protocol information, the abnormal frame quality parameter indicates that the quality of the video frame to which the abnormal frame quality parameter belongs is abnormal, and the abnormal The packet quality parameter indicates that the quality of the data packet to which the abnormal packet quality parameter belongs is abnormal;
    异常原因确定模块,用于根据所述异常的帧质量参数和/或所述异常的包质量参数确定导致视频播放端视频质量异常的原因及设备。The abnormal cause determination module is used to determine the cause and equipment that cause the abnormal video quality of the video playback terminal according to the abnormal frame quality parameter and/or the abnormal packet quality parameter.
  13. 一种视频质量问题确定装置,其特征在于,包括:A device for determining video quality problems, characterized in that it includes:
    处理器;processor;
    用于存储处理器可执行指令的存储器;memory for storing processor-executable instructions;
    其中,所述处理器被配置为执行所述指令时实现权利要求1-11任意一项所述的方法。Wherein, the processor is configured to implement the method according to any one of claims 1-11 when executing the instructions.
  14. 一种非易失性计算机可读存储介质,其上存储有计算机程序指令,其特征在于,所述计算机程序指令被处理器执行时实现权利要求1-11中任意一项所述的方法。A non-volatile computer-readable storage medium, on which computer program instructions are stored, wherein, when the computer program instructions are executed by a processor, the method according to any one of claims 1-11 is implemented.
  15. 一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,其特征在于,当所述计算机可读代码在电子设备中运行时,所述电子设备中的处理器执行权利要求1-11中任意一项所述的方法。A computer program product, comprising computer-readable codes, or a non-volatile computer-readable storage medium bearing computer-readable codes, characterized in that, when the computer-readable codes are run in an electronic device, the A processor in the electronic device executes the method described in any one of claims 1-11.
PCT/CN2022/078279 2021-08-27 2022-02-28 Video quality problem determination method and apparatus, storage medium, and program product WO2023024469A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110993951.3A CN115734043A (en) 2021-08-27 2021-08-27 Video quality problem determination method, device, storage medium and program product
CN202110993951.3 2021-08-27

Publications (1)

Publication Number Publication Date
WO2023024469A1 true WO2023024469A1 (en) 2023-03-02

Family

ID=85290196

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/078279 WO2023024469A1 (en) 2021-08-27 2022-02-28 Video quality problem determination method and apparatus, storage medium, and program product

Country Status (2)

Country Link
CN (1) CN115734043A (en)
WO (1) WO2023024469A1 (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007006194A1 (en) * 2005-07-14 2007-01-18 Huawei Technologies Co., Ltd. A method and a device of detecting the quality of service in a communication network
CN101909060A (en) * 2010-08-05 2010-12-08 浙江工业大学 Qos control method suitable for real-time streaming media transmission of mobile videos
CN103024440A (en) * 2013-01-11 2013-04-03 德科仕通信(上海)有限公司 Video quality evaluation and fault diagnosis method aiming at HAS (HTTP Adaptive Streaming)
CN108156056A (en) * 2017-12-28 2018-06-12 华为技术有限公司 Network quality measuring method and its device
CN111918055A (en) * 2020-06-30 2020-11-10 上海艾策通讯科技股份有限公司 Video quality abnormity positioning method and device, storage medium and electronic equipment
CN111953961A (en) * 2020-06-30 2020-11-17 武汉烽火众智数字技术有限责任公司 Method and device for analyzing video playing problems based on national standard

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007006194A1 (en) * 2005-07-14 2007-01-18 Huawei Technologies Co., Ltd. A method and a device of detecting the quality of service in a communication network
CN101909060A (en) * 2010-08-05 2010-12-08 浙江工业大学 Qos control method suitable for real-time streaming media transmission of mobile videos
CN103024440A (en) * 2013-01-11 2013-04-03 德科仕通信(上海)有限公司 Video quality evaluation and fault diagnosis method aiming at HAS (HTTP Adaptive Streaming)
CN108156056A (en) * 2017-12-28 2018-06-12 华为技术有限公司 Network quality measuring method and its device
CN111918055A (en) * 2020-06-30 2020-11-10 上海艾策通讯科技股份有限公司 Video quality abnormity positioning method and device, storage medium and electronic equipment
CN111953961A (en) * 2020-06-30 2020-11-17 武汉烽火众智数字技术有限责任公司 Method and device for analyzing video playing problems based on national standard

Also Published As

Publication number Publication date
CN115734043A (en) 2023-03-03

Similar Documents

Publication Publication Date Title
US10063606B2 (en) Systems and methods for using client-side video buffer occupancy for enhanced quality of experience in a communication network
US9253063B2 (en) Bi-directional video compression for real-time video streams during transport in a packet switched network
US10412423B2 (en) Method and apparatus for transmitting media data in multimedia transport system
US9237108B2 (en) Jitter buffer emulation for RTP streams in passive network monitoring systems
US11070327B2 (en) Method and apparatus for re-transmitting MMT packet and method and apparatus for requesting MMT packet re-transmission
US8081635B2 (en) Reconstruction of errored media streams in a communication system
US8873590B2 (en) Apparatus and method for correcting jitter
CN108989078B (en) Method and device for detecting node equipment fault in video network
CN107517410B (en) Method and device for evaluating video service quality
CN111385221B (en) Data processing method and communication equipment
US9729903B2 (en) Data transmitting device and method
EP3491784B1 (en) Estimation of losses in a video stream
WO2016068760A1 (en) Video stream synchronization
CN112954433A (en) Video processing method and device, electronic equipment and storage medium
WO2023024469A1 (en) Video quality problem determination method and apparatus, storage medium, and program product
US10116415B2 (en) Transmission device, receiving device, transmission method, and receiving method
US20230328308A1 (en) Synchronization of multiple content streams
JP2013121016A (en) Quality deterioration determination apparatus and method
WO2013098812A1 (en) Transport over udp system and method
CN108200481B (en) RTP-PS stream processing method, device, equipment and storage medium
CN112688824A (en) RTP packet loss detection method, device, equipment and computer readable storage medium
CN114125493B (en) Distributed storage method, device and equipment for streaming media
WO2019082861A1 (en) Transmission device, reception device, and video distribution method
CN115225542A (en) Video information processing method and device, electronic equipment and storage medium
CN117014696A (en) RTP-based audio and video transmission method and device, electronic equipment and storage medium

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22859826

Country of ref document: EP

Kind code of ref document: A1