CN109769131B - Video quality monitoring method and set top box - Google Patents

Video quality monitoring method and set top box Download PDF

Info

Publication number
CN109769131B
CN109769131B CN201711099743.9A CN201711099743A CN109769131B CN 109769131 B CN109769131 B CN 109769131B CN 201711099743 A CN201711099743 A CN 201711099743A CN 109769131 B CN109769131 B CN 109769131B
Authority
CN
China
Prior art keywords
time
quality information
event
video
video playing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201711099743.9A
Other languages
Chinese (zh)
Other versions
CN109769131A (en
Inventor
陈书炫
吴博
李颖
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Mobile Communications Group Co Ltd
China Mobile Communications Ltd Research Institute
Original Assignee
China Mobile Communications Group Co Ltd
China Mobile Communications Ltd Research Institute
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 China Mobile Communications Group Co Ltd, China Mobile Communications Ltd Research Institute filed Critical China Mobile Communications Group Co Ltd
Priority to CN201711099743.9A priority Critical patent/CN109769131B/en
Publication of CN109769131A publication Critical patent/CN109769131A/en
Application granted granted Critical
Publication of CN109769131B publication Critical patent/CN109769131B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

The invention provides a video quality monitoring method and a set top box, wherein the method comprises the following steps: obtaining a player event reported by a player, wherein the player event comprises at least one of the following items: a buffering start event, a buffering end event, a screen splash start event, a screen splash end event, an underrun start event, and an underrun end event; determining video playing quality information according to the player event; and reporting the video playing quality information to a server according to a preset time period or a program period, and/or reporting the video playing quality information to the server when the video playing quality information meets an alarm reporting condition. According to the video quality monitoring method provided by the invention, as the player can directly sense the player event of the player, the video playing quality information is determined according to the player event reported by the player and is reported to the server, the video quality can be reflected more accurately, and the accuracy of the video quality monitoring result can be improved.

Description

Video quality monitoring method and set top box
Technical Field
The invention relates to the technical field of communication, in particular to a video quality monitoring method and a set top box.
Background
The existing video quality detection method usually estimates whether the jam and the like occur by acquiring related indexes from network packet capturing. Taking various video and data service services (Over The Top, OTT) based on The internet as an example, a probe for detecting The OTT video quality is generally integrated in a client device and is started along with The start of The client device, in The video quality detection process, The client device receives The OTT video, The probe captures The OTT video on a network card of The client device in a packet capturing mode, and analyzes The captured OTT video, so as to deduce The playable time length of The OTT video in a buffer area, and if The playable time length is greater than 0, it indicates that The playable OTT video still exists in The buffer area; otherwise, if the playable time length is less than 0, it indicates that there is no playable OTT video in the buffer, and the player of the client device enters a target playing state.
As can be seen from the above, in the existing video quality detection method, on one hand, the cache size of the set top box needs to be known in advance to derive the target playing state, and the set top boxes have numerous models, large adaptation workload and high adaptability requirement on the algorithm, and on the other hand, the operations of pausing, dragging and the like of the video by the user cannot be sensed, so that the playable time length of the video in the buffer area cannot be accurately deduced, and further, whether the client device is stuck or not cannot be accurately judged, so that the video quality of the client device cannot be accurately reflected.
Disclosure of Invention
The embodiment of the invention aims to provide a video quality monitoring method and a set top box so as to improve the accuracy of a video quality monitoring result.
In order to achieve the above object, an embodiment of the present invention provides a video quality monitoring method, including:
obtaining a player event reported by a player, wherein the player event comprises at least one of the following items: a buffering start event, a buffering end event, a screen splash start event, a screen splash end event, an underrun start event, and an underrun end event;
determining video playing quality information according to the player event;
and reporting the video playing quality information to a server according to a preset time period or a program period, and/or reporting the video playing quality information to the server when the video playing quality information meets an alarm reporting condition.
An embodiment of the present invention further provides a set top box, where the set top box includes:
the receiver is configured to acquire a player event reported by a player, where the player event includes at least one of the following: a buffering start event, a buffering end event, a screen splash start event, a screen splash end event, an underrun start event, and an underrun end event;
a processor for determining video playing quality information according to the player event;
and the transmitter is used for reporting the video playing quality information to a server according to a preset time period or a program period, and/or reporting the video playing quality information to the server when the video playing quality information meets an alarm reporting condition.
The embodiment of the present invention further provides a set top box, which includes a processor, a memory, and a computer program stored on the memory and capable of running on the processor, and when the computer program is executed by the processor, the steps of the video quality monitoring method are implemented.
An embodiment of the present invention further provides a computer-readable storage medium, where a computer program is stored on the computer-readable storage medium, and when the computer program is executed by a processor, the steps of the video quality monitoring method are implemented.
In the embodiment of the present invention, a player event reported by a player is obtained, where the player event includes at least one of the following: a buffering start event, a buffering end event, a screen splash start event, a screen splash end event, an underrun start event, and an underrun end event; determining video playing quality information according to the player event; and reporting the video playing quality information to a server according to a preset time period or a program period, and/or reporting the video playing quality information to the server when the video playing quality information meets an alarm reporting condition. The player can directly sense the player event of the player, so that the video playing quality information is determined according to the player event reported by the player and reported to the server, the video quality can be reflected more accurately, and the accuracy of the video quality monitoring result can be improved.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings needed to be used in the description of the embodiments of the present invention will be briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art that other drawings can be obtained according to these drawings without inventive exercise.
Fig. 1 is a flow chart of a video quality monitoring method provided by an embodiment of the invention;
FIG. 2 is a flow chart of determining a stuck time interval according to an embodiment of the present invention;
fig. 3 is a structural diagram of a set-top box provided in an embodiment of the present invention;
fig. 4 is a block diagram of a set-top box according to another embodiment of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are some, not all, embodiments of the present invention. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
The embodiment of the invention provides a video quality monitoring method which is applied to a set top box. In the embodiment of the invention, the player can directly report the player event to the set-top box, and the player can directly sense the player event of the player, so that the video playing quality information is determined according to the player event reported by the player and reported to the server, the video quality can be more accurately reflected, and the accuracy of the video quality monitoring result can be improved.
Referring to fig. 1, fig. 1 is a flowchart of a video quality monitoring method according to an embodiment of the present invention, as shown in fig. 1, including the following steps:
step 101, obtaining a player event reported by a player, wherein the player event comprises at least one of the following items: a buffer start event, a buffer end event, a splash start event, a splash end event, an underrun start event, and an underrun end event.
In the embodiment of the present invention, the player may report different types of player events according to different media stream protocols, for example, for an OTT service, a buffer event (e.g., a buffer start event, a buffer end event, etc.) is reported when a video is paused, and for an IPTV (Internet Protocol Television) service, a screensaver event (e.g., a screensaver start event, a screensaver end event, etc.) or an underrun event (e.g., an underrun start event, an underrun end event, etc.) is reported when a video is mosaic or playing is not smooth.
Specifically, the player event may include at least one of a buffering start event, a buffering end event, a screen-splash start event, a screen-splash end event, an underrun start event, and an underrun end event.
Optionally, the player event may further include, but is not limited to, a start ready-to-play event, a start drag event, a drag end event, a pause event, a play time, a playable time length event, a bitrate switching event, a play error event, a play end event, and the like. Specifically, the reporting time of each player event may be as shown in table 1:
TABLE 1
Figure BDA0001463114670000041
It can be understood that the player event types specifically included in the player events can be reasonably set according to actual requirements in the embodiments of the present invention.
And step 102, determining video playing quality information according to the player event.
In the embodiment of the present invention, the video playing quality information corresponds to a player event, specifically, when the player event includes a buffering start event and a buffering end event, the video playing quality information may include pause information of a video, where the pause information may include information such as a single pause time, a total pause time, and a pause frequency; when the player event comprises the screen-splash starting event and the screen-splash ending event, the video playing quality information comprises screen-splash information of a video, wherein the screen-splash information comprises information such as single screen-splash duration, total screen-splash duration, screen-splash times and the like; when the player event includes the underrun start event and the underrun end event, the video playing quality information may include underrun information of the video, where the underrun information includes information such as a single underrun duration, a total underrun duration, and an underrun frequency.
And 103, reporting the video playing quality information to a server according to a preset time period or a program period, and/or reporting the video playing quality information to the server when the video playing quality information meets an alarm reporting condition.
In the embodiment of the invention, the set top box can report the video playing quality information to the server, so that the server can perform more accurate fault positioning according to the video playing quality information.
Optionally, the set-top box may further collect network data packets, system operation data, and the like, and report the network data packets, the system operation data, and the like to the server, so as to assist the server in fault location.
Specifically, the network data packet may be acquired by acquiring a system authority (e.g., root authority) and capturing each network data packet passing through the network port by using a network data packet capture function library (e.g., libpcap library).
In the embodiment of the invention, the network data packets can be collected in a stream mode and a time mode respectively according to different data reporting modes (such as periodic reporting, program reporting and the like). The stream mode refers to collecting index data according to a life cycle of each stream message, for example, collecting each index data of a segment of stream survival time from three-way handshake to four-way handshake termination of each TCP (Transmission Control Protocol), such as download speed, retransmission rate, and disorder rate, and collecting network indexes of RTP jitter, delay, packet loss rate, disorder rate, and maximum number of consecutive packets lost during the segment of time from joining (i.e., join) message to leaving (i.e., leave) message of IGMP (Internet Group Management Protocol) of each RTP (Real-time Transport Protocol) stream.
The time mode refers to that the messages of different streams at the same time are not distinguished according to network indexes such as the total download speed, the TCP retransmission rate, the TCP out-of-order rate, the RTP jitter, the RTP time delay, the RTP packet loss rate, the RTP maximum continuous packet loss number and the like of each message stream in a certain time period.
The system operation data may include a unique identifier of the device, a Media Access Control (MAC) address, a Central Processing Unit (CPU) usage, a memory usage, and the like.
It can be understood that, in the embodiment of the present invention, when the set top box is started, the data such as the network data packet, the system operation data, the player event, and the like may be collected in real time and stored.
The video quality monitoring method provided by the embodiment of the invention obtains the player event reported by the player, wherein the player event comprises at least one of the following items: a buffering start event, a buffering end event, a screen splash start event, a screen splash end event, an underrun start event, and an underrun end event; determining video playing quality information according to the player event; and reporting the video playing quality information to a server according to a preset time period or a program period, and/or reporting the video playing quality information to the server when the video playing quality information meets an alarm reporting condition. The player can directly sense the player event of the player, so that the video playing quality information is determined according to the player event reported by the player and reported to the server, the video quality can be reflected more accurately, and the accuracy of the video quality monitoring result can be improved.
In the embodiment of the present invention, for convenience of description, reporting the video playing quality information to the server according to a preset time period is referred to as periodic reporting, reporting the video playing quality information to the server according to a program period is referred to as program reporting, and reporting the video playing quality information to the server when the video playing quality information meets an alarm reporting condition is detected as alarm reporting.
Optionally, in the embodiment of the present invention, before the step 103, after the set-top box is started, information such as a unique identifier of the set-top box, an MAC address, a network connection mode, and the like is collected and reported to the soft probe monitoring platform, so that the soft probe monitoring platform may issue relevant configuration parameters according to the unique identifier of the set-top box, for example, information such as an alarm threshold, a time interval for reporting a Program, a time interval for reporting a period (that is, a preset time period), a license plate package name, an EPG (Electronic Program Guide) address list, a Program type determination rule, and the like.
In the embodiment of the present invention, the periodic reporting may be reporting, at intervals of a preset time period, video playing quality information (for example, information of user-perceivable indexes such as katon information, splash screen information, underloaded information, total playing times, and playing success number) in the period time, and M3U8 (that is, an M3U file in an UTF-8 encoding format, where the M3U file records an index plain Text file), a TCP related index and an HTTP (Hyper-Text Transfer Protocol) related index of a TS (Transport Stream), and a TCP related index and an HTTP related index of an EPG. The preset time period can be set reasonably according to actual conditions, for example, 20 seconds.
In the embodiment of the present invention, the program reporting may be triggered by a play start event, where the program reporting time may be reported once when the program is played for a certain time (e.g., 1 minute), and then reported once every certain time interval (e.g., 10 seconds) until the program exits. For example, a program is played from 8:00:00, and the program playing is exited at 8:30:00, the program can be reported once at 8:01:00 and then reported once every 10 seconds until the program is exited (i.e. 8:30: 00).
Specifically, for the OTT video, the program reporting may include reporting user perceivable indicators such as a first loading duration, a pause duration, pause times, pause interval distribution, and a viewing duration from the beginning of playing the program to the reporting time, and reporting network indicators such as TCP request times, TCP request success times, TCP maximum and average values of TCP three-way handshaking, TCP retransmission rate maximum and average values, TCP disorder rate maximum and average values, HTTP request times, HTTP request success times, HTTP download speed, HTTP request response duration, and HLS (i.e., HTTP Live Streaming, i.e., HTTP-based Streaming media network transport protocol) fragment list information of the M3U8 and the TS.
For the IPTV video, the program reporting may include reporting user perceivable indicators such as a first loading duration, a screen-blooming number, a screen-blooming interval distribution, an underloaded duration, an underloaded number, an underloaded interval distribution, a watching duration, and reporting network indicators such as an RTP packet loss rate, an RTP jitter, an RTP delay, an RTP disorder rate, an RTP repetition rate, an RTP maximum consecutive packet loss number, RTP stream list information, an RTSP request number, and an RTSP average response delay from the start of playing the program to the reporting time.
It should be noted that the network index reported in the program reporting may be an index acquired by using the stream mode.
In the embodiment of the invention, the alarm reporting is the data reporting triggered when the video playing quality information meets the alarm reporting condition, so that the data reporting frequency can be reduced.
Optionally, when the video playing quality information meets an alarm reporting condition, the step of reporting the video playing quality information to the server includes:
the alarm reporting condition comprises a stuck alarm reporting condition, wherein the stuck alarm reporting condition comprises that the stuck times in a first preset time length are greater than a first preset time length, or the single stuck time length in the first preset time length exceeds a second preset time length, or the total stuck time length in the first preset time length exceeds a third preset time length; and/or
The alarm reporting condition comprises a screen splash alarm reporting condition, wherein the screen splash alarm reporting condition comprises that the screen splash frequency in a fourth preset time is greater than a second preset frequency, or the single screen splash time in the fourth preset time exceeds a fifth preset time, or the total screen splash time in the fourth preset time exceeds a sixth preset time; and/or
The alarm reporting condition comprises an underload alarm reporting condition, wherein the underload alarm reporting condition comprises that the underload times in a seventh preset time length are greater than a third preset time length, or a single underload time length in the seventh preset time length exceeds an eighth preset time length, or a total underload time length in the seventh preset time length exceeds a ninth preset time length.
In the embodiment of the present invention, the first preset time, the second preset time, the third preset time, and the first preset number may be reasonably set according to actual conditions, for example, the first preset time may be 2 minutes, the second preset time may be 5 seconds, the third preset time may be 15 seconds, and the first preset number may be 10 times. Similarly, the fourth preset time, the fifth preset time, the sixth preset time and the second preset times can also be reasonably set according to actual conditions, and the seventh preset time, the eighth preset time, the ninth preset time and the third preset times can also be reasonably set according to actual conditions.
It should be noted that the first preset time, the fourth preset time and the seventh preset time may be the same or different, the second preset time, the fifth preset time and the eighth preset time may be the same or different, the third preset time, the sixth preset time and the ninth preset time may be the same or different, and the first preset number, the second preset number and the third preset number may be the same or different.
In this embodiment of the present invention, for convenience of description, the alarm reporting may be divided into a stuck alarm, an overlay alarm, an underload alarm, and a CDN (Content Delivery Network) alarm, where the stuck alarm indicates that video playback quality information satisfies a stuck alarm reporting condition, the overlay alarm indicates that video playback quality information satisfies an overlay alarm reporting condition, the underload alarm indicates that video playback quality information satisfies an underload alarm reporting condition, and the CDN alarm may indicate that an HTTP request response code of an EPG, an M3U8, and a TS is greater than or equal to a first preset value (e.g., 400) and less than a second preset value (e.g., 600), and report a URL (Uniform Resource Locator) and a DNS (Domain Name System) related index, such as Domain Name related analysis data, a System path, and the like.
Specifically, the pause alarm is generally applicable to OTT videos, and may report, in addition to basic information of the set top box and basic information of the program (e.g., program URL, average code rate, license plate packet name and version number), pause time, pause times, pause interval distribution, CPU usage, memory usage, TCP average retransmission rate and disorder rate in a pause time interval, and WIFI signal amount, TCP retransmission rate, remaining playable time, playback code rate, download speed, and the like at preset time intervals (e.g., 5 seconds) in the pause time interval, so that the server performs fault location.
The above-mentioned screen splash alarm and underload alarm are usually applicable to IPTV video, and besides may report basic information of the set-top box and basic information of the program, the screen splash alarm may also report screen splash duration, screen splash times, screen splash interval distribution, CPU usage, memory usage, total RTP delay jitter and packet loss in the screen splash time interval, and report download speed, play video code rate, RTP average jitter, RTP packet loss rate, RTP delay and maximum continuous packet loss of RTP at preset time intervals (e.g., 5 seconds) in the screen splash time interval; the underload alarm may also report the underload duration, the underload times, the underload interval distribution, the CPU usage, the memory usage, the total RTP delay jitter and packet loss in the underload time interval, and report the download speed, the playing video code rate, the RTP average jitter, the RTP packet loss rate, the RTP delay, and the maximum consecutive packet loss of the RTP at preset time intervals (for example, 5 seconds) in the underload time interval.
It should be noted that the network index reported in the alarm report may be an index acquired by adopting a time mode, and the data granularity is smaller and closer to a real user scene in the alarm time.
In the embodiment of the present invention, the pause time interval, the screen splash time interval, or the underrun time interval may be determined in a process of determining whether the video playing quality information satisfies an alarm reporting condition.
Optionally, before reporting the video playing quality information to the server when the video playing quality information meets the alarm reporting condition, the method further includes: judging whether the video playing quality information meets an alarm reporting condition or not, and determining a time interval corresponding to the video playing quality information in the process of judging whether the video playing quality information meets the alarm reporting condition or not;
correspondingly, when the video playing quality information meets the alarm reporting condition, reporting the video playing quality information to the server includes: and when the video playing quality information meets an alarm reporting condition, reporting the video playing quality information and a time interval corresponding to the video playing quality information to the server.
Specifically, when the video playing quality information includes pause information, a time interval corresponding to the pause information is the pause time interval; when the video playing quality information comprises the screen splash information, the time interval corresponding to the screen splash information is the screen splash time interval; and when the video playing quality information comprises the underload information, the time interval corresponding to the underload information is the underload time interval.
According to the embodiment of the invention, the time interval corresponding to the video playing quality information is determined in the process of judging whether the video playing quality information meets the alarm reporting condition or not, and the time interval is reported to the server, so that the detection frequency can be reduced, the time interval corresponding to the video playing quality information can be more accurately positioned, and the video playing fault positioning can be more accurately carried out subsequently.
Optionally, the determining the time interval corresponding to the video playing quality information in the process of determining whether the video playing quality information meets the alarm reporting condition includes:
if a first target start event in the player events is received, recording the receiving time T of the first target start events1And starting a first timer, wherein the timing duration of the first timer is a first preset time length delta t 1;
judging whether the video playing quality information meets the alarm reporting condition within the timing duration of the first timer;
if the video playing quality information meets the alarm reporting condition within the timing duration of the first timer, recording the timing ending time T of the first timere1And the time T is comparede1And determining the ending time of the time interval corresponding to the video playing quality information.
In this embodiment of the present invention, the target start event may be a buffering start event, a splash screen start event, or an underload start event, and correspondingly, the alarm reporting condition may be a stuck alarm reporting condition, a splash screen alarm reporting condition, or an underload alarm reporting condition. In the following, the target start time is taken as a buffering start event, and the alarm reporting condition is a stuck alarm reporting condition.
For example, during the time period when the detection of whether the stuck alarm reporting condition is satisfied is not performed, if the first buffering start event is received, the receiving time T of the first stuck start event is recordeds1And starting a first timer for timing, wherein the timing duration of the first timer, that is, the first preset time length Δ t1, can be reasonably set according to actual conditions, for example, 2 minutes. After the first timer is started, it may be determined whether the stuck information of the video in Δ t1 meets the stuck alarm reporting condition, for example, whether the single stuck time of the video in 2 minutes is greater than 5 seconds, whether the total stuck time of the video in 2 minutes is greater than 15 seconds, whether the total stuck frequency of the video in 2 minutes is greater than 10 times, or the like, and it may be determined that the stuck information of the video in Δ t1 meets the stuck alarm reporting condition when any one of the above is met.
Specifically, when the stuck information meets the stuck alarm reporting condition within the timing duration (namely Δ T1) of the first timer, the timing ending time T of the first timer is recordede1And will be at time Te1Determining an end time of a Kanton time interval, wherein Te1=Ts1+. Δ t 1. Optionally, the start time of the pause time interval may be timeCarving Ts1. When the pause information does not meet the pause alarm reporting condition within the timing duration (i.e. Δ t1) of the first timer, the process may be ended, or it may be detected whether the video is in the target playing state when the timing of the first timer is ended.
Optionally, the method further includes:
if the video playing quality information does not meet the alarm reporting condition within the timing duration of the first timer, detecting whether the video is in a target playing state or not when the timing of the first timer is finished;
if the video is not in a target playing state when the timing of the first timer is finished, detecting whether at least one second target starting event in the player events is received within the timing duration of the first timer;
if at least one second target starting event in the player events is received within the timing duration of the first timer, the receiving time T of the second target starting event received first in the at least one second target starting event is obtainedS2
Detecting the reception time TS2Whether the video playing quality information meets the alarm reporting condition in the initial delta t 1;
if from the receiving time TS2If the video playing quality information meets the alarm reporting condition within the initial delta T1, recording the time Te2And the time T is comparede2Determining the ending time of a time interval corresponding to the video playing quality information, wherein Te2=TS2+△t1。
In the embodiment of the present invention, when the video playing quality information does not satisfy the alarm reporting condition within the timing duration of the first timer, it is detected whether the video is in a target playing state at the time when the timing of the first timer is ended, where the target playing state corresponds to the target start event, that is, when the target start time is a buffering start event, the target playing state indicates a stuck state, when the target start time is a screen splash start event, the target playing state indicates a screen splash state, and when the target start time is an underload start event, the target playing state indicates an underload state. The following description will be given taking the target playback state as the stuck state as an example.
Specifically, it may be determined whether a buffering end event is received after a buffering start event that is received last within a timing time of the first timer, and if the buffering end event is not received, it indicates that the video is still in the stuck state, and if the buffering end event is received, it indicates that the video is not in the stuck state. When the video is not in the pause state when the timing of the first timer is determined to be finished, detecting whether at least one second buffering start event is received within the timing duration of the first timer, and if so, acquiring the receiving time T of the second buffering start event received first in the at least one second buffering start eventS2And detecting the reception time TS2Whether the video pause information in the initial delta t1 meets the pause alarm reporting condition or not.
For example, if a buffering start event a, a buffering start event b and a buffering start event c are received together within the timing duration of the first timer, wherein the receiving time of the buffering start event a is earlier than the receiving times of the buffering start event b and the buffering start event c, the receiving time T of the buffering start event a is obtainedS2And determines the slave reception time TS2Whether the video pause information satisfies the pause alarm reporting condition within the starting Δ T1, for example, it is determined from the receiving time TS2Whether the single pause duration of the video in the starting Deltat 1 is more than 5 seconds or whether the video is received from the receiving time TS2Whether the total pause time of the video in the starting Deltat 1 is more than 15 seconds or whether the total pause time is judged from the receiving time TS2Whether the total number of clicks of the video within the starting Δ t1 is greater than 10, etc.
Specifically, if from the receiving time TS2If the video pause information in the initial delta T1 meets the pause alarm reporting condition, recording the time Te2And will be at time Te2Determining an end time of a Kanton time interval, wherein Te2=TS2+. Δ t1 if fromThe receiving time TS2If the video pause information does not satisfy the pause alarm reporting condition within the starting time delta T1, the detection can be returned to be executed at the time T from the receiving timeS2At the end of the start Δ t1, whether the video is in a stuck state. Optionally, the start time of the pause time interval may be time Ts1Or may be time Ts2
Optionally, since the slave T is already counted within the timing duration of the first timerS2Time to (T)S1+. at 1), and therefore, embodiments of the present invention detect the video's morton information at time T from the receiptS2In the process of judging whether the video pause information in the initial delta T1 meets the pause alarm reporting condition or not, only the slave (T) can be detectedS1+. at 1) time to (T)S2+. at 1) and incorporating the video's cadence information from TS2Time to (T)S1+. at 1) the cadence information of the video at time (T)S1+. at 1) time to (T)S2+. at 1) to determine the video's pause from the time of reception TS2Whether the video pause information in the initial delta t1 meets the pause alarm reporting condition or not.
It should be noted that, if at least one second buffer start event is not received within the timing duration of the first timer, the process may be ended.
Optionally, the method further includes:
if the video is in the target playing state when the timing of the first timer is finished, starting a second timer, wherein the timing duration of the second timer is a second preset time length delta t 2;
if a target end event is received within the timing duration of the second timer, judging that the time T is later than the moment Ts1To the receiving time T of the target end evente3Whether the video playing quality information meets the alarm reporting condition or not;
if from said time Ts1To the time Te3If the video playing quality information meets the alarm reporting condition, recording the time Te3And the time T is comparede3And determining the ending time of the time interval corresponding to the video playing quality information.
In the embodiment of the present invention, the target end event corresponds to the target start event, that is, when the target start time is the buffer start event, the target end event refers to the buffer end event, when the target start time is the screen splash start event, the target end event refers to the screen splash end event, and when the target start time is the underload start event, the target end event refers to the underload end event. The following description will take the target end event as the buffering end event and the target playback state as the stuck state as an example.
Specifically, when the video is in the stuck state when the timing of the first timer is finished, the second timer is started, wherein the timing duration of the second timer, that is, the second preset time length Δ t2, may be reasonably set according to an actual situation, for example, 2 minutes. Within the timing duration of the second timer, if a buffering end event is received, the stuck state is said to be ended, and at this time, it can be determined that the time T is from the moments1To the moment of receipt of the stuck end event Te3Whether the pause information of the video meets the pause alarm reporting condition or not is judged, and if yes, the time T is recordede3And will be at time Te3Determining the ending time of the Kanton time interval; if not, the flow may end. Optionally, the start time of the pause time interval may be time Ts1
Optionally, the method further includes: if the video is in the target playing state when the timing of the second timer is finished, recording the timing finishing time T of the second timere4And the time T is comparede4And determining the ending time of the time interval corresponding to the video playing quality information.
In the embodiment of the present invention, taking the target playing status as the stuck status as an example, if the video is in the stuck status when the timing of the second timer is over, the timing over time T of the second timer is recordede4And the time T is comparede4Determining as the end of a karton time intervalAt a moment, wherein, Te4=Ts1+. Δ t1 +. Δ t 2. Optionally, the start time of the pause time interval may be time Ts1
It can be understood that the ending time of the splash screen time interval and the underrun time interval can be determined in the same manner as the above-mentioned method for determining the ending time of the pause time interval, which is not described in detail in the embodiments of the present invention.
In practical applications, in order to prevent network jitter and improve the user's experience of watching video, the player usually adopts a caching strategy, so that, taking the card pause as an example, when the user perceives the card pause, the network environment that causes the card pause at this time may have already occurred. In order to facilitate the server to more accurately locate the fault position, the embodiment of the present invention corrects the data reporting time interval according to the broadcast time event (i.e. the broadcast time event cached by the player).
Optionally, the player event further includes a broadcast time duration event, and when the video is an OTT video, the determining a time interval corresponding to the video play quality information in the process of determining whether the video play quality information meets the alarm reporting condition further includes:
is located at the time T from the reporting times1In the previous broadcast time length event, the difference value of the broadcast time length is larger than the preset value, and the reporting time and the time T are obtaineds1The reporting time T1 and T2 of two adjacent reported time-length events with the shortest time interval;
and determining the larger time of the reporting times T1 and T2 as the starting time of the time interval corresponding to the video playing quality information.
In practical applications, for OTT videos, a player generally adopts a caching strategy to improve the viewing experience of a user. Specifically, the player usually reports the playable time duration event every preset time duration (e.g., 10 seconds), that is, the playable time duration cached by the player. Taking the case that the player reports every 10 seconds and the time interval corresponding to the video playing quality information is a pause time interval, since the playable time length event reports every 10 seconds, if the difference between two adjacent reported playable time lengths is greater than 10 seconds, it indicates that no data is downloaded within the 10 seconds, therefore, it can be determined that the data inflow is less than the turning point of the outflow, for example, the reporting time of the playable time length event whose difference between two adjacent reported playable time lengths is greater than a preset value is a real trigger starting point of pause occurrence. Optionally, the preset value may be reasonably set according to actual conditions, for example, 5 seconds.
For example, the player reports a broadcast time-length event every 10 seconds, and if the preset value is 5 seconds, it can be obtained that the reporting time is at the time Ts1In the previous broadcast time length event, the difference value of the broadcast time length is more than 5 seconds, and the reporting time and the time T ares1The reporting time of two adjacent reported broadcast time-length events with the shortest time interval, for example, the broadcast time-length event a and the broadcast time-length event b are at the time Ts1Two broadcast time length events reported adjacently before, the difference value between the broadcast time length corresponding to the broadcast time length event a and the broadcast time length event b is more than 5 seconds, and the reporting time and the time Ts1If the time interval is shortest, the report time Ta and Tb of the broadcast time-length event a and the broadcast time-length event b are obtained, and Ta>Tb, Ta is determined as the start time of the karton time interval.
Optionally, the player event further includes a broadcast time duration event, and when the video is an IPTV video, the determining a time interval corresponding to the video play quality information in the process of determining whether the video play quality information satisfies an alarm reporting condition further includes:
acquiring the reporting time at the time Ts1Before and with said time Ts1The target with the shortest interval time can broadcast a long-time event;
and determining the reporting time of the target broadcasting-available time-length event as the starting time of the time interval corresponding to the video broadcasting quality information.
In practical application, for an IPTV video, the set-top box usually has no cache policy, so that it is usually not necessary to calibrate the starting time of the time interval corresponding to the video playing quality information by using the available time length. Taking the time interval corresponding to the video playing quality information as a screen-blooming time intervalFor example, it may be obtained that the reporting time is at time Ts1Before and with said time Ts1And the target broadcast time-length event with the shortest interval time is determined as the starting time of the screen-spending time interval.
Similarly, the starting time of the underrun time interval may also be determined in the above manner, which is not described in detail in the embodiments of the present invention.
The embodiment of the invention reports data based on the player event, and the mode can directly approach the user perception without a complex algorithm to guess the user perception, and reports various related data from the perspective of the user perception, thereby facilitating the server to carry out accurate fault positioning.
The following describes the determination of the stuck time interval in the embodiment of the present invention with reference to fig. 2:
step 201, if a first buffering start event in the player events is received, recording a receiving time T of the first buffering start events1And starts the first timer.
In the embodiment of the invention, if the first buffering start event is received in the time period of not executing the detection of whether the stuck alarm reporting condition is met, the receiving time T of the first stuck start event is recordeds1And starting a first timer for timing, wherein the timing duration of the first timer, that is, the first preset time length Δ t1, can be reasonably set according to actual conditions, for example, 2 minutes.
Step 202, judging whether the video pause information meets the pause alarm reporting condition within the timing duration of the first timer.
Specifically, after the first timer is started, it may be determined whether the stuck information of the video in Δ t1 meets the stuck alarm reporting condition, for example, whether the single stuck time of the video in 2 minutes is greater than 5 seconds, whether the total stuck time of the video in 2 minutes is greater than 15 seconds, whether the total stuck frequency of the video in 2 minutes is greater than 10 times, or the like, and it may be determined that the stuck information of the video in Δ t1 meets the stuck alarm reporting condition when any one of the above is met. And executing step 203 when the video pause information meets the pause alarm reporting condition within the timing duration of the first timer is determined, otherwise executing step 204.
Step 203, recording the timing ending time Te1 of the first timer, and determining the time Te1 as the ending time of the Kanton time interval.
And 204, detecting whether the video is in a stuck state or not when the first timer is timed to end.
Specifically, when it is determined that the video is in the stuck state at the end of the first timer, step 209 is executed, otherwise step 205 is executed.
Step 205, detecting whether at least one second buffering start event in the player events is received within the timing duration of the first timer.
Specifically, when at least one second buffering start event in the player events is received within the determined timing duration of the first timer, step 206 is executed, otherwise, the process is ended.
Step 206, obtaining the receiving time T of the first received second buffering start event in the at least one second buffering start eventS2
For example, if a buffering start event a, a buffering start event b and a buffering start event c are received together within the timing duration of the first timer, wherein the receiving time of the buffering start event a is earlier than the receiving times of the buffering start event b and the buffering start event c, the receiving time T of the buffering start event a is obtainedS2
Step 207, detecting the receiving time TS2Whether the video pause information in the initial delta t1 meets the pause alarm reporting condition or not.
In particular, at the time of determination from said reception time TS2When the video pause information in the initial delta T1 meets the pause alarm reporting condition, executing the step 208, otherwise, ending the process, and detecting TS2Time +/-at 1 whether the video is in a stuck state and detecting receipt from the receiver when not in a stuck stateTime TS2Whether a buffering start event is received within a starting Δ T1 and from the receiving time TS2When the buffering start event is received within the starting Δ t1, the receiving time of the buffering start event received first is obtained, and the specific execution flow may be the same as the above step 204 to step 207.
And step 208, recording the time Te2, and determining the time Te2 as the end time of the Kanton time interval.
Step 209 starts the second timer.
Specifically, when the video is in the stuck state when the timing of the first timer is finished, the second timer is started, wherein the timing duration of the second timer, that is, the second preset time length Δ t2, may be reasonably set according to an actual situation, for example, 2 minutes.
Step 210, if a buffering end event is received within the timing duration of the second timer, determining that the time T is later than the time Ts1To the receiving time T of the buffering end evente3Whether the video is stuck in the video meets the stuck alarm reporting condition or not.
In particular, at a time T determined from said instant Ts1To the receiving time T of the buffering end evente3And when the video pause meets the pause alarm reporting condition, executing the step 211, otherwise, ending the process.
And step 211, recording the time Te3, and determining the time Te3 as the end time of the Kanton time interval.
Step 212, if the video is in a pause state when the timing of the second timer is finished, recording a timing end time Te4 of the second timer, and determining the time Te4 as an end time of a pause time interval.
Similarly, the screen-splash time interval and the underrun time interval may be determined in the same manner as the foregoing karton time interval, which is not described herein again.
Therefore, the embodiment of the invention reports the related player events through the player of the set top box closest to the user to obtain the user perception, collects the related data closest to the user perception from the user perception, and reports the data to the server for fault location, thereby improving the accuracy of fault location.
Referring to fig. 3, fig. 3 is a block diagram of a set-top box provided in the implementation of the present invention. As shown in fig. 3, the set-top box 300 includes: a receiver 301, a processor 302, and a transmitter 303, wherein:
a receiver 301, configured to obtain a player event reported by a player, where the player event includes at least one of the following: a buffering start event, a buffering end event, a screen splash start event, a screen splash end event, an underrun start event, and an underrun end event;
a processor 302, configured to determine video playing quality information according to the player event;
a transmitter 303, configured to report the video playing quality information to a server according to a preset time period or a program period, and/or report the video playing quality information to the server when the video playing quality information meets an alarm reporting condition.
Optionally, the alarm reporting condition includes a stuck alarm reporting condition, where the stuck alarm reporting condition includes that the stuck time is greater than a first preset time within a first preset time, or a single stuck time within the first preset time exceeds a second preset time, or a total stuck time within the first preset time exceeds a third preset time; and/or
The alarm reporting condition comprises a screen splash alarm reporting condition, wherein the screen splash alarm reporting condition comprises that the screen splash frequency in a fourth preset time is greater than a second preset frequency, or the single screen splash time in the fourth preset time exceeds a fifth preset time, or the total screen splash time in the fourth preset time exceeds a sixth preset time; and/or
The alarm reporting condition comprises an underload alarm reporting condition, wherein the underload alarm reporting condition comprises that the underload times in a seventh preset time length are greater than a third preset time length, or a single underload time length in the seventh preset time length exceeds an eighth preset time length, or a total underload time length in the seventh preset time length exceeds a ninth preset time length.
Optionally, the processor 302 is further configured to:
when the video playing quality information meets an alarm reporting condition, before reporting the video playing quality information to the server, judging whether the video playing quality information meets the alarm reporting condition, and determining a time interval corresponding to the video playing quality information in the process of judging whether the video playing quality information meets the alarm reporting condition;
the transmitter 303 is further configured to:
and when the video playing quality information meets an alarm reporting condition, reporting the video playing quality information and a time interval corresponding to the video playing quality information to the server.
Optionally, the processor 302 is specifically configured to:
if a first target start event in the player events is received, recording the receiving time T of the first target start events1And starting a first timer, wherein the timing duration of the first timer is a first preset time length delta t 1;
judging whether the video playing quality information meets the alarm reporting condition within the timing duration of the first timer;
if the video playing quality information meets the alarm reporting condition within the timing duration of the first timer, recording the timing ending time T of the first timere1And the time T is comparede1And determining the ending time of the time interval corresponding to the video playing quality information.
Optionally, the processor 302 is further configured to:
if the video playing quality information does not meet the alarm reporting condition within the timing duration of the first timer, detecting whether the video is in a target playing state or not when the timing of the first timer is finished;
if the video is not in a target playing state when the timing of the first timer is finished, detecting whether at least one second target starting event in the player events is received within the timing duration of the first timer;
if at least one second target starting event in the player events is received within the timing duration of the first timer, the receiving time T of the second target starting event received first in the at least one second target starting event is obtainedS2
Detecting the reception time TS2Whether the video playing quality information meets the alarm reporting condition in the initial delta t 1;
if from the receiving time TS2If the video playing quality information meets the alarm reporting condition within the initial delta T1, recording the time Te2And the time T is comparede2Determining the ending time of a time interval corresponding to the video playing quality information, wherein Te2=TS2+△t1。
Optionally, the processor 302 is further configured to:
if the video is in the target playing state when the timing of the first timer is finished, starting a second timer, wherein the timing duration of the second timer is a second preset time length delta t 2;
if a target end event is received within the timing duration of the second timer, judging that the time T is later than the moment Ts1To the receiving time T of the target end evente3Whether the video playing quality information meets the alarm reporting condition or not;
if from said time Ts1To the time Te3If the video playing quality information meets the alarm reporting condition, recording the time Te3And the time T is comparede3And determining the ending time of the time interval corresponding to the video playing quality information.
Optionally, the processor 302 is further configured to:
if the video is in the target playing state when the timing of the second timer is finished, recording the timing finishing time T of the second timere4And the time T is comparede4Determining the video playback qualityAnd the end time of the time interval corresponding to the information.
Optionally, the player event further includes a playable time-length event, and the processor 302 is further configured to:
when the video is an OTT video, the reporting time is positioned at the time Ts1In the previous broadcast time length event, the difference value of the broadcast time length is larger than the preset value, and the reporting time and the time T are obtaineds1The reporting time T1 and T2 of two adjacent reported time-length events with the shortest time interval;
and determining the larger time of the reporting times T1 and T2 as the starting time of the time interval corresponding to the video playing quality information.
Optionally, the player event further includes a playable time-length event, and the processor 302 is further configured to:
when the video is an IPTV video, acquiring the reporting moment at the moment Ts1Before and with said time Ts1The target with the shortest interval time can broadcast a long-time event;
and determining the reporting time of the target broadcasting-available time-length event as the starting time of the time interval corresponding to the video broadcasting quality information.
The set top box 300 can implement the processes of the method embodiments of fig. 1 to fig. 2, and achieve the same effect to avoid repetition, which is not described herein again.
The set top box 300 and the receiver 301 of the embodiment of the present invention are configured to acquire a player event reported by a player, where the player event includes at least one of the following: a buffering start event, a buffering end event, a screen splash start event, a screen splash end event, an underrun start event, and an underrun end event; a processor 302, configured to determine video playing quality information according to the player event; a transmitter 303, configured to report the video playing quality information to a server according to a preset time period or a program period, and/or report the video playing quality information to the server when the video playing quality information meets an alarm reporting condition. The player can directly sense the player event of the player, so that the video playing quality information is determined according to the player event reported by the player and reported to the server, the video quality can be reflected more accurately, and the accuracy of the video quality monitoring result can be improved.
The embodiment of the present invention further provides a set top box, which includes a processor, a memory, and a computer program stored in the memory and capable of running on the processor, and when being executed by the processor, the computer program implements each process of the video quality monitoring method according to any one of the above method embodiments, and can achieve the same technical effect, and is not described herein again to avoid repetition.
An embodiment of the present invention further provides a computer-readable storage medium, where a computer program is stored on the computer-readable storage medium, and when the computer program is executed by a processor, the computer program implements each process of the video quality monitoring method, and can achieve the same technical effect, and in order to avoid repetition, details are not repeated here. The computer-readable storage medium may be a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk.
Referring to fig. 4, an embodiment of the present invention further provides a set-top box, where the set-top box 400 includes a memory 401, a processor 402, and a computer program 4011 stored on the memory 401 and executable on the processor 402, where the processor 402 implements the following steps when executing the program 4011:
obtaining a player event reported by a player, wherein the player event comprises at least one of the following items: a buffering start event, a buffering end event, a screen splash start event, a screen splash end event, an underrun start event, and an underrun end event; determining video playing quality information according to the player event; and reporting the video playing quality information to a server according to a preset time period or a program period, and/or reporting the video playing quality information to the server when the video playing quality information meets an alarm reporting condition.
Optionally, the alarm reporting condition includes a stuck alarm reporting condition, where the stuck alarm reporting condition includes that the stuck time is greater than a first preset time within a first preset time, or a single stuck time within the first preset time exceeds a second preset time, or a total stuck time within the first preset time exceeds a third preset time; and/or
The alarm reporting condition comprises a screen splash alarm reporting condition, wherein the screen splash alarm reporting condition comprises that the screen splash frequency in a fourth preset time is greater than a second preset frequency, or the single screen splash time in the fourth preset time exceeds a fifth preset time, or the total screen splash time in the fourth preset time exceeds a sixth preset time; and/or
The alarm reporting condition comprises an underload alarm reporting condition, wherein the underload alarm reporting condition comprises that the underload times in a seventh preset time length are greater than a third preset time length, or a single underload time length in the seventh preset time length exceeds an eighth preset time length, or a total underload time length in the seventh preset time length exceeds a ninth preset time length.
Optionally, the processor 402 executing the program 4011 further implements the following steps:
judging whether the video playing quality information meets an alarm reporting condition or not, and determining a time interval corresponding to the video playing quality information in the process of judging whether the video playing quality information meets the alarm reporting condition or not;
when the video playing quality information meets the alarm reporting condition, reporting the video playing quality information to the server, including:
and when the video playing quality information meets an alarm reporting condition, reporting the video playing quality information and a time interval corresponding to the video playing quality information to the server.
Optionally, the processor 402 executing the program 4011 further implements the following steps:
if a first target start event in the player events is received, recording the receiving time T of the first target start events1And starting a first timer, wherein the timing duration of the first timer is a first preset time length delta t 1;
judging whether the video playing quality information meets the alarm reporting condition within the timing duration of the first timer;
if the video playing quality information meets the alarm reporting condition within the timing duration of the first timer, recording the timing ending time T of the first timere1And the time T is comparede1And determining the ending time of the time interval corresponding to the video playing quality information.
Optionally, the processor 402 executing the program 4011 further implements the following steps:
if the video playing quality information does not meet the alarm reporting condition within the timing duration of the first timer, detecting whether the video is in a target playing state or not when the timing of the first timer is finished;
if the video is not in a target playing state when the timing of the first timer is finished, detecting whether at least one second target starting event in the player events is received within the timing duration of the first timer;
if at least one second target starting event in the player events is received within the timing duration of the first timer, the receiving time T of the second target starting event received first in the at least one second target starting event is obtainedS2
Detecting the reception time TS2Whether the video playing quality information meets the alarm reporting condition in the initial delta t 1;
if from the receiving time TS2If the video playing quality information meets the alarm reporting condition within the initial delta T1, recording the time Te2And the time T is comparede2Determining the ending time of a time interval corresponding to the video playing quality information, wherein Te2=TS2+△t1。
Optionally, the processor 402 executing the program 4011 further implements the following steps:
if the video is in the target playing state when the timing of the first timer is finished, starting a second timer, wherein the timing duration of the second timer is a second preset time length delta t 2;
if a target end event is received within the timing duration of the second timer, judging that the time T is later than the moment Ts1To the receiving time T of the target end evente3Whether the video playing quality information meets the alarm reporting condition or not;
if from said time Ts1To the time Te3If the video playing quality information meets the alarm reporting condition, recording the time Te3And the time T is comparede3And determining the ending time of the time interval corresponding to the video playing quality information.
Optionally, the processor 402 executing the program 4011 further implements the following steps:
if the video is in the target playing state when the timing of the second timer is finished, recording the timing finishing time T of the second timere4And the time T is comparede4And determining the ending time of the time interval corresponding to the video playing quality information.
Optionally, the player event further includes a playable time-length event, and when the video is an OTT video, the processor 402 executes the program 4011 to further implement the following steps:
is located at the time T from the reporting times1In the previous broadcast time length event, the difference value of the broadcast time length is larger than the preset value, and the reporting time and the time T are obtaineds1The reporting time T1 and T2 of two adjacent reported time-length events with the shortest time interval;
and determining the larger time of the reporting times T1 and T2 as the starting time of the time interval corresponding to the video playing quality information.
Optionally, the player event further includes a playable time-length event, and when the video is an IPTV video, the processor 402 executes the program 4011 to further implement the following steps:
acquiring the reporting time at the time Ts1Before and with said time Ts1The target with the shortest interval time can broadcast a long-time event;
and determining the reporting time of the target broadcasting-available time-length event as the starting time of the time interval corresponding to the video broadcasting quality information.
Those of ordinary skill in the art will appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware or combinations of computer software and electronic hardware. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the implementation. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present invention.
It is clear to those skilled in the art that, for convenience and brevity of description, the specific working processes of the above-described systems, apparatuses and units may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again.
In the embodiments provided in the present application, it should be understood that the disclosed apparatus and method may be implemented in other ways. For example, the above-described apparatus embodiments are merely illustrative, and for example, the division of the units is only one logical division, and other divisions may be realized in practice, for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment of the present invention.
In addition, functional units in the embodiments of the present invention may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit.
The functions, if implemented in the form of software functional units and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present invention may be embodied in the form of a software product, which is stored in a storage medium and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present invention. And the aforementioned storage medium includes: various media capable of storing program codes, such as a U disk, a removable hard disk, a ROM, a RAM, a magnetic disk, or an optical disk.
The above description is only for the specific embodiments of the present invention, but the scope of the present invention is not limited thereto, and any person skilled in the art can easily conceive of the changes or substitutions within the technical scope of the present invention, and all the changes or substitutions should be covered within the scope of the present invention. Therefore, the protection scope of the present invention shall be subject to the protection scope of the claims.

