VIDEO REPRODUCTION DEVICE, VIDEO REPRODUCTION METHOD, AND PROGRAM

By employing long-term throughput prediction and advanced algorithms, the video playback device optimizes chunk selection to maintain consistent video quality and reduce fluctuations, addressing the limitations of short-term strategies in varying network conditions.

JP2025503320AActive Publication Date: 2025-01-30NIPPON TELEGRAPH & TELEPHONE CORP
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
JP2024545930
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2022-03-23
Publication Date
2025-01-30
Estimated Expiration
2042-03-23

Smart Images

  • Figure 2025503320000001_ABST
    Figure 2025503320000001_ABST
Patent Text Reader

Abstract

A video playback device comprising a processor and a memory, the memory including instructions for causing the processor to execute the steps of: predicting future throughput using past throughput values; setting a search space for finding a quality adaptation schedule; extracting a plurality of paths in the search space; estimating a quality of experience value for each path among the extracted plurality of paths based on the future throughput; identifying the path corresponding to the highest quality of experience value among the estimated quality of experience values ​​as the quality adaptation schedule; determining a quality value of a chunk to be requested in the next future unit time interval of the current unit time interval based on the quality adaptation schedule; requesting a chunk of the determined quality value; and receiving a chunk of the determined quality value.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to a video playback device, a video playback method, and a program. [Background technology]

[0002] Streaming video to a large audience is difficult. Each user accesses the Internet with different capabilities, with different available throughput, which also varies as a function of time. Therefore, to stream video to all users, it is necessary to use different video representations (videos coded with various resolutions, bit rates and frame rate values) to be able to adapt the video bit rate requirements to the users' available throughput. Such a method of adapting the quality to the available throughput is called adaptive bit rate video streaming.

[0003] In the process of adaptive bitrate (ABR) streaming, a video player is presented with different video representations with different throughput requirements. The whole video is divided into multiple segments called chunks, and the video quality can be adjusted on a chunk-by-chunk basis. The video player selects an appropriate sequence of chunks to maximize the coding quality, thereby providing the best quality of experience (QoE) while avoiding buffer exhaustion that results in frequent quality changes and video stalls. To achieve this goal, it is necessary to consider two main factors: first, it is necessary to define appropriate rules for the chunk requirement decision mechanism, and second, since chunk selection may depend on throughput estimation, accurate throughput prediction is necessary to make an appropriate chunk selection. [Prior art documents] [Non-patent literature]

[0004] [Non-Patent Document 1] T.-Y. Huang, R. Johari, N. McKeown, M. Trunnell, and M. Watson, “A buffer-based approach to rate adaptation: Evidence from a large video streaming service,” in SIGCOMM.

Outdoor Tool2

Outdoor Tools3

Outdoor Tools 4

Direct Environment 5

[0005] There has been a lot of research on chunk packet selection rules. However, these studies have been limited in the time scale considered for chunk selection. In fact, these studies have focused on selecting the next chunk in relation to the problem of "which chunk should be requested next" faced by the video playback device.

[0006] However, such a short-term perspective may not be able to predict network access inefficiencies and only provides responses to observed inefficiencies, so the resulting QoE may not be optimal.

[0007] As an example, consider a case where a user watches a video in a car. At a certain time, the user has high quality network access, which allows the user to watch high quality video. However, when the car enters a tunnel, the available throughput drops significantly. In this situation, a conventional "short-term view" video playback device has no choice but to significantly reduce the quality of the video when it measures the drop in throughput to avoid stopping video provision.

[0008] There is a need for video playback techniques that can improve a user's quality of experience in challenging network environments. [Means for solving the problem]

[0009] According to one aspect of the present invention, a video playback device includes a transmitter; a receiver; a processor; and a memory, the memory instructing the processor to perform the steps of: predicting a future throughput during a first future time interval including m unit time intervals in the future using past throughput values; setting a search space defined by k quality levels and a second time interval including a current unit time interval, the m future unit time intervals, and n past unit time intervals, for finding a quality adaptation schedule; and setting a search space for finding a quality adaptation schedule, the search space being defined by k quality levels and a second time interval including a current unit time interval, the m future unit time intervals, and n past unit time intervals. a step of extracting a plurality of paths obtained by selecting any one of the quality levels from among the future throughputs; a step of estimating a quality of experience value for each path among the extracted plurality of paths based on the future throughput; a step of identifying a path corresponding to the highest quality of experience value among the estimated quality of experience values ​​as the quality adaptation schedule; a step of determining a quality value of a chunk to be requested in a future unit time interval next to the current unit time interval based on the quality adaptation schedule; a step of requesting a chunk of the determined quality value via the transmitting unit; and a step of receiving the chunk of the determined quality value via the receiving unit. Effect of the Invention

