WO2017031692A1 - Procédé, appareil et système de téléchargement de vidéos - Google Patents

Procédé, appareil et système de téléchargement de vidéos Download PDF

Info

Publication number
WO2017031692A1
WO2017031692A1 PCT/CN2015/088033 CN2015088033W WO2017031692A1 WO 2017031692 A1 WO2017031692 A1 WO 2017031692A1 CN 2015088033 W CN2015088033 W CN 2015088033W WO 2017031692 A1 WO2017031692 A1 WO 2017031692A1
Authority
WO
WIPO (PCT)
Prior art keywords
video
code rate
duration
video segment
rate
Prior art date
Application number
PCT/CN2015/088033
Other languages
English (en)
Chinese (zh)
Inventor
王飞
费泽松
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Priority to PCT/CN2015/088033 priority Critical patent/WO2017031692A1/fr
Priority to CN201580043062.3A priority patent/CN106688239B/zh
Publication of WO2017031692A1 publication Critical patent/WO2017031692A1/fr

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities

Definitions

  • Embodiments of the present invention relate to mobile video technologies, and in particular, to a video download method, apparatus, and system.
  • the client can select the code rate of the downloaded video according to the channel condition, so that the video is not long when the client plays the video. Buffering allows users to get a good viewing experience.
  • the complete original video is segmented according to the code rate on the streaming media server side.
  • the streaming media server first encodes the original video with different code rates, and then divides the video of each code rate into n. Video clips.
  • the video segment that matches the bit rate is requested to be downloaded according to the channel condition during playback, that is, the client selects the closest average according to the average download rate of the previous video segment as the network status changes.
  • the next video segment corresponding to the download rate and the code rate less than the average download rate is downloaded until all video clips are downloaded.
  • the HAS-based video technology only considers the average download rate of the previous video segment. If the network status is unstable, the client will frequently change the code rate during the process of downloading video segments, which may cause pauses in video playback. Reduce the quality of mobile video playback and affect the quality of experience (QoE).
  • the embodiment of the invention provides a video downloading method, device and system, so as to improve the quality of mobile video playback, and at the same time reduce the frequency of code rate replacement during video downloading, and improve user QoE.
  • an embodiment of the present invention provides a video downloading method, including:
  • the video server requesting, by the video server, the N video segments of the preset code rate of the to-be-played video, where N is a natural number, the video segment is the video server pre-playing the to-be-played video according to the M code rates.
  • the M code rates respectively correspond to M code rate levels, and M is a natural number greater than 1.
  • the video playback command is generated after the user clicks and plays the to-be-played video. instruction;
  • the code rate of the video segment determines the corresponding bit rate of the next video segment to be downloaded, including:
  • the average download rate of the previous video segment is greater than the code rate of the previous video segment, determining a second lowest bit rate and a ratio higher than the lowest code rate from the M code rates
  • the code rate of the previous video segment is higher than the code rate of the first level, and the time to be downloaded is calculated according to the duration of the video segment, the code rate of the higher level, and the second low code rate, according to the cached
  • the video duration and the length of time to be downloaded determine the corresponding code rate.
  • the determining, according to the cached video duration and the to-be-downloaded duration, the corresponding code rate include:
  • the higher-level code rate is determined as the corresponding code rate.
  • the determining, according to the cached video duration, and the to-be-downloaded duration includes:
  • the duration of the video segment, the cached video duration, and the previous one The average download rate of the video segment and the code rate of the previous video segment determine the corresponding code rate of the next video segment to be downloaded, including:
  • the corresponding code rate is determined according to the buffered video duration and the duration of the video segment.
  • the determining, according to the cached video duration and the duration of the video segment, the corresponding code Rate including:
  • the determining, according to the cached video duration, and a duration of the video segment The corresponding code rate includes:
  • the duration of the buffered video is greater than or equal to twice the duration of the video segment, determining a code rate of the previous video segment as the corresponding code rate.
  • the time length according to the video segment, the code rate of the higher level, and the time The low bit rate calculates the length of time to be downloaded, including:
  • T m is the duration of the download to be downloaded
  • T s is the duration of the video segment
  • R c+1 is the code rate of the higher level
  • V 2 is the second low code rate
  • the average of the cached video duration and the previous video segment determine the corresponding code rate, including:
  • R n is a value range of the candidate code rate
  • T b is the cached video duration
  • R d is an average download rate of the previous video segment
  • T s is the video segment. Length of time
  • the method further includes:
  • an embodiment of the present invention provides a video downloading method, including:
  • an embodiment of the present invention provides a video downloading apparatus, including:
  • a requesting module configured to request, from the video server, to download, according to the video play instruction, N video segments of a preset code rate of the to-be-played video, where N is a natural number, and the video segment is pre-determined according to the M code rate by the video server.
  • N a natural number
  • the video segment is pre-determined according to the M code rate by the video server.
  • a downloading module configured to download the N video segments after acquiring a video download response replied by the video server
  • a code rate determining module configured to determine a next video to be downloaded according to a duration of the video segment, a buffered video duration, an average download rate of a previous video segment, and a code rate of the previous video segment Corresponding code rate of the segment;
  • the requesting module is further configured to request, by the video server, to download the next video segment of the corresponding code rate;
  • the downloading module is further configured to download the next video segment of the corresponding code rate after acquiring a video download response replied by the video server.
  • the code rate determining module is configured to: if an average download rate of the previous video segment is greater than that of the previous video segment a code rate, wherein a second lower code rate higher than the lowest code rate and a code rate higher than a code rate of the previous video segment are determined from the M code rates, according to the video segmentation The duration of the time, the code rate of the higher level, and the time interval of the second low code rate are calculated, and the corresponding code rate is determined according to the cached video duration and the to-be-downloaded duration.
  • the code rate determining module is configured to: if the cached video duration is greater than the to-be-downloaded The duration is determined by determining the code rate of the higher level as the corresponding code rate.
  • the code rate determining module is specifically configured to: if the cached video duration is less than Or equal to the duration to be downloaded, determining the code rate of the previous video segment as the corresponding code rate.
  • the code rate determining module is specifically configured to be used if the previous video segment is The average download rate is less than or equal to the code rate of the previous video segment, and the corresponding code rate is determined according to the buffered video duration and the duration of the video segment.
  • the code rate determining module is specifically configured to: if the cached video duration is less than twice The duration of the video segment is determined according to the buffered video duration, the average download rate of the previous video segment, and the duration of the video segment.
  • the code rate determining module is specifically configured to: if the cached video duration If the duration of the video segment is greater than or equal to twice, the code rate of the previous video segment is determined as the corresponding code rate.
  • the code rate determining module is specifically configured to calculate the to-be-downloaded time length according to the following formula:
  • T m is the duration of the download to be downloaded
  • T s is the duration of the video segment
  • R c+1 is the code rate of the higher level
  • V 2 is the second low code rate
  • the code rate determining module is specifically configured to calculate a value of the candidate code rate according to the following formula range:
  • R n is a value range of the candidate code rate
  • T b is the cached video duration
  • R d is an average download rate of the previous video segment
  • T s is the video segment. Determining a maximum value of the value range R n of the candidate code rate; determining a code rate that is closest to the maximum value and smaller than the maximum value among the M code rates. The corresponding code rate is described.
  • Obtaining a module configured to acquire a preset duration of the video segment and the M code rate; or, by sending a parameter acquisition request to the video server, acquiring a duration of the video segment and the M Code rate.
  • an embodiment of the present invention provides a video downloading apparatus, including:
  • a determining module configured to determine, according to the channel quality, a highest code rate and a lowest code rate for transmitting the to-be-played video; determining M code rates according to the highest code rate and the lowest code rate, where M is a natural number greater than 1;
  • a segmentation module configured to encode the to-be-played video according to the M code rates, and generate a video segment by segmentation of the to-be-played video corresponding to each code rate;
  • the transceiver module is configured to receive a video download request sent by the client, and transmit the video segment corresponding to the video download request to the client.
  • an embodiment of the present invention provides a client device, including:
  • the transmitter is configured to request, according to the video play instruction, the N video segments of the preset code rate of the video to be played to be downloaded, where N is a natural number, and the video segment is pre-determined according to the M code rate by the video server.
  • N is a natural number
  • M code rates respectively correspond to M code rate levels, and M is a natural number greater than 1.
  • the video play command is an instruction generated by the user after clicking and playing the to-be-played video;
  • a receiver configured to download the N video segments after acquiring a video download response replied by the video server;
  • a processor configured to determine a next video segment to be downloaded according to a duration of the video segment, a buffered video duration, an average download rate of a previous video segment, and a code rate of the previous video segment Corresponding code rate;
  • the transmitter is further configured to request, by the video server, to download the next video segment of the corresponding code rate;
  • the receiver is further configured to download the next video segment of the corresponding code rate after acquiring a video download response replied by the video server.
  • the processor is configured to: if an average download rate of the previous video segment is greater than a code rate of the previous video segment And determining, from the M code rates, a lower-low code rate that is one level higher than the lowest code rate and a code rate higher than a code rate of the previous video segment, according to the duration of the video segmentation. And calculating the to-be-downloaded time length of the high-level code rate and the second low-rate, and determining the corresponding code rate according to the cached video duration and the to-be-downloaded duration.
  • the processor is configured to: if the cached video duration is greater than the to-be-downloaded duration, Then, the code rate of the higher level is determined as the corresponding code rate.
  • the processor is configured to: if the cached video duration is less than or equal to The duration of the to-be-downloaded time determines the code rate of the previous video segment as the corresponding code rate.
  • the processor is specifically configured to: if an average download of the previous video segment The rate is less than or equal to the code rate of the previous video segment, and the corresponding code rate is determined according to the buffered video duration and the duration of the video segment.
  • the processor is configured to: if the cached video duration is less than The duration of the video segment is doubled, and the corresponding code rate is determined according to the buffered video duration, the average download rate of the previous video segment, and the duration of the video segment.
  • the processor is specifically configured to: if the cached video If the duration of the video segment is greater than or equal to twice, the code rate of the previous video segment is determined as the corresponding code rate.
  • the processor is specifically configured to calculate the to-be-downloaded duration according to the following formula:
  • T m is the duration of the download to be downloaded
  • T s is the duration of the video segment
  • R c+1 is the code rate of the higher level
  • V 2 is the second low code rate
  • the processor is specifically configured to calculate the candidate code rate according to the following formula Ranges:
  • R n is a value range of the candidate code rate
  • T b is the cached video duration
  • R d is an average download rate of the previous video segment
  • T s is the video segment. Determining a maximum value of the value range R n of the candidate code rate; determining a code rate that is closest to the maximum value and smaller than the maximum value among the M code rates. The corresponding code rate is described.
  • the processor is further configured to obtain a preset The duration of the video segment and the M code rates; or, by sending a parameter acquisition request to the video server, obtaining the duration of the video segment and the M code rates.
  • an embodiment of the present invention provides a video server, including:
  • a processor configured to determine a highest code rate and a lowest code rate for transmitting the to-be-played video according to the channel quality; determine M code rates according to the highest code rate and the lowest code rate, where M is a natural number greater than 1; The M code rates respectively encode the to-be-played video, and generate a video segment by segmentation of the to-be-played video corresponding to each code rate;
  • a transceiver configured to receive a video download request sent by the client, and transmit the video segment corresponding to the video download request to the client.
  • the embodiment of the present invention provides a mobile video system, including: a video server and a client device, where the video server adopts the device in the fourth aspect, and the client device adopts the third aspect and the third aspect.
  • a mobile video system including: a video server and a client device, where the video server adopts the device in the fourth aspect, and the client device adopts the third aspect and the third aspect.
  • the embodiment of the present invention provides a mobile video system, including: a video server and a client device, where the video server adopts the device in the sixth aspect, and the client device adopts the fifth aspect and the fifth aspect.
  • a mobile video system including: a video server and a client device, where the video server adopts the device in the sixth aspect, and the client device adopts the fifth aspect and the fifth aspect.
  • the video downloading method, device and system determine the most consistent network by downloading the average download rate of the previous video segment, the duration of the video segmentation, the buffered video duration, and the code rate of the previous video segment.
  • the code rate of the next video segment to be downloaded improves the quality of mobile video playback, while minimizing the frequency of code rate replacement during video downloading and improving the user's QoE.
  • FIG. 1 is a flow chart of an embodiment of a video downloading method of the present invention
  • FIG. 2 is a flow chart of another embodiment of a video downloading method according to the present invention.
  • FIG. 3 is a schematic structural diagram of an embodiment of a video downloading apparatus according to the present invention.
  • FIG. 4 is a schematic structural diagram of another embodiment of a video downloading apparatus according to the present invention.
  • FIG. 5 is a schematic structural diagram of still another embodiment of a video downloading apparatus according to the present invention.
  • FIG. 6 is a schematic structural diagram of an embodiment of a client device according to the present invention.
  • FIG. 7 is a schematic structural diagram of an embodiment of a video server according to the present invention.
  • FIG. 8 is a schematic structural diagram of an embodiment of a mobile video system according to the present invention.
  • FIG. 1 is a flowchart of an embodiment of a video downloading method according to the present invention. As shown in FIG. 1 , the method in this embodiment may include:
  • Step 101 Request, according to a video play instruction, a video server to download N video segments of a preset code rate of the to-be-played video, where N is a natural number, and the video segment is the video server pre-determined according to M code rates.
  • N is a natural number
  • M code rates respectively correspond to M code rate levels
  • M is a natural number greater than 1.
  • the video playback instruction is that the user clicks to play the to-be-played video.
  • the client When a user views a mobile video through a client, the client usually plays the video while downloading the video from the video server. In order not to interrupt the video during the user viewing process, a part of the video is cached and then played in the cache. Download the upcoming video during the video.
  • the video server has previously encoded the video to be played according to the M code rates, and then segments the encoded video corresponding to each code rate to generate video segments of equal duration. Table 1 is a list of segments of the video to be played.
  • the video server encodes the video to be played by M code rates, and then divides the encoded video corresponding to each code rate into L video segments, and M code rates correspond to M code rate levels, all videos.
  • the duration of the segments is the same, and the number of bits carried by each code rate corresponding to the video segment is different according to the code rate.
  • the client downloads the to-be-played video, it downloads the first video segment one by one to the L-th video segment in units of video segments.
  • the network status is unclear. You can select a video segment with a smaller bit rate to download. In order to reserve enough space for video playback, you can download two or more according to this smaller bit rate.
  • the video is segmented. Therefore, when the client requests to download the to-be-played video from the video server, the client requests to download N video segments of the preset code rate.
  • the preset code rate may be V 2 in Table 1, and N may be 2.
  • Step 102 After obtaining a video download response replied by the video server, download the N video segments.
  • the video server After receiving the request from the client, the video server can reply a response to the client and start transmitting the video segment of the request to the client, so that the client can start the initial download of the video to be played.
  • the client can pre-arrange a duration with the video server. After the client sends the request, the video server does not need to send a response to the client, but waits for the predetermined duration together, and then starts transmitting and downloading the video. The operation of the segment.
  • Step 103 Determine, according to the duration of the video segment, the buffered video duration, the average download rate of the previous video segment, and the code rate of the previous video segment, the correspondence of the next video segment to be downloaded.
  • the client may accumulate a certain video buffer duration on the one hand, and may also obtain some network status information according to the average download rate of the previously downloaded video segment.
  • the corresponding code rate of the next video segment to be downloaded is determined in conjunction with the duration of the video segment and the code rate of the previous video segment.
  • the client initially requests to download 2 video segments with a code rate of V 2 (ie, video segment 21 and video segment 22).
  • V 2 code rate of V 2
  • the client determines to download the third video segment.
  • the code rate is determined based on the duration of the video segment, the length of the buffered video, the average download rate of the downloaded video segment 22, and the code rate V 2 of the video segment 22.
  • the video segment that best matches the network condition can be selected.
  • the code rate improves the quality of mobile video playback, and can also minimize the frequency of code rate replacement during video download.
  • Step 104 Request the video server to download the next video segment of the corresponding code rate.
  • the client After the client determines to download the corresponding code rate of the next video segment, it can request the video server to download the laundry song video segment corresponding to the corresponding code rate. For example, a request to the video server after downloading the download rate video segments 22 V 3 for a third video segment 33.
  • Step 105 After acquiring the video download response replied by the video server, download the next video segment of the corresponding code rate.
  • Step 105 is similar to step 102 and will not be described here.
  • the method of steps 103-105 refers to the situation when the previous video segment is downloaded, and determines the code rate of the next video segment to be downloaded.
  • the above table 1 is taken as an example, and the client downloads according to the video segment 22 determining a third status bit rate of video segments V 3, downloaded video segments 33, and then determines the bit rate of the fourth video segments in accordance with the status of downloading the video segments 33, and so on, until the client Download all the L video segments of the video to be played.
  • the next video to be downloaded that best matches the network condition is determined according to the average download rate of the previous video segment, the duration of the video segment, the buffered video duration, and the code rate of the previous video segment. Segmented bit rate, improve the quality of mobile video playback, while minimizing the frequency of code rate replacement during video downloading, and improve user QoE.
  • the specific implementation method may be: if the average download rate of the previous video segment is greater than the code rate of the previous video segment, determining the lowest ratio from the M code rates a second lowest code rate having a higher rate of the code rate and a code rate higher than a code rate of the previous video segment, according to the duration of the video segment, the bit rate of the higher level, and the time
  • the low code rate calculates the length of time to be downloaded, and determines the corresponding code rate according to the cached video duration and the to-be-downloaded duration.
  • the client compares the average download rate R d of the previous video segment with the code rate R c of the previous video segment.
  • R d >R c the network condition is good, and the actual download rate that can be achieved is greater than the previous one.
  • the code rate of the video segment can be considered to increase the bit rate of the next video segment by one level.
  • the code rate of the next video segment is determined according to the buffered video duration T b and the to-be-downloaded time length T m , and the to-be-downloaded time length T m indicates that the actual average download rate falls to the next lowest code rate V 2 .
  • the duration of the code rate R c+1 that is one level higher than the code rate R c of the previous video segment is downloaded, and T s is the duration of one video segment.
  • the length of time to be downloaded T m can be calculated according to the following formula:
  • the average download rate of the client download video segment 22 is T d is the actual download duration of video segment 22.
  • T d is the actual download duration of video segment 22.
  • the length of the video that has been played is the duration of the video buffer T b , and the cached video duration T b and time.
  • the low bit rate downloads a higher level of the code rate R c+1 of the video segment to be downloaded for the length T m to be compared, and determines the corresponding code rate of the third video segment to be downloaded.
  • the buffered time is enough to support downloading a higher-level video segment R c+1 at a lower bit rate, without causing interruption of video playback, so that a higher level code rate R c+1 can be used.
  • V 3 determined to correspond to the third bit rate video segments, i.e., 33 to download the video segment.
  • the code rate R c (e.g., V 2 ) of the segment 22 is the corresponding code rate of the third video segment, i.e., the video segment 23 is downloaded.
  • the specific implementation method may further be: if the average download rate of the previous video segment is less than or equal to the code rate of the previous video segment, according to the cached video duration And the duration of the video segment determines the corresponding code rate.
  • the buffered video duration T b When the buffered video duration T b is less than twice the duration of the video segment T s , in order to ensure uninterrupted video playback, the buffered video duration T b must be greater than or equal to the actual download duration T d of the next video segment (T b ⁇ T d ), assuming the actual download duration R n is a value range of the candidate code rate, then At this time, the next video segment corresponding to the code rate can be selected rate M rate with the maximum value of R n R n closest to and smaller than the maximum value, e.g., V 4 ⁇ R n, V 5 > R n , then V 4 is the corresponding code rate of the next video segment.
  • the buffered video duration T b is greater than or equal to twice the duration of the video segment T s , indicating that the buffered video duration is sufficient to support video playback in the current state, thus maintaining the code rate R c of the previous video segment.
  • the corresponding bit rate for the next video segment is greater than or equal to twice the duration of the video segment T s , indicating that the buffered video duration is sufficient to support video playback in the current state, thus maintaining the code rate R c of the previous video segment.
  • the corresponding bit rate for the next video segment is
  • the method may further include: acquiring a preset duration of the video segment and the M code rate; or acquiring the video segment by sending a parameter acquisition request to the video server. The duration and the M code rate.
  • the video server segments the video to be played, and can perform encoding and segmentation according to a preset code rate and duration, so that the code rate and duration can be stored in advance on the video server and the client.
  • the client can request the video server for the code rate and duration before downloading the video to be played.
  • FIG. 2 is a flowchart of another embodiment of a video downloading method according to the present invention. As shown in FIG. 2, the method in this embodiment may include:
  • Step 201 Determine, according to channel quality, a highest code rate and a lowest code rate of the video to be played.
  • the video server analyzes the input conditions of the video at the video source end. Corresponding to different video resolutions, sampling formats, frame rates, original rates, and compression ratios, there are corresponding channel rates, that is, the highest bit rate of the video source. Table 2 shows the list of input conditions for the video source. After determining the highest code rate, the video source also needs to determine the lowest acceptable code rate, the level of video bit rate variation, and the level as a function of code rate.
  • the code rate can reflect the user's subjective experience, so in turn, the lowest acceptable score of the user's subjective evaluation can be used as the score value corresponding to the lowest code rate.
  • Step 202 Determine M code rates according to the highest code rate and the lowest code rate, where M is a natural number greater than 1.
  • a total of M code rate levels are determined, such that the highest code rate V M corresponds to a code rate level y of M, and the lowest code rate V 1 corresponds to a code rate level y of 1.
  • the two sets of data are brought into the code rate level y.
  • the values of a and b can be calculated.
  • the code rates (V 2 ⁇ V M-1 ) corresponding to the M-2 code rate levels are respectively calculated.
  • Step 203 Encode the to-be-played video according to the M code rates, and generate a video segment by segmentation of the to-be-played video corresponding to each code rate.
  • the video server can encode the video to be played according to each code rate, and then segment the encoded video to be played corresponding to each code rate into a video segment as shown in Table 1. .
  • Step 204 Receive a video download request sent by the client, and transmit a video segment corresponding to the video download request to the client.
  • Table 3 is a comparison table of the video download rate changes of the prior art and the present invention.
  • the negative number in Table 3 indicates that the duration of the video has been cached is empty, the video playback is aborted, and the video buffer corresponding to the negative absolute value duration is required for the client to complete playback.
  • Rate level 1 2 3 4 5 6 Rate (unit: kbps) 128 210 350 545 876 1410
  • the video server encodes the video according to the 6 code rates of Table 4, the video of the total 50s is divided into 10 video segments, and the duration T s of each video segment is 5 s .
  • the client initially requests the video server to download two video segments 1 and 2 with a code rate R c of 210 kbps.
  • the average download rate R d of the video segment 2 is 300 kbps, and the cached video is obtained.
  • the duration T b is 10 s, and the corresponding code rate of the video segment 3 to be downloaded is determined based on the information. Since R d >R c , T b > T m , so the corresponding code rate of video segment 3 is a higher rate of code rate R c+1 (350 kbps).
  • the apparatus in this embodiment may include: a requesting module 11, a downloading module 12, and a code rate determining module 13, wherein the requesting module 11 And N video segments for requesting to download a preset code rate of the to-be-played video according to the video playback instruction, where N is a natural number, and the video segment is pre-determined by the video server according to the M code rates.
  • N is a natural number
  • the video segment is pre-determined by the video server according to the M code rates.
  • the M code rates respectively correspond to M code rate levels, and M is a natural number greater than 1.
  • the video playback command is after the user clicks and plays the to-be-played video.
  • the generated module 12 is configured to download the N video segments after acquiring the video download response replied by the video server; before downloading the to-be-played video: the code rate determining module 13 is configured to: Determining the next to be downloaded according to the duration of the video segment, the buffered video duration, the average download rate of the previous video segment, and the code rate of the previous video segment Corresponding code rate of the video segment; the requesting module 11 is further configured to request the video server to download the next video segment of the corresponding code rate; the downloading module 12 is further configured to acquire After the video download response replied by the video server, the next video segment of the corresponding code rate is downloaded.
  • the device in this embodiment may be used to implement the technical solution of the method embodiment shown in FIG. 1 , and the implementation principle and technical effects are similar, and details are not described herein again.
  • the code rate determining module 13 is specifically configured to: if the average download rate of the previous video segment is greater than the code rate of the previous video segment, determine a minimum ratio from the M code rates. a second lowest code rate having a higher rate of the code rate and a code rate higher than a code rate of the previous video segment, according to the duration of the video segment, the bit rate of the higher level, and the time
  • the low code rate calculates the length of time to be downloaded, and determines the corresponding code rate according to the cached video duration and the to-be-downloaded duration.
  • the code rate determining module 13 is configured to determine the code rate of the higher level as the corresponding code rate if the cached video duration is greater than the to-be-downloaded duration.
  • the code rate determining module 13 is configured to: if the cached video duration is less than or equal to the to-be-downloaded duration, determine a code rate of the previous video segment as the corresponding code rate. .
  • the code rate determining module 13 is specifically configured to: if the average download rate of the previous video segment is less than or equal to the code rate of the previous video segment, according to the cached video duration and The duration of the video segment determines the corresponding code rate.
  • the code rate determining module 13 is specifically configured to: if the length of the video segment that is less than twice the duration of the cached video, according to the cached video duration, the previous video score The average download rate of the segments and the duration of the video segments determine the corresponding code rate.
  • the code rate determining module 13 is specifically configured to: if the length of the video segment whose buffered video duration is greater than or equal to twice, determine the code rate of the previous video segment as The corresponding code rate.
  • code rate determining module 13 is specifically configured to calculate the length of the to-be-downloaded according to the following formula:
  • T m is the duration of the download to be downloaded
  • T s is the duration of the video segment
  • R c+1 is the code rate of the higher level
  • V 2 is the second low code rate
  • code rate determining module 13 is specifically configured to calculate a value range of the candidate code rate according to the following formula:
  • R n is a value range of the candidate code rate
  • T b is the cached video duration
  • R d is an average download rate of the previous video segment
  • T s is the video segment. Determining a maximum value of the value range R n of the candidate code rate; determining a code rate that is closest to the maximum value and smaller than the maximum value among the M code rates. The corresponding code rate is described.
  • the apparatus of the present embodiment may further include: an acquiring module 14 on the basis of the apparatus structure shown in FIG.
  • the obtaining module 14 is configured to acquire a preset duration of the video segment and the M code rate; or, by sending a parameter acquisition request to the video server, acquiring a duration of the video segment and the M Rate rate.
  • the device in this embodiment may be used to implement the technical solution of the method embodiment shown in FIG. 1 , and the implementation principle and technical effects are similar, and details are not described herein again.
  • FIG. 5 is a schematic structural diagram of still another embodiment of a video downloading apparatus according to the present invention.
  • the apparatus of this embodiment may include: a determining module 21, a segmentation module 22, and a transceiver module 23, wherein the determining module 21, For determining the highest bit rate and minimum of the video to be played according to the channel quality a code rate; determining M code rates according to the highest code rate and the lowest code rate, where M is a natural number greater than 1; the segmentation module 22 is configured to respectively perform the to-be-played video according to the M code rates Encoding, and segmenting the video to be played corresponding to each code rate to generate a video segment; the transceiver module 23 is configured to receive a video download request sent by the client, and transmit the video download to the client Request the corresponding video segment.
  • the device in this embodiment may be used to implement the technical solution of the method embodiment shown in FIG. 2, and the implementation principle and technical effects are similar, and details are not described herein again.
  • FIG. 6 is a schematic structural diagram of an embodiment of a client device according to the present invention.
  • the device in this embodiment may include: a transmitter 31, a receiver 32, and a processor 33, where the transmitter 31 is configured to And requesting, by the video server, the N video segments of the preset code rate of the to-be-played video, where N is a natural number, the video segment is the video server pre-playing the to-be-played video according to the M code rates.
  • the M code rates respectively correspond to M code rate levels, and M is a natural number greater than 1.
  • the video playback command is generated after the user clicks and plays the to-be-played video.
  • the receiver 32 is configured to download the N video segments after acquiring the video download response replied by the video server; before downloading the to-be-played video: the processor 33 is configured to use the video Determining the corresponding code rate of the next video segment to be downloaded, the duration of the segment, the buffered video duration, the average download rate of the previous video segment, and the code rate of the previous video segment; The transmitter 31 is further configured to request the video server to download the next video segment of the corresponding code rate; the receiver 32 is further configured to acquire a video download response replied by the video server. Thereafter, the next video segment of the corresponding code rate is downloaded.
  • the device in this embodiment may be used to implement the technical solution of the method embodiment shown in FIG. 1 , and the implementation principle and technical effects are similar, and details are not described herein again.
  • the processor 33 is specifically configured to determine a ratio of the lowest code rate from the M code rates if an average download rate of the previous video segment is greater than a code rate of the previous video segment. a lower level code rate of one level higher than a code rate higher than a code rate of the previous video segment, according to a duration of the video segment, a code rate of the higher level, and the second lowest code Rate calculating the length of time to be downloaded, and determining the corresponding code rate according to the length of the cached video and the length of time to be downloaded.
  • the processor 33 is specifically configured to determine the code rate of the higher level as the corresponding code rate if the cached video duration is greater than the to-be-downloaded duration.
  • the processor 33 is specifically configured to determine a code rate of the previous video segment as the corresponding code rate if the cached video duration is less than or equal to the to-be-downloaded duration.
  • the processor 33 is specifically configured to: if the average download rate of the previous video segment is less than or equal to a code rate of the previous video segment, according to the cached video duration and the The duration of the video segment determines the corresponding code rate.
  • the processor 33 is specifically configured to: if the length of the video segment that is less than twice the duration of the cached video, according to the cached video duration, the previous video segment The average download rate and the duration of the video segment determine the corresponding code rate.
  • the processor 33 is specifically configured to determine a code rate of the previous video segment as the length of the video segment if the duration of the buffered video is greater than or equal to twice Corresponding code rate.
  • processor 33 is specifically configured to calculate the length of the to-be-downloaded according to the following formula:
  • T m is the duration of the download to be downloaded
  • T s is the duration of the video segment
  • R c+1 is the code rate of the higher level
  • V 2 is the second low code rate
  • processor 33 is specifically configured to calculate a value range of the candidate code rate according to the following formula:
  • R n is a value range of the candidate code rate
  • T b is the cached video duration
  • R d is an average download rate of the previous video segment
  • T s is the video segment. Determining a maximum value of the value range R n of the candidate code rate; determining a code rate that is closest to the maximum value and smaller than the maximum value among the M code rates. The corresponding code rate is described.
  • the processor 33 is further configured to acquire a preset duration of the video segment and the M code rate, or acquire the video segment by sending a parameter acquisition request to the video server. The duration and the M code rate.
  • FIG. 7 is a schematic structural diagram of an embodiment of a video server according to the present invention.
  • the device in this embodiment may include: a processor 41 and a transceiver 42, wherein the processor 41 is configured to determine transmission according to channel quality.
  • the transceiver 42 is configured to receive a video download request sent by the client, and The client transmits a video segment corresponding to the video download request.
  • the device in this embodiment may be used to implement the technical solution of the method embodiment shown in FIG. 2, and the implementation principle and the technical effect are similar, and details are not described herein again.
  • FIG. 8 is a schematic structural diagram of an embodiment of a mobile video system according to the present invention.
  • the system of the present embodiment includes: a video server 51 and a client device 52, wherein the video server 51 can adopt the device shown in FIG.
  • the technical solution of the method embodiment shown in FIG. 2 can be performed correspondingly, and the implementation principle and technical effects are similar, and details are not described herein;
  • the client device 52 can adopt the device shown in FIG. 3 or FIG.
  • the technical solution of the method embodiment shown in FIG. 1 can be performed correspondingly, and the implementation principle and the technical effect are similar, and details are not described herein again.
  • the video server 51 can adopt the structure of the device embodiment shown in FIG. 7, and correspondingly, the technical solution of the method embodiment shown in FIG. 2 can be executed, and the implementation principle and the technical effect are similar.
  • the configuration of the device embodiment shown in FIG. 1 can be performed, and the implementation principle and technical effects of the method shown in FIG. 1 are similar. Let me repeat.
  • the disclosed apparatus and method may be implemented in other manners.
  • the device embodiments described above are merely illustrative.
  • the division of the unit is only a logical function division.
  • there may be another division manner for example, multiple units or components may be combined or Can be integrated into another system, or some features can be ignored or not executed.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, device or unit, and may be in an electrical, mechanical or other form.
  • the units described as separate components may or may not be physically separated, and the components displayed as the unit may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. . Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of the embodiment.
  • each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
  • the above integrated unit can be implemented in the form of hardware or in the form of hardware plus software functional units.
  • the above integrated unit implemented in the form of a software functional unit can be stored in a computer Readable in storage media.
  • the above software functional unit is stored in a storage medium and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) or a processor to perform the methods of the various embodiments of the present invention. Part of the steps.
  • the foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, and the like, which can store program codes. .

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