Claims (16)

1. A video quality monitoring method is applied to a set top box and is characterized by comprising the following steps:
obtaining a player event reported by a player, wherein the player event comprises at least one of the following items: a buffering start event, a buffering end event, a screen splash start event, a screen splash end event, an underrun start event, and an underrun end event; the player reports different types of player events according to different media stream protocols;
determining video playing quality information according to the player event;
reporting the video playing quality information to a server according to a preset time period or a program period, and/or judging whether the video playing quality information meets an alarm reporting condition, determining a time interval corresponding to the video playing quality information in the process of judging whether the video playing quality information meets the alarm reporting condition, and reporting the video playing quality information to the server when the video playing quality information meets the alarm reporting condition;
the player event further includes a broadcast time-length event, and when the video is an OTT video, the step of determining the time interval corresponding to the video broadcast quality information in the process of judging whether the video broadcast quality information meets the alarm reporting condition includes:
is located at the time T from the reporting times1In the previous broadcast time length event, the difference value of the broadcast time length is larger than the preset value, and the reporting time and the time T are obtaineds1The reporting time T1 and T2 of two adjacent reported time-length events with the shortest time interval;
and determining the larger time of the reporting times T1 and T2 as the starting time of the time interval corresponding to the video playing quality information.
2. The method of claim 1, wherein reporting the video playing quality information to the server when the video playing quality information satisfies an alarm reporting condition comprises:
and when the video playing quality information meets an alarm reporting condition, reporting the video playing quality information and a time interval corresponding to the video playing quality information to the server.
3. The method of claim 2, wherein determining the time interval corresponding to the video playing quality information in the process of determining whether the video playing quality information satisfies the alarm reporting condition further comprises:
if a first target starting event in the player events is received, recording the first target starting eventAt a reception time Ts1And starting a first timer, wherein the timing duration of the first timer is a first preset time length delta t 1;
judging whether the video playing quality information meets the alarm reporting condition within the timing duration of the first timer;
if the video playing quality information meets the alarm reporting condition within the timing duration of the first timer, recording the timing ending time T of the first timere1And the time T is comparede1And determining the ending time of the time interval corresponding to the video playing quality information.
4. The method of claim 3, further comprising:
if the video playing quality information does not meet the alarm reporting condition within the timing duration of the first timer, detecting whether the video is in a target playing state or not when the timing of the first timer is finished;
if the video is not in a target playing state when the timing of the first timer is finished, detecting whether at least one second target starting event in the player events is received within the timing duration of the first timer;
if at least one second target starting event in the player events is received within the timing duration of the first timer, the receiving time T of the second target starting event received first in the at least one second target starting event is obtainedS2
Detecting the reception time TS2Whether the video playing quality information meets the alarm reporting condition in the initial delta t 1;
if from the receiving time TS2If the video playing quality information meets the alarm reporting condition within the initial delta T1, recording the time Te2And the time T is comparede2Determining the ending time of a time interval corresponding to the video playing quality information, wherein Te2=TS2+△t1。
5. The method of claim 4, further comprising:
if the video is in the target playing state when the timing of the first timer is finished, starting a second timer, wherein the timing duration of the second timer is a second preset time length delta t 2;
if a target end event is received within the timing duration of the second timer, judging that the time T is later than the moment Ts1To the receiving time T of the target end evente3Whether the video playing quality information meets the alarm reporting condition or not;
if from said time Ts1To the time Te3If the video playing quality information meets the alarm reporting condition, recording the time Te3And the time T is comparede3And determining the ending time of the time interval corresponding to the video playing quality information.
6. The method of claim 5, further comprising:
if the video is in the target playing state when the timing of the second timer is finished, recording the timing finishing time T of the second timere4And the time T is comparede4And determining the ending time of the time interval corresponding to the video playing quality information.
7. The method according to any one of claims 3 to 6, wherein the player event further includes a broadcast time duration event, and when the video is an IPTV video, the determining the time interval corresponding to the video play quality information in the process of determining whether the video play quality information satisfies the alarm reporting condition further includes:
acquiring the reporting time at the time Ts1Before and with said time Ts1The target with the shortest interval time can broadcast a long-time event;
and determining the reporting time of the target broadcasting-available time-length event as the starting time of the time interval corresponding to the video broadcasting quality information.
8. A set top box, comprising:
the receiver is configured to acquire a player event reported by a player, where the player event includes at least one of the following: a buffering start event, a buffering end event, a screen splash start event, a screen splash end event, an underrun start event, and an underrun end event; the player reports different types of player events according to different media stream protocols;
a processor for determining video playing quality information according to the player event;
the transmitter is used for reporting the video playing quality information to a server according to a preset time period or a program period, and/or reporting the video playing quality information to the server when the video playing quality information meets an alarm reporting condition;
the processor is further configured to: when the video playing quality information meets an alarm reporting condition, before reporting the video playing quality information to the server, judging whether the video playing quality information meets the alarm reporting condition, and determining a time interval corresponding to the video playing quality information in the process of judging whether the video playing quality information meets the alarm reporting condition;
the player events further include a playable time length event, the processor further configured to: when the video is an IPTV video, acquiring the reporting moment at the moment Ts1Before and with said time Ts1The target with the shortest interval time can broadcast a long-time event;
and determining the reporting time of the target broadcasting-available time-length event as the starting time of the time interval corresponding to the video broadcasting quality information.
9. The set top box of claim 8, wherein the transmitter is further configured to:
and when the video playing quality information meets an alarm reporting condition, reporting the video playing quality information and a time interval corresponding to the video playing quality information to the server.
10. The set top box of claim 9, wherein the processor is specifically configured to:
if a first target start event in the player events is received, recording the receiving time T of the first target start events1And starting a first timer, wherein the timing duration of the first timer is a first preset time length delta t 1;
judging whether the video playing quality information meets the alarm reporting condition within the timing duration of the first timer;
if the video playing quality information meets the alarm reporting condition within the timing duration of the first timer, recording the timing ending time T of the first timere1And the time T is comparede1And determining the ending time of the time interval corresponding to the video playing quality information.
11. The set top box of claim 10, wherein the processor is further configured to:
if the video playing quality information does not meet the alarm reporting condition within the timing duration of the first timer, detecting whether the video is in a target playing state or not when the timing of the first timer is finished;
if the video is not in a target playing state when the timing of the first timer is finished, detecting whether at least one second target starting event in the player events is received within the timing duration of the first timer;
if at least one second target starting event in the player events is received within the timing duration of the first timer, the receiving time T of the second target starting event received first in the at least one second target starting event is obtainedS2
Detecting the reception time TS2Whether the video playing quality information meets the alarm reporting condition in the initial delta t 1;
if from the receiving time TS2If the video playing quality information meets the alarm reporting condition within the initial delta T1, recording the time Te2And the time T is comparede2Determining the ending time of a time interval corresponding to the video playing quality information, wherein Te2=TS2+△t1。
12. The set top box of claim 11, wherein the processor is further configured to:
if the video is in the target playing state when the timing of the first timer is finished, starting a second timer, wherein the timing duration of the second timer is a second preset time length delta t 2;
if a target end event is received within the timing duration of the second timer, judging that the time T is later than the moment Ts1To the receiving time T of the target end evente3Whether the video playing quality information meets the alarm reporting condition or not;
if from said time Ts1To the time Te3If the video playing quality information meets the alarm reporting condition, recording the time Te3And the time T is comparede3And determining the ending time of the time interval corresponding to the video playing quality information.
13. The set top box of claim 12, wherein the processor is further configured to:
if the video is in the target playing state when the timing of the second timer is finished, recording the timing finishing time T of the second timere4And the time T is comparede4And determining the ending time of the time interval corresponding to the video playing quality information.
14. A set top box according to any one of claims 10 to 13, wherein the player events further include a playable time length event, the processor further configured to:
when the video is an OTT video, the reporting time is positioned at the time Ts1In the previous broadcast time length event, the difference value of the broadcast time length is larger than the preset value, and the reporting time and the time T are obtaineds1The reporting time T1 and T2 of two adjacent reported time-length events with the shortest time interval;
and determining the larger time of the reporting times T1 and T2 as the starting time of the time interval corresponding to the video playing quality information.
15. A set-top box comprising a memory, a processor and a computer program stored on said memory and executable on said processor, wherein said processor when executing said program performs the steps of the video quality monitoring method according to any one of claims 1-7.
16. A computer-readable storage medium, on which a computer program is stored which, when being executed by a processor, carries out the steps of the video quality monitoring method according to any one of claims 1 to 7.
CN201711099743.9A 2017-11-09 2017-11-09 Video quality monitoring method and set top box Active CN109769131B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711099743.9A CN109769131B (en) 2017-11-09 2017-11-09 Video quality monitoring method and set top box

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711099743.9A CN109769131B (en) 2017-11-09 2017-11-09 Video quality monitoring method and set top box