[0010] According to the embodiment, a video playback technique is provided that enables improving a user's quality of experience in difficult network environments. [Brief description of the drawings]

[0011] [Figure 1] FIG. 2 illustrates an example of main steps of a chunk scheduling algorithm in an embodiment. [Diagram 2] FIG. 11 is a diagram showing an example of a comparison of QoE values ​​for different quality adaptations in an embodiment. [Diagram 3]1 is a diagram illustrating an example of a hardware configuration of a video playback device 10 according to an embodiment. [Figure 4] 1 is a diagram illustrating an example of a functional configuration of a video playback device 10 according to an embodiment. [Diagram 5] 1 is a flowchart illustrating an example of a processing procedure executed by the video reproducing device 10. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0012] Below we provide an overview of different algorithms, which can be divided into two main categories: rule-based and learning-based ABR models. In the first category, the decision-making process for chunk selection is based on hand-crafted rules, while the second category uses reinforcement learning to define which chunks to request.

[0013] There are two main types of rule-based ABR models: models that use only buffer filling rate information to make chunk request decisions, and algorithms that use throughput predictions. For buffer-only based methods, Non-Patent Document 1 proposes a method to request chunks depending on a linear function of the buffer filling rate. When the buffer is full, higher quality chunks are requested. On the other hand, when the buffer is less full, lower quality video is requested to avoid video stalls. Such methods take into account a mitigating factor for the case where only high quality levels are requested when the buffer filling rate reaches a minimum level, thus avoiding buffer starvation due to requesting chunks of too high quality.

[0014] Since there is a non-linear relationship between video bitrate and quality, using a linear relationship between the buffer filling rate and the selected chunks may not give an optimal solution. Therefore, the BOLA algorithm is proposed. In this algorithm, chunks are selected based on a buffer filling rate threshold. When the buffer filling rate reaches a certain filling rate level, a certain quality level is selected. The thresholding process is performed for each video content using information about the video bitrates and corresponding qualities of different video representations at which the video can be used. Previously introduced methods only consider the buffer filling rate to select chunks. However, methods that also consider throughput information are being considered. The idea behind these methods is to use knowledge about previously downloaded chunks to get an estimate of the future throughput, and to select chunks based on a prediction of the video player's ability to download chunks in time, taking into account the available network conditions.

[0015] The simplest method is a rate-only based algorithm, where chunks are selected such that the requested bitrate for the selected chunk is just below the estimated throughput. However, one of the limitations of such methods is that they may result in frequent quality changes, resulting in poor QoE, since previous studies have shown that users prefer stable quality over fluctuating quality. Therefore, a model predictive control (MPC) approach has been proposed, taking into account the effects of quality fluctuations and buffer information (to account for video stalls) (Non-Patent Document 2).

[0016] The general idea of ​​this type of ABR control mechanism is to optimize a QoE evaluation function given by a linear addition of three QoE-related factors: the required chunk quality, the smoothness of quality transitions between successive chunks, and the duration of video stalls and initial load delays. Then, future throughput is estimated and chunks are selected to maximize the quality and minimize quality transitions and video stalls.

[0017] One of the challenges of such methods is the ability to predict future throughput values. To address this issue, different models derived from the underlying MPC algorithm have been proposed. In Non-Patent Document 2, throughput prediction is performed using the harmonic mean. Then, in Non-Patent Document 2, the authors provide an alternative approach called RobustMPC, which weights the predicted throughput values ​​taking into account past throughput prediction errors, thereby reducing throughput overprediction.

