Data transmission method and system for set top box

Through the data transmission request and decoding speed prediction on the set -top box, dynamically supplement the decoding ability of the set -top box, solve the problem of insufficient computing power when high -quality video, and realize the improvement of video fluency and user experience.

CN119364116AActive Publication Date: 2025-01-24SHENZHEN JUNUO ELECTRON CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202411447137.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-16
Publication Date
2025-01-24
Estimated Expiration
2044-10-16

AI Technical Summary

Technical Problem

When the video quality is high, some set-top boxes or mobile devices will lack computing power, affecting the viewing experience.

Method used

By obtaining the video data to be transmitted, sending a data transmission request to the set-top box, and calculating the decoding time interval of the set-top box based on the test feedback information, a decoding speed prediction function is generated. Then, the decoded number of picture frames is predicted based on the prediction function, the unplayed inter-frame compression group is pre-decoded, and the pre-decoded result is sent to the set-top box.

Benefits of technology

This method dynamically supplement the decoding capacity of the set -top box to ensure the fluency of video, reduce the computing power requirements for mobile devices, and improve the user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119364116A_ABST
    Figure CN119364116A_ABST
Patent Text Reader

Abstract

The invention is suitable for the technical field of image data transmission, and particularly relates to a data transmission method and system for a set top box, and the method comprises the steps: obtaining to-be-transmitted video data; a data transmission request is sent to the set top box, after a feedback signal of the set top box is received, an inter-frame compression group is sent to the set top box, and test feedback information is received; calculating a decoding time interval of the set top box based on the test feedback information, and generating a decoding speed prediction function based on the time interval; and predicting a picture frame decoding number based on the decoding speed prediction function, pre-decoding the non-played inter-frame compression group based on the playing parameters of the video, and sending a pre-decoding result to the set top box. Decoding assistance is carried out on the set top box based on the decoding capability of the set top box, the defect of the decoding capability of the set top box is dynamically overcome, the video decoding fluency of the set top box is guaranteed, the computing power requirement of decoding on mobile equipment is reduced to the maximum extent, and the user experience is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the technical field of image data transmission, and in particular relates to a data transmission method and system for a set-top box. Background Art

[0002] A set-top box is an electronic device that receives and decodes video and audio signals from satellite, cable TV, terrestrial broadcasting or the Internet, and converts them into a format that can be displayed and played on a TV. It usually has multiple functions, such as supporting HD and ultra-HD video decoding, providing multimedia playback, accessing Internet services, and supporting smart applications and interactive functions, thereby enhancing the user's viewing experience.

[0003] As a connection carrier for video playback devices, the set-top box needs to be processed when the screen is projected through a mobile device, so as to control the display device to display the corresponding picture. However, with the improvement of video technology, the video compression algorithm has gradually evolved. With the improvement of video compression rate, the computing power required to decode the video is also gradually increasing. Especially for high-quality videos, the frame rate and resolution are at a high level. The decoding of video data mainly occurs on the projection device or set-top box. When the quality of the video is high, some set-top boxes or mobile devices will have insufficient computing power, affecting the viewing experience. Summary of the invention

[0004] The object of the present invention is to provide a data transmission method for a set-top box, aiming to solve the problem that when the quality of the video is high, some set-top boxes or mobile devices will have insufficient computing power, affecting the viewing experience.

[0005] The present invention is achieved by a data transmission method for a set-top box, the method comprising:

[0006] Acquire video data to be transmitted, wherein the video data to be transmitted is composed of a plurality of inter-frame compression groups, and all picture frames in the video data to be transmitted have consecutive numbers;

[0007] Sending a data transmission request to the set-top box, and after receiving a feedback signal from the set-top box, sending an inter-frame compression group to the set-top box, and receiving test feedback information;

[0008] The decoding time interval of the top box is calculated based on the test feedback information, and a decoding speed prediction function is generated based on the time interval;

[0009] The number of picture frame decodes is predicted based on a decoding speed prediction function, the unplayed inter-frame compression group is pre-decoded based on the video playback parameters, and the pre-decoding result is sent to the set-top box.

[0010] Preferably, the step of sending a data transmission request to a set-top box, sending an inter-frame compression group to the set-top box after receiving a feedback signal from the set-top box, and receiving test feedback information comprises:

[0011] Sending a data transmission request to the set-top box, after the set-top box receives the data transmission request, if the data transmission is allowed, receiving a feedback signal sent by the set-top box;

[0012] Splitting the video data to be transmitted into a plurality of inter-frame compression groups with consecutive numbers;

[0013] The inter-frame compression groups are retrieved in the order of numbers, continuous inter-frame compression groups are sent to the set-top box, and test feedback information from the set-top box is received. After receiving the inter-frame compression groups, the set-top box decodes frame by frame and records the time of successful decoding of each frame in the test feedback information.

[0014] Preferably, the step of calculating the decoding time interval of the top box based on the test feedback information and generating a decoding speed prediction function based on the time interval specifically includes:

[0015] Retrieve the test feedback information, read the time record of successful decoding from it, and number the time record consecutively;

