Receiving device and program
The receiving device addresses the challenge of maintaining consistent video quality across multiple streams by dynamically selecting bandwidth combinations based on measured download speeds and quality attributes, resulting in stable and high-quality video playback.
Patent Information
- Application Number
- JP2023207872
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-12-08
- Publication Date
- 2025-06-19
AI Technical Summary
When viewing video content composed of multiple video streams over a best-effort network, existing methods fail to consistently maintain high video quality across all streams due to fluctuations in communication bandwidth and varying patterns of movement in region-divided screens.
A receiving device that acquires multiple video streams from a distribution server, measures download speeds, and selects bandwidth combinations for each stream based on a manifest file's quality and bandwidth attributes, ensuring the highest quality while keeping total bandwidth within measured download speeds.
This approach effectively suppresses variations in video quality across multiple streams, ensuring stable and high-quality video playback even under fluctuating network conditions.
Smart Images

Figure 2025092162000001_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a receiving apparatus and a program.
Background Art
[0002] As an 8K zoom viewing technology, an 8K video is reduced or screen-divided into a plurality of 2K streams, and at a 2K display viewing terminal, three types of the plurality of types of video streams that have been reduced or screen-divided are acquired and superimposed and displayed, so that a part of the 8K video can be viewed while maintaining the resolution (see, for example, Non-Patent Document 1).
[0003] Also, in the MPEG-DASH distribution method that can be used in 8K zoom viewing technology, in addition to the "bandwidth" attribute representing the bandwidth of each stream in the manifest file, a "qualityRanking" attribute representing quality is also defined. The "bandwidth" attribute is mandatory, and the "qualityRanking" attribute is optional. By also using the "qualityRanking" attribute as a stream selection criterion, it is expected to provide a high-quality and stable viewing video. Note that "qualityRanking" is defined such that the smaller the value, the higher the quality (see, for example, Non-Patent Document 2).
[0004] Also, as a method for objectively evaluating the quality of a video, there is VMAF (Video Multimethod Assessment Fusion). The value of VMAF ranges from 0 to 100, and it is defined such that the larger the value, the higher the quality evaluation. This is the opposite of the definition of the magnitude of the value of the qualityRanking of the above MPEG-DASH (see, for example, Non-Patent Document 3).
Prior Art Documents
Non-Patent Documents
[0005]
Non-Patent Document 1
[0006] With normal video content, one video stream is viewed on a viewing device. The video stream is divided into units called segments at regular intervals, allowing the video to be viewed from any point in the middle. When viewing video content over a best-effort network, multiple segments of different quality are prepared on the distribution server to accommodate various bandwidths, and the download speed is measured each time the viewing device receives a segment, and the next segment is received with a bandwidth that is equal to or lower than the download speed of the previous segment. With this mechanism, even if the communication bandwidth fluctuates on a best-effort network, the video can be played at the highest quality for that communication bandwidth without stopping.
[0007] When viewing video content composed of a plurality of video streams through a best-effort network, a method can be considered in which each video stream independently measures the download speed and selects the bitrate of the segment. However, in this method, since the selection is made so that the quality of each video stream is maximized, competition for the communication bandwidth occurs between the video streams, and the quality of each video stream does not necessarily become the same.
[0008] Also, in a video stream in which the screen is region-divided, since the pattern and the amount of movement differ for each divided region, the ratio of the bandwidth and quality (video quality) of the stream does not always remain constant. For this reason, even if segments with the same bandwidth can be obtained for each video stream, the quality will differ between the plurality of video streams due to the difference in the pattern and the amount of movement for each divided region.
[0009] In view of such circumstances, an object of the present invention is to provide a receiving apparatus and a program capable of suppressing variations in the quality of each video stream when viewing video content composed of a plurality of video streams through a best-effort network.
Means for Solving the Problems
[0010] The gist of the present invention for solving the above problems is as follows.
[0011] A receiving device that acquires the n types of video streams from a distribution server having n (n≥2) types of video streams and preparing a plurality of bandwidths for each video stream, the receiving device comprising: n stream acquisition units that measure the download speed at the time of acquiring the video stream; and a stream selection unit that acquires a manifest file in which attributes including the quality and bandwidth of the video stream are described from the distribution server, determines a combination of bandwidths of video streams whose total bandwidth is equal to or less than the total of the download speeds measured by the stream acquisition units and that results in the highest quality, wherein the stream acquisition unit acquires from the distribution server a video stream having a bandwidth determined by the stream selection unit.
[0012] (2) The receiving device according to (1), wherein the stream selection unit creates a quality-bandwidth table that associates the bandwidths of video streams whose quality is equal to or higher than a quality reference value for each quality reference value from the attributes of the manifest file, and determines a combination of bandwidths of video streams whose total bandwidth is equal to or less than the total of the download speeds and that results in the highest quality by referring to the quality-bandwidth table.
[0013] (3) The receiving device according to (1) or (2), wherein the video stream is a video obtained by reducing or splitting a high-definition video.
[0014] (4) A program for causing a computer to function as the receiving device according to any one of (1) to (3).
Advantages of the Invention
[0015] According to the present invention, when viewing video content composed of a plurality of video streams through a best-effort network, it is possible to suppress variations in the quality of each video stream.
Brief Description of the Drawings
[0016]
Figure 1
Figure 2
Mode for Carrying Out the Invention
[0017] Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings.
[0018] FIG. 1 is a diagram showing a configuration example of a content distribution system according to an embodiment of the present invention. The content distribution system 1 shown in FIG. 1 includes a receiving device 10 and a distribution server 20. In FIG. 1, for the convenience of the drawing, only one receiving device 10 is shown, but the content distribution system 1 includes one or more receiving devices 10. The receiving device 10 and the distribution server 20 are connected via a best-effort network such as the Internet.
[0019] The distribution server 20 is a general Web server, and distributes a video stream of the requested video content to the receiving device 10. The distribution server 20 has n (n≧2) types of video streams, each video stream is segmented into segments, and multiple bandwidths are prepared for the segments. The video stream may be a video obtained by reducing or splitting a high-definition video such as 4K / 8K resolution. A video obtained by reducing or splitting a high-definition video means, for example, when the high-definition video is an 8K video, a video obtained by reducing (down-converting) the 8K video to 2K, a video of a 1 / 4 area cut out from a video obtained by reducing the 8K video to 4K, and a video of a 1 / 16 area cut out from the 8K video, all of which are streams with 2K pixel counts. Further, the distribution server 20 has a video content application and a manifest file in which attributes including the quality and bandwidth of each video stream are described.
[0020] The receiving device 10 is a device (viewing client, viewing terminal) that acquires n types of video streams with suppressed quality variations from the distribution server 20 via a best-effort network. The receiving device 10 includes a web browser 11. The web browser 11 includes a video content application 12 and a rendering unit 13.
[0021] The web browser 11 is software installed in the receiving device 10, interprets content data acquired from the distribution server 20, and performs screen drawing using the rendering unit 13.
[0022] The video content application 12 is software that the web browser 11 acquires from the distribution server 20 when starting to view video content and operates on the web browser 11. The acquired video content application 12 is held until the running web browser 11 ends, but it may also be held until the viewing of the video content ends or stored in the receiving device 10. The video content application 12 includes n stream acquisition units 121 and a stream selection unit 122. In this embodiment, n = 3, the receiving device 10 acquires three types of video streams from the distribution server 20, and the video content application 12 includes a first stream acquisition unit 121a, a second stream acquisition unit 121b, and a third stream acquisition unit 121c as the stream acquisition units 121.
[0023] The first stream acquisition unit 121a acquires video streams from the distribution server 20 for each segment and outputs them to the rendering unit 13. Then, the first stream acquisition unit 121a measures the download speed at the time of segment acquisition and notifies the download speed to the stream selection unit 122. After that, the first stream acquisition unit 121a receives the bandwidth from the stream selection unit 122 and then acquires segments of the video stream with that bandwidth from the distribution server 20. The same applies to the second stream acquisition unit 121b and the third stream acquisition unit 121c.
[0024] The stream selection unit 122 acquires a manifest file in which attributes including the quality and bandwidth of each video stream are described from the distribution server 20, and based on the download speeds respectively received from the first stream acquisition unit 121a, the second stream acquisition unit 121b, and the third stream acquisition unit 121c, determines the bandwidth of the video stream for the segment to be acquired next according to the processing procedure described later, and notifies the first stream acquisition unit 121a, the second stream acquisition unit 121b, and the third stream acquisition unit 121c respectively.
[0025] The rendering unit 13 inputs video streams from the first stream acquisition unit 121a, the second stream acquisition unit 121b, and the third stream acquisition unit 121c, interprets HTML and the like, and performs drawing of a screen for which the layout has been calculated.
[0026] Next, the processing procedure of the stream selection unit 122 will be described with reference to FIG. 2.
[0027] In step S11, the stream selection unit 122 acquires a manifest file from the distribution server 20. Attributes regarding all video streams constituting the video content are described in the manifest file. Here, only the attributes related to stream selection will be described. As an example, it will be described hereinafter assuming that the video content is composed of three types of segmented video streams, and further each video stream is composed of three bandwidths, and a total of 3×3 = 9 video streams are prepared in the distribution server 20.
[0028] Table 1 shows examples of attributes described in the manifest file for nine video streams. Here, AdaptationSet.id represents the identification of the video stream, and Representation.id represents the identification of the bandwidth of each video stream. The first stream acquisition unit 121a acquires any video stream with AdaptationSet.id = 0, the second stream acquisition unit 121b acquires any video stream with AdaptationSet.id = 1, and the third stream acquisition unit 121c acquires any video stream with AdaptationSet.id = 2. Also, bandwidth represents the bandwidth (bit / s) of each video stream, and qualityRanking represents the quality of each video stream. For example, when using VMAF for qualityRanking, in order to match the relationship between the high and low quality and the value size, it is converted as qualityRanking = 100 - VMAF. Also, as mentioned above, in the segmented video, due to differences in patterns and motion amounts, the relationship between bandwidth and qualityRanking is not necessarily proportional. In addition, as a method for objectively evaluating the quality of the video, in addition to VMAF, objective evaluation values such as PSNR and SSIM may also be used.
[0029]
Table 1
[0030] In step S12, the stream selection unit 122 creates a quality-bandwidth table showing the relationship between quality and bandwidth based on qualityRanking from the attributes of the acquired manifest file.
[0031] Table 2 shows an example of a quality-bandwidth table. The quality-bandwidth table is a table that associates the bandwidth of a video stream whose quality is equal to or higher than a quality reference value (Max qualityRanking) for each quality reference value. That the quality is equal to or higher than the quality reference value means that the quality is equal to the quality reference value or of higher quality than the quality reference value. For example, when Max qualityRanking = 10, only AdaptationSet.0 having qualityRanking = 10 is applicable, and AdaptationSet.1 with qualityRanking = 12 and AdaptationSet.2 with qualityRanking = 14, whose qualities are lower than 10, are NA (not applicable). Also, when Max qualityRanking = 20, the video streams of qualityRanking = 20 in AdaptationSet.0, qualityRanking = 12 in AdaptationSet.1, and qualityRanking = 14 in AdaptationSet.2 are applicable. The stream selection unit 122 creates a quality-bandwidth table according to such a rule, and calculates the total (Total bandwidth) of the corresponding bandwidths for each Max qualityRanking. In this example, Max qualityRanking = 14 to 34 for which all three types of video streams are applicable become the subsequent selection candidates, and Max qualityRanking = 10 to 12 for which Total bandwidth = NA are excluded from the selection candidates.
[0032] [Table 2]
[0033] In step S13, the stream selection unit 122 determines whether it is the first download. If it is the first download (step S13: Yes), the process proceeds to step S14. If it is not the first download (step S13: No), the process proceeds to step S15.
[0034] In step S14, the download speed when the manifest file is obtained in step S11 is regarded as the total Rt of the download speeds of the segments obtained for the first time.
[0035] In step S15, the stream selection unit 122 acquires the download speeds R1, R2, and R3 measured at the time of segment acquisition from the first stream acquisition unit 121a, the second stream acquisition unit 121b, and the third stream acquisition unit 121c.
[0036] In step S16, the stream selection unit 122 calculates the total Rt = R1 + R2 + R3 of the acquired download speeds.
[0037] In step S17, the stream selection unit 122 refers to the quality-bandwidth table and selects (determines) the combination of bandwidths of the video stream in which the total bandwidth is less than or equal to the total Rt of the download speeds and the quality is the highest (the Max quality Ranking is the smallest). Note that the total Rt of the download speeds is the download speed of the manifest file at the time of the first download (step S14).
[0038] In step S18, the stream selection unit 122 notifies the first stream acquisition unit 121a, the second stream acquisition unit 121b, and the third stream acquisition unit 121c of the bandwidths according to the selected combination of bandwidths.
[0039] In step S19, the stream selection unit 122 determines the end of the viewing of the video content. For example, when the stream acquisition unit 121 has acquired all (or the last) segments of the video stream, or when an operation to stop the viewing is performed by the viewer, it is determined that the viewing has ended. If the viewing has not ended (step S19: No), the process returns to step S11, and if the viewing has ended (step S19: Yes), the process ends.
[0040] For example, when the download speeds R1, R2, and R3 are 500000, 400000, and 300000 respectively, the total download speed Rt = 1200000. Referring to the quality-bandwidth table in Table 2, when the total bandwidth is less than or equal to the total download speed Rt and the quality is the highest, it is the case where the total bandwidth is 1080000. Therefore, the bandwidths of each video stream to be acquired next are 300000, 330000, and 450000. Referring to Table 1, the quality rankings of these video streams are 20, 22, and 14. Then, the variation in quality between the video streams is the standard deviation of the quality rankings, which is √{(20 - 56 / 3) 2 +(22 - 56 / 3) 2 +(14 - 56 / 3) 2 ) / 3} ≈ 3.40
[0041] On the other hand, in the conventional method, when the download speeds R1, R2, and R3 are 500000, 400000, and 300000 respectively, the bandwidths of each video stream to be acquired next are 500000, 330000, and 270000 according to Table 1, and the quality rankings of these video streams are 10, 22, and 24. Then, the variation in quality between the video streams is √{(10 - 56 / 3) 2 +(22 - 56 / 3) 2 +(24 - 56 / 3) 2 ) / 3} ≈ 6.18 in terms of quality ranking conversion. Thus, according to the present invention, when viewing video content composed of a plurality of video streams through a best-effort network, since there is no competition for communication bandwidth between the video streams, it is possible to suppress the variation in quality of each video stream compared to the conventional method.
[0042] In the flowchart shown in FIG. 2, in the case of the first download (step S13: Yes), instead of performing the processes of steps S14 and steps S15 to S17, in step S18, the minimum bandwidth described in the manifest file may be notified to the first stream acquisition unit 121a, the second stream acquisition unit 121b, and the third stream acquisition unit 121c, respectively.
[0043] <Example of application to prior art> Next, an example of applying the present invention to the 8K zoom viewing technology (hereinafter referred to as the "prior art") described in Non-Patent Document 1 will be described.
[0044] First, the differences between the prior art and the technology of the present invention will be described. The prior art relates to a method of selecting three types of video streams from 75 types based on a viewing operation. On the other hand, the present invention relates to a delivery rate control technology in a best-effort network where the bandwidth is not guaranteed. The three types of video streams selected by the prior art are further composed of a plurality of qualities, and the bandwidth is selected based on its attributes of bandwidth and qualityRanking. Therefore, since the purposes of the respective technologies are different, the configurations of the video streams are also different. As described in section 3 of Non-Patent Document 1, "Regarding 75 types of video streams with 2K pixel counts, the bit rate is 6 Mbps", there is only one type with bandwidth = "6000000". However, in the present invention, a plurality of video streams with different bandwidths will be placed in the distribution server 20. When the present invention is applied, the total number of video streams will be larger than that of the prior art.
[0045] The example described here combines the prior art that determines three types of video streams in areas from 75 types according to a viewing operation, and the technology of the present invention that determines bandwidth and qualityRanking for the three selected types of video streams. That is, the three types of video streams acquired by the receiving device 10 of the present invention are three types of videos determined according to a viewing operation from 75 types of videos obtained by reducing or dividing a high-definition video screen.
[0046] Next, an overview of the prior art will be described. In the distribution server, a total of 75 types of video streams with 2K pixel count are stored, including 1 type of 2K-DC, 25 types of 4K-DC (5×5 = 25), and 49 types of 8K (7×7 = 49). From these, a total of 3 types of video streams, namely 1 type each of 2K-DC, 4K-DC, and 8K, are always distributed to the viewing terminal (receiver). Among these, the regions of the 4K-DC and 8K video streams are switched by the viewing operation. Although the region switching algorithm for 4K-DC and 8K by the viewing operation is outside the scope of the present invention, an example will be described. The switching instruction from the viewing terminal to the distribution server is at the timing when the finger leaves the screen of the viewing terminal, and no region switching is performed while the finger is touching the screen. The region to be distributed after switching is selected such that the center point of the region is the closest to the center point of the screen of the viewing terminal.
[0047] Next, the relationship between the 75 types of video streams in the prior art and the attributes described in the manifest explained in the present invention will be described. The 75 types in the prior art correspond to AdaptationSet.id in the manifest. For example, when 1 type of 2K-DC corresponds to AdaptationSet.0, 25 types of 4K-DC correspond to AdaptationSet.1 to 25, and 49 types of 8K correspond to AdaptationSet.26 to 74, a total of 3 types of AdaptationSet.id to be distributed, namely 0 and one from 1 to 25 and one from 26 to 74, are determined by the viewing operation. In the prior art, since the video stream is composed of only 1 type with bandwidth = “6000000”, for the attributes described in the manifest, for any AdaptationSet.id, it is fixed to 1 type of Representation.0. However, when combined with the present invention, a plurality of Representation.id are prepared. In the present invention, it is not necessary for the number of Representation.id to be the same for all AdaptationSet.id. Regarding the method of distribution rate control, for the 3 types of AdaptationSet.id determined by the viewing operation, a table similar to Table 1 may be created and processed in the same manner as follows.
[0048] <Program> In order to function as the above-described receiving device 10, it is also possible to use a computer capable of executing program instructions respectively. The computer is, for example, a PC (Personal Computer) or a mobile terminal such as a smartphone. The program instructions may be program codes, code segments, etc. for executing necessary tasks.
[0049] The computer includes a processor, a storage unit, an input unit, an output unit, and a communication interface. The processor is a CPU (Central Processing Unit), MPU (Micro Processing Unit), GPU (Graphics Processing Unit), DSP (Digital Signal Processor), SoC (System on a Chip), etc., and may be composed of a plurality of processors of the same kind or different kinds. The processor reads a program from the storage unit and executes it to control each of the above configurations and perform various arithmetic processes. Note that at least a part of these processing contents may be realized by hardware.
[0050] The program may be recorded on a computer-readable recording medium. By using such a recording medium, it is possible to install the program on a computer. Here, the recording medium on which the program is recorded may be a non-transitory recording medium. The non-transitory recording medium is not particularly limited, but may be, for example, a CD-ROM, a DVD-ROM, a USB (Universal Serial Bus) memory, etc. Also, this program may be in a form downloaded from an external device via a network.
[0051] For example, a program for causing the receiving device 10 to function is a program for acquiring n (n ≧ 2) types of video streams from a distribution server 20 that has n types of video streams and prepares a plurality of bandwidths for each video stream. The program causes a computer to execute a first step of measuring the download speed at the time of acquiring each video stream, a second step of acquiring a manifest file in which attributes including the quality and bandwidth of the video stream are described from the distribution server 20, determining a combination of bandwidths of the video streams that has the highest quality and whose total bandwidth is less than or equal to the total of the download speeds measured in the first step, and a third step of acquiring from the distribution server 20 the video streams having the bandwidths determined in the second step.
[0052] Also, the above-described receiving device 10 may be configured by one or more semiconductor chips. This semiconductor chip may be equipped with a CPU that executes a program describing the processing content for realizing each function of the receiving device 10.
[0053] Although the above-described embodiments have been described as representative examples, it is obvious to those skilled in the art that many changes and substitutions can be made within the spirit and scope of the present invention. Therefore, the present invention should not be construed as being limited by the above-described embodiments, and various modifications or changes are possible without departing from the scope of the claims. For example, it is possible to integrate a plurality of constituent blocks described in the configuration diagrams of the embodiments or divide one constituent block.
Explanation of Reference Numerals
[0054] 1 Content distribution system 10 Receiving device 11 Web browser 12 Video content application 13 Rendering unit 20 Distribution server 121a First stream acquisition unit 121b Second stream acquisition unit 121c Third stream acquisition unit 122 Stream Selection Unit
Claims
1. A receiving device that acquires the n types of video streams from a distribution server that has n (n≥2) types of video streams and prepares a plurality of bandwidths for each video stream, n stream acquisition units that measure the download speed when acquiring the video stream, obtains a manifest file in which attributes including the quality and bandwidth of the video stream are described from the distribution server, and determines a combination of bandwidths of the video stream with the highest quality such that the total bandwidth is less than or equal to the total of the download speeds measured by the stream acquisition units respectively. The receiving device is provided with a stream selection unit, The stream acquisition unit acquires the video stream with the bandwidth determined by the stream selection unit from the distribution server.
2. The stream selection unit creates a quality-bandwidth table in which the bandwidths of video streams with a quality equal to or higher than a quality reference value are associated for each quality reference value from the attributes of the manifest file, and refers to the quality-bandwidth table to determine a combination of bandwidths of the video stream with the highest quality such that the total bandwidth is less than or equal to the total of the download speeds. The receiving device according to claim 1.
3. The video stream is a video obtained by reducing or dividing a high-definition video screen. The receiving device according to claim 1 or 2.
4. A program for causing a computer to function as the receiving device according to claim 1.