[0018] In Non-Patent Document 3, an algorithm called Fugu is proposed, which utilizes a deep neural network (DNN) to predict transmission time. The algorithm uses features such as past chunk sizes, past transmission times, and Transmission Control Protocol (TCP) statistics (congestion window, unacknowledged packets, round trip time (RTT), TCP estimated throughput) to estimate the time required to download chunks of different quality. Based on these estimates, MPC rules weighting quality, quality variation, and video stall related events can be applied to determine which chunks should be selected to give the best experience to the user.

[0019] BayesMPC proposes to model the throughput using a trained Bayesian neural network. With this approach, the distribution of throughput values ​​is predicted, allowing a probabilistic approach to the chunk selection algorithm while using the underlying MPC rules. Finally, Hidden Markov Models (HMMs) have also been proposed as a way to perform throughput prediction.

[0020] As an alternative to handcrafted rule-based ABR models, previous work has explored using reinforcement learning for chunk selection mechanisms. Pensive (4) is a guide to this kind of model. The general idea of ​​this algorithm is that rules, such as those prescribed for MPC, can be considered arbitrary and subject to human error in designing those rules.

[0021] For example, the weighting between requesting high quality chunks and aiming to maintain a constant quality is left as a free parameter, and setting this value may not be an easy task. Furthermore, video pause features are considered only in terms of their duration linearly combined with features related to coding quality, which may also be considered controversial.

[0022] Therefore, instead of prescribing hand-crafted rules for the chunk selection process, it is proposed to use a data-driven method to learn which rules should be used to define which chunks to request.

[0023] Pensieve (Non-Patent Document 4) then uses information about the buffer filling rate, data on past experienced throughput, and the size of previously requested chunks to directly predict the chunks to be selected. However, it is worth mentioning that the training was based on a loss using an MPC objective function. Although Pensieve (Non-Patent Document 4) does not rely on throughput prediction, the authors proposed an extension and a new model that utilizes throughput prediction information to improve the performance of the algorithm.

[0024] Secondly, further extensions of these types of models are being explored by using Generative Adversarial Networks (GANs). An example of this type of model is the Tiyuntsong model. The idea of ​​this type of model is to not rely on hand-crafted loss functions that were previously based on MPC objective functions, but to use learned losses instead.

[0025] Hereinafter, an embodiment of the present invention will be described with reference to the drawings.

[0026] The adaptation of video bitrate and quality to the available throughput is handled by the video playback device's adaptive bitrate control.

[0027] ABR control mechanisms rely on selecting chunks according to hand-crafted or learning-based rules, where a chunk may be a portion of a video encoded at a given bitrate.

[0028] There has been a lot of research on chunk packet selection rules. However, these studies have been limited in the time scale considered for chunk selection. In fact, these studies have focused on selecting the next chunk in relation to the problem of "which chunk should be requested next" faced by the video playback device.

[0029] However, such a short-term perspective does not allow prediction of network access inefficiencies, but only provides responses to observed inefficiencies, and the resulting QoE may not be optimal.

[0030] As an example, consider a user watching video in a car. At some times, the user has high quality network access, which allows the user to watch high quality video. However, when the car enters a tunnel, the available throughput drops significantly.

[0031] In this situation, a video playback device taking a "short-term perspective" has no choice but to drastically reduce the quality of the video at the time it measures a drop in throughput in order to avoid stopping video provision; it is given no other option.

[0032] Implementing such a short-term chunk selection mechanism is problematic because it limits alternative options for quality adaptation under difficult network conditions.To address the above issues, we propose to base chunk selection on long-term predictions of throughput.

[0033] For example, considering the example of a car entering a tunnel mentioned above, the outline of the proposed method is that if the video playback device can predict a significant drop in throughput in advance, it can find a solution other than drastically reducing the video quality.

[0034] For example, a video playback device can use the higher available throughput to fill the buffer with video at a faster rate before the throughput drops off.

[0035] This comes at the cost of a small reduction in quality, but the end result is that users can enjoy high quality video while their car is in a tunnel where network access is limited.

[0036] Performing chunk selection based on long-term prediction of throughput provides higher and more consistent quality to users, improving their quality of experience in challenging network environments.

[0037] The proposed algorithm runs in the device and aims to define the long-term chunk request scheduling procedure.