[0016] Calculate the decoding time of each picture frame, and construct a decoding time coordinate based on the generation order of the decoding time, wherein the abscissa of the decoding time coordinate is the number of the time record, and the ordinate of the decoding time coordinate is the decoding time;

[0017] The decoding time coordinates are fitted according to a preset function type, and a fitting function with the highest fitting accuracy is selected as a decoding speed prediction function.

[0018] Preferably, the step of predicting the number of picture frame decodes based on the decoding speed prediction function, pre-decoding the unplayed inter-frame compression group based on the video playback parameters, and sending the pre-decoding result to the set-top box specifically includes:

[0019] Importing the serial number of the picture frame to be decoded into the decoding speed prediction function, generating the predicted decoding time of a preset number of picture frames, and calculating the decoding speed of the top box;

[0020] Detecting video playback parameters, determining a minimum decoding speed based on the video playback parameters, and calculating a decoding difference speed based on the minimum decoding speed and a set-top box decoding speed;

[0021] The inter-frame compression group that has not been played is pre-decoded based on the decoding difference speed, and the pre-decoding result is sent to the set-top box, and the set-top box integrates the pre-decoding result into its own decoding result to generate a video stream.

[0022] Preferably, when the video is in a paused state, pre-decoding is performed through a set-top box, and the decoded video is temporarily stored in the set-top box. When the remaining storage space is lower than a preset value, the decoded videos are cleared in reverse order.

[0023] Another object of the present invention is to provide a data transmission system for a set-top box, the system comprising:

[0024] A data acquisition module, used for acquiring video data to be transmitted, wherein the video data to be transmitted is composed of a plurality of inter-frame compression groups, and all picture frames in the video data to be transmitted have consecutive numbers;

[0025] A decoding test module is used to send a data transmission request to a set-top box, send an inter-frame compression group to the set-top box after receiving a feedback signal from the set-top box, and receive test feedback information;

[0026] A prediction function generating module, used for calculating the decoding time interval of the top box based on the test feedback information, and generating a decoding speed prediction function based on the time interval;

[0027] The data transmission module is used to predict the number of picture frame decoding based on the decoding speed prediction function, pre-decode the unplayed inter-frame compression group based on the video playback parameters, and send the pre-decoding result to the set-top box.

[0028] Preferably, the decoding test module includes:

[0029] The transmission permission unit is used to send a data transmission request to the set-top box. After the set-top box receives the data transmission request, if the data transmission is allowed, it receives a feedback signal sent from the set-top box;

[0030] A data disassembling unit, used for splitting the video data to be transmitted into a plurality of inter-frame compression groups with consecutive numbers;

[0031] The test feedback unit is used to retrieve the inter-frame compression group in the order of numbers, send the continuous inter-frame compression group to the set-top box, and receive the test feedback information sent by the set-top box. After receiving the inter-frame compression group, the set-top box decodes frame by frame and records the time of successful decoding of each frame in the test feedback information.

[0032] Preferably, the prediction function generation module includes:

[0033] An information extraction unit is used to retrieve the test feedback information, read the time record of successful decoding therefrom, and number the time record consecutively;

[0034] A time coordinate generating unit, used for calculating the decoding time of each picture frame, and constructing a decoding time coordinate based on the generation order of the decoding time, wherein the abscissa of the decoding time coordinate is the number of the time record, and the ordinate of the decoding time coordinate is the decoding time;

[0035] The function fitting unit is used to perform fitting processing on the decoding time coordinate according to a preset function type, and select a fitting function with the highest fitting accuracy as a decoding speed prediction function.

[0036] Preferably, the data transmission module includes:

[0037] A decoding speed calculation unit, used for importing the serial number of the picture frame to be decoded into the decoding speed prediction function, generating a predicted decoding time of a preset number of picture frames, and calculating the decoding speed of the top box;

[0038] A differential speed calculation unit, used for detecting video playback parameters, determining a minimum decoding speed based on the video playback parameters, and calculating a decoding differential speed based on the minimum decoding speed and a set-top box decoding speed;

[0039] The decoding transmission unit is used to pre-decode the inter-frame compression group that has not been played based on the decoding difference speed, and send the pre-decoding result to the set-top box, and the set-top box integrates the pre-decoding result into its own decoding result to generate a video stream.

[0040] Preferably, when the video is in a paused state, pre-decoding is performed through a set-top box, and the decoded video is temporarily stored in the set-top box. When the remaining storage space is lower than a preset value, the decoded videos are cleared in reverse order.

[0041] The present invention provides a data transmission method for a set-top box. When performing data transmission, part of the data is first transmitted to determine the decoding capability of the set-top box, and decoding assistance is provided to the set-top box based on the decoding capability of the set-top box, so as to dynamically supplement the decoding capability of the set-top box, thereby ensuring the smoothness of video decoding by the set-top box and reducing the computing power requirement of the mobile device for decoding to the greatest extent, thereby improving the user experience. BRIEF DESCRIPTION OF THE DRAWINGS

[0042] Figure 1 A flow chart of a data transmission method for a set-top box provided by an embodiment of the present invention;

[0043] Figure 2 A flowchart of the steps of sending a data transmission request to a set-top box, sending an inter-frame compression group to the set-top box after receiving a feedback signal from the set-top box, and receiving test feedback information provided by an embodiment of the present invention;

