CN110324608B - Method and device for detecting video stream quality and computer equipment - Google Patents

Method and device for detecting video stream quality and computer equipment Download PDF

Info

Publication number
CN110324608B
CN110324608B CN201810271692.1A CN201810271692A CN110324608B CN 110324608 B CN110324608 B CN 110324608B CN 201810271692 A CN201810271692 A CN 201810271692A CN 110324608 B CN110324608 B CN 110324608B
Authority
CN
China
Prior art keywords
video
video stream
module
index
live
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
CN201810271692.1A
Other languages
Chinese (zh)
Other versions
CN110324608A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201810271692.1A priority Critical patent/CN110324608B/en
Publication of CN110324608A publication Critical patent/CN110324608A/en
Application granted granted Critical
Publication of CN110324608B publication Critical patent/CN110324608B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N17/00Diagnosis, testing or measuring for television systems or their details
    • H04N17/004Diagnosis, testing or measuring for television systems or their details for digital television systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

The application provides a method and a device for detecting video stream quality and computer equipment, wherein the method for detecting the video stream quality comprises the following steps: acquiring a video index of a to-be-detected live video stream; detecting the video index at the place where the quality detection is carried out; if the video index does not detect a problem, acquiring an address of video content of the live video stream; and if the addresses of the video contents cannot be normally connected in the places where the quality detection is carried out and the number of the places is larger than or equal to the preset number, determining that the video source of the live video stream has errors. The quality of the live video stream can be detected, the playing quality of the live video is greatly improved, the video quality detection is combined with the region, and the quality of the live video stream is detected based on the region.

Description