[0038] Similar to the ABR control scheme, the proposed algorithm takes as input a Media Presentation Description (MPD) that provides information about the multiple quality levels available for a video.

[0039] Figure 1 shows the key steps of the proposed method. The key steps are:

[0040] 1) Estimate the time variation of the throughput for a time interval of up to T seconds (the value of T is explained below).

[0041] 2) Find the optimal chunk scheduling for a time interval of T seconds (Figure 2).

[0042] 3) Request the first chunk of the found optimal path (optimal scheduling).

[0043] The algorithm then returns to step 1 and re-estimates the time variation of the throughput for a period up to T seconds.

[0044] The algorithm performs this process in a loop until the end of the video playback is reached or the user has finished watching the video.

[0045] Fig. 3 is a diagram showing an example of a hardware configuration of a video playback device 10 according to an embodiment of the present invention. The video playback device 10 in Fig. 3 includes a drive device 100, an auxiliary storage device 102, a memory device 103, a central processing unit (CPU) 104, and an interface device 105, all of which are connected to each other via a bus B.

[0046] A program for implementing the processing in the video playback device 10 is provided by a recording medium 101 such as a CD-ROM. When the recording medium 101 storing the program is set in the drive device 100, the program is installed from the recording medium 101 via the drive device 100 into the auxiliary storage device 102. However, the program does not necessarily have to be installed from the recording medium 101, but may be downloaded from another computer via a network. The auxiliary storage device 102 stores the installed program as well as necessary files, data, and the like.

[0047] When an instruction to start a program is received, the memory device 103 reads out the program from the auxiliary storage device 102 and stores it. The CPU 104 executes functions related to the video playback device 10 in accordance with the program stored in the memory device 103. The interface device 105 is used as an interface for connecting to a network.

[0048] Fig. 4 is a diagram showing an example of a functional configuration of a video playback device 10 in an embodiment of the present invention. In Fig. 4, the video playback device 10 has a throughput prediction unit 11, a bit rate control unit 12, a communication unit 13, and a buffer 14. Each of these units is realized by a process executed by the CPU 104 of one or more programs installed in the video playback device 10. In other words, each of these units is realized by cooperation between the hardware resources of the video playback device 10 and the programs (software) installed in the video playback device 10. The communication unit 13 may include a transmitting device and a receiving device.

[0049] The following describes an example of a processing procedure executed by the video playback device 10. FIG.

[0050] Before starting the optimization procedure, a value for T needs to be defined. T is a user-defined parameter. The higher the value of T, the better the performance. However, a larger value of T increases the computational cost. Therefore, a trade-off between computational cost and quality level needs to be made. In simulations, a value of T of 20 seconds has been found to significantly improve the quality, but other values ​​can be considered.

[0051] 5, the throughput prediction unit 11 predicts the future throughput for the next T seconds. Predicting throughput is a difficult task and has attracted much attention.

[0052] It is possible to predict future throughput by applying any of different techniques such as arithmetic mean, harmonic mean, deep neural networks or hidden Markov models.

[0053] However, these methods only predict the immediate throughput. Therefore, the throughput predictor 11 uses a time series prediction technique to predict the throughput for a longer time frame.

[0054] Different prediction methods may be used in the throughput prediction unit 11, for example using autoregressive models such as Autoregressive Integrated Moving Average (ARIMA) or advanced learning-based techniques.

[0055] In the following, we propose a “transformer-based deep neural network throughput prediction algorithm” (Non-Patent Document 5) as a prediction method used in the throughput prediction unit 11, but alternative models can also be considered.

[0056] When using this method, the throughput predictor 11 uses past throughput values ​​to predict future throughput for the next T seconds.

[0057] In step S102 of FIG. 5, the bit rate control unit 12 sets a search space for finding an optimal quality adaptive schedule for a time interval of T seconds in the future.

[0058] 2 is a diagram showing an example of a search space for finding an optimal quality adaptive schedule. In the example of FIG. 2, the horizontal axis of the search space represents time, and the vertical axis represents the quality level of the video.