[0044] Figure 3A flowchart of the steps of calculating the decoding time interval of a top box based on test feedback information and generating a decoding speed prediction function based on the time interval provided by an embodiment of the present invention;

[0045] Figure 4 A flowchart of the steps of predicting the number of picture frame decodes based on a decoding speed prediction function, pre-decoding an unplayed inter-frame compression group based on video playback parameters, and sending the pre-decoding result to a set-top box provided by an embodiment of the present invention;

[0046] Figure 5 An architecture diagram of a data transmission system for a set-top box provided by an embodiment of the present invention;

[0047] Figure 6 An architecture diagram of a decoding test module provided by an embodiment of the present invention;

[0048] Figure 7 An architecture diagram of a prediction function generation module provided by an embodiment of the present invention;

[0049] Figure 8 An architectural diagram of a data transmission module provided in an embodiment of the present invention. DETAILED DESCRIPTION

[0050] In order to make the purpose, technical solution and advantages of the present invention more clearly understood, the present invention is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not intended to limit the present invention.

[0051] like Figure 1 FIG. 1 is a flow chart of a data transmission method for a set-top box provided by an embodiment of the present invention, the method comprising:

[0052] S100, obtaining video data to be transmitted, wherein the video data to be transmitted is composed of a plurality of inter-frame compression groups, and all picture frames in the video data to be transmitted have consecutive numbers.

[0053] In this step, the video data to be transmitted is obtained. When the screen is projected through a mobile device, the mobile device can be a mobile phone or a tablet computer, etc. The embodiment of the present invention takes a mobile phone as an example. When the screen is projected, the data needs to be transmitted to a set-top box, and the video data is decoded by the set-top box, and then transmitted to the corresponding display device for display through the display device. The video data to be transmitted is encoded and compressed data, and the encoding method used can be H.264 / AVC, H.265 / HEVC, MPEG-4 or AV1, etc., which need to be decoded when playing. The traditional decoding method uses a single device for decoding, such as decoding by a set-top box or by The mobile device is used for decoding, but the decoding capability of the set-top box is relatively weak. For high-quality videos, it is not possible to perform smooth decoding. In order to solve this problem, a mobile device is used to assist in decoding to improve the smoothness of video playback. The video data to be transmitted is composed of multiple inter-frame compression groups. The inter-frame compression group actually contains a sequence of picture frames. This is caused by the use of inter-frame compression during encoding. The inter-frame compression group contains I frames, P frames and B frames, where the number of P frames and B frames can be multiple. During decoding, it is necessary to decode frame by frame. All picture frames in the video data to be transmitted have consecutive numbers, and n is the number of the picture frame, such as 1, 2, 3...etc.

[0054] S200, sending a data transmission request to a set-top box, after receiving a feedback signal from the set-top box, sending an inter-frame compression group to the set-top box, and receiving test feedback information.

[0055] In this step, a data transmission request is sent to the set-top box. When screen projection is required, a data transmission request is sent to the set-top box through a mobile device. The set-top box receives the data transmission request and allows the mobile device to perform data transmission after obtaining user authorization, that is, the set-top box records the permission for data transmission in the feedback signal. Then the mobile device retrieves the corresponding inter-frame compression group from the video data to be transmitted in the order of playback, and transmits the inter-frame compression group as the minimum unit of data transmission, thereby sending it to the set-top box. When the set-top box receives the above-mentioned inter-frame compression group, it identifies the encoding type of the video and starts frame-by-frame decoding. Due to the limited computing power of the set-top box, its decoding speed may be lower than the bit rate of the video playback during decoding, resulting in jamming. Then, when the set-top box is decoding, a test feedback message is sent to the mobile device for each successful decoding of a frame, and the time of successful decoding is recorded in the test feedback message. The test feedback message is continuously sent to the mobile device, and the mobile device can infer the decoding speed of the video by the set-top box based on the time information recorded in the test feedback message.

[0056] S300, calculating a decoding time interval of a top box based on test feedback information, and generating a decoding speed prediction function based on the time interval.

[0057] In this step, the decoding time interval of the computer top box is calculated based on the test feedback information. As the test feedback information is continuously received, the difference between the time values ​​recorded in two adjacent groups of test feedback information is the decoding time of a single frame. For example, the decoding time of the first frame is T1, thereby constructing a decoding time coordinate. The horizontal axis of the decoding time coordinate is the number of the time record (which is also the number of the frame), and the vertical axis of the decoding time coordinate is the decoding time. The decoding time of each frame of the photo can be obtained by function fitting, which is the decoding speed prediction function. Based on the decoding speed prediction function, the decoding time of each frame of the picture can be predicted in a short time.

[0058] S400, predicting the number of picture frame decodes based on a decoding speed prediction function, pre-decoding the unplayed inter-frame compression group based on a video playback parameter, and sending the pre-decoding result to a set-top box.