Method and device for detecting video stream quality and computer equipment
Technical Field
The application relates to the technical field of live video, in particular to a method and a device for detecting video stream quality and computer equipment.
Background
In the prior art, a video source of a third-party live broadcast platform is used for live broadcast in a game, the third-party live broadcast platform has a Content Delivery Network (CDN) provider of the third-party live broadcast platform, the third-party live broadcast platform distributes live broadcast video to CDN nodes around the country, and then a player pulls a video stream from the CDN node closest to the third-party live broadcast platform. Because the whole link of live broadcast is relatively long and comprises numerous links such as stream receiving, transcoding, slicing, distribution, client downloading and playing, any link on the link has a problem, and the client video cannot be played. Therefore, monitoring and detecting the quality of the video stream is important. However, in the related art, a technical solution for detecting the quality of a live video source is not provided.
Disclosure of Invention
In order to overcome the problems in the related art, the application provides a method and a device for detecting the quality of a video stream and computer equipment.
The embodiment of the application adopts the following technical scheme:
in a first aspect, an embodiment of the present application provides a method for detecting quality of a video stream, including: acquiring the address of a video index of a to-be-detected live video stream through a source module, packaging the address of the video index into a fixed format message, and adding the fixed format message into a first message queue; at the position of quality detection, obtaining the address of the video index from a first message queue through a playlist module, and detecting the video index; if the video index does not detect the problem, acquiring the address of the video content of the live video stream, packaging the address of the video content into a fixed format message, and adding the fixed format message into a second message queue; if the video index detects a problem, packaging the video index with the detected problem into a fixed format message and adding the fixed format message into a third message queue; taking out the addresses of the video contents from the second message queue through a media module, if the addresses of the video contents cannot be normally connected in places where the quality detection is carried out and the number of the places is larger than or equal to a preset number, packaging the addresses of the video contents which cannot be normally connected into a fixed format message, adding the fixed format message into a third message queue, and determining that a video source of the live video stream has an error; the source module, the playlist module, and the media module are resident multiprocess models.
In the method for detecting the quality of the video stream, after the video index of the live video stream to be detected is obtained, the video index is detected at the site where the quality detection is carried out, if the video index does not detect the problem, the address of the video content of the live video stream is obtained, if the addresses of the video content cannot be normally connected in the sites where the quality detection is carried out and are larger than or equal to the preset number, the video source of the live video stream is determined to have an error, so that the quality of the live video stream can be detected, the playing quality of the live video is greatly improved, the video quality detection is combined with the region, and the quality of the live video stream is detected based on the region.
In a second aspect, an embodiment of the present application provides an apparatus for detecting quality of a video stream, including: the acquisition module is used for acquiring a video index of a to-be-detected live video stream; the detection module is used for detecting the video index at a position where quality detection is carried out; the acquisition module is further configured to acquire an address of video content of the live video stream when the video index does not detect a problem; the detection module is further configured to determine that a video source of the live video stream is in error when the addresses of the video content cannot be normally connected in places where the quality detection is performed and where the number of the places is greater than or equal to a predetermined number.
In the detection device for the quality of the video stream, after the acquisition module acquires the video index of the live video stream to be detected, the detection module detects the video index at the site where the quality detection is carried out, if the video index does not detect the problem, the acquisition module acquires the address of the video content of the live video stream, if the addresses of the video content cannot be normally connected in the sites where the quality detection is carried out and are larger than or equal to the preset number, the detection module determines that the video source of the live video stream is wrong, so that the quality of the live video stream can be detected, the playing quality of the live video is greatly improved, the video quality detection is combined with the region, and the detection of the quality of the live video stream based on the region is realized.
In a third aspect, an embodiment of the present application provides a computer device, including a memory, a processor, and a computer program stored on the memory and executable on the processor, where the processor executes the computer program to implement the method described above.
In a fourth aspect, embodiments of the present application provide a non-transitory computer-readable storage medium having stored thereon a computer program, which when executed by a processor, implements the method as described above.
In a fifth aspect, the present application provides a computer program product, wherein when the instructions of the computer program product are executed by a processor, the method as described above is performed.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the application.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and together with the description, serve to explain the principles of the application.
FIG. 1 is a flow chart of an embodiment of a method for detecting video stream quality according to the present application;
FIG. 2 is a flow chart of another embodiment of a method for detecting video stream quality according to the present application;
FIG. 3 is a flowchart of another embodiment of a method for detecting video stream quality according to the present application;
FIG. 4 is a flow chart of a method for detecting video stream quality according to still another embodiment of the present application;
fig. 5 is a schematic diagram of an implementation architecture of the video stream quality detection method of the present application;
FIG. 6 is a schematic structural diagram of an embodiment of an apparatus for detecting video stream quality according to the present application;
FIG. 7 is a schematic structural diagram of another embodiment of an apparatus for detecting video stream quality according to the present application;
FIG. 8 is a schematic structural diagram of an embodiment of a computer apparatus according to the present application.
With the above figures, there are shown specific embodiments of the present application, which will be described in more detail below. The drawings and written description are not intended to limit the scope of the inventive concepts in any manner, but rather to illustrate the concepts of the application by those skilled in the art with reference to specific embodiments.
Detailed Description
Reference will now be made in detail to the exemplary embodiments, examples of which are illustrated in the accompanying drawings. When the following description refers to the accompanying drawings, like numbers in different drawings represent the same or similar elements unless otherwise indicated. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present application. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the present application, as detailed in the appended claims.
Fig. 1 is a flowchart of an embodiment of a method for detecting video stream quality according to the present application, and as shown in fig. 1, the method for detecting video stream quality may include:
step 101, obtaining a video index of a live video stream to be detected.
In this embodiment, the Live video stream adopts a HyperText Transfer Protocol Live Streaming (HLS) Protocol, which is a Streaming media network Transfer Protocol based on the HTTP Protocol proposed by apple inc. HLS works by dividing the entire stream into small HTTP-based files to download, only a few at a time. While the media stream is playing, the client may choose to download the same resource from many different alternate sources at different rates, allowing the streaming media session to accommodate different data rates. Unlike Real-time Transport Protocol (RTP), the HLS can pass through any firewall or proxy server that allows HTTP data to pass through, and it is also easy to use the CDN to transmit video streams.
The video index may be an extended M3U (M3 u 8) playlist index file containing metadata downloaded by the client at the beginning of an HLS streaming session, and is used to find available video streams.
Step 102, detecting the video index at the position where the quality detection is carried out.
In this embodiment, after detecting the video index, if no problem is detected in the video index, step 103 and step 104 are executed; if a problem is detected with the video index, step 105 is performed.
And 103, if the video index does not detect a problem, acquiring the address of the video content of the live video stream.
Wherein, the video index does not detect the problem, and may be that no problem is detected by the video index in the location where the quality detection is performed; the number of locations where the video index detects a problem may be smaller than a predetermined number of locations where quality detection is performed.
The predetermined number may be set according to system performance and/or implementation requirements, and the size of the predetermined number is not limited in this embodiment.
And 104, if the addresses of the video contents cannot be normally connected in the places with the quality detection number being greater than or equal to the preset number, determining that the video source of the live video stream has errors.
In this embodiment, the format of the video content is ts format. That is to say, in this embodiment, a video index of a live video stream is first detected, if the video index does not detect a problem, an address of video content of the live video stream is further obtained, if the address of the video content of the live video stream can be normally connected, it may be determined that an error has not occurred in a video source of the live video stream, and if the address of the video content of the live video stream cannot be normally connected, it may be determined that an error has occurred in a video source of the live video stream. In addition, in this embodiment, the quality detection of the video stream is combined with the region, and it can be determined that an error occurs in the video source of the live video stream only when the addresses of the video content cannot be connected normally in the places where the quality detection is performed and the number of the places is greater than or equal to the predetermined number.
The failure to connect the addresses of the video contents normally may include: the address of the video content is not found (an error occurs 404) or the connection times out.
And 105, if the video index detects a problem in the places with the quality detection number being greater than or equal to the preset number, determining that the video source of the live video stream has errors.
That is to say, in this embodiment, a video index of a live video stream is first detected, and if the video index detects a problem, it may be determined that an error occurs in a video source of the live video stream, and in this embodiment, quality detection of the video stream is combined with a region, and only when the video index detects a problem in a predetermined number of places where quality detection is performed, it may be determined that an error occurs in a video source of the live video stream.
In the method for detecting the quality of the video stream, after the video index of the live video stream to be detected is obtained, the video index is detected at the site where the quality detection is carried out, if the video index does not detect the problem, the address of the video content of the live video stream is obtained, and if the addresses of the video content cannot be normally connected in the sites where the quality detection is carried out, wherein the sites are more than or equal to the preset number, the video source of the live video stream is determined to have an error, so that the quality of the live video stream can be detected, the playing quality of the live video is greatly improved, the video quality detection is combined with the region, and the detection of the quality of the live video stream based on the region is realized.
Fig. 2 is a flowchart of another embodiment of the method for detecting video stream quality of the present application, as shown in fig. 2, in the embodiment shown in fig. 1 of the present application, step 102 may include:
step 201, detecting whether the addresses of the video indexes can be normally connected at the position where the quality detection is carried out;
step 202, if the addresses of the video indexes can be connected normally, detecting whether the content and format of the video indexes are correct.
In this embodiment, the video index not detecting the problem may include: the addresses of the video indexes can be connected normally, and the content and the format of the video indexes are correct.
The video index detection problem may include: the addresses of the video indexes cannot be normally connected; or, the addresses of the video indexes can be connected normally, but the content and the format of the video indexes are wrong.
The address of the video index that cannot be normally connected may be an address of the video index that cannot be found (an error occurs 404) or a connection timeout.
Fig. 3 is a flowchart of a method for detecting video stream quality according to still another embodiment of the present application, as shown in fig. 3, in the embodiment shown in fig. 1 of the present application, after step 104 and step 105, the method may further include:
and step 301, performing live broadcast closing or priority reduction processing on the video source with the error.
That is, in the present embodiment, a policy (off-air or lower priority) is applied to the video source in which the error is detected.
Further, after applying a closing strategy to the video source detected the error, it may periodically or periodically detect whether the error of the closed video source has been removed, and if so, add the closed video source to the recommended playlist again.
Fig. 4 is a flowchart of a further embodiment of the method for detecting video stream quality of the present application, as shown in fig. 4, in the embodiment of the present application shown in fig. 1, before step 102, the method may further include:
step 401, determining a location for performing quality detection on the live video stream.
Specifically, the determining the location of performing quality detection on the live video stream may be: acquiring an Internet Protocol (IP) address reported by a user of a live community; obtaining the attribution of the user according to the attribution of the IP address; constructing a region distribution map of the user according to the big data of the user's attribution; and determining the site for detecting the quality of the live video stream according to the regional distribution map of the user.
In the specific implementation process, if the quality of the live video stream of each platform is detected and monitored only at one location a, the following problem is caused: because the live video stream of each platform is distributed to CDN nodes across the country, the machine room of the site a can only detect the video stream quality of CDN nodes around the site a, but cannot detect the video stream quality on CDN nodes in other areas across the country. Thus, the content of the live video stream of the third-party platform is unevenly distributed to the CDN node, and two situations may occur:
1) the CDN of the site A is normally distributed, the video stream quality is not detected to be abnormal, but the distribution of other regions fails, so that errors such as video loading incapability and the like can occur when players in the regions watch the video;
2) the CDN delivery in other areas is normal, and CDN nodes in the site A have faults, so that the quality detection of the video stream can detect a large amount of abnormity, and a large number of live broadcast rooms are closed and broadcast according to a strategy, but the live broadcast video streams in other areas in the country are normal;
for the above problems, a simple solution is to perform video stream quality detection in all parts of the country, so as to perform comprehensive evaluation on the quality of the CDN of the same video stream in all parts of the country, but such a solution has a problem of too high cost.
Therefore, the method for detecting video stream quality provided in this embodiment combines video stream quality detection with a region where a user is located, first obtains an IP address reported by the user in the live broadcast community, converts the home location of the user through IP home location query, and then constructs a region distribution map of the user according to big data of the home location of the user in the live broadcast community. And finally, dividing main cities of user distribution according to the region distribution map of the user, and implementing the video stream quality detection method provided by the embodiment of the application in machine rooms of the cities, thereby achieving the purpose.
And a distributed video stream detection network can be constructed to monitor the quality conditions of the live video stream all over the country, so that more precise broadcast closing, recommendation bit adjustment and/or priority adjustment strategies can be formulated according to different conditions of CDN nodes all over the country.
The video stream quality detection method provided in the embodiment of the present application may be implemented by using the architecture shown in fig. 5, fig. 5 is a schematic diagram of an implementation architecture of the video stream quality detection method of the present application, each module in fig. 5 is a resident multi-process model, a process number may be configured as needed, an upstream module serves as a producer of a message, a downstream module serves as a consumer of the message, and high-cohesion loose coupling between modules may be respectively extended and expanded as needed. The function of each module and message queue in fig. 5 will now be described as follows:
a source module: acquiring an address of a video index, packaging the address of the video index into a fixed format message, and adding the fixed format message into a first message queue playlistq;
the planylist module: acquiring an address (m 3u8 url) of a video index from a first message queue playlistq, wherein the url is a short for Uniform Resource Locator (Uniform Resource Locator), detecting the address of the video index and the content and format of the video index, and if no problem is detected, packaging the address (tsurl) of the video content to be detected into a fixed format message and adding the fixed format message into a second message queue mediaq; if the video index detects a problem, packaging the video index with the detected problem into a fixed format message, and adding the fixed format message into a third message queue bugq;
a media module: taking out the address of the video content to be detected from the second message queue mediaq, if the address of the video content can not be normally connected, packaging the address of the video content which can not be normally connected into a fixed format message, and adding the fixed format message into a third message queue bugq;
a prollem module: and taking out the failure message from the third message queue bugq, and implementing a strategy (closing or reducing the priority) on the video source with the detected problem.
Fig. 6 is a schematic structural diagram of an embodiment of a video stream quality detection apparatus according to the present application, where the video stream quality detection apparatus according to the embodiment of the present application can implement the video stream quality detection method provided in the embodiment of the present application. As shown in fig. 6, the apparatus for detecting the quality of the video stream may include: an acquisition module 71 and a detection module 72;
the acquiring module 71 is configured to acquire a video index of a to-be-detected live video stream; in this embodiment, the live video stream adopts an HLS protocol, which is a streaming media network transmission protocol based on HTTP proposed by apple inc. HLS works by dividing the entire stream into small HTTP-based files to download, only a few at a time. While the media stream is playing, the client may choose to download the same resource from many different alternate sources at different rates, allowing the streaming media session to accommodate different data rates. Unlike RTP, HLS can pass through any firewall or proxy server that allows HTTP data to pass through, and also easily uses a CDN to transmit video streams.
The video index may be an extended M3U (M3 u 8) playlist index file containing metadata downloaded by the client at the beginning of an HLS streaming session, and is used to find available video streams.
The detection module 72 is configured to detect the video index at a location where quality detection is performed.
An obtaining module 71, configured to obtain an address of video content of the live video stream when the video index does not detect a problem; wherein, the video index does not detect the problem, and may be that no problem is detected by the video index in the location where the quality detection is performed; the number of locations where the video index detects a problem may be smaller than a predetermined number of locations where quality detection is performed.
The predetermined number may be set according to system performance and/or implementation requirements, and the size of the predetermined number is not limited in this embodiment.
The detecting module 72 is further configured to determine that an error occurs in the video source of the live video stream when none of the addresses of the video content can be connected normally in the locations where the quality detection is performed and the number of the locations is greater than or equal to the predetermined number.
In this embodiment, the format of the video content is ts format. That is to say, in this embodiment, the detection module 72 first detects the video index of the live video stream, if the video index does not detect a problem, the acquisition module 71 further acquires the address of the video content of the live video stream, if the address of the video content of the live video stream can be normally connected, the detection module 72 may determine that no error occurs in the video source of the live video stream, and if the address of the video content of the live video stream cannot be normally connected, the detection module 72 may determine that an error occurs in the video source of the live video stream. In addition, in this embodiment, the quality detection of the video stream is combined with the region, and the detection module 72 may determine that the video source of the live video stream has an error only when the addresses of the video content cannot be connected normally in the places where the quality detection is performed and are greater than or equal to the predetermined number.
The failure to connect the addresses of the video contents normally may include: the address of the video content is not found (an error occurs 404) or the connection times out.
In addition, the detecting module 72 is further configured to determine that an error occurs in the video source of the live video stream when the video index detects a problem in a predetermined number of places where the quality detection is performed.
That is to say, in this embodiment, the detection module 72 first detects the video index of the live video stream, and if the video index detects a problem, it may determine that an error occurs in the video source of the live video stream, and in this embodiment, the detection module 72 may determine that an error occurs in the video source of the live video stream only when the video index detects a problem in a place where the quality detection is performed and is greater than or equal to a predetermined number of places.
In specific implementation, the function of the obtaining module 71 may be implemented by a source module, a playlist module, and a media module in the architecture shown in fig. 5, and the function of the detecting module 72 may be implemented by the playlist module and the media module in the architecture shown in fig. 5.
In the apparatus for detecting quality of a video stream, after the acquisition module 71 acquires a video index of a live video stream to be detected, the detection module 72 detects the video index at a location where quality detection is performed, if the video index does not detect a problem, the acquisition module 71 acquires an address of video content of the live video stream, and if the addresses of the video content cannot be normally connected at the location where the quality detection is performed and are greater than or equal to a predetermined number, the detection module 72 determines that a video source of the live video stream is in error, so that quality detection of the live video stream can be realized, playing quality of the live video is greatly improved, and video quality detection and region combination are used to realize quality detection of the live video stream based on region.
Fig. 7 is a schematic structural diagram of another embodiment of the apparatus for detecting video stream quality according to the present application, in this embodiment, the detecting module 72 is specifically configured to detect whether the addresses of the video indexes can be connected normally, and if the addresses of the video indexes can be connected normally, detect whether the content and the format of the video indexes are correct.
In this embodiment, the video index not detecting the problem may include: the addresses of the video indexes can be connected normally, and the content and the format of the video indexes are correct.
The video index detection problem may include: the addresses of the video indexes cannot be connected normally; or, the addresses of the video indexes can be connected normally, but the content and the format of the video indexes are wrong.
The address of the video index that cannot be normally connected may be an address of the video index that cannot be found (an error occurs 404) or a connection timeout.
Compared with the video stream quality detection apparatus shown in fig. 6, the difference is that the video stream quality detection apparatus shown in fig. 7 may further include: a processing module 73;
and the processing module 73 is configured to perform, after the detection module 72 determines that the video source of the live video stream is in error, processing of closing live video or reducing priority of the video source in error.
That is, in this embodiment, the processing module 73 applies a policy (off-air or lower priority) to the video source that detected the error.
Further, after the processing module 73 applies the off-air strategy to the video source with the detected error, it may periodically or periodically detect whether the error of the off-air video source is removed, and if the error is removed, the processing module 73 rejoins the off-air video source to the recommended playlist.
In a specific implementation, the function of the processing module 73 may be implemented by a promlem module in the architecture shown in fig. 5.
Further, the apparatus for detecting the quality of the video stream may further include: a determination module 74;
a determining module 74, configured to determine a location where the quality detection is performed on the live video stream before the detection module 72 detects the video index at the location where the quality detection is performed.
Wherein, the determining module 74 may include: a home acquisition submodule 741, a construction submodule 742, and a place determination submodule 743;
the attribution obtaining sub-module 741 is configured to obtain an IP address reported by a user in a live broadcast community, and obtain an attribution of the user according to the attribution of the IP address;
a construction sub-module 742, configured to construct a geographic distribution map of the user according to the big data of the home location of the user obtained by the home location obtaining sub-module 741;
the location determining submodule 743 is configured to determine a location where quality detection is performed on the live video stream according to the geographical distribution map of the user, which is constructed by the construction submodule 742.
In the specific implementation process, if the quality of the live video stream of each platform is detected and monitored only at one location a, the following problem is caused: because the live video stream of each platform is distributed to CDN nodes across the country, the machine room of the site a can only detect the video stream quality of CDN nodes around the site a, but cannot detect the video stream quality on CDN nodes in other areas across the country. Thus, the content of the live video stream of the third-party platform is unevenly distributed to the CDN node, and two situations may occur:
1) the CDN of the site A is normally distributed, the video stream quality is not detected to be abnormal, but the distribution of other regions fails, so that errors such as video loading incapability and the like can occur when players in the regions watch the video;
2) the CDN delivery in other areas is normal, and CDN nodes in the site A have faults, so that the quality detection of the video stream can detect a large amount of abnormity, and a large number of live broadcast rooms are closed and broadcast according to a strategy, but the live broadcast video streams in other areas in the country are normal;
for the above problems, a simple solution is to perform video stream quality detection in all parts of the country, so as to perform comprehensive evaluation on the quality of the CDN of the same video stream in all parts of the country, but such a solution has a problem of too high cost.
Therefore, the video stream quality detection apparatus provided in this embodiment combines video stream quality detection with a region where a user is located, first, the home location obtaining sub-module 741 obtains an IP address reported by the user in the live broadcast community, and converts the home location of the user through IP home location query, and then the building sub-module 742 builds a region distribution map of the user according to big data of the home location of the user in the live broadcast community, as shown in fig. 5. Finally, the location determining submodule 743 partitions the main cities of the user distribution according to the region distribution map of the user, and determines that the video stream quality is detected in the machine rooms of the cities, so that the purpose is achieved.
And a distributed video stream detection network can be constructed to monitor the quality conditions of the live video stream all over the country, so that more precise broadcast closing, recommendation bit adjustment and/or priority adjustment strategies can be formulated according to different conditions of CDN nodes all over the country.
Fig. 8 is a schematic structural diagram of an embodiment of a computer device in the present application, where the computer device in the present embodiment may include a memory, a processor, and a computer program stored in the memory and executable on the processor, and when the processor executes the computer program, the method for detecting video stream quality according to the embodiment of the present application may be implemented.
The computer device may be a server, for example: a cloud server; the computer device may also be an intelligent terminal device such as a smart phone, a tablet computer, or a smart watch, and the form of the computer device is not limited in this embodiment.
FIG. 8 illustrates a block diagram of an exemplary computer device 12 suitable for use in implementing embodiments of the present application. The computer device 12 shown in fig. 8 is only an example, and should not bring any limitation to the function and the scope of use of the embodiments of the present application.
As shown in FIG. 8, computer device 12 is in the form of a general purpose computing device. The components of computer device 12 may include, but are not limited to: one or more processors or processing units 16, a system memory 28, and a bus 18 that couples various system components including the system memory 28 and the processing unit 16.
Bus 18 represents one or more of any of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, and a processor or local bus using any of a variety of bus architectures. These architectures include, but are not limited to, Industry Standard Architecture (ISA) bus, Micro Channel Architecture (MAC) bus, enhanced ISA bus, Video Electronics Standards Association (VESA) local bus, and Peripheral Component Interconnect (PCI) bus, to name a few.
Computer device 12 typically includes a variety of computer system readable media. Such media may be any available media that is accessible by computer device 12 and includes both volatile and nonvolatile media, removable and non-removable media.
The system Memory 28 may include computer system readable media in the form of volatile Memory, such as Random Access Memory (RAM) 30 and/or cache Memory 32. Computer device 12 may further include other removable/non-removable, volatile/nonvolatile computer system storage media. By way of example only, storage system 34 may be used to read from and write to non-removable, nonvolatile magnetic media (not shown in FIG. 8 and commonly referred to as a "hard drive"). Although not shown in FIG. 8, a disk drive for reading from and writing to a removable, nonvolatile magnetic disk (e.g., a "floppy disk") and an optical disk drive for reading from or writing to a removable, nonvolatile optical disk (e.g., a Compact disk Read Only Memory (CD-ROM), a Digital versatile disk Read Only Memory (DVD-ROM), or other optical media) may be provided. In these cases, each drive may be connected to bus 18 by one or more data media interfaces. Memory 28 may include at least one program product having a set (e.g., at least one) of program modules that are configured to carry out the functions of embodiments of the application.
A program/utility 40 having a set (at least one) of program modules 42 may be stored, for example, in memory 28, such program modules 42 including, but not limited to, an operating system, one or more application programs, other program modules, and program data, each of which examples or some combination thereof may comprise an implementation of a network environment. Program modules 42 generally perform the functions and/or methodologies of the embodiments described herein.
Computer device 12 may also communicate with one or more external devices 14 (e.g., keyboard, pointing device, display 24, etc.), with one or more devices that enable a user to interact with computer device 12, and/or with any devices (e.g., network card, modem, etc.) that enable computer device 12 to communicate with one or more other computing devices. Such communication may be through an input/output (I/O) interface 22. Moreover, computer device 12 may also communicate with one or more networks (e.g., a Local Area Network (LAN), a Wide Area Network (WAN), and/or a public Network such as the Internet) via Network adapter 20. As shown in FIG. 8, the network adapter 20 communicates with the other modules of the computer device 12 via the bus 18. It should be understood that although not shown in FIG. 8, other hardware and/or software modules may be used in conjunction with computer device 12, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems, among others.
The processing unit 16 executes various functional applications and data processing by running a program stored in the system memory 28, for example, to implement the video stream quality detection method provided by the embodiment of the present application.
Embodiments of the present application further provide a non-transitory computer-readable storage medium, where computer-executable instructions in the storage medium are executed by a computer processor to perform the method for detecting the quality of a video stream provided by the embodiments of the present application.
The non-transitory computer readable storage medium described above may take any combination of one or more computer readable media. The computer readable medium may be a computer readable signal medium or a computer readable storage medium. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples (a non-exhaustive list) of the computer readable storage medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a Read Only Memory (ROM), an Erasable Programmable Read Only Memory (EPROM), a flash Memory, an optical fiber, a portable compact disc Read Only Memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
A computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
Computer program code for carrying out operations for aspects of the present application may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C + +, and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's 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. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of Network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet service provider).
The embodiment of the present application further provides a computer program product, and when the instructions in the computer program product are executed by a processor, the method for detecting the quality of the video stream provided by the embodiment of the present application is performed.
It should be noted that, in the description of the present application, the terms "first", "second", etc. are used for descriptive purposes only and are not to be construed as indicating or implying relative importance. In addition, in the description of the present application, "a plurality" means two or more unless otherwise specified.
Any process or method descriptions in flow charts or otherwise described herein may be understood as representing modules, segments, or portions of code which include one or more executable instructions for implementing specific logical functions or steps in the process, and alternate implementations are included within the scope of the preferred embodiment of the present application in which functions may be executed out of order from that shown or discussed, including substantially concurrently or in reverse order, depending on the functionality involved, as would be understood by those reasonably skilled in the art of the present application.
It should be understood that portions of the present application may be implemented in hardware, software, firmware, or a combination thereof. In the above embodiments, the various steps or methods may be implemented in software or firmware stored in memory and executed by a suitable instruction execution system. For example, if implemented in hardware, as in another embodiment, any one or combination of the following technologies, which are well known in the art, may be used: a discrete logic circuit having a logic Gate circuit for implementing a logic function on a data signal, an asic having an appropriate combinational logic Gate circuit, a Programmable Gate Array (PGA), a Field Programmable Gate Array (FPGA), and the like.
It will be understood by those skilled in the art that all or part of the steps carried by the method for implementing the above embodiments may be implemented by hardware related to instructions of a program, which may be stored in a computer readable storage medium, and when the program is executed, the program includes one or a combination of the steps of the method embodiments.
In addition, functional modules in the embodiments of the present application may be integrated into one processing module, or each module may exist alone physically, or two or more modules are integrated into one module. The integrated module can be realized in a hardware mode, and can also be realized in a software functional module mode. The integrated module, if implemented in the form of a software functional module and sold or used as a stand-alone product, may also be stored in a computer readable storage medium.
The storage medium mentioned above may be a read-only memory, a magnetic or optical disk, etc.
In the description of the present specification, reference to the description of "one embodiment," "some embodiments," "an example," "a specific example," or "some examples" or the like means that a particular feature, structure, material, or characteristic described in connection with the embodiment or example is included in at least one embodiment or example of the present application. In this specification, the schematic representations of the terms used above do not necessarily refer to the same embodiment or example. Furthermore, the particular features, structures, materials, or characteristics described may be combined in any suitable manner in any one or more embodiments or examples.
Although embodiments of the present application have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting the present application, and that variations, modifications, substitutions and alterations may be made to the above embodiments by those of ordinary skill in the art within the scope of the present application.