[0059] In the example of FIG. 2, the search space includes past times t-2 and t-1 in addition to the current time t and t+1, t+2, ..., t+4 corresponding to a time interval of T seconds in the future. Also, six different quality levels from 144p to a maximum of 1080p are available as video quality levels. That is, as shown in the example of FIG. 2, the bit rate control unit 12 sets a search space by setting different quality levels (from 144p to a maximum of 1080p in the example of FIG. 2) as the vertical axis for each unit time (T / 4 in the example of FIG. 2). Note that, although the example of FIG. 2 divides the future T seconds into four unit times, the embodiment is not limited to this example. The future T seconds may be divided into more than four unit times, or the future T seconds may be divided into less than four unit times. Also, the quality level is not limited to six levels, and may be more than six levels or less than six levels.

[0060] In the example of Fig. 2, the line segment from t-2 to t indicates the previous chunk selected by the bitrate control unit 12. At time t, the bitrate control unit 12 needs to select the quality level of the chunk for the next unit time t+1. For this purpose, in step S103 of Fig. 5, the bitrate control unit 12 selects different paths in the search space corresponding to different schedules of quality adaptation for the next T seconds as targets for QoE evaluation.

[0061] In the example of FIG. 2, three routes that are expected to provide QoE1, QoE2, and QoE3 are shown as different routes in the search space.

[0062] 5, the bit rate control unit 12 uses the future throughput and QoE model predicted in step S101 to evaluate the QoE for a specific path. As the QoE model, the model described in Non-Patent Document 6 can be used. However, it is also possible to use other QoE models described in ITU-T Rec. P.1203 or ITU-T Rec. P.1204.

[0063] These standardized models can be used in different modes using different types of information, ranging from low-complexity models that use only parameters such as bit rate, frame rate and resolution, to more complex models that use bitstream or even pixel information.

[0064] The bit rate control unit 12 predicts the QoE of a specific path based on the throughput for the past P seconds and the subsequent T seconds.

[0065] By taking into account previously downloaded chunks, the temporal smoothness of the quality can be addressed.

[0066] In the example shown in FIG. 2, the time interval of one chunk is set to 1 second, P is set to 2 seconds, and T is set to 4 seconds.

[0067] For future chunk requests, three different paths are shown in Figure 2, but the QoE evaluation should take into account all available quality levels to be able to find the path that gives the highest QoE.

[0068] The process of calculating the QoE for a particular route is as follows: Each chunk in the path has a resolution r and a video bitrate b v , frame rate f, and audio bit rate b a These correspond to different quality levels, characterized by:

[0069] Using the characteristics of each chunk of a particular path, the value of each of these quality-related parameters can be obtained every second.

[0070] Next, based on the QoE model in Non-Patent Document 6, the video quality is evaluated every second using Equation 1, the audio quality is evaluated every second using Equation 4, and the video and audio qualities are evaluated every second using Equation 5.

[0071]

number

[0072]

number

[0073]

number

[0074] In addition, in the formula 1, X and Y are defined by the formulas 2 and 3.

[0075]

number

[0076]

number

[0077] The temporal aggregation of the encoding quality related scores per second into a per-path score is given by Equations 6-9.

[0078]

number

[0079]

number

[0080]

number

[0081]

number

[0082] Finally, the effect of video outages is taken into account using Equation 10.

[0083]

number

[0084] In Formula 10, n b is the number of video outages that occurred on the considered route, and t b is the total time interval of video interruption, and a b is the average time interval between video outage events.

[0085] In these formulas, v 1 -v 7 , a 1 -a 3 , m 1 -m 4 , t 1 -t 5 , and s 1 -s 3 are the model parameters obtained using regression using a subjective experimental database.

[0086] If L is the number of quality levels and N is the number of chunks to be downloaded in the next T seconds, then L N It is necessary to compare the QoE of different routes.

[0087] Due to computational cost considerations, it is possible to reduce the number of paths to be evaluated by applying restrictions to the evaluation of quality adaptation.

[0088] Only increases or decreases in quality of the A level alone may be allowed as candidates for optimization.

[0089] For instance, in the example of FIG. 2, A=1 and at time t, the quality level of the previously requested chunk is 360p.

[0090] At time t, it may be possible to request only quality levels 480p, 360p, and 240p.

[0091] At time t+2, depending on the selection made at t+1, the quality value can range from 720p to 144p.

