Upgrading optimization method and device of set top box, electronic equipment and storage medium
By analyzing the code stream output and program switching data of IPTV set-top box, determining the upgrade time, the problem of IPTV set-top box startup and upgrade failure affecting user experience and upgrade failure is solved, and software version upgrade is achieved without affecting user use, which improves users Experience and system stability.
Patent Information
- Application Number
- CN202411396976.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-08
- Publication Date
- 2024-12-13
- Estimated Expiration
- 2044-10-08
AI Technical Summary
The software version upgrade of the IPTV set-top box when it is powered on may affect the user's immediate use, and there is a risk of upgrade failure, resulting in the set-top box not working properly and occupying network resources, affecting the normal use of other network services.
By obtaining the set-top box stream output data sequence and program switching data sequence in the preset sliding window, determine the upgrade time of the set-top box, use big data acquisition and sliding window algorithm to analyze the user's usage habits, and select the time point when the set-top box is not used for software Version upgrades to avoid affecting user experience and reduce the risk of upgrade failure.
Without affecting the normal use of IPTV services for users, improve user experience, avoid upgrade failures, reduce network bandwidth pressure, and ensure stable operation of set-top boxes.
Smart Images

Figure CN119135994A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of big data processing, and in particular to a set-top box upgrade optimization method, a set-top box upgrade optimization device, a corresponding electronic device, and a corresponding computer-readable storage medium. Background Art
[0002] IPTV (Internet Protocol Television) is a new technology that uses broadband cable television networks to integrate multiple technologies such as the Internet, multimedia, and communications to provide home users with a variety of interactive services including digital television.
[0003] With the development of the integration of three networks, IPTV can provide richer content and expand more novel and practical functions. For example, in addition to IPTV's live channels, it can also provide relatively rich on-demand, content playback, special topics, applications, community, life and other interactive information services.
[0004] With the gradual upgrade of IPTV services, in order to provide users with a better audio-visual experience, there is a need to upgrade the software version of IPTV set-top boxes. However, in the relevant technologies for set-top box upgrades, it is usually set to start the upgrade when the set-top box is turned on. The above set-top box upgrade method will affect the user's immediate use, and the set-top box may not work properly due to the upgrade failure at the time of startup. Summary of the invention
[0005] In view of the above problems, embodiments of the present invention are proposed to provide a set-top box upgrade optimization method, a set-top box upgrade optimization device, a corresponding electronic device and a corresponding computer-readable storage medium that overcome the above problems or at least partially solve the above problems.
[0006] An embodiment of the present invention discloses a method for upgrading and optimizing a set-top box, the method comprising:
[0007] Acquire a code stream output data sequence and a program switching data sequence of the set-top box within a preset sliding window;
[0008] Determining a set-top box upgrade time based on the code stream output data sequence and the program switching data sequence in a preset sliding window;
[0009] The set-top box is upgraded and optimized according to the upgrade time of the set-top box.
[0010] Optionally, the program switching data sequence is time series data for indicating the number of program switching times, and the step of obtaining the code stream output data sequence and the program switching data sequence of the set-top box within a preset sliding window includes:
[0011] Acquire the real-time data collected by the set-top box, and transmit the real-time data to a preset message queue;
[0012] Structuring and labeling the real-time data in the preset message queue to obtain a code stream output data sequence of the set-top box within a preset time period and time series data for indicating the number of program switching;
[0013] The preset sliding window is slid on the time series data to obtain the code stream output data sequence and the program switching data sequence of the set-top box within the preset sliding window.
[0014] Optionally, determining the set-top box upgrade time based on the code stream output data sequence and the program switching data sequence in a preset sliding window includes:
[0015] Obtaining the sum of code stream outputs of the code stream output data sequence in the preset sliding window, and obtaining the sum of program switching times of the program switching data sequence in the preset sliding window;
[0016] The set-top box upgrade time is determined based on the total code stream output and the total number of program switching times.
[0017] Optionally, a data point of each code stream output data in the code stream output data sequence corresponds to each program switching number in the program switching data sequence;
[0018] The window size of the preset sliding window is used to determine the target starting data point and the target ending data point in the data sequence; wherein the sum of the code stream output is the sum of the code stream output data from the target starting data point to the target ending data point, and the sum of the program switching times is the sum of the program switching times from the target starting data point to the target ending data point.
[0019] Optionally, determining the set-top box upgrade time based on the total code stream output and the total number of program switching times includes:
[0020] If the sum of the code stream outputs is less than a preset first threshold, and the sum of the program switching times is less than a preset second threshold, the time period and / or time point corresponding to the preset sliding window is determined to be a set-top box upgrade time.
[0021] Optionally, the set-top box upgrade time is a set-top box upgrade time point and / or a set-top box upgrade time period; and the step of upgrading and optimizing the set-top box according to the set-top box upgrade time includes:
[0022] Initiating a software version upgrade request to the set-top box at the set-top box upgrade time point;
[0023] And / or, repeatedly initiating a software version upgrade request to the set-top box in a set-top box upgrade time period until the software version upgrade request reaches a preset upgrade number threshold, and the set-top box is used to respond to the software version upgrade request for upgrade optimization.
[0024] Optionally, after the set-top box is successfully upgraded and optimized, the method further includes:
[0025] Evaluating the upgrade effect of the set-top box after successful upgrade and optimization;
[0026] If the upgrade effect reaches the expected effect, maintaining the current software version of the set-top box;
[0027] And / or, if the upgrade effect does not achieve the expected effect, the current software version of the set-top box is rolled back to a historical version.
[0028] The embodiment of the present invention further discloses a set-top box upgrade optimization device, the device comprising:
[0029] A data sequence acquisition module, used to acquire a code stream output data sequence and a program switching data sequence of the set-top box within a preset sliding window;
[0030] An upgrade time determination module, used to determine the upgrade time of the set-top box based on the code stream output data sequence and the program switching data sequence in a preset sliding window;
[0031] The upgrade optimization module is used to upgrade and optimize the set-top box according to the upgrade time of the set-top box.
[0032] Optionally, the program switching data sequence is time series data for indicating the number of program switching times, and the data sequence acquisition module includes:
[0033] The data sequence acquisition submodule is used to acquire the real-time data collected by the set-top box and transmit the real-time data to a preset message queue; structure and label the real-time data in the preset message queue to obtain the code stream output data sequence of the set-top box within a preset time period and time series data for indicating the number of program switching times; slide the preset sliding window on the time series data to obtain the code stream output data sequence and program switching data sequence of the set-top box within the preset sliding window.
[0034] Optionally, the upgrade time determination module includes:
[0035] The upgrade time determination submodule is used to obtain the sum of the code stream output of the code stream output data sequence in the preset sliding window, and obtain the sum of the program switching times of the program switching data sequence in the preset sliding window; based on the sum of the code stream output and the sum of the program switching times, determine the set-top box upgrade time.
[0036] Optionally, a data point of each code stream output data in the code stream output data sequence corresponds to each program switching number in the program switching data sequence;
[0037] The window size of the preset sliding window is used to determine the target starting data point and the target ending data point in the data sequence; wherein the sum of the code stream output is the sum of the code stream output data from the target starting data point to the target ending data point, and the sum of the program switching times is the sum of the program switching times from the target starting data point to the target ending data point.
[0038] Optionally, the upgrade time determination submodule includes:
[0039] An upgrade time determination unit, configured to determine the time period and / or time point corresponding to the preset sliding window as the set-top box upgrade time when the sum of the code stream output is less than a preset first threshold and the sum of the program switching times is less than a preset second threshold
[0040] Optionally, the set-top box upgrade time is a set-top box upgrade time point and / or a set-top box upgrade time period; and the upgrade optimization module includes:
[0041] An upgrade optimization submodule is used to initiate a software version upgrade request to the set-top box at the set-top box upgrade time point; and / or repeatedly initiate a software version upgrade request to the set-top box during the set-top box upgrade time period until the software version upgrade request reaches a preset upgrade number threshold, and the set-top box is used to respond to the software version upgrade request for upgrade optimization.
[0042] Optionally, after the set-top box is successfully upgraded and optimized, the device further includes:
[0043] An upgrade effect evaluation module is used to evaluate the upgrade effect of the set-top box after successful upgrade optimization; if the upgrade effect reaches the expected effect, the current software version of the set-top box is maintained; and / or, if the upgrade effect does not reach the expected effect, the current software version of the set-top box is rolled back to a historical version.
[0044] An embodiment of the present invention further discloses an electronic device, comprising: a processor, a memory, and a computer program stored in the memory and capable of running on the processor, wherein when the computer program is executed by the processor, any one of the set-top box upgrade optimization methods is implemented.
[0045] The embodiment of the present invention further discloses a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, any one of the upgrade optimization methods for a set-top box is implemented.
[0046] The embodiments of the present invention include the following advantages:
[0047] In an embodiment of the present invention, by obtaining the code stream output data sequence and program switching data sequence of the set-top box in a preset sliding window, the set-top box upgrade time is determined based on the code stream output data sequence and program switching data sequence in the preset sliding window, and then the set-top box is upgraded and optimized according to the determined set-top box upgrade time. Based on big data collection and sliding window algorithm, the set-top box upgrade time is determined by analyzing the time series data of the code stream output and program switching of the set-top box, and the software version of the IPTV set-top box is upgraded without affecting the normal use of the user's IPTV service, thereby improving the user's satisfaction with the IPTV service experience, and at the same time, the risk of set-top box upgrade failure when the set-top box is turned on can be avoided. BRIEF DESCRIPTION OF THE DRAWINGS
[0048] Figure 1 It is a flowchart of the steps of an embodiment of a method for upgrading and optimizing a set-top box of the present invention;
[0049] Figure 2 It is a flowchart of another embodiment of a method for upgrading and optimizing a set-top box of the present invention;
[0050] Figure 3 is a schematic diagram of a process of set-top box upgrade optimization provided by an embodiment of the present invention;
[0051] Figure 4 It is a schematic diagram of the framework of the set-top box upgrade optimization system provided by an embodiment of the present invention;
[0052] Figure 5 It is a structural block diagram of an embodiment of a set-top box upgrade optimization device of the present invention. DETAILED DESCRIPTION
[0053] In order to make the above-mentioned objects, features and advantages of the present invention more obvious and easy to understand, the present invention is further described in detail below with reference to the accompanying drawings and specific embodiments.
[0054] The development of IPTV depends on the development of broadband. The higher the broadband coverage, the faster the speed and the better the stability, the more popular IPTV will be.
[0055] A set-top box (STB) is a device that connects a TV set to an external signal source. It can convert digital TV signals into analog signals, allowing traditional analog TV sets to receive and display digital TV programs. With the gradual upgrade of IPTV services, in order to bring users a better audio-visual experience, there is a need to upgrade the software version of IPTV set-top boxes.
[0056] In the relevant technology of set-top box upgrade, it is usually set to start the upgrade when the set-top box is turned on. However, the above-mentioned set-top box upgrade method will affect the user's immediate use. Specifically, when the user turns on the set-top box and prepares to use it, if the set-top box upgrade process is encountered, it may take a long time to wait, affecting the user's need to watch programs or use related functions immediately, resulting in a poor user experience; and, the above-mentioned set-top box upgrade method has the risk of upgrade failure. Specifically, if there is a network interruption, power failure or other unexpected situation, it may cause the upgrade to fail, and then the set-top box cannot work normally, and may even need to be repaired by professionals, thereby affecting the user's normal use of the set-top box; and, the above-mentioned set-top box upgrade method will occupy network resources. Specifically, a large number of set-top boxes turned on and upgraded at the same time may cause a large pressure on the network bandwidth, affecting the normal use of other network services.
[0057] The embodiment of the present invention is based on big data collection and sliding window algorithm, and by analyzing the time series data of the code stream output and program switching of the set-top box, the time point when the set-top box is turned on and not used is determined, and the set-top box upgrade time is determined, so as to obtain the optimal upgrade solution of the IPTV set-top box, and the software version of the IPTV set-top box is upgraded without affecting the normal use of the user's IPTV service, thereby improving the user's satisfaction with the IPTV service experience. Among them, the upgrade optimization solution provided by the embodiment of the present invention will not occupy the user's immediate use time for the IPTV service, and can avoid the user's need to watch programs or use related functions immediately, and will not affect the user experience, which is conducive to improving the user experience. In addition, the embodiment of the present invention can also set a preset upgrade number threshold, which can solve the problem of repeated upgrades caused by upgrade failure, thereby causing poor user use. At the same time, an upgrade effect evaluation module can also be designed to evaluate the effect before and after the set-top box upgrade, and determine whether the software version of the set-top box needs to be returned, so as to further improve the user experience. Furthermore, the upgrade optimization solution provided by the embodiment of the present invention will not occupy the user's immediate use time of the IPTV service, and can be upgraded in batches as much as possible based on the upgrade time determined by different set-top boxes, which can avoid the problem of high pressure on network bandwidth caused by a large number of set-top boxes being powered on and upgraded at the same time, and will not affect the normal use of other network services.
[0058] Reference Figure 1 , shows a flowchart of a set-top box upgrade optimization method embodiment of the present invention, which may specifically include the following steps:
[0059] Step S101, obtaining a code stream output data sequence and a program switching data sequence of a set-top box within a preset sliding window;
[0060] The bitstream output data of the set-top box refers to the data converted by the set-top box into a bitstream format suitable for transmission and playback. The set-top box can provide high-quality video and audio content through bitstream output data, and support rich user interaction and multi-language experience.
[0061] Program switching data refers to the number of program switching times, that is, the number of times a user switches from one channel or program to another. The number of program switching times records the user's program switching behavior. Based on the number of program switching times, the user's switching habits when watching TV can be analyzed.
[0062] For the time series data of the code stream output, that is, the code stream output data sequence, the code stream output data can be associated with the time information. In the code stream output data sequence, the video and audio data output by the set-top box can be output in sequence according to the time information.
[0063] For the time series data of the program switching times, ie, the program switching data sequence, the program switching times can be associated with the time information. In the program switching data sequence, the program switching times operated by the user can be output in sequence according to the time information.
[0064] The window size of the preset sliding window can be used to determine the target starting data point and the target ending data point in the data sequence. Usually, the preset sliding window can be slid on the time series data to obtain the code stream output data sequence and program switching data sequence of the set-top box within the preset sliding window, so as to analyze the relevant code stream output data and program switching times of the data points within the corresponding preset sliding window based on the obtained code stream output data sequence and program switching data sequence.
[0065] Step S102, determining the set-top box upgrade time based on the code stream output data sequence and the program switching data sequence in the preset sliding window;
[0066] The set-top box upgrade time is the time point when the set-top box is turned on and not in use. It is the optimal upgrade solution for IPTV set-top boxes, which allows the software version of the set-top box to be upgraded without affecting the normal use of IPTV services by users.
[0067] In some embodiments of the present invention, mainly based on big data collection and sliding window algorithm, the code stream output data sequence and program switching data sequence in the preset sliding window can be analyzed to determine the time point when the set-top box is turned on and not in use, and the set-top box upgrade time can be determined to obtain the optimal upgrade plan for the IPTV set-top box.
[0068] Step S103, upgrading and optimizing the set-top box according to the set-top box upgrade time.
[0069] The determined set-top box upgrade time may be a set-top box upgrade time point or a set-top box upgrade time period, depending on the window size of the preset sliding window.
[0070] The upgrade solution based on the determined set-top box upgrade time can be manifested as upgrading and optimizing the set-top box at the set-top box upgrade time. Since the set-top box upgrade time is a time point when the set-top box is turned on and not in use, the upgrade optimization solution provided by the embodiment of the present invention will not occupy the user's immediate use time of the IPTV service, can avoid the user's need to watch programs or use related functions immediately, will not affect the user experience, and is conducive to improving the user experience.
[0071] In an embodiment of the present invention, by obtaining the code stream output data sequence and program switching data sequence of the set-top box in a preset sliding window, the set-top box upgrade time is determined based on the code stream output data sequence and program switching data sequence in the preset sliding window, and then the set-top box is upgraded and optimized according to the determined set-top box upgrade time. Based on big data collection and sliding window algorithm, the set-top box upgrade time is determined by analyzing the time series data of the code stream output and program switching of the set-top box, and the software version of the IPTV set-top box is upgraded without affecting the normal use of the user's IPTV service, thereby improving the user's satisfaction with the IPTV service experience, and at the same time, the risk of set-top box upgrade failure when the set-top box is turned on can be avoided.
[0072] Reference Figure 2 , shows a flowchart of another embodiment of a set-top box upgrade optimization method of the present invention, which may specifically include the following steps:
[0073] Step S201, acquiring real-time data collected by the set-top box, and transmitting the real-time data to a preset message queue;
[0074] In an embodiment of the present invention, based on big data collection and sliding window algorithm, by analyzing the time series data of the set-top box's code stream output and program switching, the time point when the set-top box is turned on and not in use can be determined, and the set-top box upgrade time can be determined.
[0075] In some embodiments of the present invention, the big data collection process can be achieved by acquiring real-time data collected by a set-top box. Figure 3 As shown, it can be specifically manifested as collecting and processing real-time data of user behavior through probes of the IPTV platform. The real-time data may include but is not limited to the video code stream output by the set-top box, the number of program / channel switching times, delay, packet loss rate, etc.; the processing of the real-time data can be manifested as transmitting the real-time data collected by the set-top box to a preset message queue, and then calculating and cleaning the business indicators of the data in the preset message queue, so as to perform subsequent processing on the cleaned data in the preset message queue.
[0076] It should be noted that the data cleaning performed can be expressed as a simple data screening process, and the data obtained after the current cleaning has no correlation with the time information.
[0077] Step S202, structuring and labeling the real-time data in the preset message queue to obtain a code stream output data sequence of the set-top box within a preset time period and time series data for indicating the number of program switching;
[0078] In order to analyze the collected big data based on the sliding window algorithm, in some embodiments of the present invention, the bitstream output data and the number of program switching times can be associated with time information by structuring and labeling the data to obtain time series data of the relevant data.
[0079] Optionally, the real-time data in the preset message queue may be structured and labeled to obtain a code stream output data sequence of the set-top box within a preset time period and time series data for indicating the number of program switching times.
[0080] In practical applications, such as Figure 3 As shown, a data cluster, such as a Hadoop cluster or a Spark cluster, can be used to calculate and store user data to form structured and labeled data. Specifically, it can be manifested in that the Hadoop / Spark cluster is used to store and preprocess the behavior logs, output stream information data and QOS (Quality of Service) performance data of various IPTV users. When structuring and labeling the data, the Hadoop cluster or the Spark cluster can perform batch processing. Among them, the preprocessing may include data extraction, data filtering, data cleaning, data association, data verification, etc.
[0081] Exemplarily, the specific steps of batch processing by Hadoop / Spark cluster to achieve data structuring and labeling may include: first, data extraction may be performed, which is performed by extracting data related to IPTV user behavior, output bitstream information and QOS performance from the original data; then data filtering, data cleaning, data association and data verification may be performed. Specifically, data filtering may be performed by removing invalid or redundant data and retaining valuable data; data cleaning may be performed by performing error correction, deduplication and formatting on the data to ensure the quality of the data; data association may be performed by associating data from different sources to establish relationships between the data; data verification may be performed by verifying the processed data to ensure the accuracy and completeness of the data.
[0082] Optionally, the basis for data storage can be determined according to specific needs, and time is a common basis. For example, data can be stored in a distributed file system in chronological order, or data can be marked with a timestamp to quickly retrieve and analyze data in a specific time period. Optionally, data can also be stored based on other factors such as user ID, channel, etc., which is not limited by the embodiments of the present invention.
[0083] In the embodiment of the present invention, by structurally processing the data, the code stream output data and the number of program switching times can be associated with the time information, so that the data at a specific time point can be accurately queried and analyzed.
[0084] Step S203, sliding a preset sliding window on the time series data to obtain a code stream output data sequence and a program switching data sequence of the set-top box within the preset sliding window;
[0085] The structured and labeled data can be used to indicate the bitstream output data and program switching times at the corresponding time.
[0086] After obtaining the code stream output data sequence of the set-top box within a preset time period and the time series data for indicating the number of program switching times, a preset sliding window can be slid on the time series data to obtain the code stream output data sequence and program switching data sequence of the set-top box within the preset sliding window, so as to analyze the user data using a sliding window algorithm model and determine the upgrade time of the set-top box.
[0087] Step S204, determining the set-top box upgrade time based on the code stream output data sequence and the program switching data sequence in the preset sliding window;
[0088] The analysis of the sliding window algorithm model on user data can be expressed as analyzing the code stream output data sequence and program switching data sequence in the preset sliding window to determine the time point when the set-top box is turned on and not in use, and then determine the upgrade time of the set-top box.
[0089] The data points of each bitstream output data in the bitstream output data sequence may correspond to each program switching number in the program switching data sequence. Optionally, the bitstream output sum of the bitstream output data sequence in the preset sliding window may be obtained, and the program switching number sum of the program switching data sequence in the preset sliding window may be obtained, so as to determine the set-top box upgrade time based on the bitstream output sum and the program switching number sum.
[0090] Specifically, the window size of the preset sliding window can be used to determine the target starting data point and the target ending data point in the data sequence. Exemplarily, assuming that the window size of the preset sliding window is ω, if ω=3, it can mean that the preset sliding window contains 3 data points, that is, it contains the target starting data point in the data sequence and ω-1=2 data points starting from the target starting data point.
[0091] Among them, the total bitstream output may refer to the total bitstream output data from the target start data point to the target end data point; the total number of program switching times may refer to the total number of program switching times from the target start data point to the target end data point.
[0092] In practical applications, in the embodiments of the present invention, the number of program switches is mainly used to assist in judging the usage status of the set-top box. Specifically, the number of program switches can be combined with the bitstream output data to help determine whether the set-top box is in the power-on but unused state, so as to determine the time point when the set-top box is powered on but unused.
[0093] In a specific implementation, if the total bitstream output within a preset sliding window is less than a preset first threshold, and the total number of program switches is less than a preset second threshold, it can be considered that the set-top box may not be used during this time period. At this time, the time period and / or time point corresponding to the preset sliding window can be determined as the set-top box upgrade time. By analyzing the time series data of the bitstream output data and the time series data of the number of program switches, the user's usage habits can be better understood, so as to more accurately select the best time point for set-top box upgrade and avoid upgrading when the user frequently switches programs, which affects the user experience.
[0094] Exemplarily, assume that the bitstream output data sequence is c j , and the program switch data sequence is s j . The size of the sliding window is ω (assumed to be 3 data points). The condition for judging that the set-top box is powered on but unused is that the total bitstream output is less than a preset first threshold Tc (assumed to be 10MB), and the total number of program switches is less than a preset second threshold Ts (assumed to be 1 time).
[0095] Optionally, a window function window(i) can be defined to represent the total bitstream output and the total number of program switches within the sliding window starting from the jth data point. Among them, the jth data point usually refers to the jth data point in the time series data, and this data point can correspond to the stored bitstream output data and the number of program switches. The specific calculation formula can be as follows:
[0096]
[0097] Among them, i + ω - 1 < n, and i can take 1, 2, 3,... in turn until a certain condition is met.
[0098] Then, it can be judged in turn whether the data in each window meets the condition that the set-top box is powered on but unused, that is:
[0099]
[0100] Among them, i + ω - 1 < n.
[0101] If the conditions are met, for example, the total output bitstream is less than the above-mentioned first preset threshold value of 10MB, and the total program switching is less than the above-mentioned second preset threshold value of 1, it can be considered that the set-top box may be in a powered-on but unused state during the time period corresponding to the window. In this way, the use state of the set-top box in different time periods can be judged by using a sliding window algorithm based on the time series data of video bitstream output and program switching, so as to select the best time point to upgrade the IPTV set-top box.
[0102] Optionally, a preset sliding window of a preset window size may be continuously slid on the time series data to obtain the total stream output and the total number of program switching times of corresponding data points in each window in the above manner.
[0103] For example, suppose data is recorded every 5 minutes for a total of 1 hour, that is, there are 12 data points; suppose the preset sliding window size is 15 minutes (that is, 3 data points), then you can start sliding this window on the time series data, starting from the first data point, each time the window moves backward one data point, and then for the data in each window, calculate the total bitstream output and the total number of program switching times.
[0104] In the embodiment of the present invention, the set-top boxes can be divided into several batches for upgrading according to the time period when the set-top boxes may be powered on and not used as determined by the sliding window algorithm. For example, the set-top boxes can be divided into different batches in chronological order, and the set-top boxes can be upgraded at the best upgrading time point of each batch, so as to avoid the problem that a large number of set-top boxes are powered on and upgraded at the same time, which puts a great pressure on the network bandwidth and affects the normal use of other network services.
[0105] Step S205, upgrading and optimizing the set-top box according to the set-top box upgrade time.
[0106] In one case, after determining the upgrade time of the set-top box based on the time series data of video stream output and program switching, and using a sliding window algorithm to judge the usage status of the set-top box in different time periods, an upgrade command can be pushed to the set-top box, and the set-top box can be upgraded and optimized according to the upgrade time of the set-top box.
[0107] In another case, if the set-top box is always turned on and in use, the IPTV platform will pop up a window asking the user whether an upgrade is needed when the user uses a remote control or other device to output a shutdown command. If no selection is made, the upgrade will be performed by default.
[0108] The upgrade solution based on the determined set-top box upgrade time can be expressed as upgrading and optimizing the IPTV set-top box at the set-top box upgrade time, that is, selecting the best time point. Since the set-top box upgrade time is a time point when the set-top box is turned on and not in use, the upgrade optimization solution provided by the embodiment of the present invention will not occupy the user's immediate use time of the IPTV service, can avoid the user's need to watch programs or use related functions immediately, will not affect the user experience, and is conducive to improving the user experience.
[0109] like Figure 3 As shown, the IPTV platform can initiate an upgrade request to the set-top box. Optionally, the set-top box upgrade time can be a set-top box upgrade time point or a set-top box upgrade time period, depending on the window size of the preset sliding window. For example, when the window size of the preset sliding window is greater than 1, 3 data points are usually included in the preset sliding window, and the 3 data points from the data sequence have 3 time information, that is, at this time, it can be expressed as a time period including 3 time points; when the window size of the preset sliding window is equal to 1, 1 data point is included in the preset sliding window, and 1 data point from the data sequence has 1 time information, which can be expressed as a set-top box upgrade time point.
[0110] It should be noted that, since a preset sliding window of a preset window size can be continuously slid on the time series data, there may be multiple optimal time points / time periods that can be selected, and this is not limited by the embodiments of the present invention.
[0111] In actual applications, the IPTV platform can initiate a software version upgrade request to the set-top box at the set-top box upgrade time and / or the set-top box upgrade period, and the set-top box is used to respond to the software version upgrade request to perform upgrade optimization.
[0112] As an example, the IPTV platform may initiate a software version upgrade request to the set-top box at the set-top box upgrade time point; as another example, the IPTV platform may repeatedly initiate a software version upgrade request to the set-top box during the set-top box upgrade time period until the software version upgrade request reaches a preset upgrade number threshold, thereby solving the problem of repeated upgrades due to upgrade failures, thereby causing poor user experience, by setting the preset upgrade number threshold.
[0113] Optionally, when a software version upgrade request is initiated to the set-top box through the IPTV platform, it can be determined whether the set-top box device is compatible with the software version to be upgraded. If the set-top box device is compatible with the software version to be upgraded, the software version upgrade optimization operation is performed on the set-top box.
[0114] Optionally, when the IPTV platform is upgrading and optimizing the set-top box, a pop-up window may pop up on the screen of the set-top box to remind the user that the upgrade is in progress. Among them, although it is judged that the set-top box may be in a powered-on and unused state, in order to ensure that the user knows that the set-top box is undergoing an upgrade operation, so as to prevent the user from performing other operations without knowing it, resulting in abnormalities or interruptions in the upgrade process, the screen of the set-top box may push a pop-up window to remind the user that the upgrade is in progress; the pop-up window prompt can let the user know the current status of the set-top box to prevent the user from mistakenly thinking that the set-top box has a malfunction or other problems. In addition, even if the set-top box is powered on and not in use, the possibility that the user suddenly needs to use the set-top box during the upgrade process cannot be completely ruled out. The pop-up window prompt can give the user an opportunity to choose, such as the user can choose to pause the upgrade or wait until the upgrade is completed before using it. That is, the pop-up window showing that the upgrade is in progress is to increase the user's awareness and controllability of the upgrade process and ensure the smooth progress of the upgrade process.
[0115] Optionally, assuming that the preset upgrade threshold is set to 5 times, if the set-top box fails to upgrade 5 times, the IPTV platform can mark the user's set-top box as unable to upgrade and stop upgrading the set-top box to prevent the upgrade process from causing a lag in the user's video service.
[0116] In a preferred embodiment of the present invention, if the set-top box is successfully upgraded, after the set-top box is successfully upgraded and optimized, the upgrade effect of the set-top box after the upgrade optimization is successfully performed can be evaluated. Optionally, if the upgrade effect of the set-top box reaches the expected effect, the current software version of the set-top box can be maintained; and / or, if the upgrade effect does not reach the expected effect, the current software version of the set-top box can be rolled back to a historical version.
[0117] Exemplarily, it can be specifically manifested as a comparison of the video delay and packet loss rate before and after the upgrade. When evaluating the effect of the set-top box upgrade, if the video delay and packet loss rate after the set-top box upgrade are not good, that is, the upgrade effect does not achieve the expected effect, then the original version can be returned. Specifically, when the video delay increases or the packet loss rate increases after the upgrade, resulting in a decrease in user experience, you can consider rolling back the version to restore it to a more stable and good usage state before.
[0118] In the embodiment of the present invention, based on big data collection and sliding window algorithm, the set-top box upgrade time is determined by analyzing the time series data of the set-top box's code stream output and program switching. The software version of the IPTV set-top box is upgraded without affecting the user's normal use of IPTV services, thereby improving the user's satisfaction with the IPTV service experience and avoiding the risk of upgrade failure when the set-top box is turned on.
[0119] Reference Figure 4, showing a schematic diagram of the framework of a set-top box upgrade optimization system provided by an embodiment of the present invention, the set-top box upgrade optimization system 4 involves a data access module 410, a data computing center module 411, an upgrade module 412 and an upgrade effect evaluation module 413.
[0120] Optionally, the data access module 410 may be mainly responsible for transmitting the real-time data collected by the user's set-top box (including the set-top box output video code stream, channel switching times, delay, packet loss rate, etc.) to the preset message queue through the IPTV probe system, calculating and cleaning the business indicators of the data in the preset message queue, and finally transmitting it to the data calculation center module.
[0121] The data computing center module 411 can be mainly used to store and batch process the behavior logs of various users, film and television program information data and data collected by the data access module to achieve data structuring and labeling, thereby obtaining the time series data of the set-top box code stream output and program switching.
[0122] The upgrade module 412 is mainly responsible for analyzing the time series data of the set-top box's code stream output and program switching, and determining the time point when the set-top box is turned on and not in use, initiating a request for a software version upgrade to the set-top box through the platform, and determining whether the device is compatible with the software version by setting a threshold for the number of upgrades, thereby ultimately achieving an upgrade of the device's software version.
[0123] The upgrade effect evaluation module 413 can be mainly used to evaluate the upgrade effect of the set-top box, and evaluate the effect after the set-top box is successfully upgraded. Specifically, it can be manifested as comparing the video delay and packet loss rate before and after the upgrade, and then obtaining a judgment result on whether to roll back the current software version of the set-top box to the original version.
[0124] It should be noted that if Figure 4 The set-top box upgrade optimization system 4 shown can be implemented based on the various modules it contains. Figures 1 to 3 The set-top box upgrade optimization solution shown in the embodiment of the present invention will not be described in detail here.
[0125] In the embodiment of the present invention, based on big data collection and sliding window algorithm, by analyzing the time series data of the code stream output and program switching of the set-top box, the time point when the set-top box is turned on and not used is determined, and the set-top box upgrade time is determined, so as to obtain the optimal upgrade solution of the IPTV set-top box, and the software version of the IPTV set-top box is upgraded without affecting the normal use of the user's IPTV service, so as to improve the user's satisfaction with the IPTV service experience, wherein the upgrade optimization solution provided by the embodiment of the present invention will not occupy the user's immediate use time for the IPTV service, can avoid the user's demand for watching programs or using related functions immediately, will not affect the user experience, and is conducive to improving the user experience. Moreover, the embodiment of the present invention can also set a preset upgrade number threshold, which can solve the problem of repeated upgrades caused by upgrade failure, thereby causing poor user use. At the same time, an upgrade effect evaluation module can also be designed to evaluate the effect before and after the set-top box upgrade, and determine whether the software version of the set-top box needs to be returned, so as to further improve the user experience. Furthermore, the upgrade optimization solution provided by the embodiment of the present invention will not occupy the user's immediate use time of the IPTV service, and can be upgraded in batches as much as possible based on the upgrade time determined by different set-top boxes, which can avoid the problem of high pressure on network bandwidth caused by a large number of set-top boxes being powered on and upgraded at the same time, and will not affect the normal use of other network services.
[0126] It should be noted that, for the sake of simplicity, the method embodiments are described as a series of action combinations, but those skilled in the art should be aware that the embodiments of the present invention are not limited by the order of the actions described, because according to the embodiments of the present invention, certain steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in the specification are all preferred embodiments, and the actions involved are not necessarily required by the embodiments of the present invention.
[0127] Reference Figure 5 , shows a structural block diagram of an embodiment of a set-top box upgrade optimization device of the present invention, which may specifically include the following modules:
[0128] The data sequence acquisition module 501 is used to acquire the code stream output data sequence and program switching data sequence of the set-top box within a preset sliding window;
[0129] An upgrade time determination module 502, configured to determine a set-top box upgrade time based on the code stream output data sequence and the program switching data sequence in a preset sliding window;
[0130] The upgrade optimization module 503 is used to upgrade and optimize the set-top box according to the upgrade time of the set-top box.
[0131] In some embodiments of the present invention, the program switching data sequence is time series data for indicating the number of program switching times, and the data sequence acquisition module 501 may include the following submodules:
[0132] The data sequence acquisition submodule is used to acquire the real-time data collected by the set-top box and transmit the real-time data to a preset message queue; structure and label the real-time data in the preset message queue to obtain the code stream output data sequence of the set-top box within a preset time period and time series data for indicating the number of program switching times; slide the preset sliding window on the time series data to obtain the code stream output data sequence and program switching data sequence of the set-top box within the preset sliding window.
[0133] In some embodiments of the present invention, the upgrade time determination module 502 may include the following submodules:
[0134] The upgrade time determination submodule is used to obtain the sum of the code stream output of the code stream output data sequence in the preset sliding window, and obtain the sum of the program switching times of the program switching data sequence in the preset sliding window; based on the sum of the code stream output and the sum of the program switching times, determine the set-top box upgrade time.
[0135] In some embodiments of the present invention, the data points of each bitstream output data in the bitstream output data sequence correspond to each program switching number in the program switching data sequence;
[0136] The window size of the preset sliding window is used to determine the target starting data point and the target ending data point in the data sequence; wherein the sum of the code stream output is the sum of the code stream output data from the target starting data point to the target ending data point, and the sum of the program switching times is the sum of the program switching times from the target starting data point to the target ending data point.
[0137] In some embodiments of the present invention, the upgrade time determination submodule may include the following units:
[0138] An upgrade time determination unit, configured to determine the time period and / or time point corresponding to the preset sliding window as the set-top box upgrade time when the sum of the code stream output is less than a preset first threshold and the sum of the program switching times is less than a preset second threshold
[0139] In some embodiments of the present invention, the set-top box upgrade time is a set-top box upgrade time point and / or a set-top box upgrade time period; the upgrade optimization module 503 may include the following submodules:
[0140] An upgrade optimization submodule is used to initiate a software version upgrade request to the set-top box at the set-top box upgrade time point; and / or repeatedly initiate a software version upgrade request to the set-top box during the set-top box upgrade time period until the software version upgrade request reaches a preset upgrade number threshold, and the set-top box is used to respond to the software version upgrade request for upgrade optimization.
[0141] In some embodiments of the present invention, after the set-top box is successfully upgraded and optimized, the embodiments of the present invention may further include the following modules:
[0142] An upgrade effect evaluation module is used to evaluate the upgrade effect of the set-top box after successful upgrade optimization; if the upgrade effect reaches the expected effect, the current software version of the set-top box is maintained; and / or, if the upgrade effect does not reach the expected effect, the current software version of the set-top box is rolled back to a historical version.
[0143] In an embodiment of the present invention, the set-top box upgrade optimization device provided by the embodiment of the present invention obtains the code stream output data sequence and program switching data sequence of the set-top box in a preset sliding window, determines the set-top box upgrade time based on the code stream output data sequence and program switching data sequence in the preset sliding window, and then optimizes the set-top box upgrade according to the determined set-top box upgrade time. Based on big data collection and sliding window algorithm, the set-top box upgrade time is determined by analyzing the time series data of the code stream output and program switching of the set-top box, and the software version of the IPTV set-top box is upgraded without affecting the normal use of the user's IPTV service, thereby improving the user's satisfaction with the IPTV service experience, and at the same time, it can also avoid the risk of set-top box upgrade failure when the power is on.
[0144] As for the device embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.
[0145] An embodiment of the present invention further provides an electronic device, including:
[0146] It includes a processor, a memory, and a computer program stored in the memory and capable of running on the processor. When the computer program is executed by the processor, the various processes of the above-mentioned set-top box upgrade optimization method embodiment are implemented, and the same technical effect can be achieved. To avoid repetition, it will not be repeated here.
[0147] An embodiment of the present invention further provides a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the various processes of the above-mentioned set-top box upgrade optimization method embodiment are implemented, and the same technical effect can be achieved. To avoid repetition, it will not be repeated here.
[0148] The various embodiments in this specification are described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same or similar parts between the various embodiments can be referenced to each other.
[0149] It will be appreciated by those skilled in the art that the embodiments of the present invention may be provided as methods, devices, or computer program products. Therefore, the embodiments of the present invention may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the embodiments of the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program codes.
[0150] The embodiments of the present invention are described with reference to the flowcharts and / or block diagrams of the methods, terminal devices (systems), and computer program products according to the embodiments of the present invention. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of the processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing terminal device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing terminal device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0151] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing terminal device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce a manufactured product including an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.
[0152] These computer program instructions can also be loaded onto a computer or other programmable data processing terminal device so that a series of operating steps are executed on the computer or other programmable terminal device to produce a computer-implemented process, thereby providing instructions for executing on the computer or other programmable terminal device to implement the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.
[0153] Although the preferred embodiments of the present invention have been described, those skilled in the art may make additional changes and modifications to these embodiments once they have learned the basic creative concept. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments and all changes and modifications that fall within the scope of the embodiments of the present invention.
[0154] Finally, it should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or terminal device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or terminal device. In the absence of further restrictions, the elements defined by the sentence "comprise a ..." do not exclude the existence of other identical elements in the process, method, article or terminal device including the elements.
[0155] The above describes in detail a set-top box upgrade optimization method, a set-top box upgrade optimization device, a corresponding electronic device, and a corresponding computer-readable storage medium provided by the present invention. Specific examples are used herein to illustrate the principles and implementation methods of the present invention. The description of the above embodiments is only used to help understand the method of the present invention and its core idea. At the same time, for those skilled in the art, according to the idea of the present invention, there will be changes in the specific implementation methods and application scope. In summary, the content of this specification should not be understood as a limitation on the present invention.
Claims
1. A method for upgrading and optimizing a set-top box, It is characterized in that The method comprises: Acquire a code stream output data sequence and a program switching data sequence of the set-top box within a preset sliding window; Determining a set-top box upgrade time based on the code stream output data sequence and the program switching data sequence in a preset sliding window; The set-top box is upgraded and optimized according to the upgrade time of the set-top box.
2. The method according to claim 1, It is characterized in that The program switching data sequence is time series data for indicating the number of program switching times, and the step of obtaining the code stream output data sequence and the program switching data sequence of the set-top box within the preset sliding window includes: Acquire the real-time data collected by the set-top box, and transmit the real-time data to a preset message queue; Structuring and labeling the real-time data in the preset message queue to obtain a code stream output data sequence of the set-top box within a preset time period and time series data for indicating the number of program switching; The preset sliding window is slid on the time series data to obtain the code stream output data sequence and the program switching data sequence of the set-top box within the preset sliding window.
3. The method according to claim 1 or 2, It is characterized in that The step of determining the set-top box upgrade time based on the code stream output data sequence and the program switching data sequence in the preset sliding window includes: Obtaining the sum of code stream outputs of the code stream output data sequence in the preset sliding window, and obtaining the sum of program switching times of the program switching data sequence in the preset sliding window; The set-top box upgrade time is determined based on the total code stream output and the total number of program switching times.
4. The method according to claim 3, It is characterized in that The data points of each code stream output data in the code stream output data sequence correspond to each program switching number in the program switching data sequence; The window size of the preset sliding window is used to determine the target starting data point and the target ending data point in the data sequence; wherein the sum of the code stream output is the sum of the code stream output data from the target starting data point to the target ending data point, and the sum of the program switching times is the sum of the program switching times from the target starting data point to the target ending data point.
5. The method according to claim 4, It is characterized in that The step of determining the set-top box upgrade time based on the total code stream output and the total number of program switching times includes: If the sum of the code stream outputs is less than a preset first threshold, and the sum of the program switching times is less than a preset second threshold, the time period and / or time point corresponding to the preset sliding window is determined to be a set-top box upgrade time.
6. The method according to claim 1, It is characterized in that The set-top box upgrade time is a set-top box upgrade time point and / or a set-top box upgrade time period; and the step of upgrading and optimizing the set-top box according to the set-top box upgrade time includes: Initiating a software version upgrade request to the set-top box at the set-top box upgrade time point; And / or, repeatedly initiating a software version upgrade request to the set-top box in a set-top box upgrade time period until the software version upgrade request reaches a preset upgrade number threshold, and the set-top box is used to respond to the software version upgrade request for upgrade optimization.
7. The method according to claim 6, It is characterized in that After the set-top box is successfully upgraded and optimized, the method further includes: Evaluating the upgrade effect of the set-top box after successful upgrade and optimization; If the upgrade effect reaches the expected effect, maintaining the current software version of the set-top box; And / or, if the upgrade effect does not achieve the expected effect, the current software version of the set-top box is rolled back to a historical version.
8. A device for upgrading and optimizing a set-top box, It is characterized in that The device comprises: A data sequence acquisition module, used to acquire a code stream output data sequence and a program switching data sequence of the set-top box within a preset sliding window; An upgrade time determination module, used to determine the upgrade time of the set-top box based on the code stream output data sequence and the program switching data sequence in a preset sliding window; The upgrade optimization module is used to upgrade and optimize the set-top box according to the upgrade time of the set-top box.
9. An electronic device, It is characterized in that include: A processor, a memory, and a computer program stored in the memory and capable of running on the processor, wherein when the computer program is executed by the processor, the method for upgrading and optimizing the set-top box according to any one of claims 1 to 7 is implemented.
10. A computer-readable storage medium, It is characterized in that The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the method for upgrading and optimizing a set-top box as claimed in any one of claims 1 to 7 is implemented.
Citation Information
Patent Citations
Method, device and equipment for controlling software for auto-updating
CN102110000A
Code stream broadcast system, code stream broadcast method and software over the air upgrade method
CN102427552A
Software upgrading method and device and set top box
CN112702654A
Method and apparatus for upgrading process, device and storage medium
WO2023040302A1
