Rate control server, distribution system, and rate control program
The distribution system addresses the challenge of optimizing video streaming quality by using a centralized control device to manage bit rates and bandwidth dynamically, ensuring consistent subjective quality across multiple viewers.
Patent Information
- Application Number
- JP2021124037
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-07-29
- Publication Date
- 2025-11-11
- Estimated Expiration
- 2041-07-29
AI Technical Summary
Conventional ABR methods struggle to optimize the quality of video streaming services in coordination with dynamic bandwidth control, as they rely on bitrate-based optimization that fails to account for subjective video quality differences among content.
A distribution system that divides video content into segments and selectively distributes them at varying bit rates based on subjective quality evaluation, using a centralized optimization control device to manage bandwidth and ensure quality assurance across multiple viewing terminals.
The system optimizes the overall quality of video distribution services by ensuring subjective quality standards are met across all terminals, reducing network costs and improving utilization efficiency through coordinated bandwidth management.
Smart Images

Figure 0007767047000001 
Figure 0007767047000002 
Figure 0007767047000003
Abstract
Description
[Technical Field]
[0001] The present invention relates to a video distribution system for a plurality of viewing terminals. [Background technology]
[0002] The mainstream video streaming services using the internet use ABR (Adaptive-Bit-Rate) methods, such as MPEG-DASH or HLS. ABR is a technology that provides multiple streams with different bit rates for a single piece of video content in segments separated by fixed time intervals, allowing users to seamlessly switch between video segments according to network conditions.
[0003] With the ABR method, viewing devices autonomously select segments with the highest possible bitrate based on factors such as predicted throughput and playback buffer capacity estimated from their respective network conditions. As a result, users can enjoy high-quality video that matches the network conditions, without freezing video playback. The conventional ABR method, which performs autonomous control for each viewing device, was designed for delivery over the Internet (best-effort communication), where throughput fluctuates depending on congestion.
[0004] However, in recent years, the Beyond 5G Promotion Strategy has begun to consider opening up network control APIs to the public in order to respond to diversifying service requirements. This is expected to enable service providers to dynamically control network QoS (Quality of Service), such as bandwidth, as needed, enabling them to manage service quality in a detailed manner, something that was not possible before.
[0005] In addition, when evaluating the quality of streaming services, there has been active development of video evaluation indicators that allow subjective evaluation using the same criteria for different video content, and video evaluation indicators that reflect subjective image quality, such as international standards ITU-T SG12 P1204 and VMAF, have been developed. Conventional ABR methods use bitrate-based optimization control. However, when bitrate-based control is used, even if different content streams are compressed and distributed using the same encoding parameters (bitrate, resolution, frame rate), differences in the viewer's subjective playback quality occur due to the video characteristics of each content (e.g., differences in the amount of motion or image definition). Therefore, since bitrate is not an appropriate indicator for implementing overall optimization control within a service, it is desirable to use a video evaluation indicator that reflects subjectivity as a new optimization standard. For example, Patent Document 1 proposes a method in which a viewing terminal autonomously selects a distribution bitrate based on the Mean Opinion Score (MOS). [Prior art documents] [Patent documents]
[0006] [Patent Document 1] Japanese Patent Publication No. 2020-80547 Summary of the Invention [Problem to be solved by the invention]
[0007] However, in the conventional ABR method, even if a subjective video evaluation index was used, individual optimization was performed by autonomous control on the viewing terminal side under the assumption of a best-effort communication environment. Therefore, in future networks where service providers will be able to dynamically control bandwidth, it will be difficult to achieve optimization control of the entire service that operates in coordination with bandwidth control.
[0008] An object of the present invention is to provide a distribution system that can optimize the quality of the entire distribution service in cooperation with bandwidth control. [Means for solving the problem]
[0009] The optimization control device of the present invention is a system in which video content is divided into segments of a fixed time interval, and a distribution server selectively distributes from one of a plurality of bit rates to a viewing terminal for each segment in response to a request from the viewing terminal, and comprises: a terminal information receiving unit that receives terminal information including a content ID and a segment number from each of a plurality of viewing terminals as a viewing request for the video content; a content information management unit that manages a quality evaluation value for each of the plurality of bit rates for each of the content ID and the segment number, and extracts the quality evaluation value and the bit rate for each of the plurality of bit rates identified by the terminal information received by the terminal information receiving unit; an optimization calculation unit that selects a bit rate for each of the plurality of pieces of terminal information received within a predetermined period, at which the quality evaluation value obtained from the content information management unit exceeds a predetermined quality assurance value; a bit rate notification unit that notifies the viewing terminal that requested the corresponding segment of information of the bit rate selected by the optimization calculation unit, causing the viewing terminal to make a request to the distribution server; and a bandwidth control unit that controls the bandwidth of the distribution network based on the sum of the bit rates selected for the plurality of viewing terminals.
[0010] The optimization calculation unit may select the smallest bit rate at which the quality evaluation value exceeds the guaranteed quality value.
[0011] The optimization calculation unit may select a bit rate for each of the plurality of viewing terminals so that the sum of the bit rates selected for the plurality of viewing terminals is maximized within a range that does not exceed a predetermined baseband.
[0012] The optimization calculation unit may maximize the total bit rate by gradually increasing the bit rate to be selected, giving priority to the viewing terminal with the smallest quality evaluation value.
[0013] The optimization calculation unit may select a bit rate for each of the plurality of viewing terminals so as to maximize the sum of the quality assessment values for the plurality of viewing terminals.
[0014] The predetermined period may be set repeatedly at a fixed delivery cycle.
[0015] The terminal information receiving unit may further receive a notification that the viewing terminal wishes to continue viewing in the nth distribution cycle as a viewing request from the viewing terminal in the n-1th distribution cycle, and if it receives a viewing request from all of the viewing terminals that received the notification in the n-1th distribution cycle within the specified time period of the nth distribution cycle, it may start the n+1th distribution cycle regardless of whether the specified time period has expired.
[0016] The optimization control method of the present invention is a system in which video content is divided into segments of a fixed time interval, and a distribution server selectively distributes from one of a plurality of bit rates to a viewing terminal for each segment in response to a request from the viewing terminal, the optimization control device executes the following steps: a terminal information receiving step in which an optimization control device receives terminal information including a content ID and a segment number from each of a plurality of viewing terminals as a request to view the video content; a content information management step in which, for each of the content IDs and segment numbers, a quality evaluation value for each of the plurality of bit rates and the quality evaluation value and the bit rate for each of the plurality of bit rates identified by the terminal information received in the terminal information receiving step are managed; an optimization calculation step in which, for each of the plurality of pieces of terminal information received within a predetermined period, a bit rate at which the quality evaluation value obtained in the content information management step exceeds a predetermined quality assurance value; a bit rate notification step in which information of the bit rate selected in the optimization calculation step is notified to the viewing terminal that requested the corresponding segment, causing it to request the distribution server; and a bandwidth control step in which the bandwidth of the distribution network is controlled based on the sum of the bit rates selected for the plurality of viewing terminals.
[0017] The optimization control program according to the present invention causes a computer to function as the optimization control device. [Effects of the Invention]
[0018] According to the present invention, the quality of the entire distribution service can be optimized in cooperation with bandwidth control. [Brief explanation of the drawings]
[0019] [Figure 1] 1 is a diagram showing the overall configuration of a distribution system and a video distribution flow in an embodiment. [Figure 2] FIG. 2 is a diagram illustrating a distribution cycle according to an embodiment. [Figure 3] FIG. 2 is a diagram illustrating a functional configuration of an optimization control server according to an embodiment. [Figure 4] FIG. 10 is a diagram illustrating a preprocessing algorithm executed in preparation for optimization calculation in the embodiment. [Figure 5] FIG. 10 is a diagram illustrating a state after completion of pre-processing of optimization calculations in the embodiment. [Figure 6] FIG. 10 is a diagram showing an algorithm for optimization calculation process 1 in case 1 according to the embodiment. [Figure 7] FIG. 10 is a diagram showing an algorithm for optimization calculation process 2 in case 2 in the embodiment. [Figure 8] 1 is a flowchart showing a processing flow of an optimization control method according to an embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0020] An example of an embodiment of the present invention will be described below. FIG. 1 is a diagram showing the overall configuration of a distribution system 1 according to this embodiment and a video distribution flow.
[0021] The distribution system 1 comprises a video distribution server 10, an encoder 20, a video quality calculation server 30, a switch 41 connected to a group of distribution side servers (10, 20, 30), a switch 42 connected to the switch 41, a group of viewing terminals 50 connected to the switch 42, and an optimization control server 60.
[0022] Here, the section between the switch 41 and the switch 42 is a variable bandwidth link that can be occupied by a content provider and whose occupied bandwidth can be dynamically changed to any value at any timing. It is also assumed that the section between switch 41 and switch 42 is the only bottleneck point in distribution system 1, and that the bandwidth of other links is sufficiently secured for the amount of distribution.
[0023] The distribution server 10 is a Web server that stores the distribution stream output from the encoder 20 and distributes the corresponding video segment in response to a request from the viewing terminal 50 using a communication protocol such as HTTP. Note that a plurality of distribution servers 10 may be provided in order to distribute traffic among the distribution servers 10 and among the links between the distribution servers 10 and the switches 41. In addition, any method for distributing traffic may be used.
[0024] The encoder 20 is a server that generates a distribution stream for the ABR system and provides it to the distribution server 10. For one video content, the encoder 20 encodes (for example, H.264) multiple streams with different bit rates (for example, 1500 kbps, 1000 kbps, 500 kbps) in segments (container formats such as fragmented MP4 or ts) separated by a fixed time (for example, 2 seconds) and outputs the encoded streams. The encoder 20 may be a real-time live encoder that enables live distribution.
[0025] It is assumed that the encoding results in encoding parameters (bit rate, resolution, frame rate, etc.) that cause the video quality evaluation value (for example, a value calculated by a VMAF model; hereinafter, simply referred to as the evaluation value) of any stream for each segment number to exceed the quality guarantee value (for example, VMAF of 70) guaranteed by the distribution side (distribution company). For this reason, the encoding parameters may differ for each video content. In this embodiment, for the sake of simplicity, it is assumed that the encoding parameters are the same for each video content, and that, as described above, streams that satisfy the quality assurance values exist for all segment numbers of all video content.
[0026] The video quality calculation server 30 is a server that calculates an evaluation value for each segment of the distribution stream output from the encoder 20 based on a video evaluation index such as VMAF. The video quality calculation server 30 transmits the calculated evaluation value together with the byte size of each segment to the optimization control server 60.
[0027] Here, the video quality calculation server 30 may use pre-encoded reference video, which is necessary when calculating evaluation values such as VMAF, as necessary. In this case, the encoder 20 may output the reference video (uncompressed or lossless compressed) in segments. The encoder 20 and the video quality calculation server 30 may be implemented as the same server.
[0028] When starting to watch a video, each viewing terminal 50 acquires the viewing player (application) and initialization files necessary for video playback. There are no restrictions on where these files can be acquired, and they may be acquired from the optimization control server 60. When the viewing player is started, the viewing terminal 50 accesses the optimization control server 60 and acquires a terminal ID. Next, the viewing terminal 50 notifies the optimization control server 60 of content information including the content ID and segment number of the content that the viewing terminal 50 wants to view, and the terminal ID assigned by the optimization control server 60 (1). When each viewing terminal 50 receives the bit rate number from the optimization control server 60 (3), it makes a request to the corresponding path of the distribution server 10 (4) and receives the corresponding segment (5). Thereafter, the viewing terminal 50 repeats the processes (1) to (5) until the video playback ends.
[0029] The optimization control server 60 stores the storage path of each segment distributed by the distribution server 10, and also stores the evaluation value and byte size for each segment acquired from the video quality calculation server 30. When the optimization control server 60 receives the first access from the viewing terminal 50, it notifies the viewing terminal 50 of a unique terminal ID. At the second or subsequent access, it receives content information and the terminal ID from the viewing terminal 50 (1). Then, the optimization control server 60 performs optimization processing based on the content information notified during the distribution cycle described below, determines the bandwidth of the variable bandwidth link and the distribution rate for each viewing terminal 50, performs bandwidth control (2), and then simultaneously notifies each viewing terminal 50 of the bit rate number of the corresponding segment (3).
[0030] The optimization control server 60 may be divided into an optimization calculation server that calculates the optimal values of the delivery rate and bandwidth for each delivery cycle (described later), and a network control server that can control the bandwidth of the variable bandwidth link. In this case, the network control server may use a network control API that is expected to be made available to network users by the telecommunications carrier in the future.
[0031] FIG. 2 is a diagram illustrating the distribution cycle in this embodiment. In this embodiment, delivery is performed in units called delivery cycles, which are determined by the delivery side. The delivery cycles consist of three periods: request reception, optimization / bandwidth control, and simultaneous delivery.
[0032] An optimization process is performed for the viewing terminals 50 that have made requests during the request acceptance period in a certain distribution cycle, the distribution bit rate and the bandwidth (required bandwidth) required for distributing the segments in this distribution cycle are calculated, and simultaneous distribution is performed to the requested viewing terminals 50 at the same time.
[0033] The timing for ending request acceptance in distribution cycle n and starting optimization processing is when all requests from terminals that wish to continue viewing in distribution cycle n among the viewing terminals 50 that received simultaneous distribution in distribution cycle n-1 have been received, or when a predetermined time has elapsed. Also, at this timing, request acceptance for distribution cycle n+1 begins. The viewing terminal 50 allows participation in and withdrawal from viewing in units of a delivery cycle. By using such a delivery cycle, it becomes possible to execute delivery in a state where the delivery bit rate and bandwidth are always optimized in units of a delivery cycle.
[0034] FIG. 3 is a diagram showing the functional configuration of the optimization control server 60 in this embodiment. The optimization control server 60 is an information processing device that includes a control unit, a memory unit, and various interfaces, and the various functions of this embodiment are realized by the control unit executing software (optimization control program) stored in the memory unit. The control unit of the optimization control server 60 includes a terminal information receiving unit 61 , a terminal information management unit 62 , a content information management unit 63 , an optimization calculation unit 64 , a bit rate notification unit 65 , and a bandwidth control unit 66 .
[0035] The terminal information receiving unit 61 receives terminal information including a content ID, a segment number, and a terminal ID as a request to view video content from each of the multiple viewing terminals 50, and notifies the terminal ID to the terminal information management unit 62. The terminal information receiving unit 61 also notifies the content information management unit 63 of the received content ID and segment number.
[0036] Here, the terminal information receiving unit 61 accepts the terminal information within a predetermined period (request acceptance period), and this period may be repeatedly set at a fixed distribution cycle. Furthermore, the terminal information receiving unit further receives a notification that viewing is desired to continue in the nth distribution cycle as a viewing request from the viewing terminal 50 in the n-1th distribution cycle. Then, if viewing requests are received within a certain period of the nth distribution cycle from all of the viewing terminals 50 that received the notification in the n-1th distribution cycle, the n+1th distribution cycle is started regardless of whether the certain period has expired.
[0037] The terminal information management unit 62 registers the terminal ID notified by the terminal information receiving unit 61 and notifies the optimization calculation unit 64 and the bit rate notifying unit 65 of the terminal ID. Furthermore, the terminal information management unit 62 generates a terminal ID for the audiovisual terminal 50 that has newly joined.
[0038] The content information management unit 63 manages the quality evaluation value of each of the multiple bit rates for each content ID and segment number. The content information management unit 63 then extracts the quality evaluation value and the bit rate of each of the multiple bit rates of the segment identified by the content ID and segment number notified by the terminal information receiving unit 61, and notifies the optimization calculation unit 64.
[0039] The optimization calculation unit 64 performs optimization calculations for each of the multiple pieces of terminal information received during a predetermined period (a request acceptance period of a distribution cycle), and selects a bit rate at which the quality evaluation value obtained from the content information management unit 63 exceeds a predetermined quality guarantee value. The optimization calculation unit 64 notifies the bit rate number for each selected viewing terminal 50 to the bit rate notification unit 65. The optimization calculation unit 64 also calculates the sum of the selected bit rates as the required bandwidth and notifies the bandwidth control unit 66.
[0040] At this time, the optimization calculation unit 64 selects the minimum bit rate at which the evaluation value exceeds the quality guarantee value, or selects a bit rate for each viewing terminal so that the required bandwidth is maximized within a range that does not exceed a predetermined basic bandwidth. For example, the optimization calculation unit 64 may prioritize the audiovisual terminal 50 with the smallest evaluation value and gradually increase the selected bit rate, thereby maximizing the required bandwidth. Furthermore, the optimization calculation unit 64 may select a bit rate for each of the viewing terminals 50 so as to maximize the sum of the evaluation values for the multiple viewing terminals 50 .
[0041] The bit rate notification unit 65 notifies the audiovisual terminal 50 that requested the segment of the bit rate number selected by the optimization calculation unit 64, and causes the audiovisual terminal 50 to make a request to the distribution server 10. Furthermore, the bit rate notification unit 65 notifies the newly participating audiovisual terminal 50 of the terminal ID.
[0042] The bandwidth control unit 66 controls the bandwidth of the distribution network based on the required bandwidth notified by the optimization calculation unit 64. Alternatively, the bandwidth control unit 66 controls the bandwidth of the distribution network by notifying a separately provided network control server of the required bandwidth.
[0043] Here, the variables used in the optimization calculation by the optimization control server 60 are defined as follows: dc: Distribution cycle number (1≦dc). ttn: The total number of viewing terminals 50 to which content is delivered in a certain cycle dc. Tid: Terminal ID of the viewing terminal 50 (1≦Tid≦ttn). Cid[Tid]: Content ID notified by the viewing terminal 50. TSTN: Total number of segments in the content. stn[Tid]: segment number notified by the audio-visual terminal 50 (1≦stn≦TSTN). TBN: Quality number in ABR stream. bn: Bit rate number in ABR stream (1≦bn≦TBN). Numbering is done in ascending order of bit rate. QAV: Quality assurance value based on video evaluation index. For example, VMAF value = 70. Q[Cid][stn][bn]: Evaluation value for each content segment. BR[Cid][stn][bn]: Bitrate per segment of each content. BBW: A fixed bandwidth (basic bandwidth) specified in advance by the distributor. q[Tid][bn]: The evaluation value for each segment used in the calculation. br[Tid][bn]: The bitrate per segment to use in the calculation. Asbn[Tid]: Bit rate number assigned to each viewing terminal 50. ABW: Required bandwidth determined after optimization calculation.
[0044] FIG. 4 is a diagram showing a preprocessing algorithm executed in preparation for optimization calculation in this embodiment. This pre-processing is executed every distribution cycle dc. The optimization calculation unit 64 initializes the assigned bit rate number to 1 for each viewing terminal 50 (line 2), and then obtains the evaluation value q[Tid][bn] and bit rate br[Tid][bn] for each bit rate number (lines 4 and 5).
[0045] FIG. 5 is a diagram illustrating a state after completion of pre-processing of optimization calculations in this embodiment. Here, a terminal (Tid: 3) participates in a distribution cycle dc=n, and the number of terminals ttn=3 is shown.
[0046] Details of the optimization calculation for determining the bitrate number Asbn[Tid] and required bandwidth ABW for each terminal in distribution cycle n are shown below for Case 1 where the basic bandwidth BBW is not set as the upper limit allocated for video distribution, and Case 2 where it is set.
[0047] In Case 1, the optimization calculation unit 64 guarantees the bit rate number Asbn to be the minimum necessary bit rate that always exceeds the quality assurance value QAV. This makes it possible to exceed the quality assurance value and minimize the required bandwidth ABW while maintaining the buffer capacity of all terminals.
[0048] FIG. 6 is a diagram showing an algorithm for optimization calculation process 1 in case 1 in this embodiment. In this calculation process 1, the optimization calculation unit 64 initializes the required bandwidth ABW to 0 (line 1), then counts up the bitrate number bn from 1 for each viewing terminal 50 (line 3), and determines whether the evaluation value q[Tid][bn] is equal to or greater than the quality assurance value QAV (line 4).The optimization calculation unit 64 then assigns the bitrate number when the evaluation value is equal to or greater than QAV to the viewing terminal 50 in question (line 5), and adds the bitrate br[Tid][bn] to the required bandwidth ABW (line 6).
[0049] In Case 2, the baseband BBW is set, so if the required band ABW<the baseband BBW after the completion of Calculation Process 1 in Case 1, the optimization calculation unit 64 maximizes the bit rate of each viewing terminal 50 within the range where the required band ABW does not exceed the baseband BBW.
[0050] For example, the optimization calculation unit 64 compares the evaluation values q[Tid][Asbn[Cid]] of each viewing terminal 50, and prioritizes increasing the bitrate of the viewing terminal 50 with the smallest evaluation value. This makes it possible to maximize the overall bitrate while making the evaluation values for each viewing terminal 50 as fair as possible. However, if ABW≧BBW after calculation process 1 is completed, calculation process 2 is not executed.
[0051] FIG. 7 is a diagram showing an algorithm for optimization calculation process 2 in case 2 in this embodiment. In this calculation process 2, the optimization calculation unit 64 finds the terminal ID (Tid) with the smallest evaluation value (line 2), and calculates the required bandwidth when the bit rate number of this viewing terminal 50 is increased by 1 (line 3). If the calculation result exceeds the basic bandwidth BBW (line 4), the process is terminated (line 5), but if it has not yet exceeded the basic bandwidth BBW (line 6), the bit rate number and required bandwidth are updated (lines 7 and 8), and the process is repeated.
[0052] After the calculation process for Case 1 or Case 2 is completed, the bandwidth control unit 66 sets the bandwidth of the variable bandwidth link to the required bandwidth ABW and simultaneously notifies each viewing terminal 50 of the calculated bit rate number. Each viewing terminal 50 simultaneously requests a segment of the corresponding bit rate from the distribution server 10 and begins downloading. After the download is complete, each viewing terminal 50 notifies the optimization control server 60 of a request for the next segment.
[0053] FIG. 8 is a flowchart showing the flow of processing according to the optimization control method of this embodiment. It is assumed here that the distribution period is n and that the terminal IDs of the viewing terminals 50 have already been assigned.
[0054] In step S1, the terminal information receiving unit 61 sets a timer for closing requests for a delivery cycle n. In step S2, the terminal information receiving unit 61 determines whether or not the timer has expired. If the determination is YES, the process proceeds to step S6, and if the determination is NO, the process proceeds to step S3.
[0055] In step S3, the terminal information receiving unit 61 receives a request for a segment from one of the viewing terminals 50. At this time, the viewing terminal 50 also notifies whether or not it will make a request in the next distribution cycle n+1.
[0056] In step S4, the terminal information management unit 62 registers the terminal ID as the delivery destination for the current delivery cycle n.
[0057] In step S5, the terminal information management unit 62 determines whether or not requests for the distribution cycle n have been received from all viewing terminals 50 that made requests in the distribution cycle n-1 and that wished to continue viewing (also made requests in the distribution cycle n). If the determination is YES, the process proceeds to step S6, and if the determination is NO, the process returns to step S2.
[0058] In step S6, the terminal information receiving unit 61 updates the distribution cycle from n to n+1, and starts accepting requests for the next distribution cycle.
[0059] In step S7, the optimization calculation unit 64 performs optimization calculations for n distribution periods. In step S8, the bandwidth control unit 66 performs bandwidth control of the variable bandwidth link based on the required bandwidth calculated in step S7. In step S9, the bit rate notification unit 65 notifies all the audio-visual terminals 50 registered as the distribution cycle n of the bit rate number at once.
[0060] After that, when the distribution server 10 finishes distributing all segments for the distribution cycle n, among the viewing terminals 50 that have completed downloading the segments and continue viewing, the terminals that continue viewing immediately make a request for the next distribution cycle n+1.
[0061] According to this embodiment, in a video distribution service, even when traffic increases, the distribution system 1 selects a bitrate for each viewer in the service whose subjective evaluation value exceeds the quality guarantee value, and controls the variable bandwidth link to ensure the overall required bandwidth, thereby optimizing the quality of the entire distribution service in cooperation with bandwidth control.
[0062] By selecting the minimum bit rate at which the evaluation value exceeds the quality assurance value, the distribution system 1 occupies the minimum necessary bandwidth within the entire network where various services coexist, which can reduce costs, for example, in a monetization model based on bandwidth occupancy. Furthermore, by reducing the occupancy rate, the available bandwidth for other services increases, improving the utilization efficiency of the entire network.
[0063] Furthermore, the distribution system 1 can maximize the evaluation values of all terminals by selecting a bit rate for each viewing terminal 50 so that the sum of the selected bit rates is maximized without exceeding a predetermined basic bandwidth.
[0064] In this case, the distribution system 1 prioritizes the viewing terminal 50 with the smallest evaluation value and gradually increases the selected bit rate, thereby raising the lower limit of the evaluation value and maximizing the overall evaluation value evenly (fairly). Alternatively, the distribution system 1 may select a bit rate that maximizes the sum of the evaluation values, in which case the overall quality can be maximized using the average evaluation value as an indicator.
[0065] The distribution system 1 can efficiently perform optimization calculations and distribution by repeating the period for accepting requests from the viewing terminal 50 at regular intervals. Furthermore, by notifying the viewing terminal 50 that it wishes to continue viewing in the next distribution cycle, the distribution system 1 can start the next distribution cycle when it has received requests from all of the terminals that have requested the next distribution cycle. This allows the distribution system 1 to collect requests at an appropriate time and efficiently and appropriately control the quality and bandwidth.
[0066] Although the embodiments of the present invention have been described above, the present invention is not limited to the above-described embodiments. Furthermore, the effects described in the above-described embodiments are merely a list of the most preferable effects resulting from the present invention, and the effects of the present invention are not limited to those described in the embodiments.
[0067] In the above-described embodiment, it is assumed that the variable bandwidth link can always be controlled to a bandwidth greater than the calculated required bandwidth. However, it is also conceivable that, for example, there is a limit to the bandwidth expandability, and it is not possible to secure a bandwidth sufficient to satisfy the quality assurance value for all terminals. In this case, the optimization calculation unit 64 may take a procedure in which, within the range up to the upper limit of the expandable bandwidth, the bit rate is increased with priority given to the audio-visual terminal 50 with the smallest evaluation value. This allows the distribution system 1 to maximize the overall evaluation value within the available bandwidth.
[0068] Furthermore, in the above embodiment, the optimization control server 60 is connected to the switch 42, but it may be connected to the switch 41 on the distribution side of the variable bandwidth link. However, by being connected to the switch 42 on the user side, communication delays with the viewing terminal 50 are suppressed, and the processing time from request to distribution is shortened, which is expected to improve distribution performance.
[0069] In this embodiment, the configuration and operation of the distribution system 1 have been mainly described, but the present invention is not limited to this and may be configured as a method or program for distributing videos, including each component.
[0070] Furthermore, the functions of the distribution system 1 may be realized by recording a program for realizing the functions of the distribution system 1 on a computer-readable recording medium, and reading and executing the program recorded on the recording medium into a computer system.
[0071] The term "computer system" here includes hardware such as the OS and peripheral devices. Additionally, "computer-readable recording media" refers to portable media such as flexible disks, optical magnetic disks, ROMs, and CD-ROMs, as well as storage devices such as hard disks built into computer systems.
[0072] Furthermore, the term "computer-readable recording medium" may include a medium that dynamically stores a program for a short period of time, such as a communication line when transmitting a program via a network such as the Internet or a communication line such as a telephone line, or a medium that stores a program for a fixed period of time, such as a volatile memory within a computer system that serves as a server or client in such a case. Furthermore, the program may be one that realizes part of the above-mentioned functions, or may be one that can realize the above-mentioned functions in combination with a program already recorded in the computer system. [Explanation of symbols]
[0073] 1. Distribution System 10 Distribution Server 20 Encoder 30 Video quality calculation server 41 Switch 42 Switch 50 viewing devices 60 Optimization control server (optimization control device) 61 Terminal information receiving unit 62 Terminal Information Management Unit 63 Content Information Management Department 64 Optimization Calculation Unit 65 Bitrate notification section 66 Bandwidth control section
Claims
1. In a system in which video content is divided into segments of a fixed time interval, and a distribution server selectively distributes each segment to a viewing terminal from among multiple bit rates in response to a request from the viewing terminal, a terminal information receiving unit that receives terminal information including a content ID and a segment number as a viewing request for the video content from each of a plurality of viewing terminals; a content information management unit that manages a quality evaluation value of each of the plurality of bit rates for each of the content IDs and the segment numbers, and extracts the quality evaluation value of each of the plurality of bit rates and the bit rate specified by the terminal information received by the terminal information receiving unit; an optimization calculation unit that selects a bit rate at which the quality evaluation value obtained from the content information management unit exceeds a predetermined quality assurance value for each of the plurality of pieces of terminal information received within a predetermined period; a bit rate notification unit that notifies the viewing terminal that requested the segment of information about the bit rate selected by the optimization calculation unit, and causes the viewing terminal to request the segment from the distribution server; a bandwidth control unit that controls a bandwidth of a distribution network based on the sum of bit rates selected for the plurality of viewing terminals; The optimization calculation unit is an optimization control device that selects a bit rate for each viewing terminal by gradually increasing the selected bit rate, giving priority to the viewing terminal with the smallest quality evaluation value, so that the sum of the bit rates selected for the multiple viewing terminals is maximized within a range that does not exceed a predetermined basic bandwidth.
2. In a system in which video content is divided into segments of a fixed time interval, and a distribution server selectively distributes each segment to a viewing terminal from among multiple bit rates in response to a request from the viewing terminal, a terminal information receiving unit that receives terminal information including a content ID and a segment number as a viewing request for the video content from each of a plurality of viewing terminals; a content information management unit that manages a quality evaluation value of each of the plurality of bit rates for each of the content IDs and the segment numbers, and extracts the quality evaluation value of each of the plurality of bit rates and the bit rate specified by the terminal information received by the terminal information receiving unit; an optimization calculation unit that selects a bit rate at which the quality evaluation value obtained from the content information management unit exceeds a predetermined quality assurance value for each of the plurality of pieces of terminal information received within a predetermined period; a bit rate notification unit that notifies the viewing terminal that requested the segment of information about the bit rate selected by the optimization calculation unit, and causes the viewing terminal to request the segment from the distribution server; a bandwidth control unit that controls a bandwidth of a distribution network based on the sum of bit rates selected for the plurality of viewing terminals; The optimization calculation unit is an optimization control device that selects a bit rate for each of the viewing terminals so that the sum of the bit rates selected for the multiple viewing terminals is maximized within a range that does not exceed a specified basic bandwidth, and so that the sum of the quality evaluation values for the multiple viewing terminals is maximized.
3. 3. The optimization control device according to claim 1, wherein the predetermined period is repeatedly set at a fixed distribution cycle.
4. The terminal information receiving unit In the n-1th distribution cycle, a notification is further received as a viewing request from the viewing terminal indicating that the viewing terminal wishes to continue viewing in the nth distribution cycle; The optimization control device described in claim 3, wherein if a viewing request is received within the specified time period of the nth distribution cycle from all viewing terminals that received the notification in the n-1th distribution cycle, the n+1th distribution cycle is started regardless of whether the specified time period has expired.
5. In a system in which video content is divided into segments of a fixed time interval, and a distribution server selectively distributes each segment to a viewing terminal from among a plurality of bit rates in response to a request from the viewing terminal, an optimization control device comprises: a terminal information receiving step of receiving terminal information including a content ID and a segment number from each of a plurality of viewing terminals as a viewing request for the video content; a content information management step of managing a quality evaluation value for each of the plurality of bit rates for each of the content IDs and the segment numbers, and extracting the quality evaluation value for each of the plurality of bit rates and the bit rates specified by the terminal information received in the terminal information receiving step; an optimization calculation step of selecting a bit rate at which the quality evaluation value acquired in the content information management step exceeds a predetermined quality assurance value for each of the plurality of pieces of terminal information received within a predetermined period; a bit rate notification step of notifying the viewing terminal that requested the segment of information about the bit rate selected in the optimization calculation step, and causing the viewing terminal to request the segment from the distribution server; a bandwidth control step of controlling a bandwidth of a distribution network based on the sum of the bit rates selected for the plurality of viewing terminals; In the optimization calculation step, an optimization control method is provided in which a bit rate is selected for each viewing terminal by gradually increasing the selected bit rate, giving priority to the viewing terminal with the smallest quality evaluation value, so that the sum of the bit rates selected for the multiple viewing terminals is maximized within a range that does not exceed a predetermined basic bandwidth.
6. In a system in which video content is divided into segments of a fixed time interval, and a distribution server selectively distributes each segment to a viewing terminal from among a plurality of bit rates in response to a request from the viewing terminal, an optimization control device comprises: a terminal information receiving step of receiving terminal information including a content ID and a segment number from each of a plurality of viewing terminals as a viewing request for the video content; a content information management step of managing a quality evaluation value for each of the plurality of bit rates for each of the content IDs and the segment numbers, and extracting the quality evaluation value for each of the plurality of bit rates and the bit rates specified by the terminal information received in the terminal information receiving step; an optimization calculation step of selecting a bit rate at which the quality evaluation value acquired in the content information management step exceeds a predetermined quality assurance value for each of the plurality of pieces of terminal information received within a predetermined period; a bit rate notification step of notifying the viewing terminal that requested the segment of information about the bit rate selected in the optimization calculation step, and causing the viewing terminal to request the segment from the distribution server; a bandwidth control step of controlling a bandwidth of a distribution network based on the sum of the bit rates selected for the plurality of viewing terminals; An optimization control method in which, in the optimization calculation step, a bit rate is selected for each of the plurality of viewing terminals so that the sum of the bit rates selected for the plurality of viewing terminals is maximized within a range that does not exceed a predetermined basic bandwidth, and so that the sum of the quality evaluation values for the plurality of viewing terminals is maximized.
7. An optimization control program for causing a computer to function as the optimization control device according to any one of claims 1 to 4.
Citation Information
Patent Citations
Method, system and network for transmitting multimedia data to a plurality of clients
JP2014036442A
Video streams of various bits for adaptive streaming
JP2014506748A
Method for controlling bandwidth and corresponding devices
JP2014534489A
Improving video quality in adaptive streaming through resource allocation optimization
JP2015502674A
Information processing apparatus and information processing system
JP2018110361A