[0059] In this step, the number of picture frames to be decoded is predicted based on the decoding speed prediction function. The decoding speed prediction function can be used to predict the decoding time of picture frames in a short period of time, so the decoding speed in the future time can be calculated. For example, in the next 3 seconds, 150 picture frames can be decoded, and the current video playback frame rate is 60 frames. This means that at least 180 frames need to be decoded within three seconds. If no auxiliary means are used, the picture will be stuck. At this time, based on the above-mentioned predicted decoding speed, the subsequent picture frames that have not yet been decoded are decoded by the mobile device and directly transmitted to the set-top box, that is, 30 frames are decoded by the mobile device, and the above 30 frames are decoded within three seconds, so the impact on the mobile device is small. However, due to the participation of the mobile device, the picture transmitted by the set-top box to the video playback device will remain stable, ensuring the user's viewing experience and minimizing the impact on the mobile device.

[0060] like Figure 2 As shown, as a preferred embodiment of the present invention, the step of sending a data transmission request to a set-top box, sending an inter-frame compression group to the set-top box after receiving a feedback signal from the set-top box, and receiving test feedback information includes:

[0061] S201, sending a data transmission request to a set-top box. After receiving the data transmission request, if the data transmission is allowed, the set-top box receives a feedback signal sent from the set-top box.

[0062] In this step, a data transmission request is sent to the set-top box. When screen projection is required, the corresponding data interaction device (set-top box) is selected through the mobile device and a data transmission request is initiated to it. At this time, the user receives the above data transmission request through the set-top box and can start screen projection after authorization.

[0063] S202, splitting the video data to be transmitted into a plurality of inter-frame compression groups with consecutive numbers.

[0064] In this step, the video data to be transmitted is split. In order to compress the volume of the video, video compression encoding is generally used. When it is played later, it needs to be decoded. The higher the compression rate of the encoding method, the greater the demand for computing power when decoding. Therefore, for videos with high image quality, high frame rate and high compression rate, a lot of computing power is required. When compressing, inter-frame compression is generally used, which can significantly improve the compression rate. A group of picture frames are grouped together, that is, an inter-frame compression group GOP (Group of Pictures). Since the picture frames in the inter-frame compression group are related and the decoding has a sequence, the inter-frame compression group is used as the smallest decoding unit, and the inter-frame compression groups are numbered consecutively according to the playback order, such as the Nth inter-frame compression group is numbered N.

[0065] S203, retrieve the inter-frame compression group in the order of the numbers, send the continuous inter-frame compression groups to the set-top box, receive the test feedback information sent by the set-top box, and after receiving the inter-frame compression group, the set-top box decodes frame by frame and records the time of successful decoding of each frame in the test feedback information.

[0066] In this step, the inter-frame compression groups are retrieved in the order of their numbers, and are sent to the set-top box in the order of their numbers. The set-top box receives the data and starts decoding. Since the computing power limit of the set-top box is low, insufficient computing power may occur. In order to grasp the decoding speed of the set-top box, the set-top box sends a set of test feedback information to the mobile device each time decoding is completed. The test feedback information records the time value when the picture frame decoding is completed.

[0067] like Figure 3 As shown, as a preferred embodiment of the present invention, the steps of calculating the decoding time interval of the top box based on the test feedback information and generating the decoding speed prediction function based on the time interval specifically include:

[0068] S301, retrieve the test feedback information, read the time record of successful decoding therefrom, and number the time record consecutively.

[0069] In this step, the test feedback information is retrieved. Each test feedback information stores a time record of successful decoding. For example, the decoding time value of the Nth picture frame is 8 hours, 52 minutes, 19 seconds and 15 milliseconds. Each time record is numbered, and the number of the time record is the same as the number of the picture frame.

[0070] S302, calculating the decoding time of each picture frame, and constructing a decoding time coordinate based on the generation order of the decoding time, wherein the horizontal coordinate of the decoding time coordinate is the number of the time record, and the vertical coordinate of the decoding time coordinate is the decoding time.

[0071] In this step, the decoding time of each picture frame is calculated, and the difference between the decoding time values ​​of two adjacent picture frames is calculated, that is, the decoding time of the next picture frame is obtained. In order to predict the decoding time of the picture frame, the decoding time coordinate is constructed. This is because when the set-top box is decoding, its operating state and computing power affect the decoding efficiency, and the decoding speed is the specific manifestation of the above-mentioned influence on the set-top box.

[0072] S303: Perform fitting processing on the decoding time coordinates according to a preset function type, and select a fitting function with the highest fitting accuracy as a decoding speed prediction function.

[0073] In this step, the decoding time coordinates are fitted according to the preset function type, and the preset fitting tool is used to fit the above decoding time coordinates. By fitting, a set of fitting functions will be obtained, such as f(x)=-90+232.233x-175.5x 2 +60.2x 3 -9.5x 4 +0.5583x 5 , by fitting, we can get the decoding speed prediction function, which is used to estimate the decoding time of a single frame.

[0074] like Figure 4 As shown, as a preferred embodiment of the present invention, the steps of predicting the number of decoded picture frames based on the decoding speed prediction function, pre-decoding the unplayed inter-frame compression groups based on the video playback parameters, and sending the pre-decoding results to the set-top box specifically include:

[0075] S401, importing the serial numbers of the picture frames to be decoded into a decoding speed prediction function, generating a predicted decoding time of a preset number of picture frames, and calculating the decoding speed of the top box.