Publications (2)

Publication Number Publication Date
CN109769131A CN109769131A (en) 2019-05-17
CN109769131B true CN109769131B (en) 2021-10-26

Family

ID=66449835

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711099743.9A Active CN109769131B (en) 2017-11-09 2017-11-09 Video quality monitoring method and set top box

Country Status (1)

Country Link
CN (1) CN109769131B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111050163B (en) * 2019-11-28 2021-10-15 百视通网络电视技术发展有限责任公司 IPTV set-top box performance test device, method and system
CN115442656B (en) * 2021-06-04 2023-08-15 中国移动通信集团浙江有限公司 Video head and tail automatic detection method, device, equipment and storage medium

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8117283B2 (en) * 2008-02-04 2012-02-14 Echostar Technologies L.L.C. Providing remote access to segments of a transmitted program
CN103561354B (en) * 2013-10-29 2017-02-08 北京国双科技有限公司 Method and device for calculating and processing video smoothness
CN106549794A (en) * 2015-09-23 2017-03-29 中国移动通信集团公司 A kind of mass monitoring system of OTT business, apparatus and method
CN106559707A (en) * 2015-09-29 2017-04-05 华为技术有限公司 Video quality detection method, device and Quality management center

Also Published As

Publication number Publication date
CN109769131A (en) 2019-05-17