Des modes de réalisation de la présente invention concernent un procédé, un appareil et un système de téléchargement de vidéos. Le procédé de téléchargement de vidéos selon la présente invention comprend les étapes consistant à : demander, selon une instruction de lecture de vidéo, de télécharger N fragments de vidéo à débit de code prédéfini, d'une vidéo à lire à partir d'un serveur vidéo, N étant un nombre naturel ; télécharger les N fragments de vidéo après l'obtention d'une réponse de téléchargement de vidéo renvoyée par le serveur vidéo ; et exécuter de manière répétée les étapes suivantes jusqu'à ce que la vidéo à lire soit complètement téléchargée : déterminer un débit de code correspondant d'un fragment de vidéo suivant à télécharger en fonction d'une longueur de temps d'un fragment de vidéo, d'une longueur de temps d'une vidéo mise en mémoire tampon, d'une vitesse moyenne de téléchargement d'un précédent fragment de vidéo et d'un débit de code du précédent fragment de vidéo ; demander de télécharger le fragment de vidéo suivant ayant le débit de code correspondant à partir du serveur vidéo ; et télécharger le fragment de vidéo suivant ayant le débit de code correspondant après l'obtention d'une réponse de téléchargement de vidéo renvoyée par le serveur vidéo. Les modes de réalisation de la présente invention permettent d'améliorer la qualité de lecture d'une vidéo mobile, de réduire considérablement la fréquence de changement du débit de code dans un processus de téléchargement de vidéos et d'améliorer la qualité d'expérience d'un utilisateur.
PCT/CN2015/088033 2015-08-25 2015-08-25 Procédé, appareil et système de téléchargement de vidéos WO2017031692A1 (fr)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/CN2015/088033 WO2017031692A1 (fr) 2015-08-25 2015-08-25 Procédé, appareil et système de téléchargement de vidéos
CN201580043062.3A CN106688239B (zh) 2015-08-25 2015-08-25 视频下载方法、装置及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2015/088033 WO2017031692A1 (fr) 2015-08-25 2015-08-25 Procédé, appareil et système de téléchargement de vidéos