[0076] In this step, the numbers of the picture frames to be decoded are imported into the decoding speed prediction function. For example, if the decoding time of 60 frames needs to be predicted, the numbers of the corresponding picture frames are input into the decoding speed prediction function frame by frame to generate the corresponding decoding time. In this process, the decoding speed prediction function is continuously updated according to the actual decoding time, that is, the decoding speed prediction function is refitted to predict the decoding speed of the set-top box in a short time. For example, if 60 frames need to be decoded in 1.2 seconds, the decoding speed of the set-top box is 50 frames / second.

[0077] S402, detecting video playback parameters, determining a minimum decoding speed based on the video playback parameters, and calculating a decoding difference speed according to the minimum decoding speed and a set-top box decoding speed.

[0078] In this step, the playback parameters of the video are detected. Different videos have different frame rates, which are also limited by the video playback device. Specifically, the minimum playback frame rate of the video is not higher than the upper limit of the refresh rate of the video playback device. For example, the frame rate of the video is 120 frames per second, but the refresh rate of the video playback device is 60 frames per second, then the minimum decoding speed is 60 frames per second. If it is lower than this value, there will be freezes. Then the decoding difference speed is the minimum decoding speed minus the set-top box decoding speed. For example, the set-top box decoding speed is 50 frames per second and the minimum decoding speed is 60 frames per second, then the decoding difference speed is 10 frames per second.

[0079] S403, pre-decoding the inter-frame compression group that has not been played based on the decoding difference speed, and sending the pre-decoding result to the set-top box, which integrates the pre-decoding result into its own decoding result to generate a video stream.

[0080] In this step, the inter-frame compression group that has not been played is pre-decoded based on the decoding differential speed. In order to make up for the decoding differential speed, pre-decoding is performed through the mobile device, and the inter-frame compression group that has not been sent to the set-top box is decoded in advance, and the decoded video data is directly transmitted to the set-top box. The set-top box can directly control the video playback device to play according to the above data. Since the amount of data decoded by the mobile device is small, the main decoding task runs on the set-top box. Therefore, it will not occupy too much computing power of the mobile device, which greatly reduces the impact of decoding on the mobile device. When the video is in a paused state, pre-decoding is performed through the set-top box, and the decoded video is temporarily stored in the set-top box. When the remaining storage space is lower than the preset value, the decoded videos are cleared in reverse order.

[0081] like Figure 5 As shown, a data transmission system for a set-top box provided by an embodiment of the present invention includes:

[0082] The data acquisition module 100 is used to acquire video data to be transmitted, wherein the video data to be transmitted is composed of a plurality of inter-frame compression groups, and all picture frames in the video data to be transmitted have consecutive numbers.

[0083] In this system, the data acquisition module 100 acquires the video data to be transmitted. When the screen is projected through a mobile device, the mobile device can be a mobile phone or a tablet computer, etc. The embodiment of the present invention takes a mobile phone as an example. When the screen is projected, the data needs to be transmitted to a set-top box, and the video data is decoded by the set-top box, and then transmitted to the corresponding display device for display by the display device. The video data to be transmitted is encoded and compressed data, and the encoding method used can be H.264 / AVC, H.265 / HEVC, MPEG-4 or AV1, etc., which need to be decoded when playing. The traditional decoding method uses a single device for decoding, such as decoding by a set-top box. The video data to be transmitted is composed of a plurality of inter-frame compression groups. The inter-frame compression group actually contains a sequence of picture frames. This is caused by the inter-frame compression method during encoding. The inter-frame compression group contains I frames, P frames and B frames, wherein the number of P frames and B frames can be multiple. During decoding, decoding needs to be performed frame by frame. All picture frames in the video data to be transmitted have consecutive numbers, and n is the number of the picture frame, such as 1, 2, 3... etc.

[0084] The decoding test module 200 is used to send a data transmission request to the set-top box, send an inter-frame compression group to the set-top box after receiving a feedback signal from the set-top box, and receive test feedback information.

[0085] In this system, the decoding test module 200 sends a data transmission request to the set-top box. When screen projection is required, a data transmission request is sent to the set-top box through a mobile device. The set-top box receives the data transmission request and allows the mobile device to perform data transmission after obtaining user authorization, that is, the set-top box records the permission for data transmission in the feedback signal. Then, the mobile device retrieves the corresponding inter-frame compression group from the video data to be transmitted according to the playback order, and transmits the inter-frame compression group as the minimum unit of data transmission, thereby sending it to the set-top box. When the set-top box receives the above-mentioned inter-frame compression group, it identifies the encoding type of the video and starts frame-by-frame decoding processing. Due to the limited computing power of the set-top box, its decoding speed may be lower than the bit rate of the video playback during decoding, resulting in jamming. Then, when the set-top box is decoding, a test feedback message is sent to the mobile device for each successful decoding of a picture frame, and the time of successful decoding is recorded in the test feedback message. The test feedback message is continuously sent to the mobile device, and the mobile device can infer the decoding speed of the set-top box for the video according to the time information recorded in the test feedback message.

[0086] The prediction function generating module 300 is used to calculate the decoding time interval of the top box based on the test feedback information, and to generate a decoding speed prediction function based on the time interval.