[0092] By implementing such optimization, we can achieve smooth quality adaptation, which leads to higher QoE. N We reduce the search space to (2×A+1) while gaining the benefit of forcing smooth quality adaptation, which would be selected even if a full search of the book's paths were performed. N It can be reduced to a book route.

[0093] In step S105 of FIG. 5, the bit rate control unit 12 selects L N Among these paths, the path that is expected to give the highest QoE is selected. As described above, when only an increase or decrease in quality of level A is permitted as a candidate for optimization, the bit rate control unit 12 selects a path that is expected to give the highest QoE from among these paths. NAmong these routes, the route that is expected to give the highest QoE is selected.

[0094] For the special case of video startup, no past throughput data is available, so it may not be possible to predict future throughput for the next T seconds. In this case, different alternatives can be considered.

[0095] 1) The bitrate control 12 may choose to start up at the lowest quality level, which allows for a fast initial load.

[0096] 2) The bit rate control unit 12 may allow the user to select an initial quality value.

[0097] 3) The bitrate control unit 12 may estimate future throughput based on previous videos viewed by the user.

[0098] For example, when a user finishes watching a video and jumps to a new video, information about the available throughput measured in the previous video can be used to predict the throughput of the next video, allowing the video to begin at an appropriate quality level.

[0099] Similarly, by using information such as the measured throughput during the loading of the web interface as a clue, it is possible to predict the user's available throughput and select an appropriate initial quality level.

[0100] In step S106 in FIG. 5, the bit rate control unit 12 makes a chunk request via the communication unit 13.

[0101] In step S105, after selecting the path that is expected to provide the highest QoE, in step S106 the bitrate control unit 12 requests via the communication unit 13 a chunk of a quality level corresponding to the immediately following chunk included in the selected path.

[0102] For example, in FIG. 2, the QoE value QoE 2 We assume that the route that results in,G,= ...

[0103] In this case, the bit rate control unit 12 requests, via the communication unit 13, a chunk corresponding to a quality level of 360p.

[0104] Thereafter, the communication unit 13 acquires the chunks of the quality level requested in step S106 via a network such as the Internet, and takes them into the buffer 14. As a result, the video reproducing device 10 can provide the user with video of higher quality and more stable quality.

[0105] In step S107 of FIG. 5, the bit rate control unit 12 determines whether the end of the video playback has been reached or whether the user has finished watching the video.

[0106] In step S107, if it is determined that the end of the video playback has been reached or that the user has finished watching the video (S107: YES), the bit rate control unit 12 ends the processing procedure.

[0107] In step S107, if it is determined that the end of the video playback has not been reached and that the user has not finished watching the video (S107: NO), the processing procedure returns to S101, and the throughput prediction unit 11 uses the throughput measured from chunks t-1 to t+1 to predict the throughput from t+2 to t+5.

[0108] In steps S102 to S105, the bit rate control unit 12 recalculates the optimal route between t+2 and t+5 based on the estimated throughput, and selects the chunk to be downloaded at t+2.

[0109] This procedure repeats in a loop until the user stops watching or the end of the video is reached.

[0110] The above embodiment shows how the long-term throughput prediction by time series analysis is used in an adaptive bitrate control method to perform long-term chunk request scheduling, which enables the evolution of a conventional narrow-scope video playback device into a video playback device that can predict the throughput fluctuation and provide a higher quality to users.

[0111] The above examples also show that it is possible to use state-of-the-art quality of experience models to assess the quality of a particular chunk selection path, using knowledge of the QoE model to define appropriate quality adaptation procedures, which in turn improve the user's quality of experience.

[0112] Also, in the above embodiment, in order to reduce computational complexity, it is shown that the quality adaptation is restricted to increases or decreases not exceeding a user-defined threshold, which allows to enforce temporal smoothness of quality while significantly reducing computational cost.

[0113] The above embodiment describes a method that utilizes long-term throughput predictions to determine chunk request schedule paths to improve the overall user experience when watching video in networks with varying throughput. Unlike traditional methods that determine which chunks to request on a per-chunk basis, the proposed method estimates future throughput in the long term and estimates which chunk scheduling path will provide the best user experience. The identified paths are updated periodically to take into account new measurements of throughput, allowing for continuous updating of the chunk request scheduling paths.