Similar Documents

Publication Publication Date Title
US10841358B2 (en) System and method for determining quality of a media stream
US11831950B2 (en) Methods and apparatus to measure exposure to streaming media
US8973077B2 (en) Method for streaming video content, node in a network for monitoring video content streaming
CN109474854B (en) Video playing method, playlist generating method and related equipment
JP5780684B2 (en) Content reproduction information estimation apparatus, method, and program
US10148722B2 (en) Methods and nodes for synchronized streaming of a first and a second data stream
KR20140023983A (en) Method for dynamic adaptation of the reception bitrate and associated receiver
CN109769131B (en) Video quality monitoring method and set top box
CN102148722A (en) Method and system for detecting data interaction state by using heartbeats, and proxy server
US12081606B2 (en) Content player performance detection
US20160269787A1 (en) Data processing method and apparatus for counting audience rating
CN113242437A (en) RTSP (real time streaming protocol) video plug-in-free playing method, system, device and storage medium
CN111327964B (en) Method and device for positioning video playing pause
US11283852B2 (en) Methods and nodes for synchronized streaming of a first and a second data stream
CN106549794A (en) A kind of mass monitoring system of OTT business, apparatus and method
CN107623847B (en) Video quality evaluation method and device for video service
EP2811709B1 (en) Quality of experience measurements in a unicast linear television network
US10051025B2 (en) Method and apparatus for estimating packet loss
GB2588930A (en) Multimedia system & method

Legal Events

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