[0087] In the present system, the prediction function generation module 300 calculates the decoding time interval of the computer top box based on the test feedback information. As the test feedback information is continuously received, the difference between the time values ​​recorded in two adjacent groups of test feedback information is the decoding time of a single frame. For example, the decoding time of the first frame is T1, thereby constructing a decoding time coordinate, wherein the horizontal coordinate of the decoding time coordinate is the number of the time record (also the number of the frame), and the vertical coordinate of the decoding time coordinate is the decoding time. By means of function fitting, the decoding time of each frame of the photo can be obtained, which is the decoding speed prediction function. Based on the decoding speed prediction function, the decoding time of each frame of the picture can be predicted in a short time.

[0088] The data transmission module 400 is used to predict the number of picture frame decoding based on the decoding speed prediction function, pre-decode the unplayed inter-frame compression group based on the video playback parameters, and send the pre-decoding result to the set-top box.

[0089] In the present system, the data transmission module 400 predicts the number of picture frames to be decoded based on the decoding speed prediction function. The decoding speed prediction function can be used to predict the decoding time of picture frames in a short period of time, so the decoding speed in the future time can be calculated. For example, in the next 3 seconds, 150 picture frames can be decoded, and the current video playback frame rate is 60 frames, which means that at least 180 frames need to be decoded within three seconds. If no auxiliary means are used, the picture will be stuck. At this time, based on the above-mentioned predicted decoding speed, the subsequent picture frames that have not yet been decoded are decoded by the mobile device and directly transmitted to the set-top box, that is, 30 frames are decoded by the mobile device, and the above 30 frames are decoded within three seconds, so the impact on the mobile device is small, but due to the participation of the mobile device, it will ensure that the picture transmitted by the set-top box to the video playback device remains stable, ensuring the user's viewing experience and minimizing the impact on the mobile device.

[0090] like Figure 6 As shown, as a preferred embodiment of the present invention, the decoding test module 200 includes:

[0091] The transmission permission unit 201 is used to send a data transmission request to the set-top box. After the set-top box receives the data transmission request, if the data transmission is allowed, it receives a feedback signal sent by the set-top box.

[0092] In this module, the transmission permission unit 201 sends a data transmission request to the set-top box. When screen projection is required, the corresponding data interaction device (set-top box) is selected through the mobile device and a data transmission request is initiated to it. At this time, the user receives the above data transmission request through the set-top box and can start screen projection after authorization.

[0093] The data decomposing unit 202 is used to decompose the video data to be transmitted into a plurality of inter-frame compression groups with consecutive numbers.

[0094] In this module, the data disassembly unit 202 splits the video data to be transmitted. In order to compress the volume of the video, video compression encoding is generally adopted. When it is played later, it needs to be decoded. The higher the compression rate of the encoding method, the greater the demand for computing power when decoding. Therefore, for high-quality, high-frame-rate and high-compression videos, a large amount of computing power is required. When compressing, inter-frame compression is generally adopted, which can significantly improve the compression rate. A group of picture frames are grouped together, that is, an inter-frame compression group GOP (Group of Pictures). Since the picture frames in the inter-frame compression group are related and the decoding has a sequence, the inter-frame compression group is used as the smallest decoding unit, and the inter-frame compression groups are numbered consecutively according to the playback order, such as the Nth inter-frame compression group is numbered N.

[0095] The test feedback unit 203 is used to retrieve the inter-frame compression groups according to the sequence of numbers, send the continuous inter-frame compression groups to the set-top box, and receive the test feedback information sent by the set-top box.

[0096] In this module, the test feedback unit 203 retrieves the inter-frame compression group in the order of the numbers, sends the inter-frame compression group to the set-top box in the order of the numbers of the inter-frame compression group, receives it through the set-top box, and starts decoding. Since the computing power upper limit of the set-top box is relatively low, insufficient computing power may occur. In order to master the decoding speed of the set-top box, the set-top box will send a group of test feedback information to the mobile device each time the decoding is completed. The test feedback information records the time value when the picture frame decoding is completed.

[0097] like Figure 7 As shown, as a preferred embodiment of the present invention, the prediction function generation module 300 includes:

[0098] The information extraction unit 301 is used to retrieve the test feedback information, read the time record of successful decoding therefrom, and number the time record consecutively.

[0099] In this module, the information extraction unit 301 retrieves the test feedback information. Each test feedback information stores a time record of successful decoding. For example, the decoding time value of the Nth picture frame is 8 hours, 52 minutes, 19 seconds and 15 milliseconds. Each time record is numbered, and the number of the time record is the same as the number of the picture frame.

[0100] The time coordinate generating unit 302 is used to calculate the decoding time of each picture frame, and construct the decoding time coordinate based on the generation order of the decoding time, wherein the horizontal coordinate of the decoding time coordinate is the number of the time record, and the vertical coordinate of the decoding time coordinate is the decoding time.

[0101] In this module, the time coordinate generation unit 302 calculates the decoding time of each picture frame, calculates the difference between the decoding time values ​​of two adjacent picture frames, that is, obtains the decoding time of the next picture frame, and constructs the decoding time coordinates in order to predict the decoding time of the picture frame. This is because when the set-top box is decoding, its operating state and computing power affect the decoding efficiency, and the decoding speed is the specific manifestation of the above-mentioned influence on the set-top box.

