WO2016091000A1 - Dynamic code rate switching method, server and system - Google Patents

Dynamic code rate switching method, server and system Download PDF

Info

Publication number
WO2016091000A1
WO2016091000A1 PCT/CN2015/091470 CN2015091470W WO2016091000A1 WO 2016091000 A1 WO2016091000 A1 WO 2016091000A1 CN 2015091470 W CN2015091470 W CN 2015091470W WO 2016091000 A1 WO2016091000 A1 WO 2016091000A1
Authority
WO
WIPO (PCT)
Prior art keywords
video
download
code rate
server
rate
Prior art date
Application number
PCT/CN2015/091470
Other languages
French (fr)
Chinese (zh)
Inventor
江中央
王甜甜
Original Assignee
深圳Tcl数字技术有限公司
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 深圳Tcl数字技术有限公司 filed Critical 深圳Tcl数字技术有限公司
Publication of WO2016091000A1 publication Critical patent/WO2016091000A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments

Definitions

  • the present invention relates to the field of video playback technologies, and in particular, to a dynamic rate switching method, a server, and a system.
  • the server is the same network video program, providing a variety of bit rate video files, during the video playback process
  • the video playback terminal dynamically switches the code rate of the played video according to the real-time network bandwidth change of the user: when the user network bandwidth becomes larger, the video playback terminal selects a high-rate video fragment file on the server for playing; When the user's network bandwidth becomes small, the video playback terminal selects a low-rate video fragment file on the server to play, so as to avoid the occurrence of the jamming phenomenon caused by the data of the video playback terminal being exhausted.
  • the current mainstream rate adaptive switching technology not only requires the server to provide video fragment files of multiple code rates of the same program, but also needs a video playing terminal in the process of solving the fluctuation of the network bandwidth and causing the network video picture to be stuck.
  • adaptive dynamic rate switching can be implemented according to changes in the user's network bandwidth. For example, there are 3 different bitrates (250kbit/s) on the server. 500kbit/s, 1Mbit/s) file and mpd (media presentation Description) file. Each different rate file consists of multiple shards, one every 10s, At the same time, there is a description file mpd for the multimedia video program on the server, and the mpd file is used to describe the bit rate information and the playing time information of different fragment files.
  • the video playback terminal After the program is started, the video playback terminal first downloads the mpd file, and learns from the mpd file how many video segment files of different code rates are present in the current program, and the bit rate, segment playback length and points of each video segment file.
  • the information such as the download address and the video playback terminal respectively download corresponding video segments of different code rates according to the current download speed and the download progress. If the playback is just started, select the slice download with the minimum code rate of 0-10s clock (250kbit/s). When the slice is downloaded, Calculate the network download rate if the download rate is greater than (500kbit/s) , select the 500kbit/s slice download in 11-20s. It can be seen from the above process of rate switching that the video playing terminal needs to cooperate with the server in the whole transmission process according to its own network condition, and supports the same adaptive dynamic rate switching technology.
  • the main object of the present invention is to provide a dynamic rate switching method, server and system to solve the technical problem that the server cannot be compatible with various video playing terminals.
  • the present invention provides a dynamic rate switching method, and the method includes the following steps:
  • the server obtains a download code rate of the current video segment in which the video playback terminal selects to download the program in the server;
  • the slice header of the next video slice to be downloaded by the video play terminal and the slice end of the current video slice are spliced on the server end to generate a spliced video file for the video play terminal to progressively download and play the spliced video file.
  • the step of obtaining, by the server, a download rate of the current video segment of the video playback terminal that selects to download the program in the server includes:
  • the server obtains the initial fragment with the smallest code rate in the selected program for downloading by the video playing terminal, and obtains the code of the video playing terminal. The download rate of the initial fragment with the lowest rate.
  • the step of obtaining, by the server, a download rate of the current video segment of the video playback terminal that selects to download the program in the server includes:
  • the server obtains the download code rate of the current video segment according to the size of the current video segment in which the video playback terminal selects to download the program in the server and the time when the current video segment is downloaded.
  • the step of dynamically adjusting the code rate of the next video segment in the video playback terminal to be downloaded according to the download code rate includes:
  • a video slice is used as the next video slice to be downloaded by the video playback terminal.
  • the present invention further provides a server that dynamically switches a code rate, and the server includes:
  • An obtaining module configured to obtain a downloading code rate of a current video segment in which the video playing terminal selects to download the program in the server;
  • An adjustment module configured to dynamically adjust, according to the download code rate, a code rate of a next video segment of the video playback terminal to be downloaded in the server;
  • the splicing module is configured to splicing the slice header of the next video slice to be downloaded by the video play terminal and the slice end of the current video slice to generate a spliced video file for the video play terminal to progressively download and play the spliced video file.
  • the obtaining module is further configured to:
  • the current video fragment is an initial fragment of the program selected by the video playing terminal in the server
  • the initial fragment with the smallest code rate in the selected program is obtained for downloading by the video playing terminal, and the code rate of the video playing terminal is obtained.
  • the download rate of the smallest initial shard is obtained.
  • the obtaining module is further configured to:
  • the download code rate of the current video slice is obtained according to the size of the current video slice selected by the video play terminal in the server to download the program and the time when the current video slice is downloaded.
  • the adjustment module is further configured to:
  • a video slice is used as the next video slice to be downloaded by the video playback terminal.
  • the present invention further provides a system for dynamically switching code rates, the system comprising: a server and a video playing terminal, wherein
  • the server is configured to obtain a download rate of a current video segment of the video playback terminal that selects to download the program in the server; and dynamically adjust, according to the download code rate, a code rate of the next video segment in the server to be downloaded; Splicing the slice header of the next video slice to be downloaded by the video play terminal and the slice end of the current video slice to generate a spliced video file;
  • the video playing terminal is configured to send a download request to the server, establish a download connection with the server, and perform progressive download and play on the spliced video file generated by the server.
  • the video playing terminal is further configured to:
  • the downloaded spliced video file is decoded and played.
  • the dynamic rate switching method, server and system according to the present invention according to the download rate of the current video segment of the server selected to download the program by the video playing terminal, the server dynamically adjusts the video playing terminal to download the next video segment.
  • the code rate is spliced at the server end with the slice header of the next video segment to be downloaded by the video playback terminal and the end of the current video segment, thereby realizing the dynamic switching of the video playback terminal to download different video segmentation code rates, and the entire handover
  • the process is completed by the server, and the video playing terminal only needs to gradually download and play the file after the server is spliced, so that the same dynamic bit rate switching technology can be realized without the video playing terminal and the server supporting the same. Dynamic bit rate switching greatly improves the compatibility between the server and various video playback terminals, and can make the download and playback of the player side smoother.
  • FIG. 1 is a schematic flow chart of an embodiment of a dynamic bit rate switching method according to the present invention.
  • FIG. 2 is a schematic diagram of functional modules of an embodiment of a server for dynamically switching code rates according to the present invention
  • FIG. 3 is a schematic structural diagram of an embodiment of a system for dynamically switching code rates according to the present invention.
  • the video playing terminal may be a terminal having a video playing capability, such as a smart TV, a mobile phone, a PC, etc., and is not limited herein.
  • the invention provides a dynamic rate switching method.
  • FIG. 1 is a schematic flowchart diagram of an embodiment of a dynamic bit rate switching method according to an embodiment of the present invention.
  • the dynamic rate switching method includes:
  • Step S10 The server acquires a download code rate of a current video segment in which the video playback terminal selects to download the program in the server;
  • the server stores a plurality of slice files of different code rates of the same program, that is, the same program of each different code rate is composed of a plurality of slice files, and for one program, each The time interval corresponds to a slice file of a bit rate.
  • the server can learn from the download request that the video playing terminal selects the downloaded program in the program that the video playing terminal selects, and the server can adjust the different code rate of the program selected by the video playing terminal to download the program. Fragment file for download by video playback terminal.
  • the server can obtain the download code rate of the current video segment in which the video play terminal selects to download the program in the server.
  • the current video slice selected by the video play terminal to download the program is saved on the server, and the server can know the size thereof.
  • the server records the time when the video playback terminal starts downloading to download and completes the current video segmentation, and calculates the download code of the current video segment according to the size of the current video segment and the time required to download the current video segmentation. Rate, the download rate directly reflects the current network status and download rate of the video player.
  • Step S20 dynamically adjusting, according to the download code rate, a code rate of a video clip terminal to download a next video slice in the server;
  • the video playing terminal After obtaining the download code rate of the current video segment by the video playing terminal, dynamically adjusting the code rate of the next video segment of the video playback terminal to be downloaded according to the download code rate: according to the download rate of the current video segment
  • the playing terminal needs to download different code rates of the next video segment in the server for selection, and select a next video segment that is smaller than the download rate and the code rate closest to the download rate as the video playing terminal needs to be downloaded.
  • Next video fragmentation Since the time interval between adjacent upper and lower two slice files in a program is very short, the video play terminal can be known according to the download code rate of the current video slice selected by the video playback terminal in the server to download the program. Current network status, and the network status of the video playing terminal generally does not change greatly in a short time interval.
  • the program saved on the selection server is smaller than the download code rate and the download code rate.
  • the next fragment file of the closest code rate is used as the next video fragment to be downloaded by the video playing terminal, which can ensure that the video playing terminal downloads the next video fragment smoothly, and can fully utilize the network bandwidth of the video playing terminal. Selecting the next slice file with the highest code rate in the network state of the video play terminal as the next video slice to download, ensuring the clarity of the video downloaded by the video play terminal.
  • Step S30 splicing the slice header of the next video segment to be downloaded by the video playback terminal and the slice header of the current video segment on the server end to generate a spliced video file for the video playback terminal to progressively download and play the spliced video file.
  • the slice header of the next video segment to be downloaded by the video playing terminal and the ending of the current video segment are spliced on the server end, thereby implementing the video playing terminal. Dynamic switching of downloading different video segmentation rate.
  • the video playback terminal selects the upper and lower video segments of the adjacent time interval in the downloaded program to be spliced to generate a spliced video file, and the video playback terminal can perform progressive download and play according to the generated spliced video file, which can be played. Download and play videos more smoothly.
  • the server dynamically adjusts the code rate of the video playback terminal to download the next video segment; and downloads the video playback terminal.
  • the slice header of a video segment is spliced with the end of the current video segment, thereby implementing dynamic switching of the video playback terminal to download different video segmentation code rates, and the entire switching process is completed by the server without the participation of the video playback terminal, and the video playback terminal Simply download and play the files that are spliced by the server, so that the dynamic bit rate switching can be realized without the video player and the server supporting the same dynamic bit rate switching technology, which greatly improves the server and various video playback. Compatibility between terminals.
  • step S10 may further include:
  • the server obtains the initial fragment with the smallest code rate in the selected program for downloading by the video playing terminal, and obtains the code of the video playing terminal. The download rate of the initial fragment with the lowest rate.
  • the current video fragment is the initial fragment selected by the video playing terminal to download the program, because the server cannot know the video playing terminal according to the download rate of the previous video fragment.
  • the network status the server directly selects the initial fragment with the smallest code rate in the program for the video playback terminal to start downloading. In this way, when the network state of the video playing terminal is unknown, the smoothness of the video segment file in the download server of the video playing terminal can be ensured to the maximum extent, and after the initial segment downloading is completed, the dynamic downloading rate according to the initial segmentation is dynamically performed. Adjusting the video playback terminal needs to download the bit rate of the next video segment in the server, which is more flexible and convenient.
  • the present invention further provides a server that dynamically switches code rates.
  • FIG. 2 is a schematic diagram of functional modules of an embodiment of a server for dynamically switching code rates according to the present invention.
  • the dynamically switching code rate server comprises:
  • the obtaining module 01 is configured to obtain a download code rate of a current video segment in which the video playback terminal selects to download the program in the server;
  • the server stores a plurality of slice files of different code rates of the same program, that is, the same program of each different code rate is composed of a plurality of slice files, and for one program, each time The interval corresponds to a slice file of a bit rate.
  • the server can learn from the download request that the video playing terminal selects the downloaded program in the program that the video playing terminal selects, and the server can adjust the different code rate of the program selected by the video playing terminal to download the program. Fragment file for download by video playback terminal.
  • the server can obtain the download code rate of the current video segment in which the video play terminal selects to download the program in the server.
  • the current video slice selected by the video play terminal to download the program is saved on the server, and the server can know the size thereof.
  • the server records the time when the video playback terminal starts downloading to download and completes the current video segmentation, and calculates the download code of the current video segment according to the size of the current video segment and the time required to download the current video segmentation. Rate, the download rate directly reflects the current network status and download rate of the video player.
  • the adjusting module 02 is configured to dynamically adjust, according to the download code rate, a code rate of a next video slice in the server to be downloaded by the video playing terminal;
  • the video playing terminal After obtaining the download code rate of the current video segment by the video playing terminal, dynamically adjusting the code rate of the next video segment of the video playback terminal to be downloaded according to the download code rate: according to the download rate of the current video segment
  • the playing terminal needs to download different code rates of the next video segment in the server for selection, and select a next video segment that is smaller than the download rate and the code rate closest to the download rate as the video playing terminal needs to be downloaded.
  • Next video fragmentation Since the time interval between adjacent upper and lower two slice files in a program is very short, the video play terminal can be known according to the download code rate of the current video slice selected by the video playback terminal in the server to download the program. Current network status, and the network status of the video playing terminal generally does not change greatly in a short time interval.
  • the program saved on the selection server is smaller than the download code rate and the download code rate.
  • the next fragment file of the closest code rate is used as the next video fragment to be downloaded by the video playing terminal, which can ensure that the video playing terminal downloads the next video fragment smoothly, and can fully utilize the network bandwidth of the video playing terminal. Selecting the next slice file with the highest code rate in the network state of the video play terminal as the next video slice to download, ensuring the clarity of the video downloaded by the video play terminal.
  • the splicing module 03 is configured to splicing the slice header of the next video segment to be downloaded by the video playback terminal and the end of the current video segment to generate a spliced video file for the video playback terminal to progressively download and play the spliced video file.
  • the slice header of the next video segment to be downloaded by the video playing terminal is spliced with the ending of the current video segment, thereby implementing different downloading of the video playing terminal. Dynamic switching of video slice rate.
  • the video playback terminal selects the upper and lower video segments of the adjacent time interval in the downloaded program to be spliced to generate a spliced video file, and the video playback terminal can perform progressive download and play according to the generated spliced video file, which can be played. Download and play videos more smoothly.
  • the server dynamically adjusts the code rate of the video playback terminal to download the next video segment; and downloads the video playback terminal.
  • the slice header of a video segment is spliced with the end of the current video segment, thereby implementing dynamic switching of the video playback terminal to download different video segmentation code rates, and the entire switching process is completed by the server without the participation of the video playback terminal, and the video playback terminal Simply download and play the files that are spliced by the server, so that the dynamic bit rate switching can be realized without the video player and the server supporting the same dynamic bit rate switching technology, which greatly improves the server and various video playback. Compatibility between terminals.
  • the obtaining module 01 may be further configured to:
  • the current video fragment is an initial fragment of the program selected by the video playing terminal in the server
  • the initial fragment with the smallest code rate in the selected program is obtained for downloading by the video playing terminal, and the code rate of the video playing terminal is obtained.
  • the download rate of the smallest initial shard is obtained.
  • the current video fragment is the initial fragment selected by the video playing terminal to download the program, because the server cannot know the video playing terminal according to the download rate of the previous video fragment.
  • the network status the server directly selects the initial fragment with the smallest code rate in the program for the video playback terminal to start downloading. In this way, when the network state of the video playing terminal is unknown, the smoothness of the video segment file in the download server of the video playing terminal can be ensured to the maximum extent, and after the initial segment downloading is completed, the dynamic downloading rate according to the initial segmentation is dynamically performed. Adjusting the video playback terminal needs to download the bit rate of the next video segment in the server, which is more flexible and convenient.
  • the present invention further provides a system for dynamically switching code rates.
  • FIG. 3 is a schematic structural diagram of a system for dynamically switching code rates according to an embodiment of the present invention.
  • the system for dynamically switching code rates includes: a server 1 and a video playing terminal 2, wherein
  • the server 1 is configured to obtain a download code rate of the current video slice that the video play terminal 2 selects to download the program in the server 1; dynamically adjust the video play terminal 2 to download the next video slice in the server 1 according to the download code rate. a code rate; splicing the slice header of the next video slice to be downloaded by the video playback terminal 2 and the end of the current video slice to generate a spliced video file;
  • the video playing terminal 2 is configured to send a download request to the server 1, establish a download connection with the server 1, and progressively download and play the stitched video file generated by the server 1.
  • the video playing terminal 2 sends a download request to the server 1, and after receiving the download request, the video playing terminal 2 establishes a download connection with the server 1, and starts to download the program that is selected for downloading in the server 1 in sequence.
  • the video segmentation file in the downloading process, the server 1 dynamically switches the code rate of the video playback terminal 2 to download different video segments according to the network state of the video playback terminal 2, and the next video to be downloaded by the video playback terminal 2
  • the slice header is spliced with the end of the current video segment to generate a spliced video file, and the process of the dynamic bit rate switching by the server 1 is as described above, and details are not described herein again.
  • the video playing terminal 2 After the spliced video file is generated on the server 1, the video playing terminal 2 progressively downloads and plays the generated spliced video file, wherein progressive downloading (Progressive) Download) is a simple way to download files from server 1.
  • progressive downloading Progressive Download
  • the server 1 sequentially splices the upper and lower video segments of the adjacent time interval in the program selected by the video playing terminal 2 to generate a spliced video file, and the video playing terminal 2 can The generated spliced video file is downloaded, and the downloaded spliced video file can also be decoded and played. Since most media players and platforms support progressive downloading, most video playing terminals 2 can progressively download and play the stitched video files generated by the server 1, without the video playing terminal 2 supporting the same as the server 1.
  • the dynamic bit rate switching technology improves the compatibility of the video playing terminal 2.
  • the server 1 dynamically adjusts the code rate of the video playback terminal 2 to download the next video segment; and the video playback terminal 2
  • the slice header of the next video segment to be downloaded is spliced with the end of the current video segment, thereby realizing the dynamic switching of the video playback terminal 2 to download different video segmentation code rates, and the entire switching process is completed by the server 1, without video playback.
  • the terminal 2 participates, and the video playing terminal 2 only needs to progressively download and play the file spliced by the server 1, so that the dynamic bit rate switching can be realized without the video playing terminal 2 and the server 1 supporting the same dynamic bit rate switching technology.
  • the compatibility between the server 1 and various video playing terminals 2 is greatly improved.
  • the technical solution of the present invention which is essential or contributes to the prior art, may be embodied in the form of a software product stored in a storage medium (such as ROM/RAM, disk,
  • a storage medium such as ROM/RAM, disk,
  • the optical disc includes a number of instructions for causing a terminal device (which may be a cell phone, a computer, a server, or a network device, etc.) to perform the methods described in various embodiments of the present invention.

Landscapes

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

Abstract

Disclosed is a dynamic code rate switching method, comprising the following steps: a server acquires a downloading code rate of a current video fragment of a program in a server selected to download by a video playing terminal; according to the downloading code rate, dynamically adjusting the code rate of the next video fragment in the server required to download by the video playing terminal; and splicing the beginning of the next video fragment required to download by the video playing terminal and the tail of the current video fragment at the server, and generating a spliced video file for the video playing terminal to download progressively and play. Also disclosed are a server and system for dynamic code rate switching. The present invention can dynamically switch the code rate without requiring the video playing terminal and the server supporting the same dynamic code rate switching technique, thus greatly improving the compatibility between the server and various video playing terminals.

Description

动态码率切换方法、服务器及系统  Dynamic bit rate switching method, server and system
技术领域Technical field
本发明涉及视频播放技术领域,尤其涉及一种动态码率切换方法、服务器及系统。The present invention relates to the field of video playback technologies, and in particular, to a dynamic rate switching method, a server, and a system.
背景技术Background technique
随着互联网和多媒体技术的发展,通过智能电视、手机、PC等视频播放终端从互联网上获取视频内容已经成为极受欢迎的娱乐方式。但由于从互联网上获取视频的过程中不是通过专线网络而是通过公网进行数据传输,因此,网络传输速率无法得到保证。当出现网络抖动、网络时延波动比较大等导致网络性能恶化的情况发生时,用户通过视频播放终端收看网络视频中可能需要不停地进行缓冲,导致视频画面不断出现卡顿,极大地影响了用户的收看体验。With the development of the Internet and multimedia technologies, it has become a very popular entertainment method to obtain video content from the Internet through video playback terminals such as smart TVs, mobile phones, and PCs. However, since the video is transmitted from the Internet not through the private network but through the public network, the network transmission rate cannot be guaranteed. When network jitter occurs due to network jitter and network delay fluctuations, users may need to constantly buffer the video through the video playback terminal, which causes the video screen to appear stuck, which greatly affects the video. User's viewing experience.
目前,为了解决网络带宽的波动导致网络视频画面卡顿的问题,一般是通过HLS、smooth streaming、mpeg-dash、HDS等几种主流的自适应动态码率切换技术来解决,其解决方式如下:服务器为同一个网络视频节目,提供多种码率的视频文件,在视频播放过程中,视频播放终端根据用户实时的网络带宽变化,动态自适应的切换所播放视频的码率:当用户网络带宽变大时,视频播放终端选择服务器上高码率的视频分片文件来进行播放;当用户的网络带宽变小时,视频播放终端选择服务器上低码率的视频分片文件进行播放,以避免视频播放终端的数据耗尽导致卡顿现象的发生。但是上述解决方式中还存在以下问题:At present, in order to solve the problem of network bandwidth fluctuation caused by network video picture, it is generally through HLS, smooth Streaming, mpeg-dash, HDS and other mainstream adaptive dynamic rate switching technology to solve, the solution is as follows: the server is the same network video program, providing a variety of bit rate video files, during the video playback process, The video playback terminal dynamically switches the code rate of the played video according to the real-time network bandwidth change of the user: when the user network bandwidth becomes larger, the video playback terminal selects a high-rate video fragment file on the server for playing; When the user's network bandwidth becomes small, the video playback terminal selects a low-rate video fragment file on the server to play, so as to avoid the occurrence of the jamming phenomenon caused by the data of the video playback terminal being exhausted. However, the following problems exist in the above solutions:
1、当前主流的码率自适应切换技术在解决网络带宽的波动导致网络视频画面卡顿的过程中,不仅需要服务器提供同一节目的多种码率的视频分片文件,而且需要视频播放终端进行配合,才能根据用户的网络带宽变化,实现自适应的动态码率切换。例如,在服务器上存在3种不同的码率(250kbit/s, 500kbit/s, 1Mbit/s)文件及mpd(media presentation description)文件。每种不同的码率文件由多个分片组成,每隔10s钟一个分片, 同时服务器上存在一个针对多媒体视频节目的描述文件mpd,mpd文件用来描述不同分片文件的码率信息及播放时间信息。当节目播放启动后,视频播放终端首先下载mpd文件,从mpd文件中获知当前节目有多少路不同码率的视频分片文件,以及每一路视频分片文件的码率、分片播放长度及分片下载地址等信息,视频播放终端根据当前的下载速度及下载进度,分别下载不同码率的对应视频分片。如播放刚启动的时候,选择0-10s钟最小码率(250kbit/s)的分片下载,当该分片下载完后, 计算网络下载速率,若下载速率大于(500kbit/s) ,则选择11-20s中的500kbit/s的分片下载。从上述码率切换的流程可以看出,需要视频播放终端根据自身网络状况在整个传输过程中与服务器相配合,并支持相同的自适应动态码率切换技术。1. The current mainstream rate adaptive switching technology not only requires the server to provide video fragment files of multiple code rates of the same program, but also needs a video playing terminal in the process of solving the fluctuation of the network bandwidth and causing the network video picture to be stuck. In cooperation, adaptive dynamic rate switching can be implemented according to changes in the user's network bandwidth. For example, there are 3 different bitrates (250kbit/s) on the server. 500kbit/s, 1Mbit/s) file and mpd (media presentation Description) file. Each different rate file consists of multiple shards, one every 10s, At the same time, there is a description file mpd for the multimedia video program on the server, and the mpd file is used to describe the bit rate information and the playing time information of different fragment files. After the program is started, the video playback terminal first downloads the mpd file, and learns from the mpd file how many video segment files of different code rates are present in the current program, and the bit rate, segment playback length and points of each video segment file. The information such as the download address and the video playback terminal respectively download corresponding video segments of different code rates according to the current download speed and the download progress. If the playback is just started, select the slice download with the minimum code rate of 0-10s clock (250kbit/s). When the slice is downloaded, Calculate the network download rate if the download rate is greater than (500kbit/s) , select the 500kbit/s slice download in 11-20s. It can be seen from the above process of rate switching that the video playing terminal needs to cooperate with the server in the whole transmission process according to its own network condition, and supports the same adaptive dynamic rate switching technology.
2、目前,对视频播放终端而言,很少有视频播放终端的播放器能同时支持多种主流的自适应动态码率切换技术。即并不是所有的智能电视、手机等视频播放终端都支持HLS、smooth streaming、mpeg-dash、HDS等自适应动态码率切换技术,而当视频播放终端和服务器支持的自适应动态码率切换技术不一致时,视频播放终端则无法播放服务器上提供的视频节目。由上述可知,当前的自适应动态码率切换技术不能很好地解决服务器和各种视频播放终端之间的兼容性问题,当视频播放终端无法支持服务器所支持的自适应动态码率切换技术时,可能导致视频节目无法播放或者无法实现码率自适应的切换,影响视频播放。2. At present, for video playback terminals, few players of video playback terminals can simultaneously support multiple mainstream adaptive dynamic rate switching technologies. That is, not all video broadcast terminals such as smart TVs and mobile phones support HLS and smooth. Adaptive dynamic rate switching technology such as streaming, mpeg-dash, HDS, etc., and when the video playback terminal and the server support the adaptive dynamic rate switching technology are inconsistent, the video playing terminal cannot play the video program provided on the server. It can be seen from the above that the current adaptive dynamic rate switching technology cannot solve the compatibility problem between the server and various video playing terminals well, and the video playing terminal cannot support the adaptive dynamic rate switching technology supported by the server. It may cause the video program to be unable to play or the code rate adaptive switching cannot be achieved, which may affect the video playback.
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。The above content is only used to assist in understanding the technical solutions of the present invention, and does not constitute an admission that the above is prior art.
发明内容Summary of the invention
本发明的主要目的在于提出一种动态码率切换方法、服务器及系统,以解决服务器无法和各种视频播放终端之间相兼容的技术问题。The main object of the present invention is to provide a dynamic rate switching method, server and system to solve the technical problem that the server cannot be compatible with various video playing terminals.
为实现上述目的,本发明提供的一种动态码率切换方法,所述方法包括以下步骤:To achieve the above objective, the present invention provides a dynamic rate switching method, and the method includes the following steps:
服务器获取视频播放终端在服务器中选择下载节目的当前视频分片的下载码率;The server obtains a download code rate of the current video segment in which the video playback terminal selects to download the program in the server;
根据所述下载码率动态调整视频播放终端需下载服务器中下一视频分片的码率;Dynamically adjusting a code rate of the next video segment in the server to be downloaded by the video playing terminal according to the download code rate;
将视频播放终端需下载的下一视频分片的片头与当前视频分片的片尾在服务器端进行拼接,生成拼接视频文件,以供视频播放终端渐进式下载并播放所述拼接视频文件。The slice header of the next video slice to be downloaded by the video play terminal and the slice end of the current video slice are spliced on the server end to generate a spliced video file for the video play terminal to progressively download and play the spliced video file.
优选地,所述服务器获取视频播放终端在服务器中选择下载节目的当前视频分片的下载码率的步骤包括:Preferably, the step of obtaining, by the server, a download rate of the current video segment of the video playback terminal that selects to download the program in the server includes:
若当前视频分片为视频播放终端在服务器中选择下载的节目的初始分片,则服务器获取选择下载的节目中码率最小的初始分片,供视频播放终端下载,并获取视频播放终端对码率最小的初始分片的下载码率。If the current video fragment is the initial fragment of the program selected by the video playing terminal in the server, the server obtains the initial fragment with the smallest code rate in the selected program for downloading by the video playing terminal, and obtains the code of the video playing terminal. The download rate of the initial fragment with the lowest rate.
优选地,所述服务器获取视频播放终端在服务器中选择下载节目的当前视频分片的下载码率的步骤包括:Preferably, the step of obtaining, by the server, a download rate of the current video segment of the video playback terminal that selects to download the program in the server includes:
服务器根据视频播放终端在服务器中选择下载节目的当前视频分片的大小及下载当前视频分片的时间获取当前视频分片的下载码率。The server obtains the download code rate of the current video segment according to the size of the current video segment in which the video playback terminal selects to download the program in the server and the time when the current video segment is downloaded.
优选地,所述根据所述下载码率动态调整视频播放终端需下载服务器中下一视频分片的码率的步骤包括:Preferably, the step of dynamically adjusting the code rate of the next video segment in the video playback terminal to be downloaded according to the download code rate includes:
根据当前视频分片的下载码率对视频播放终端需下载服务器中下一视频分片的不同码率进行选择,选择小于所述下载码率且与所述下载码率最接近的码率的下一视频分片作为视频播放终端需下载的下一视频分片。Selecting, according to a download rate of the current video segment, a different code rate of the next video segment of the video playback terminal to be downloaded, selecting a code rate that is smaller than the download code rate and closest to the download code rate. A video slice is used as the next video slice to be downloaded by the video playback terminal.
此外,为实现上述目的,本发明还提供一种动态切换码率的服务器,所述服务器包括:In addition, in order to achieve the above object, the present invention further provides a server that dynamically switches a code rate, and the server includes:
获取模块,用于获取视频播放终端在服务器中选择下载节目的当前视频分片的下载码率;An obtaining module, configured to obtain a downloading code rate of a current video segment in which the video playing terminal selects to download the program in the server;
调整模块,用于根据所述下载码率动态调整视频播放终端需下载服务器中下一视频分片的码率;An adjustment module, configured to dynamically adjust, according to the download code rate, a code rate of a next video segment of the video playback terminal to be downloaded in the server;
拼接模块,用于将视频播放终端需下载的下一视频分片的片头与当前视频分片的片尾进行拼接,生成拼接视频文件,以供视频播放终端渐进式下载并播放所述拼接视频文件。The splicing module is configured to splicing the slice header of the next video slice to be downloaded by the video play terminal and the slice end of the current video slice to generate a spliced video file for the video play terminal to progressively download and play the spliced video file.
优选地,所述获取模块还用于:Preferably, the obtaining module is further configured to:
若当前视频分片为视频播放终端在服务器中选择下载的节目的初始分片,则获取选择下载的节目中码率最小的初始分片,供视频播放终端下载,并获取视频播放终端对码率最小的初始分片的下载码率。If the current video fragment is an initial fragment of the program selected by the video playing terminal in the server, the initial fragment with the smallest code rate in the selected program is obtained for downloading by the video playing terminal, and the code rate of the video playing terminal is obtained. The download rate of the smallest initial shard.
优选地,所述获取模块还用于:Preferably, the obtaining module is further configured to:
根据视频播放终端在服务器中选择下载节目的当前视频分片的大小及下载当前视频分片的时间获取当前视频分片的下载码率。The download code rate of the current video slice is obtained according to the size of the current video slice selected by the video play terminal in the server to download the program and the time when the current video slice is downloaded.
优选地,所述调整模块还用于:Preferably, the adjustment module is further configured to:
根据当前视频分片的下载码率对视频播放终端需下载服务器中下一视频分片的不同码率进行选择,选择小于所述下载码率且与所述下载码率最接近的码率的下一视频分片作为视频播放终端需下载的下一视频分片。Selecting, according to a download rate of the current video segment, a different code rate of the next video segment of the video playback terminal to be downloaded, selecting a code rate that is smaller than the download code rate and closest to the download code rate. A video slice is used as the next video slice to be downloaded by the video playback terminal.
本发明又提供一种动态切换码率的系统,所述系统包括:服务器及视频播放终端,其中,The present invention further provides a system for dynamically switching code rates, the system comprising: a server and a video playing terminal, wherein
所述服务器,用于获取视频播放终端在服务器中选择下载节目的当前视频分片的下载码率;根据所述下载码率动态调整视频播放终端需下载服务器中下一视频分片的码率;将视频播放终端需下载的下一视频分片的片头与当前视频分片的片尾进行拼接,生成拼接视频文件;The server is configured to obtain a download rate of a current video segment of the video playback terminal that selects to download the program in the server; and dynamically adjust, according to the download code rate, a code rate of the next video segment in the server to be downloaded; Splicing the slice header of the next video slice to be downloaded by the video play terminal and the slice end of the current video slice to generate a spliced video file;
所述视频播放终端,用于向服务器发送下载请求,与服务器建立下载连接,对服务器生成的拼接视频文件进行渐进式下载并播放。The video playing terminal is configured to send a download request to the server, establish a download connection with the server, and perform progressive download and play on the spliced video file generated by the server.
优选地,所述视频播放终端还用于:Preferably, the video playing terminal is further configured to:
对下载的拼接视频文件进行解码播放。The downloaded spliced video file is decoded and played.
本发明提出的一种动态码率切换方法、服务器及系统,根据视频播放终端对服务器中选择下载节目的当前视频分片的下载码率,服务器动态调整视频播放终端需下载下一视频分片的码率;并在服务器端将视频播放终端需下载的下一视频分片的片头与当前视频分片的片尾进行拼接,从而实现视频播放终端对下载不同视频分片码率的动态切换,整个切换过程由服务器来完成,无需视频播放终端参与,视频播放终端只需对服务器拼接后的文件进行渐进式下载并播放,这样,无需视频播放终端和服务器支持相同的动态码率切换技术,即可实现动态码率切换,极大地提升了服务器和各种视频播放终端之间的兼容性,并且可以使得播放器端的下载和播放更加流畅。The dynamic rate switching method, server and system according to the present invention, according to the download rate of the current video segment of the server selected to download the program by the video playing terminal, the server dynamically adjusts the video playing terminal to download the next video segment. The code rate is spliced at the server end with the slice header of the next video segment to be downloaded by the video playback terminal and the end of the current video segment, thereby realizing the dynamic switching of the video playback terminal to download different video segmentation code rates, and the entire handover The process is completed by the server, and the video playing terminal only needs to gradually download and play the file after the server is spliced, so that the same dynamic bit rate switching technology can be realized without the video playing terminal and the server supporting the same. Dynamic bit rate switching greatly improves the compatibility between the server and various video playback terminals, and can make the download and playback of the player side smoother.
附图说明DRAWINGS
图1为本发明动态码率切换方法一实施例的流程示意图;1 is a schematic flow chart of an embodiment of a dynamic bit rate switching method according to the present invention;
图2为本发明动态切换码率的服务器一实施例的功能模块示意图;2 is a schematic diagram of functional modules of an embodiment of a server for dynamically switching code rates according to the present invention;
图3为本发明动态切换码率的系统一实施例的结构示意图。FIG. 3 is a schematic structural diagram of an embodiment of a system for dynamically switching code rates according to the present invention.
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。The implementation, functional features, and advantages of the present invention will be further described in conjunction with the embodiments.
具体实施方式detailed description
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。It is understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
需要说明的是,本发明实施例中,视频播放终端可以是各种具有视频播放能力的终端,如智能电视、手机、PC等,在此,不作限定。It should be noted that, in the embodiment of the present invention, the video playing terminal may be a terminal having a video playing capability, such as a smart TV, a mobile phone, a PC, etc., and is not limited herein.
本发明提供一种动态码率切换方法。The invention provides a dynamic rate switching method.
参照图1,图1为本发明动态码率切换方法一实施例的流程示意图。Referring to FIG. 1, FIG. 1 is a schematic flowchart diagram of an embodiment of a dynamic bit rate switching method according to an embodiment of the present invention.
在一实施例中,该动态码率切换方法包括:In an embodiment, the dynamic rate switching method includes:
步骤S10,服务器获取视频播放终端在服务器中选择下载节目的当前视频分片的下载码率;Step S10: The server acquires a download code rate of a current video segment in which the video playback terminal selects to download the program in the server;
本实施例中,服务器上保存有同一节目的多种不同码率的分片文件,即每种不同的码率的同一个节目由多个分片文件组成,而对于一个节目来说,每个时间间隔对应一个码率的分片文件。视频播放终端向服务器发送下载请求后,服务器从该下载请求中可以获知视频播放终端在其保存的节目中选择下载的节目,服务器可调取视频播放终端选择下载的节目的多种不同码率的分片文件,供视频播放终端下载。同时,服务器可获取视频播放终端在服务器中选择下载节目的当前视频分片的下载码率,具体地,视频播放终端选择下载节目的当前视频分片是保存在服务器上的,服务器可获知其大小信息,服务器记录视频播放终端从开始下载到下载完成当前视频分片的时间,根据当前视频分片的大小及记录的下载当前视频分片所需的时间即可计算获取当前视频分片的下载码率,该下载码率直接反映了视频播放终端当前的网络状态及下载速率。In this embodiment, the server stores a plurality of slice files of different code rates of the same program, that is, the same program of each different code rate is composed of a plurality of slice files, and for one program, each The time interval corresponds to a slice file of a bit rate. After the video playing terminal sends a download request to the server, the server can learn from the download request that the video playing terminal selects the downloaded program in the program that the video playing terminal selects, and the server can adjust the different code rate of the program selected by the video playing terminal to download the program. Fragment file for download by video playback terminal. At the same time, the server can obtain the download code rate of the current video segment in which the video play terminal selects to download the program in the server. Specifically, the current video slice selected by the video play terminal to download the program is saved on the server, and the server can know the size thereof. Information, the server records the time when the video playback terminal starts downloading to download and completes the current video segmentation, and calculates the download code of the current video segment according to the size of the current video segment and the time required to download the current video segmentation. Rate, the download rate directly reflects the current network status and download rate of the video player.
步骤S20,根据所述下载码率动态调整视频播放终端需下载服务器中下一视频分片的码率;Step S20, dynamically adjusting, according to the download code rate, a code rate of a video clip terminal to download a next video slice in the server;
获取视频播放终端对当前视频分片的下载码率后,根据所述下载码率动态调整视频播放终端需下载服务器中下一视频分片的码率:根据当前视频分片的下载码率对视频播放终端需下载服务器中下一视频分片的不同码率进行选择,选择小于所述下载码率且与所述下载码率最接近的码率的下一视频分片作为视频播放终端需下载的下一视频分片。由于一个节目中相邻的上、下两个分片文件之间的时间间隔很短,因此,根据视频播放终端在服务器中选择下载节目的当前视频分片的下载码率即可获知视频播放终端当前的网络状态,且在很短的时间间隔内视频播放终端的网络状态一般不会产生大的变化,因此,选择服务器上保存的该节目中小于所述下载码率且与所述下载码率最接近的码率的下一分片文件作为视频播放终端需下载的下一视频分片,既能保证视频播放终端对下一视频分片的下载流畅,又能充分利用视频播放终端的网络带宽,选择视频播放终端的网络状态下码率最大的下一分片文件作为下一视频分片进行下载,保证了视频播放终端下载的视频的清晰度。After obtaining the download code rate of the current video segment by the video playing terminal, dynamically adjusting the code rate of the next video segment of the video playback terminal to be downloaded according to the download code rate: according to the download rate of the current video segment The playing terminal needs to download different code rates of the next video segment in the server for selection, and select a next video segment that is smaller than the download rate and the code rate closest to the download rate as the video playing terminal needs to be downloaded. Next video fragmentation. Since the time interval between adjacent upper and lower two slice files in a program is very short, the video play terminal can be known according to the download code rate of the current video slice selected by the video playback terminal in the server to download the program. Current network status, and the network status of the video playing terminal generally does not change greatly in a short time interval. Therefore, the program saved on the selection server is smaller than the download code rate and the download code rate. The next fragment file of the closest code rate is used as the next video fragment to be downloaded by the video playing terminal, which can ensure that the video playing terminal downloads the next video fragment smoothly, and can fully utilize the network bandwidth of the video playing terminal. Selecting the next slice file with the highest code rate in the network state of the video play terminal as the next video slice to download, ensuring the clarity of the video downloaded by the video play terminal.
步骤S30,将视频播放终端需下载的下一视频分片的片头与当前视频分片的片尾在服务器端进行拼接,生成拼接视频文件,以供视频播放终端渐进式下载并播放所述拼接视频文件。Step S30: splicing the slice header of the next video segment to be downloaded by the video playback terminal and the slice header of the current video segment on the server end to generate a spliced video file for the video playback terminal to progressively download and play the spliced video file. .
选出视频播放终端需下载的码率的下一视频分片后,将视频播放终端需下载的下一视频分片的片头与当前视频分片的片尾在服务器端进行拼接,从而实现视频播放终端对下载不同视频分片码率的动态切换。依次将视频播放终端选择下载的节目中相邻时间间隔的上、下视频分片进行拼接,生成拼接视频文件,视频播放终端即可根据生成的拼接视频文件进行渐进式下载并播放,可以使得播放器端下载和播放视频更加流畅。After the next video segment of the code rate to be downloaded by the video playing terminal is selected, the slice header of the next video segment to be downloaded by the video playing terminal and the ending of the current video segment are spliced on the server end, thereby implementing the video playing terminal. Dynamic switching of downloading different video segmentation rate. The video playback terminal selects the upper and lower video segments of the adjacent time interval in the downloaded program to be spliced to generate a spliced video file, and the video playback terminal can perform progressive download and play according to the generated spliced video file, which can be played. Download and play videos more smoothly.
本实施例中根据视频播放终端对服务器中选择下载节目的当前视频分片的下载码率,服务器动态调整视频播放终端需下载下一视频分片的码率;并将视频播放终端需下载的下一视频分片的片头与当前视频分片的片尾进行拼接,从而实现视频播放终端对下载不同视频分片码率的动态切换,整个切换过程由服务器来完成,无需视频播放终端参与,视频播放终端只需对服务器拼接后的文件进行渐进式下载并播放,这样,无需视频播放终端和服务器支持相同的动态码率切换技术,即可实现动态码率切换,极大地提升了服务器和各种视频播放终端之间的兼容性。In this embodiment, according to the download rate of the current video segment selected by the video playback terminal for downloading the program in the server, the server dynamically adjusts the code rate of the video playback terminal to download the next video segment; and downloads the video playback terminal. The slice header of a video segment is spliced with the end of the current video segment, thereby implementing dynamic switching of the video playback terminal to download different video segmentation code rates, and the entire switching process is completed by the server without the participation of the video playback terminal, and the video playback terminal Simply download and play the files that are spliced by the server, so that the dynamic bit rate switching can be realized without the video player and the server supporting the same dynamic bit rate switching technology, which greatly improves the server and various video playback. Compatibility between terminals.
在其他实施例中,上述步骤S10还可以包括:In other embodiments, the foregoing step S10 may further include:
若当前视频分片为视频播放终端在服务器中选择下载的节目的初始分片,则服务器获取选择下载的节目中码率最小的初始分片,供视频播放终端下载,并获取视频播放终端对码率最小的初始分片的下载码率。If the current video fragment is the initial fragment of the program selected by the video playing terminal in the server, the server obtains the initial fragment with the smallest code rate in the selected program for downloading by the video playing terminal, and obtains the code of the video playing terminal. The download rate of the initial fragment with the lowest rate.
若视频播放终端在服务器中开始启动下载,则当前视频分片为视频播放终端选择下载的节目中的初始分片,由于此时服务器无法根据其上一视频分片的下载码率获知视频播放终端的网络状态,则服务器直接选择该节目中码率最小的初始分片供视频播放终端开启下载。这样,能在视频播放终端的网络状态未知时,最大限度的保证视频播放终端下载服务器中视频分片文件的流畅性,待初始分片下载完成后,再根据初始分片的下载码率来动态调整视频播放终端需下载服务器中下一视频分片的码率,更加灵活、方便。If the video playing terminal starts to start downloading in the server, the current video fragment is the initial fragment selected by the video playing terminal to download the program, because the server cannot know the video playing terminal according to the download rate of the previous video fragment. The network status, the server directly selects the initial fragment with the smallest code rate in the program for the video playback terminal to start downloading. In this way, when the network state of the video playing terminal is unknown, the smoothness of the video segment file in the download server of the video playing terminal can be ensured to the maximum extent, and after the initial segment downloading is completed, the dynamic downloading rate according to the initial segmentation is dynamically performed. Adjusting the video playback terminal needs to download the bit rate of the next video segment in the server, which is more flexible and convenient.
本发明进一步提供一种动态切换码率的服务器。The present invention further provides a server that dynamically switches code rates.
参照图2,图2为本发明动态切换码率的服务器一实施例的功能模块示意图。Referring to FIG. 2, FIG. 2 is a schematic diagram of functional modules of an embodiment of a server for dynamically switching code rates according to the present invention.
在一实施例中,该动态切换码率的服务器包括:In an embodiment, the dynamically switching code rate server comprises:
获取模块01,用于获取视频播放终端在服务器中选择下载节目的当前视频分片的下载码率;The obtaining module 01 is configured to obtain a download code rate of a current video segment in which the video playback terminal selects to download the program in the server;
本实施例中,服务器上保存有同一节目的多种不同码率的分片文件,即每种不同的码率的同一节目由多个分片文件组成,而对于一个节目来说,每个时间间隔对应一个码率的分片文件。视频播放终端向服务器发送下载请求后,服务器从该下载请求中可以获知视频播放终端在其保存的节目中选择下载的节目,服务器可调取视频播放终端选择下载的节目的多种不同码率的分片文件,供视频播放终端下载。同时,服务器可获取视频播放终端在服务器中选择下载节目的当前视频分片的下载码率,具体地,视频播放终端选择下载节目的当前视频分片是保存在服务器上的,服务器可获知其大小信息,服务器记录视频播放终端从开始下载到下载完成当前视频分片的时间,根据当前视频分片的大小及记录的下载当前视频分片所需的时间即可计算获取当前视频分片的下载码率,该下载码率直接反映了视频播放终端当前的网络状态及下载速率。In this embodiment, the server stores a plurality of slice files of different code rates of the same program, that is, the same program of each different code rate is composed of a plurality of slice files, and for one program, each time The interval corresponds to a slice file of a bit rate. After the video playing terminal sends a download request to the server, the server can learn from the download request that the video playing terminal selects the downloaded program in the program that the video playing terminal selects, and the server can adjust the different code rate of the program selected by the video playing terminal to download the program. Fragment file for download by video playback terminal. At the same time, the server can obtain the download code rate of the current video segment in which the video play terminal selects to download the program in the server. Specifically, the current video slice selected by the video play terminal to download the program is saved on the server, and the server can know the size thereof. Information, the server records the time when the video playback terminal starts downloading to download and completes the current video segmentation, and calculates the download code of the current video segment according to the size of the current video segment and the time required to download the current video segmentation. Rate, the download rate directly reflects the current network status and download rate of the video player.
调整模块02,用于根据所述下载码率动态调整视频播放终端需下载服务器中下一视频分片的码率;The adjusting module 02 is configured to dynamically adjust, according to the download code rate, a code rate of a next video slice in the server to be downloaded by the video playing terminal;
获取视频播放终端对当前视频分片的下载码率后,根据所述下载码率动态调整视频播放终端需下载服务器中下一视频分片的码率:根据当前视频分片的下载码率对视频播放终端需下载服务器中下一视频分片的不同码率进行选择,选择小于所述下载码率且与所述下载码率最接近的码率的下一视频分片作为视频播放终端需下载的下一视频分片。由于一个节目中相邻的上、下两个分片文件之间的时间间隔很短,因此,根据视频播放终端在服务器中选择下载节目的当前视频分片的下载码率即可获知视频播放终端当前的网络状态,且在很短的时间间隔内视频播放终端的网络状态一般不会产生大的变化,因此,选择服务器上保存的该节目中小于所述下载码率且与所述下载码率最接近的码率的下一分片文件作为视频播放终端需下载的下一视频分片,既能保证视频播放终端对下一视频分片的下载流畅,又能充分利用视频播放终端的网络带宽,选择视频播放终端的网络状态下码率最大的下一分片文件作为下一视频分片进行下载,保证了视频播放终端下载的视频的清晰度。After obtaining the download code rate of the current video segment by the video playing terminal, dynamically adjusting the code rate of the next video segment of the video playback terminal to be downloaded according to the download code rate: according to the download rate of the current video segment The playing terminal needs to download different code rates of the next video segment in the server for selection, and select a next video segment that is smaller than the download rate and the code rate closest to the download rate as the video playing terminal needs to be downloaded. Next video fragmentation. Since the time interval between adjacent upper and lower two slice files in a program is very short, the video play terminal can be known according to the download code rate of the current video slice selected by the video playback terminal in the server to download the program. Current network status, and the network status of the video playing terminal generally does not change greatly in a short time interval. Therefore, the program saved on the selection server is smaller than the download code rate and the download code rate. The next fragment file of the closest code rate is used as the next video fragment to be downloaded by the video playing terminal, which can ensure that the video playing terminal downloads the next video fragment smoothly, and can fully utilize the network bandwidth of the video playing terminal. Selecting the next slice file with the highest code rate in the network state of the video play terminal as the next video slice to download, ensuring the clarity of the video downloaded by the video play terminal.
拼接模块03,用于将视频播放终端需下载的下一视频分片的片头与当前视频分片的片尾进行拼接,生成拼接视频文件,以供视频播放终端渐进式下载并播放所述拼接视频文件。The splicing module 03 is configured to splicing the slice header of the next video segment to be downloaded by the video playback terminal and the end of the current video segment to generate a spliced video file for the video playback terminal to progressively download and play the spliced video file. .
选出视频播放终端需下载的码率的下一视频分片后,将视频播放终端需下载的下一视频分片的片头与当前视频分片的片尾进行拼接,从而实现视频播放终端对下载不同视频分片码率的动态切换。依次将视频播放终端选择下载的节目中相邻时间间隔的上、下视频分片进行拼接,生成拼接视频文件,视频播放终端即可根据生成的拼接视频文件进行渐进式下载并播放,可以使得播放器端下载和播放视频更加流畅。After the next video segment of the code rate to be downloaded by the video playing terminal is selected, the slice header of the next video segment to be downloaded by the video playing terminal is spliced with the ending of the current video segment, thereby implementing different downloading of the video playing terminal. Dynamic switching of video slice rate. The video playback terminal selects the upper and lower video segments of the adjacent time interval in the downloaded program to be spliced to generate a spliced video file, and the video playback terminal can perform progressive download and play according to the generated spliced video file, which can be played. Download and play videos more smoothly.
本实施例中根据视频播放终端对服务器中选择下载节目的当前视频分片的下载码率,服务器动态调整视频播放终端需下载下一视频分片的码率;并将视频播放终端需下载的下一视频分片的片头与当前视频分片的片尾进行拼接,从而实现视频播放终端对下载不同视频分片码率的动态切换,整个切换过程由服务器来完成,无需视频播放终端参与,视频播放终端只需对服务器拼接后的文件进行渐进式下载并播放,这样,无需视频播放终端和服务器支持相同的动态码率切换技术,即可实现动态码率切换,极大地提升了服务器和各种视频播放终端之间的兼容性。In this embodiment, according to the download rate of the current video segment selected by the video playback terminal for downloading the program in the server, the server dynamically adjusts the code rate of the video playback terminal to download the next video segment; and downloads the video playback terminal. The slice header of a video segment is spliced with the end of the current video segment, thereby implementing dynamic switching of the video playback terminal to download different video segmentation code rates, and the entire switching process is completed by the server without the participation of the video playback terminal, and the video playback terminal Simply download and play the files that are spliced by the server, so that the dynamic bit rate switching can be realized without the video player and the server supporting the same dynamic bit rate switching technology, which greatly improves the server and various video playback. Compatibility between terminals.
在其他实施例中,上述获取模块01还可以用于:In other embodiments, the obtaining module 01 may be further configured to:
若当前视频分片为视频播放终端在服务器中选择下载的节目的初始分片,则获取选择下载的节目中码率最小的初始分片,供视频播放终端下载,并获取视频播放终端对码率最小的初始分片的下载码率。If the current video fragment is an initial fragment of the program selected by the video playing terminal in the server, the initial fragment with the smallest code rate in the selected program is obtained for downloading by the video playing terminal, and the code rate of the video playing terminal is obtained. The download rate of the smallest initial shard.
若视频播放终端在服务器中开始启动下载,则当前视频分片为视频播放终端选择下载的节目中的初始分片,由于此时服务器无法根据其上一视频分片的下载码率获知视频播放终端的网络状态,则服务器直接选择该节目中码率最小的初始分片供视频播放终端开启下载。这样,能在视频播放终端的网络状态未知时,最大限度的保证视频播放终端下载服务器中视频分片文件的流畅性,待初始分片下载完成后,再根据初始分片的下载码率来动态调整视频播放终端需下载服务器中下一视频分片的码率,更加灵活、方便。If the video playing terminal starts to start downloading in the server, the current video fragment is the initial fragment selected by the video playing terminal to download the program, because the server cannot know the video playing terminal according to the download rate of the previous video fragment. The network status, the server directly selects the initial fragment with the smallest code rate in the program for the video playback terminal to start downloading. In this way, when the network state of the video playing terminal is unknown, the smoothness of the video segment file in the download server of the video playing terminal can be ensured to the maximum extent, and after the initial segment downloading is completed, the dynamic downloading rate according to the initial segmentation is dynamically performed. Adjusting the video playback terminal needs to download the bit rate of the next video segment in the server, which is more flexible and convenient.
本发明又提供一种动态切换码率的系统。The present invention further provides a system for dynamically switching code rates.
参照图3,图3为本发明动态切换码率的系统一实施例的结构示意图。Referring to FIG. 3, FIG. 3 is a schematic structural diagram of a system for dynamically switching code rates according to an embodiment of the present invention.
在一实施例中,该动态切换码率的系统包括:服务器1及视频播放终端2,其中,In an embodiment, the system for dynamically switching code rates includes: a server 1 and a video playing terminal 2, wherein
服务器1,用于获取视频播放终端2在服务器1中选择下载节目的当前视频分片的下载码率;根据所述下载码率动态调整视频播放终端2需下载服务器1中下一视频分片的码率;将视频播放终端2需下载的下一视频分片的片头与当前视频分片的片尾进行拼接,生成拼接视频文件;The server 1 is configured to obtain a download code rate of the current video slice that the video play terminal 2 selects to download the program in the server 1; dynamically adjust the video play terminal 2 to download the next video slice in the server 1 according to the download code rate. a code rate; splicing the slice header of the next video slice to be downloaded by the video playback terminal 2 and the end of the current video slice to generate a spliced video file;
视频播放终端2,用于向服务器1发送下载请求,与服务器1建立下载连接,对服务器1生成的拼接视频文件进行渐进式下载并播放。The video playing terminal 2 is configured to send a download request to the server 1, establish a download connection with the server 1, and progressively download and play the stitched video file generated by the server 1.
本实施例中,首先,视频播放终端2向服务器1发送下载请求,服务器1接收该下载请求后,视频播放终端2与服务器1建立下载连接,并开始依次下载其在服务器1中选择下载的节目的视频分片文件,在下载过程中,服务器1根据视频播放终端2的网络状态对视频播放终端2下载不同视频分片的码率进行动态切换,并将视频播放终端2需下载的下一视频分片的片头与当前视频分片的片尾进行拼接,生成拼接视频文件,服务器1进行动态码率切换的过程如上所述,在此不再赘述。In this embodiment, first, the video playing terminal 2 sends a download request to the server 1, and after receiving the download request, the video playing terminal 2 establishes a download connection with the server 1, and starts to download the program that is selected for downloading in the server 1 in sequence. The video segmentation file, in the downloading process, the server 1 dynamically switches the code rate of the video playback terminal 2 to download different video segments according to the network state of the video playback terminal 2, and the next video to be downloaded by the video playback terminal 2 The slice header is spliced with the end of the current video segment to generate a spliced video file, and the process of the dynamic bit rate switching by the server 1 is as described above, and details are not described herein again.
在服务器1上生成拼接视频文件后,视频播放终端2对生成的拼接视频文件进行渐进式下载并播放,其中,渐进式下载(Progressive Download)是一种简单的从服务器1进行文件下载的普通方式,大多数媒体播放器和平台都支持渐进式下载,如ADOBE FALSH,SILVERLIGHT以及Windows媒体播放机等。渐进式下载允许视频文件还正在下载的时候就开始播放,不用等到整个文件下载都完成写到磁盘上之后。因此,本实施例中,在服务器1依次将视频播放终端2选择下载的节目中相邻时间间隔的上、下视频分片进行拼接,生成拼接视频文件的过程中,视频播放终端2均可对生成的拼接视频文件进行下载,同时还可对下载的拼接视频文件进行解码播放。而由于大多数媒体播放器和平台都支持渐进式下载即大多数视频播放终端2均能对服务器1生成的拼接视频文件进行渐进式下载并播放,而无需视频播放终端2支持与服务器1相同的动态码率切换技术,提升了视频播放终端2的兼容性。After the spliced video file is generated on the server 1, the video playing terminal 2 progressively downloads and plays the generated spliced video file, wherein progressive downloading (Progressive) Download) is a simple way to download files from server 1. Most media players and platforms support progressive downloads, such as ADOBE. FALSH, SILVERLIGHT and Windows Media Player. Progressive downloads allow video files to start playing when they are still being downloaded, without waiting for the entire file download to finish writing to disk. Therefore, in the embodiment, the server 1 sequentially splices the upper and lower video segments of the adjacent time interval in the program selected by the video playing terminal 2 to generate a spliced video file, and the video playing terminal 2 can The generated spliced video file is downloaded, and the downloaded spliced video file can also be decoded and played. Since most media players and platforms support progressive downloading, most video playing terminals 2 can progressively download and play the stitched video files generated by the server 1, without the video playing terminal 2 supporting the same as the server 1. The dynamic bit rate switching technology improves the compatibility of the video playing terminal 2.
本实施例根据视频播放终端2对服务器1中选择下载节目的当前视频分片的下载码率,服务器1动态调整视频播放终端2需下载下一视频分片的码率;并将视频播放终端2需下载的下一视频分片的片头与当前视频分片的片尾进行拼接,从而实现视频播放终端2对下载不同视频分片码率的动态切换,整个切换过程由服务器1来完成,无需视频播放终端2参与,视频播放终端2只需对服务器1拼接后的文件进行渐进式下载并播放,这样,无需视频播放终端2和服务器1支持相同的动态码率切换技术,即可实现动态码率切换,极大地提升了服务器1和各种视频播放终端2之间的兼容性。In this embodiment, according to the download rate of the current video segment of the server 1 for downloading the program, the server 1 dynamically adjusts the code rate of the video playback terminal 2 to download the next video segment; and the video playback terminal 2 The slice header of the next video segment to be downloaded is spliced with the end of the current video segment, thereby realizing the dynamic switching of the video playback terminal 2 to download different video segmentation code rates, and the entire switching process is completed by the server 1, without video playback. The terminal 2 participates, and the video playing terminal 2 only needs to progressively download and play the file spliced by the server 1, so that the dynamic bit rate switching can be realized without the video playing terminal 2 and the server 1 supporting the same dynamic bit rate switching technology. The compatibility between the server 1 and various video playing terminals 2 is greatly improved.
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。The serial numbers of the embodiments of the present invention are merely for the description, and do not represent the advantages and disadvantages of the embodiments. Through the description of the above embodiments, those skilled in the art can clearly understand that the foregoing embodiment method can be implemented by means of software plus a necessary general hardware platform, and of course, can also be through hardware, but in many cases, the former is better. Implementation. Based on such understanding, the technical solution of the present invention, which is essential or contributes to the prior art, may be embodied in the form of a software product stored in a storage medium (such as ROM/RAM, disk, The optical disc includes a number of instructions for causing a terminal device (which may be a cell phone, a computer, a server, or a network device, etc.) to perform the methods described in various embodiments of the present invention.
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。The above are only the preferred embodiments of the present invention, and are not intended to limit the scope of the invention, and the equivalent structure or equivalent process transformations made by the description of the present invention and the drawings are directly or indirectly applied to other related technical fields. The same is included in the scope of patent protection of the present invention.

Claims (20)

  1. 一种动态码率切换方法,其特征在于,所述方法包括以下步骤: A dynamic rate switching method, characterized in that the method comprises the following steps:
    服务器获取视频播放终端在服务器中选择下载节目的当前视频分片的下载码率;The server obtains a download code rate of the current video segment in which the video playback terminal selects to download the program in the server;
    根据所述下载码率动态调整视频播放终端需下载服务器中下一视频分片的码率;Dynamically adjusting a code rate of the next video segment in the server to be downloaded by the video playing terminal according to the download code rate;
    将视频播放终端需下载的下一视频分片的片头与当前视频分片的片尾在服务器端进行拼接,生成拼接视频文件,以供视频播放终端渐进式下载并播放所述拼接视频文件。The slice header of the next video slice to be downloaded by the video play terminal and the slice end of the current video slice are spliced on the server end to generate a spliced video file for the video play terminal to progressively download and play the spliced video file.
  2. 如权利要求1所述的动态码率切换方法,其特征在于,所述服务器获取视频播放终端在服务器中选择下载节目的当前视频分片的下载码率的步骤包括:The dynamic rate switching method according to claim 1, wherein the step of obtaining, by the server, the download rate of the current video segment of the video playback terminal that selects to download the program in the server comprises:
    若当前视频分片为视频播放终端在服务器中选择下载的节目的初始分片,则服务器获取选择下载的节目中码率最小的初始分片,供视频播放终端下载,并获取视频播放终端对码率最小的初始分片的下载码率。If the current video fragment is the initial fragment of the program selected by the video playing terminal in the server, the server obtains the initial fragment with the smallest code rate in the selected program for downloading by the video playing terminal, and obtains the code of the video playing terminal. The download rate of the initial fragment with the lowest rate.
  3. 如权利要求1所述的动态码率切换方法,其特征在于,所述服务器获取视频播放终端在服务器中选择下载节目的当前视频分片的下载码率的步骤包括:The dynamic rate switching method according to claim 1, wherein the step of obtaining, by the server, the download rate of the current video segment of the video playback terminal that selects to download the program in the server comprises:
    服务器根据视频播放终端在服务器中选择下载节目的当前视频分片的大小及下载当前视频分片的时间获取当前视频分片的下载码率。The server obtains the download code rate of the current video segment according to the size of the current video segment in which the video playback terminal selects to download the program in the server and the time when the current video segment is downloaded.
  4. 如权利要求1所述的动态码率切换方法,其特征在于,所述根据所述下载码率动态调整视频播放终端需下载服务器中下一视频分片的码率的步骤包括:The dynamic rate switching method according to claim 1, wherein the step of dynamically adjusting the code rate of the next video slice in the server to be downloaded by the video playing terminal according to the download code rate comprises:
    根据当前视频分片的下载码率对视频播放终端需下载服务器中下一视频分片的不同码率进行选择,选择小于所述下载码率且与所述下载码率最接近的码率的下一视频分片作为视频播放终端需下载的下一视频分片。Selecting, according to a download rate of the current video segment, a different code rate of the next video segment of the video playback terminal to be downloaded, selecting a code rate that is smaller than the download code rate and closest to the download code rate. A video slice is used as the next video slice to be downloaded by the video playback terminal.
  5. 如权利要求2所述的动态码率切换方法,其特征在于,所述根据所述下载码率动态调整视频播放终端需下载服务器中下一视频分片的码率的步骤包括:The dynamic rate switching method according to claim 2, wherein the step of dynamically adjusting the code rate of the next video slice in the server to be downloaded by the video playing terminal according to the download code rate comprises:
    根据当前视频分片的下载码率对视频播放终端需下载服务器中下一视频分片的不同码率进行选择,选择小于所述下载码率且与所述下载码率最接近的码率的下一视频分片作为视频播放终端需下载的下一视频分片。Selecting, according to a download rate of the current video segment, a different code rate of the next video segment of the video playback terminal to be downloaded, selecting a code rate that is smaller than the download code rate and closest to the download code rate. A video slice is used as the next video slice to be downloaded by the video playback terminal.
  6. 如权利要求3所述的动态码率切换方法,其特征在于,所述根据所述下载码率动态调整视频播放终端需下载服务器中下一视频分片的码率的步骤包括:The dynamic rate switching method according to claim 3, wherein the step of dynamically adjusting the code rate of the next video slice in the server to be downloaded by the video playing terminal according to the download code rate comprises:
    根据当前视频分片的下载码率对视频播放终端需下载服务器中下一视频分片的不同码率进行选择,选择小于所述下载码率且与所述下载码率最接近的码率的下一视频分片作为视频播放终端需下载的下一视频分片。Selecting, according to a download rate of the current video segment, a different code rate of the next video segment of the video playback terminal to be downloaded, selecting a code rate that is smaller than the download code rate and closest to the download code rate. A video slice is used as the next video slice to be downloaded by the video playback terminal.
  7. 一种动态切换码率的服务器,其特征在于,所述服务器包括:A server for dynamically switching code rates, wherein the server comprises:
    获取模块,用于获取视频播放终端在服务器中选择下载节目的当前视频分片的下载码率;An obtaining module, configured to obtain a downloading code rate of a current video segment in which the video playing terminal selects to download the program in the server;
    调整模块,用于根据所述下载码率动态调整视频播放终端需下载服务器中下一视频分片的码率;An adjustment module, configured to dynamically adjust, according to the download code rate, a code rate of a next video segment of the video playback terminal to be downloaded in the server;
    拼接模块,用于将视频播放终端需下载的下一视频分片的片头与当前视频分片的片尾进行拼接,生成拼接视频文件,以供视频播放终端渐进式下载并播放所述拼接视频文件。The splicing module is configured to splicing the slice header of the next video slice to be downloaded by the video play terminal and the slice end of the current video slice to generate a spliced video file for the video play terminal to progressively download and play the spliced video file.
  8. 如权利要求7所述的服务器,其特征在于,所述获取模块还用于:The server according to claim 7, wherein the obtaining module is further configured to:
    若当前视频分片为视频播放终端在服务器中选择下载的节目的初始分片,则获取选择下载的节目中码率最小的初始分片,供视频播放终端下载,并获取视频播放终端对码率最小的初始分片的下载码率。If the current video fragment is an initial fragment of the program selected by the video playing terminal in the server, the initial fragment with the smallest code rate in the selected program is obtained for downloading by the video playing terminal, and the code rate of the video playing terminal is obtained. The download rate of the smallest initial shard.
  9. 如权利要求7所述的服务器,其特征在于,所述获取模块还用于:The server according to claim 7, wherein the obtaining module is further configured to:
    根据视频播放终端在服务器中选择下载节目的当前视频分片的大小及下载当前视频分片的时间获取当前视频分片的下载码率。The download code rate of the current video slice is obtained according to the size of the current video slice selected by the video play terminal in the server to download the program and the time when the current video slice is downloaded.
  10. 如权利要求7所述的服务器,其特征在于,所述调整模块还用于:The server according to claim 7, wherein the adjustment module is further configured to:
    根据当前视频分片的下载码率对视频播放终端需下载服务器中下一视频分片的不同码率进行选择,选择小于所述下载码率且与所述下载码率最接近的码率的下一视频分片作为视频播放终端需下载的下一视频分片。Selecting, according to a download rate of the current video segment, a different code rate of the next video segment of the video playback terminal to be downloaded, selecting a code rate that is smaller than the download code rate and closest to the download code rate. A video slice is used as the next video slice to be downloaded by the video playback terminal.
  11. 如权利要求8所述的服务器,其特征在于,所述调整模块还用于:The server according to claim 8, wherein the adjustment module is further configured to:
    根据当前视频分片的下载码率对视频播放终端需下载服务器中下一视频分片的不同码率进行选择,选择小于所述下载码率且与所述下载码率最接近的码率的下一视频分片作为视频播放终端需下载的下一视频分片。Selecting, according to a download rate of the current video segment, a different code rate of the next video segment of the video playback terminal to be downloaded, selecting a code rate that is smaller than the download code rate and closest to the download code rate. A video slice is used as the next video slice to be downloaded by the video playback terminal.
  12. 如权利要求9所述的服务器,其特征在于,所述调整模块还用于:The server according to claim 9, wherein the adjustment module is further configured to:
    根据当前视频分片的下载码率对视频播放终端需下载服务器中下一视频分片的不同码率进行选择,选择小于所述下载码率且与所述下载码率最接近的码率的下一视频分片作为视频播放终端需下载的下一视频分片。Selecting, according to a download rate of the current video segment, a different code rate of the next video segment of the video playback terminal to be downloaded, selecting a code rate that is smaller than the download code rate and closest to the download code rate. A video slice is used as the next video slice to be downloaded by the video playback terminal.
  13. 一种动态切换码率的系统,其特征在于,所述系统包括:服务器及视频播放终端,其中,A system for dynamically switching a code rate, the system comprising: a server and a video playing terminal, wherein
    所述服务器包括:The server includes:
    获取模块,用于获取视频播放终端在服务器中选择下载节目的当前视频分片的下载码率;An obtaining module, configured to obtain a downloading code rate of a current video segment in which the video playing terminal selects to download the program in the server;
    调整模块,用于根据所述下载码率动态调整视频播放终端需下载服务器中下一视频分片的码率;An adjustment module, configured to dynamically adjust, according to the download code rate, a code rate of a next video segment of the video playback terminal to be downloaded in the server;
    拼接模块,用于将视频播放终端需下载的下一视频分片的片头与当前视频分片的片尾进行拼接,生成拼接视频文件,以供视频播放终端渐进式下载并播放所述拼接视频文件;The splicing module is configured to splicing the slice header of the next video segment to be downloaded by the video playing terminal and the end of the current video segment to generate a spliced video file for the video playing terminal to progressively download and play the spliced video file;
    所述视频播放终端,用于向服务器发送下载请求,与服务器建立下载连接,对服务器生成的拼接视频文件进行渐进式下载并播放。The video playing terminal is configured to send a download request to the server, establish a download connection with the server, and perform progressive download and play on the spliced video file generated by the server.
  14. 如权利要求13所述的动态切换码率的系统,其特征在于,所述视频播放终端还用于:The system for dynamically switching code rates according to claim 13, wherein the video playing terminal is further configured to:
    对下载的拼接视频文件进行解码播放。The downloaded spliced video file is decoded and played.
  15. 如权利要求13所述的动态切换码率的系统,其特征在于,所述获取模块还用于:The system for dynamically switching code rates according to claim 13, wherein the obtaining module is further configured to:
    若当前视频分片为视频播放终端在服务器中选择下载的节目的初始分片,则获取选择下载的节目中码率最小的初始分片,供视频播放终端下载,并获取视频播放终端对码率最小的初始分片的下载码率。If the current video fragment is an initial fragment of the program selected by the video playing terminal in the server, the initial fragment with the smallest code rate in the selected program is obtained for downloading by the video playing terminal, and the code rate of the video playing terminal is obtained. The download rate of the smallest initial shard.
  16. 如权利要求13所述的动态切换码率的系统,其特征在于,所述获取模块还用于:The system for dynamically switching code rates according to claim 13, wherein the obtaining module is further configured to:
    根据视频播放终端在服务器中选择下载节目的当前视频分片的大小及下载当前视频分片的时间获取当前视频分片的下载码率。The download code rate of the current video slice is obtained according to the size of the current video slice selected by the video play terminal in the server to download the program and the time when the current video slice is downloaded.
  17. 如权利要求13所述的动态切换码率的系统,其特征在于,所述调整模块还用于:The system for dynamically switching code rates according to claim 13, wherein the adjustment module is further configured to:
    根据当前视频分片的下载码率对视频播放终端需下载服务器中下一视频分片的不同码率进行选择,选择小于所述下载码率且与所述下载码率最接近的码率的下一视频分片作为视频播放终端需下载的下一视频分片。Selecting, according to a download rate of the current video segment, a different code rate of the next video segment of the video playback terminal to be downloaded, selecting a code rate that is smaller than the download code rate and closest to the download code rate. A video slice is used as the next video slice to be downloaded by the video playback terminal.
  18. 如权利要求14所述的动态切换码率的系统,其特征在于,所述调整模块还用于:The system for dynamically switching code rates according to claim 14, wherein the adjustment module is further configured to:
    根据当前视频分片的下载码率对视频播放终端需下载服务器中下一视频分片的不同码率进行选择,选择小于所述下载码率且与所述下载码率最接近的码率的下一视频分片作为视频播放终端需下载的下一视频分片。Selecting, according to a download rate of the current video segment, a different code rate of the next video segment of the video playback terminal to be downloaded, selecting a code rate that is smaller than the download code rate and closest to the download code rate. A video slice is used as the next video slice to be downloaded by the video playback terminal.
  19. 如权利要求15所述的动态切换码率的系统,其特征在于,所述调整模块还用于:The system for dynamically switching code rates according to claim 15, wherein the adjustment module is further configured to:
    根据当前视频分片的下载码率对视频播放终端需下载服务器中下一视频分片的不同码率进行选择,选择小于所述下载码率且与所述下载码率最接近的码率的下一视频分片作为视频播放终端需下载的下一视频分片。Selecting, according to a download rate of the current video segment, a different code rate of the next video segment of the video playback terminal to be downloaded, selecting a code rate that is smaller than the download code rate and closest to the download code rate. A video slice is used as the next video slice to be downloaded by the video playback terminal.
  20. 如权利要求16所述的动态切换码率的系统,其特征在于,所述调整模块还用于:The system for dynamically switching code rates according to claim 16, wherein the adjustment module is further configured to:
    根据当前视频分片的下载码率对视频播放终端需下载服务器中下一视频分片的不同码率进行选择,选择小于所述下载码率且与所述下载码率最接近的码率的下一视频分片作为视频播放终端需下载的下一视频分片。 Selecting, according to a download rate of the current video segment, a different code rate of the next video segment of the video playback terminal to be downloaded, selecting a code rate that is smaller than the download code rate and closest to the download code rate. A video slice is used as the next video slice to be downloaded by the video playback terminal.
PCT/CN2015/091470 2014-12-08 2015-10-08 Dynamic code rate switching method, server and system WO2016091000A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201410743103.7A CN105744299A (en) 2014-12-08 2014-12-08 Dynamic code rate switching method, server and system
CN201410743103.7 2014-12-08

Publications (1)

Publication Number Publication Date
WO2016091000A1 true WO2016091000A1 (en) 2016-06-16

Family

ID=56106637

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/091470 WO2016091000A1 (en) 2014-12-08 2015-10-08 Dynamic code rate switching method, server and system

Country Status (2)

Country Link
CN (1) CN105744299A (en)
WO (1) WO2016091000A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111988645A (en) * 2020-08-27 2020-11-24 上海七牛信息技术有限公司 Audio and video transmission bandwidth self-adaption method

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106993237B (en) * 2017-04-13 2019-05-10 中北大学 Dynamic self-adapting code rate selection method based on MPEG-DASH agreement
CN107454458A (en) * 2017-08-30 2017-12-08 努比亚技术有限公司 A kind of video data caching method, equipment and storage medium
CN108184152B (en) * 2018-01-03 2020-01-24 湖北大学 Two-stage client code rate selection method for DASH transmission system
CN110536175B (en) * 2018-05-24 2022-12-06 腾讯科技(深圳)有限公司 Code rate switching method and device
CN108965928B (en) * 2018-08-15 2021-02-02 湖南快乐阳光互动娱乐传媒有限公司 Self-adaptive link video downloading method and system
CN110149534B (en) * 2019-06-12 2021-06-08 深圳市大数据研究院 Decision tree-based adaptive video stream transcoding method and device
CN112153428B (en) * 2020-11-04 2022-07-12 上海连尚网络科技有限公司 Video processing method and device
CN117440209B (en) * 2023-12-15 2024-03-01 牡丹江师范学院 Implementation method and system based on singing scene

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103702237A (en) * 2012-09-28 2014-04-02 北京大学 Rate self-adapting method and device for HTTP (Hyper Text Transport Protocol) streaming media
CN103747283A (en) * 2013-12-24 2014-04-23 中国科学院声学研究所 Video fragment download method
CN104010232A (en) * 2014-05-23 2014-08-27 惠州Tcl移动通信有限公司 Method and system for intelligently playing online videos, player and mobile terminal

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102123303B (en) * 2011-03-25 2012-10-24 天脉聚源(北京)传媒科技有限公司 Audio/video file playing method and system as well as transmission control device
CN103281568B (en) * 2013-04-25 2016-11-09 网宿科技股份有限公司 Realize the method and system of live streaming media dynamic code rate
CN103414959B (en) * 2013-07-15 2017-04-05 北京奇虎科技有限公司 A kind of method and apparatus for accelerating Internet video broadcasting speed

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103702237A (en) * 2012-09-28 2014-04-02 北京大学 Rate self-adapting method and device for HTTP (Hyper Text Transport Protocol) streaming media
CN103747283A (en) * 2013-12-24 2014-04-23 中国科学院声学研究所 Video fragment download method
CN104010232A (en) * 2014-05-23 2014-08-27 惠州Tcl移动通信有限公司 Method and system for intelligently playing online videos, player and mobile terminal

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111988645A (en) * 2020-08-27 2020-11-24 上海七牛信息技术有限公司 Audio and video transmission bandwidth self-adaption method

Also Published As

Publication number Publication date
CN105744299A (en) 2016-07-06

Similar Documents

Publication Publication Date Title
WO2016091000A1 (en) Dynamic code rate switching method, server and system
KR102536652B1 (en) Dynamic reduction of alternative content playback to support aligning the end of the alternative content with the end of the substitute content.
US8244897B2 (en) Content reproduction apparatus, content reproduction method, and program
US10638180B1 (en) Media timeline management
JP5179508B2 (en) Data stream reproducing method and data stream reproducing apparatus for distributing and switching contents between data streams
US10313734B1 (en) Switching content
WO2016029596A1 (en) Audio/video signal synchronization method and apparatus
US7870281B2 (en) Content playback device, content playback method, computer-readable storage medium, and content playback system
US20140059597A1 (en) Synchronizing multiple playback device timing utilizing drm encoding
WO2017181506A1 (en) Display terminal information source switching method and device
US20200099732A1 (en) Catching up to the live playhead in live streaming
TWI760981B (en) Dynamic playout of transition frames while transitioning between playout of media streams
KR20200110459A (en) Methods, systems and media for adjusting the quality level during synchronized media content playback on multiple devices
WO2014063297A1 (en) Method and apparatus for playing streaming media files
WO2017028675A1 (en) Playing method, device and system for live streaming channel
RU2007143549A (en) DEVICE AND METHOD FOR PROCESSING AN ENCRYPTED DATA FLOW IN THE CRYPTOGRAPHIC SYSTEM
WO2020057224A1 (en) Streaming media playing method and device employing dash protocol
US20090169176A1 (en) Synchronizing audio and video frames
WO2017101393A1 (en) Method and device for continuously playing video
CN106791994B (en) Low-delay quick broadcasting method and device
WO2021082642A1 (en) Video playing control method and system
CN111343477B (en) Data transmission method and device, electronic equipment and storage medium
US10389785B2 (en) Method for adaptively streaming an audio/visual material
TWI390980B (en) A content reproduction apparatus, a content reproduction method, a content reproduction program, and a content reproduction system
US11943497B2 (en) Network-based audio playback

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: 15868019

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205 DATED 23/10/2017)

122 Ep: pct application non-entry in european phase

Ref document number: 15868019

Country of ref document: EP

Kind code of ref document: A1