Publications (1)

Publication Number Publication Date
WO2017031692A1 true WO2017031692A1 (fr) 2017-03-02

Family

ID=58099465

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/088033 WO2017031692A1 (fr) 2015-08-25 2015-08-25 Procédé, appareil et système de téléchargement de vidéos

Country Status (2)

Country Link
CN (1) CN106688239B (fr)
WO (1) WO2017031692A1 (fr)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108769826A (zh) * 2018-06-22 2018-11-06 广州酷狗计算机科技有限公司 直播媒体流获取方法、装置、终端及存储介质
CN110460875A (zh) * 2019-08-05 2019-11-15 北京达佳互联信息技术有限公司 一种视频码率的切换方法、装置、电子设备及存储介质
CN111182354A (zh) * 2019-12-24 2020-05-19 中移(杭州)信息技术有限公司 视频评分推荐方法、系统、装置及计算机可读存储介质
CN112822521A (zh) * 2020-12-30 2021-05-18 百果园技术(新加坡)有限公司 音视频传输的码率控制方法、装置、设备及存储介质
CN114040257A (zh) * 2021-11-26 2022-02-11 深圳大学 一种自适应视频流传输播放方法、装置、设备及存储介质
CN114979762A (zh) * 2022-04-12 2022-08-30 北京字节跳动网络技术有限公司 视频下载、传输方法、装置、终端设备、服务器及介质
CN115002557A (zh) * 2022-05-23 2022-09-02 北京字跳网络技术有限公司 一种网速预测方法、装置、设备和存储介质

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109040855B (zh) * 2018-09-03 2021-01-29 重庆邮电大学 一种无线dash流媒体码率平滑自适应传输方法
CN109348265A (zh) * 2018-11-27 2019-02-15 湖南国科微电子股份有限公司 基于hls多码流模式下的直播方法及系统
CN110198494B (zh) * 2019-06-28 2021-07-20 广州市百果园信息技术有限公司 一种视频播放方法、装置、设备和存储介质
CN111314772B (zh) * 2019-11-29 2022-07-08 广州市百果园信息技术有限公司 一种视频下载码率的确定方法、装置、终端和存储介质
CN111212301B (zh) * 2020-01-09 2021-10-08 鹏城实验室 一种视频码率的匹配方法、存储介质及终端设备
CN112637631B (zh) * 2020-12-17 2022-04-26 清华大学 码率确定方法、装置、电子设备和存储介质
CN115134639B (zh) * 2021-03-24 2023-12-19 北京字跳网络技术有限公司 视频档位确定方法、装置、服务器、存储介质和系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010042041A1 (fr) * 2008-10-09 2010-04-15 Telefonaktiebolaget Lm Ericsson (Publ) Fonctions de prise en charge pour des services de vidéo à la demande poste-à-poste à qualité garantie
CN102204272A (zh) * 2010-12-31 2011-09-28 华为技术有限公司 流媒体中播放时间点跳转后的处理方法及装置
CN102301710A (zh) * 2009-01-29 2011-12-28 微软公司 使用用于自适应视频流传输的可变比特率和动态分辨率的多比特率视频编码
CN103702237A (zh) * 2012-09-28 2014-04-02 北京大学 Http流媒体的速率自适方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010042041A1 (fr) * 2008-10-09 2010-04-15 Telefonaktiebolaget Lm Ericsson (Publ) Fonctions de prise en charge pour des services de vidéo à la demande poste-à-poste à qualité garantie
CN102301710A (zh) * 2009-01-29 2011-12-28 微软公司 使用用于自适应视频流传输的可变比特率和动态分辨率的多比特率视频编码
CN102204272A (zh) * 2010-12-31 2011-09-28 华为技术有限公司 流媒体中播放时间点跳转后的处理方法及装置
CN103702237A (zh) * 2012-09-28 2014-04-02 北京大学 Http流媒体的速率自适方法及装置

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108769826A (zh) * 2018-06-22 2018-11-06 广州酷狗计算机科技有限公司 直播媒体流获取方法、装置、终端及存储介质
CN110460875A (zh) * 2019-08-05 2019-11-15 北京达佳互联信息技术有限公司 一种视频码率的切换方法、装置、电子设备及存储介质
CN111182354A (zh) * 2019-12-24 2020-05-19 中移(杭州)信息技术有限公司 视频评分推荐方法、系统、装置及计算机可读存储介质
CN111182354B (zh) * 2019-12-24 2022-05-10 中移(杭州)信息技术有限公司 视频评分推荐方法、装置、设备及计算机可读存储介质
CN112822521A (zh) * 2020-12-30 2021-05-18 百果园技术(新加坡)有限公司 音视频传输的码率控制方法、装置、设备及存储介质
CN114040257A (zh) * 2021-11-26 2022-02-11 深圳大学 一种自适应视频流传输播放方法、装置、设备及存储介质
CN114040257B (zh) * 2021-11-26 2023-06-13 深圳大学 一种自适应视频流传输播放方法、装置、设备及存储介质
CN114979762A (zh) * 2022-04-12 2022-08-30 北京字节跳动网络技术有限公司 视频下载、传输方法、装置、终端设备、服务器及介质
CN114979762B (zh) * 2022-04-12 2024-06-07 北京字节跳动网络技术有限公司 视频下载、传输方法、装置、终端设备、服务器及介质
CN115002557A (zh) * 2022-05-23 2022-09-02 北京字跳网络技术有限公司 一种网速预测方法、装置、设备和存储介质
CN115002557B (zh) * 2022-05-23 2024-01-30 北京字跳网络技术有限公司 一种网速预测方法、装置、设备和存储介质