[0102] The function fitting unit 303 is used to perform fitting processing on the decoding time coordinate according to a preset function type, and select a fitting function with the highest fitting accuracy as a decoding speed prediction function.

[0103] In this module, the function fitting unit 303 performs fitting processing on the decoding time coordinate according to the preset function type, and uses the preset fitting tool to fit the above decoding time coordinate. By fitting, a set of fitting functions will be obtained, such as f(x)=-90+232.233x-175.5x 2 +60.2x 3 -9.5x 4 +0.5583x 5 , by fitting, we can get the decoding speed prediction function, which is used to estimate the decoding time of a single frame.

[0104] like Figure 8 As shown, as a preferred embodiment of the present invention, the data transmission module 400 includes:

[0105] The decoding speed calculation unit 401 is used to import the serial number of the picture frame to be decoded into the decoding speed prediction function, generate the predicted decoding time of a preset number of picture frames, and calculate the decoding speed of the top box.

[0106] In this module, the decoding speed calculation unit 401 imports the serial number of the picture frame to be decoded into the decoding speed prediction function. For example, if it is necessary to predict the decoding time of 60 frames, the serial number of the corresponding picture frame is input into the decoding speed prediction function frame by frame to generate the corresponding decoding time. In this process, the decoding speed prediction function is continuously updated according to the actual decoding time, that is, the decoding speed prediction function is refitted to predict the decoding speed of the set-top box in a short time. For example, if 60 frames need to be decoded in 1.2 seconds, the decoding speed of the set-top box is 50 frames / second.

[0107] The differential speed calculation unit 402 is used to detect the video playback parameters, determine the minimum decoding speed based on the video playback parameters, and calculate the decoding differential speed according to the minimum decoding speed and the set-top box decoding speed.

[0108] In this module, the differential speed calculation unit 402 detects the playback parameters of the video. Different videos have different frame rates, which are also limited by the video playback device. Specifically, the minimum playback frame rate of the video is not higher than the upper limit of the refresh rate of the video playback device. For example, the frame rate of the video is 120 frames per second, but the refresh rate of the video playback device is 60 frames per second, then the minimum decoding speed is 60 frames per second. If it is lower than this value, there will be freezes. Then the decoding differential speed is the minimum decoding speed minus the set-top box decoding speed. For example, the set-top box decoding speed is 50 frames per second, and the minimum decoding speed is 60 frames per second, then the decoding differential speed is 10 frames per second.

[0109] The decoding transmission unit 403 is used to pre-decode the inter-frame compression group that has not been played based on the decoding difference speed, and send the pre-decoding result to the set-top box, and the set-top box integrates the pre-decoding result into its own decoding result to generate a video stream.

[0110] In this module, the decoding transmission unit 403 pre-decodes the inter-frame compression group that has not been played based on the decoding differential speed. In order to make up for the decoding differential speed, pre-decoding is performed through the mobile device, and the inter-frame compression group that has not been sent to the set-top box is decoded in advance, and the decoded video data is directly transmitted to the set-top box. The set-top box can directly control the video playback device to play according to the above data. Since the amount of data decoded by the mobile device is small, the main decoding task runs on the set-top box. Therefore, it will not occupy too much computing power of the mobile device, which greatly reduces the impact of decoding on the mobile device. When the video is in a paused state, pre-decoding is performed through the set-top box, and the decoded video is temporarily stored in the set-top box. When the remaining storage space is lower than the preset value, the decoded video is cleared in reverse order.

[0111] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions and improvements made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

Claims

1. A data transmission method for a set-top box, characterized in that: The method comprises: Acquire video data to be transmitted, wherein the video data to be transmitted is composed of a plurality of inter-frame compression groups, and all picture frames in the video data to be transmitted have consecutive numbers; Sending a data transmission request to the set-top box, and after receiving a feedback signal from the set-top box, sending an inter-frame compression group to the set-top box, and receiving test feedback information; The decoding time interval of the top box is calculated based on the test feedback information, and a decoding speed prediction function is generated based on the time interval; The number of picture frame decodes is predicted based on a decoding speed prediction function, the unplayed inter-frame compression group is pre-decoded based on the video playback parameters, and the pre-decoding result is sent to the set-top box.

2. The data transmission method for a set-top box according to claim 1, characterized in that: The step of sending a data transmission request to a set-top box, sending an inter-frame compression group to the set-top box after receiving a feedback signal from the set-top box, and receiving test feedback information comprises: Sending a data transmission request to the set-top box, after the set-top box receives the data transmission request, if the data transmission is allowed, receiving a feedback signal sent by the set-top box; Splitting the video data to be transmitted into a plurality of inter-frame compression groups with consecutive numbers; The inter-frame compression groups are retrieved in the order of numbers, continuous inter-frame compression groups are sent to the set-top box, and test feedback information from the set-top box is received. After receiving the inter-frame compression groups, the set-top box decodes frame by frame and records the time of successful decoding of each frame in the test feedback information.