[0114] Although the embodiment of the present invention has been described in detail above, the present invention is not limited to such specific embodiment, and various modifications and variations are possible within the scope of the gist of the present invention described in the claims.

Claims

1. A video playback device, comprising: Transmitting section; Receiver section; A processor; and Memory, Equipped with The memory may include: using the past throughput values ​​to predict future throughput during a first future time interval that includes m unit time intervals into the future; setting a search space defined by the k quality levels and a second time interval including a current unit time interval, the m future unit time intervals, and the n past unit time intervals, for finding a quality adaptation schedule; extracting a plurality of routes in the search space, each of the plurality of routes being obtained by selecting one quality level from the k quality levels for each unit time interval included in the second time interval; estimating a quality of experience value for each of the extracted routes based on the future throughput; identifying a route corresponding to the highest quality of experience value among the estimated quality of experience values ​​as the quality adaptation schedule; determining a quality value of a chunk required for a next future unit time interval of the current unit time interval based on the quality adaptation schedule; requesting a chunk of the determined quality value via the sender; and receiving via said receiver a chunk of said determined quality value; containing instructions to execute Video playback device.

2. The step of extracting allows only a difference of A level or less as a difference in quality level between two adjacent unit time intervals, and thereby, in the m unit time intervals in the future, a difference of (2×A+1) m Extract the book path, 2. The video reproducing apparatus according to claim 1.

3. and predicting the future throughput using the throughput measured in the past n unit time intervals to predict the throughput in the future m unit time intervals.

2. The video reproducing apparatus according to claim 1.

4. The step of predicting the future throughput, in the case of video activation, applies a throughput of another video previously viewed or a preset low throughput as the future throughput.

2. The video reproducing apparatus according to claim 1.

5. said step of estimating a quality of experience value comprises evaluating the quality of experience value using a predetermined quality of experience model; 2. The video reproducing apparatus according to claim 1.

6. 1. A computer-implemented video playback method, comprising: using the past throughput values ​​to predict future throughput during a first future time interval that includes m unit time intervals into the future; setting a search space defined by the k quality levels and a second time interval including a current unit time interval, the m future unit time intervals, and the n past unit time intervals, for finding a quality adaptation schedule; extracting a plurality of routes in the search space, each of the plurality of routes being obtained by selecting one quality level from the k quality levels for each unit time interval included in the second time interval; estimating a quality of experience value for each of the extracted routes based on the future throughput; identifying a route corresponding to the highest quality of experience value among the estimated quality of experience values ​​as the quality adaptation schedule; determining a quality value of a chunk required for a next future unit time interval of the current unit time interval based on the quality adaptation schedule; requesting a chunk of the determined quality value; and receiving said chunks of determined quality values; A video playback method comprising:

7. A non-transitory computer-readable storage medium storing a video playback program, the video playback program being executed by a computer, the computer using the past throughput values ​​to predict future throughput during a first future time interval that includes m unit time intervals into the future; setting a search space defined by the k quality levels and a second time interval including a current unit time interval, the m future unit time intervals, and the n past unit time intervals, for finding a quality adaptation schedule; extracting a plurality of routes in the search space, each of the plurality of routes being obtained by selecting one quality level from the k quality levels for each unit time interval included in the second time interval; estimating a quality of experience value for each of the extracted routes based on the future throughput; identifying a route corresponding to the highest quality of experience value among the estimated quality of experience values ​​as the quality adaptation schedule; determining a quality value of a chunk required for a next future unit time interval of the current unit time interval based on the quality adaptation schedule; requesting a chunk of the determined quality value; and receiving said chunks of determined quality values; A non-transitory computer-readable storage medium for executing the method of the present invention.

Citation Information

Patent Citations

  • A method and computer programs for identifying video streaming qoe from network traffic

    EP3322127A1

  • Controlling an adaptive streaming of digital content

    US20110270913A1

  • System and Method for Dynamic Adaptive Video Streaming Using Model Predictive Control

    US20170026713A1

  • Adaptive bit rate media streaming based on network conditions received via a network monitor

    US20170289227A1

  • Method and system for managing service quality according to network status predictions

    US20170331752A1