Also Published As

Publication number Publication date
CN106688239B (zh) 2019-08-27
CN106688239A (zh) 2017-05-17

Similar Documents

Publication Publication Date Title
WO2017031692A1 (fr) Procédé, appareil et système de téléchargement de vidéos
JP6469788B2 (ja) メディアコンテンツの適応型ストリーミングのための品質情報の使用
US20230283653A1 (en) Methods and apparatus to reduce latency for 360-degree viewport adaptive streaming
CN109964488B (zh) 利用聚合网络统计来提高来自移动设备的直播视频流传输的质量和用户体验
JP6015856B2 (ja) ハイパーテキスト転送プロトコルによる品質アウェア適応型ストリーミングのための方法
CN107135411B (zh) 一种调整视频码率的方法及电子设备
JP6436772B2 (ja) 受信ビットレートの動的適応方法および関連する受信機
EP3047627B1 (fr) Adaptations de représentations dash dans des réseaux
US9338204B2 (en) Prioritized side channel delivery for download and store media
US20200099973A1 (en) Information processing system, terminal apparatus, and non-transitory computer readable medium
US10708667B1 (en) Combining fragments with different encodings
CN108833995B (zh) 一种无线网络环境中自适应流媒体的传输方法
KR20220059425A (ko) 비디오 스트리밍을 위한 세션 기반 적응적 재생 프로파일 판정
EP4152755A1 (fr) Procédés, systèmes et appareils pour construction d'échelle de débit binaire adaptatif sur la base de réseaux neuronaux dynamiquement ajustables
WO2013185547A1 (fr) Procédé de desserte de serveur d'antémémoire, serveur d'antémémoire et système associé
US10609111B2 (en) Client-driven, ABR flow rate shaping
CN107135403B (zh) 信息处理设备
KR101087599B1 (ko) 하이퍼 텍스트 트랜스퍼 프로토콜 스트리밍 동영상 서비스를 위한 전송 제어 방법
US20180199100A1 (en) Information processing apparatus and information processing system
KR20190048186A (ko) 적응적 스트리밍 서비스를 위한 다중 경로 기반 분할 전송 시스템 및 스트리밍 방법
CN106464981B (zh) 视频传输方法和装置
CN114885208B (zh) Ndn网络下可伸缩流媒体传输的动态自适应方法、设备及介质
US20160014181A1 (en) Content transfer method, content transfer apparatus and content receiving apparatus
US20240223832A1 (en) Video stream bitrate adjustment method and apparatus, computer device, and storage medium
US20230199267A1 (en) Method and apparatus for processing adaptive multi-view streaming

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15901963

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15901963

Country of ref document: EP

Kind code of ref document: A1