Claims (15)

1. A method for detecting quality of a video stream, comprising:
acquiring the address of a video index of a to-be-detected live video stream through a source module, packaging the address of the video index into a fixed format message, and adding the fixed format message into a first message queue;
at the position of quality detection, obtaining the address of the video index from a first message queue through a playlist module, and detecting the video index; and
if the video index does not detect a problem, acquiring the address of the video content of the live video stream, packaging the address of the video content into a fixed format message, and adding the fixed format message into a second message queue; and
if the video index detects a problem, packaging the video index with the detected problem into a fixed format message and adding the fixed format message into a third message queue;
taking out the addresses of the video contents from the second message queue through a media module, if the addresses of the video contents cannot be normally connected in places where the quality detection is carried out and the number of the places is larger than or equal to a preset number, packaging the addresses of the video contents which cannot be normally connected into a fixed format message, adding the fixed format message into a third message queue, and determining that a video source of the live video stream has an error;
the source module, the playlist module, and the media module are resident multiprocess models.
2. The method of claim 1, wherein after obtaining the address of the video index from the first message queue through a playlist module at the location where the quality detection is performed, and detecting the video index, the method further comprises:
and if the video index detects a problem in the places with the quality detection number being greater than or equal to the preset number, determining that the video source of the live video stream has errors.
3. The method of claim 2, wherein the detecting the video index comprises:
detecting whether the addresses of the video indexes can be normally connected or not;
and if the addresses of the video indexes can be normally connected, detecting whether the content and the format of the video indexes are correct.
4. The method of claim 3, wherein the video index detecting no problem comprises: the addresses of the video indexes can be connected normally, and the content and the format of the video indexes are correct;
the video index detection problem comprises: the addresses of the video indexes cannot be connected normally; or, the addresses of the video indexes can be connected normally, but the content and the format of the video indexes are wrong.
5. The method according to any one of claims 1-4, wherein after determining that the video source of the live video stream is in error, further comprising:
and closing the live broadcast or reducing the priority of the video source with the error.
6. The method according to any one of claims 2 to 4, wherein before the obtaining, by the playlist module, the address of the video index from the first message queue at the location where the quality detection is performed, and detecting the video index, the method further comprises:
and determining a place for performing quality detection on the live video stream.
7. The method of claim 6, wherein the determining a location for quality detection of the live video stream comprises:
acquiring an internet protocol address reported by a user of a live broadcast community;
obtaining the attribution of the user according to the attribution of the Internet protocol address;
according to the big data of the attribution area of the user, a geographical distribution map of the user is constructed;
and determining the site for performing quality detection on the live video stream according to the geographical distribution map of the user.
8. An apparatus for detecting the quality of a video stream, comprising:
the acquisition module is used for acquiring the address of the video index of the live video stream to be detected through the source module, packaging the address of the video index into a fixed format message and adding the fixed format message into the first message queue;
the detection module is used for acquiring the address of the video index from a first message queue through the playlist module at a place where quality detection is carried out and detecting the video index;
the acquisition module is further configured to acquire an address of video content of the live video stream when the video index does not detect a problem, and encapsulate the address of the video content into a fixed format message and add the fixed format message to a second message queue; and
if the video index detects a problem, packaging the video index with the detected problem into a fixed format message and adding the fixed format message into a third message queue;
the detection module is further configured to take out addresses of the video contents from the second message queue through the media module, encapsulate, when the addresses of the video contents cannot be normally connected in a place where the quality detection is performed and are greater than or equal to a predetermined number, the addresses of the video contents which cannot be normally connected into a fixed format message, add the fixed format message to a third message queue, and determine that a video source of the live video stream is in error, where the source module, the playlist platform module, and the media module are resident multiprocess models.
9. The apparatus of claim 8,
the detection module is further configured to determine that a video source of the live video stream is in error when the video index detects a problem in a place where the quality detection is performed and the number of the places is greater than or equal to a predetermined number.
10. The apparatus of claim 9,
the detection module is specifically configured to detect whether the addresses of the video indexes can be connected normally, and if the addresses of the video indexes can be connected normally, detect whether the content and the format of the video indexes are correct.
11. The apparatus of any one of claims 8-10, further comprising:
and the processing module is used for performing live broadcast closing or priority reduction processing on the video source with the error after the detection module determines that the video source of the live broadcast video stream has the error.
12. The apparatus of any one of claims 9-10, further comprising:
and the determining module is used for acquiring the address of the video index from the first message queue through the playlist module at the position of quality detection, and determining the position of quality detection on the live video stream before detecting the video index.
13. The apparatus of claim 12, wherein the determining module comprises:
the attribution obtaining submodule is used for obtaining an internet protocol address reported by a user of a live broadcast community and obtaining the attribution of the user according to the attribution of the internet protocol address;
the building submodule is used for building a region distribution map of the user according to the big data of the attribution of the user, which is obtained by the attribution obtaining submodule;
and the location determining submodule is used for determining a location for performing quality detection on the live video stream according to the user region distribution map constructed by the construction submodule.
14. A computer device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, the processor implementing the method of any one of claims 1-7 when executing the computer program.
15. A non-transitory computer-readable storage medium having stored thereon a computer program, wherein the computer program, when executed by a processor, implements the method of any one of claims 1-7.
CN201810271692.1A 2018-03-29 2018-03-29 Method and device for detecting video stream quality and computer equipment Active CN110324608B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810271692.1A CN110324608B (en) 2018-03-29 2018-03-29 Method and device for detecting video stream quality and computer equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810271692.1A CN110324608B (en) 2018-03-29 2018-03-29 Method and device for detecting video stream quality and computer equipment