3. The data transmission method for a set-top box according to claim 1, characterized in that: The steps of calculating the decoding time interval of the top box based on the test feedback information and generating a decoding speed prediction function based on the time interval specifically include: Retrieve the test feedback information, read the time record of successful decoding from it, and number the time record consecutively; Calculate the decoding time of each picture frame, and construct a decoding time coordinate based on the generation order of the decoding time, wherein the abscissa of the decoding time coordinate is the number of the time record, and the ordinate of the decoding time coordinate is the decoding time; The decoding time coordinates are fitted according to a preset function type, and a fitting function with the highest fitting accuracy is selected as a decoding speed prediction function.

4. The data transmission method for a set-top box according to claim 1, characterized in that: The step of predicting the number of picture frame decodes based on the decoding speed prediction function, pre-decoding the unplayed inter-frame compression group based on the video playback parameters, and sending the pre-decoding result to the set-top box specifically includes: Importing the serial number of the picture frame to be decoded into the decoding speed prediction function, generating the predicted decoding time of a preset number of picture frames, and calculating the decoding speed of the top box; Detecting video playback parameters, determining a minimum decoding speed based on the video playback parameters, and calculating a decoding difference speed based on the minimum decoding speed and a set-top box decoding speed; The inter-frame compression group that has not been played is pre-decoded based on the decoding difference speed, and the pre-decoding result is sent to the set-top box, and the set-top box integrates the pre-decoding result into its own decoding result to generate a video stream.

5. The data transmission method for a set-top box according to claim 1, characterized in that: When the video is in a paused state, it is pre-decoded by the set-top box, and the decoded video is temporarily stored in the set-top box. When the remaining storage space is lower than a preset value, the decoded video is cleared in reverse order.

6. A data transmission system for a set-top box, characterized in that: The system comprises: A data acquisition module, used for acquiring video data to be transmitted, wherein the video data to be transmitted is composed of a plurality of inter-frame compression groups, and all picture frames in the video data to be transmitted have consecutive numbers; A decoding test module is used to send a data transmission request to a set-top box, send an inter-frame compression group to the set-top box after receiving a feedback signal from the set-top box, and receive test feedback information; A prediction function generating module, used for calculating the decoding time interval of the top box based on the test feedback information, and generating a decoding speed prediction function based on the time interval; The data transmission module is used to predict the number of picture frame decoding based on the decoding speed prediction function, pre-decode the unplayed inter-frame compression group based on the video playback parameters, and send the pre-decoding result to the set-top box.

7. The data transmission system for a set-top box according to claim 6, characterized in that: The decoding test module comprises: The transmission permission unit is used to send a data transmission request to the set-top box. After the set-top box receives the data transmission request, if the data transmission is allowed, it receives a feedback signal sent from the set-top box; A data disassembling unit, used for splitting the video data to be transmitted into a plurality of inter-frame compression groups with consecutive numbers; The test feedback unit is used to retrieve the inter-frame compression group in the order of numbers, send the continuous inter-frame compression group to the set-top box, and receive the test feedback information sent by the set-top box. After receiving the inter-frame compression group, the set-top box decodes frame by frame and records the time of successful decoding of each frame in the test feedback information.

8. The data transmission system for a set-top box according to claim 6, characterized in that: The prediction function generation module comprises: An information extraction unit is used to retrieve the test feedback information, read the time record of successful decoding therefrom, and number the time record consecutively; A time coordinate generating unit, used for calculating the decoding time of each picture frame, and constructing a decoding time coordinate based on the generation order of the decoding time, wherein the abscissa of the decoding time coordinate is the number of the time record, and the ordinate of the decoding time coordinate is the decoding time; The function fitting unit is used to perform fitting processing on the decoding time coordinate according to a preset function type, and select a fitting function with the highest fitting accuracy as a decoding speed prediction function.

9. The data transmission system for a set-top box according to claim 6, characterized in that: The data transmission module comprises: A decoding speed calculation unit, used for importing the serial number of the picture frame to be decoded into the decoding speed prediction function, generating a predicted decoding time of a preset number of picture frames, and calculating the decoding speed of the top box; A differential speed calculation unit, used for detecting video playback parameters, determining a minimum decoding speed based on the video playback parameters, and calculating a decoding differential speed based on the minimum decoding speed and a set-top box decoding speed; The decoding transmission unit is used to pre-decode the inter-frame compression group that has not been played based on the decoding difference speed, and send the pre-decoding result to the set-top box, and the set-top box integrates the pre-decoding result into its own decoding result to generate a video stream.

10. The data transmission system for a set-top box according to claim 6, characterized in that: When the video is in a paused state, it is pre-decoded by the set-top box, and the decoded video is temporarily stored in the set-top box. When the remaining storage space is lower than a preset value, the decoded video is cleared in reverse order.

Citation Information

Patent Citations

  • Pre-decoding high definition player and playing method

    CN101710992A

  • Video stream decoding method and equipment

    CN108063973A

  • Method and device for detecting video playing lagging

    CN114205577A

  • Video decoding method and device, computer equipment, medium and product

    CN118694957A

  • Video decoding method, system and device and computer-readable storage medium

    WO2022021519A1