Publications (2)

Publication Number Publication Date
CN110324608A CN110324608A (en) 2019-10-11
CN110324608B true CN110324608B (en) 2022-05-24

Family

ID=68110911

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810271692.1A Active CN110324608B (en) 2018-03-29 2018-03-29 Method and device for detecting video stream quality and computer equipment

Country Status (1)

Country Link
CN (1) CN110324608B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112507798B (en) * 2020-11-12 2024-02-23 度小满科技(北京)有限公司 Living body detection method, electronic device and storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105578203A (en) * 2016-01-15 2016-05-11 北京赛特斯信息科技股份有限公司 Video file quality detection system and method
CN105812842A (en) * 2014-12-30 2016-07-27 Tcl集团股份有限公司 Method and system for detecting network video addresses
CN105978912A (en) * 2016-07-14 2016-09-28 合网络技术(北京)有限公司 Testing device and testing method for video index file
CN106878769A (en) * 2017-02-23 2017-06-20 北京潘达互娱科技有限公司 live video quality monitoring method and device

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7471871B2 (en) * 2003-08-25 2008-12-30 Hewlett-Packard Development Company, L.P. Index validation system and method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105812842A (en) * 2014-12-30 2016-07-27 Tcl集团股份有限公司 Method and system for detecting network video addresses
CN105578203A (en) * 2016-01-15 2016-05-11 北京赛特斯信息科技股份有限公司 Video file quality detection system and method
CN105978912A (en) * 2016-07-14 2016-09-28 合网络技术(北京)有限公司 Testing device and testing method for video index file
CN106878769A (en) * 2017-02-23 2017-06-20 北京潘达互娱科技有限公司 live video quality monitoring method and device

Also Published As

Publication number Publication date
CN110324608A (en) 2019-10-11

Similar Documents

Publication Publication Date Title
US20230016816A1 (en) Content insertion in streaming media content
US10911789B2 (en) Automatic failover for live video streaming
CN107493183B (en) Fault positioning method and device
US9203642B2 (en) Method and system for collecting data on a wireless device
US20190166171A1 (en) Web-based live broadcast
KR20200092249A (en) Method, apparatus and system for slicing live streaming
US7984342B2 (en) System and method for MPEG CRC error based video network fault detection
EP2475146B1 (en) Anchoring and sharing time positions and media reception information on a presentation timeline for multimedia content streamed over a network
US10592377B2 (en) Website performance tracking
US20140006478A1 (en) Media stream fragment request
US9356985B2 (en) Streaming video to cellular phones
US10225309B1 (en) Monitoring of media pipeline health using tracing
US11743148B2 (en) Method for measuring end-to-end internet application performance
CN103024528A (en) Mobile terminal and method for transmitting streaming media data on mobile terminal
EP3754998B1 (en) Streaming media quality monitoring method and system
CN104735473A (en) Video stream playing detection method and device
CN112243158B (en) Media file processing method and device, computer readable medium and electronic equipment
CN110324608B (en) Method and device for detecting video stream quality and computer equipment
US9813321B2 (en) Hybrid content delivery system
CN105306520A (en) Method for operating a cache and corresponding cache
US9537707B2 (en) System for self organization of an internet protocol television grid
US20130179569A1 (en) Systems and methods for gateway status information handling
CN105471850A (en) Video uploading method and video uploading device
CN113301100A (en) Data disaster tolerance method, device, equipment and medium based on content distribution network
TW201811058A (en) System for transferring real-time audio/video stream

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