WO2017054552A1 - 终端、缓存服务器及获取视频分片的方法及装置 - Google Patents

终端、缓存服务器及获取视频分片的方法及装置 Download PDF

Info

Publication number
WO2017054552A1
WO2017054552A1 PCT/CN2016/090067 CN2016090067W WO2017054552A1 WO 2017054552 A1 WO2017054552 A1 WO 2017054552A1 CN 2016090067 W CN2016090067 W CN 2016090067W WO 2017054552 A1 WO2017054552 A1 WO 2017054552A1
Authority
WO
WIPO (PCT)
Prior art keywords
video
information
terminal
file
fragment
Prior art date
Application number
PCT/CN2016/090067
Other languages
English (en)
French (fr)
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 EP16850176.5A priority Critical patent/EP3340633B1/en
Publication of WO2017054552A1 publication Critical patent/WO2017054552A1/zh
Priority to US15/925,487 priority patent/US20180205976A1/en

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/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23106Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
    • 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/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • 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/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • 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/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • 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/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2401Monitoring of the client buffer
    • 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/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • 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/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2407Monitoring of transmitted content, e.g. distribution time, number of downloads
    • 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/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4621Controlling the complexity of the content stream or additional data, e.g. lowering the resolution or bit-rate of the video stream for a mobile client with a small screen
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • H04N21/64322IP
    • 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
    • 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
    • H04N21/8455Structuring of content, e.g. decomposing content into time segments involving pointers to the content, e.g. pointers to the I-frames of the video stream
    • 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
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • 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/85Assembly of content; Generation of multimedia applications
    • H04N21/858Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot
    • 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/85Assembly of content; Generation of multimedia applications
    • H04N21/858Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot
    • H04N21/8586Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot by using a URL

Definitions

  • the present invention relates to the field of information technology, and in particular, to a terminal, a cache server, and a method and apparatus for acquiring video fragments.
  • Hypertext Transfer Protocol Streaming (English): Hypertext Transfer Protocol Streaming (HTTP Streaming) protocol is a streaming media transmission protocol based on hypertext transfer protocol.
  • the HTTP Streaming protocol is characterized in that video files are sliced and stored. And the video index information and the video fragment can be generated to enable the video file to be played smoothly.
  • the video index information includes: main file information and sub-file information.
  • the main file information includes a download address of the sub-file information of different code rates corresponding to the video file, and the sub-file information includes download addresses of different video segments of the video file at the code rate.
  • a method for obtaining a video segmentation first acquires a URL of a uniform resource locator (English name: Uniform Resource Locator, English abbreviation: URL) of a selected video file of the user on the portal site, and distributes the URL to the content distribution network.
  • the scheduling server in the full name: Content Delivery Network (Acronym: CDN) sends the content service request information carrying the above URL, so that the scheduling server selects a suitable cache server, and sends the URL corresponding to the cache server address information to the terminal, and then The terminal sends the request information for acquiring the main file information corresponding to the video file to the cache server according to the URL corresponding to the cache server address information, so that the cache server obtains the main file information from the source station.
  • CDN Content Delivery Network
  • the cache server obtains the main file information from the source station, and sends the information to the terminal, and the terminal obtains the download address of each sub-file information corresponding to the video file by using the main file information, and determines a low value from the main file information according to the download rate of the main file.
  • the server obtains the sub-file information corresponding to the foregoing code rate from the source station, and sends the information to the terminal, so that the terminal obtains the download address of the video fragment corresponding to the code rate, and finally, the terminal sends a request message for acquiring the video fragment to the cache server. So that the cache server obtains the video segment from the source station and sends it to the terminal.
  • the terminal requests the video fragment from the cache server. Since the video fragment may not be stored in the cache server, the video fragment needs to be requested and obtained from the source station, and then the video fragment is obtained. The obtained video fragment is sent to the terminal, thereby increasing the time for the terminal to acquire the video fragment, and the delay of the terminal to play the video fragment is longer.
  • the present invention provides a terminal, a cache server, and a method and device for acquiring video fragments, which can reduce the delay of playing video fragments by the terminal.
  • the present invention provides a method for acquiring a video segment, where the method is used for a terminal to acquire a video segment of a video file, including:
  • the trigger condition is specifically:
  • the priority information is used to identify a video fragment stored in the cache server The probability of being eliminated.
  • the priority information includes: hotness information, where the hotness information is larger, the hot information is characterized The lower the probability that the corresponding video fragments stored in the cache server are eliminated.
  • the cache information when the heat information is 0 or empty, the cache information is not stored in the cache server. Video fragmentation.
  • the step of determining the download address of the Nth video segment according to the download rate of the terminal and the video index information includes:
  • the present invention provides another method for obtaining video fragments, the method being applied to a cache server, the method comprising:
  • the priority information of the video fragment is specifically:
  • the video segment According to the number of times the video segment is requested, it is converted according to a predetermined rule.
  • the method further includes: determining whether each video fragment of the video file is cached locally; and adding priority information corresponding to each video fragment of the video file to the video index information, specifically: Adding priority information corresponding to the acquired video segment to the video index information when the video fragment is cached locally; and acquiring the video segment when the video segment is not cached locally;
  • the priority information corresponding to the video fragment is set to 0 or null, and is added to the video index information.
  • the present invention provides an apparatus for acquiring a video fragment, where the apparatus is located in a terminal, and includes:
  • a determining unit configured to determine, according to a trigger condition for acquiring a video fragment, that the video fragment that the terminal needs to acquire is the Nth video fragment of the video file, where N is a positive integer;
  • An obtaining unit configured to acquire video index information of the video file from a cache server, where the video index information includes sub-file information of at least 2 code rates, and the sub-file information of each code rate includes a download address of different video fragments. And corresponding priority information;
  • the determining unit is further configured to determine a download address of the Nth video segment according to a download rate of the terminal and the video index information acquired by the acquiring unit;
  • a sending unit configured to send a request message for acquiring a video fragment to the cache server, where the request message for acquiring a video fragment includes a download address of the Nth video fragment determined by the determining unit;
  • a receiving unit configured to receive the Nth video segment returned by the cache server.
  • the trigger condition is that the rate conversion information input by the user is received.
  • the touch operation includes a drag operation.
  • the trigger condition is specifically:
  • the priority information includes: hotness information, where the hotness information is larger, the hot information is characterized The lower the probability that the corresponding video fragments stored in the cache server are eliminated.
  • a fourth possible implementation manner of the third aspect when the heat information is 0 or empty, the corresponding cache information is not stored in the cache server. Video fragmentation.
  • the determining unit specifically includes: a determining module and an acquiring module;
  • the determining module is configured to determine, according to a download rate of the terminal, sub-file information that meets a code rate corresponding to a download rate of the terminal;
  • the acquiring module is configured to obtain, from the sub-file information that meets the code rate corresponding to the download rate of the terminal, the code rate of the Nth video segment that has the highest heat information.
  • the determining module is further configured to determine, according to the download rate of the terminal, that there is no sub-file information that satisfies a code rate corresponding to a download rate of the terminal;
  • the obtaining module is further configured to obtain, from the video index information, a download address of the Nth video segment in the sub-file information with the smallest bit rate.
  • the present invention provides another apparatus for acquiring video fragments, the apparatus being located in a cache server, the apparatus comprising:
  • An obtaining unit configured to obtain video index information of a video file from a source station
  • a saving unit configured to save video index information of the video file.
  • a monitoring unit configured to monitor a number of times each video segment of the video file is requested, to obtain priority information of each video segment of the video file
  • the acquiring unit is further configured to periodically acquire priority information corresponding to each video segment of the video file;
  • Adding a unit which is further used to add priority information corresponding to each video slice of the video file acquired by the acquiring unit to the video index information;
  • a receiving unit configured to receive a request for acquiring the video index information sent by the terminal
  • a sending unit configured to send the video index information to the terminal, so that the terminal determines, according to the video index information, a download address of a video segment that needs to be downloaded.
  • the priority information of the video fragment is specifically:
  • the video segment According to the number of times the video segment is requested, it is converted according to a predetermined rule.
  • the device further includes: a determining unit;
  • the determining unit is configured to determine whether each video fragment of the video file is cached locally;
  • the adding unit is specifically configured to: when the determining unit determines that the video fragment cache is local, add the obtained priority information corresponding to the video fragment to the video index information; When the determining unit determines that the video fragment is not cached locally, the priority information corresponding to the obtained video fragment is set to 0 or null, and is added to the video index information.
  • the present invention provides a terminal for acquiring a video fragment, which is characterized by comprising:
  • a memory for storing computer executable program code
  • transceiver and a processor coupled to the memory and the transceiver;
  • program code includes instructions that, when the processor executes the instructions, cause the network element to perform the following operations:
  • the present invention provides a cache server, including:
  • a memory for storing computer executable program code
  • transceiver and a processor coupled to the memory and the transceiver;
  • program code includes instructions that, when executed by the processor, cause a memory to store computer executable program code
  • transceiver and a processor coupled to the memory and the transceiver;
  • program code includes instructions that, when the processor executes the instructions, cause the instructions to The network element performs the following operations:
  • the terminal provided by the present invention and the method for acquiring video fragmentation when the terminal needs to acquire the Nth video fragment of the video file, the terminal according to different codes in the video index information Rate the priority information of the Nth video segment and the download rate of the terminal itself, determine the download address of the Nth video segment corresponding to the code rate that meets the download rate and the highest priority information as the request address, and obtain the video score. sheet.
  • the solution provided by the present invention can reduce the probability that the cache server obtains the video fragment from the source station, thereby reducing the time for the terminal to obtain the video fragment, and further reducing the delay of the terminal playing the video fragment.
  • the cache server of the present invention obtains the priority information of the video fragment by monitoring the number of times each video fragment of the video file is requested, and segments each video.
  • the priority information is added to the video index information, so that the terminal can determine the probability that each video segment is stored in the cache server by using the priority information in the video index information of the video segmentation, so that the priority may be preferentially selected.
  • the locally cached video fragmentation reduces the probability that the cache server obtains video fragments from the source station, thereby reducing the time for the terminal to obtain video fragments, and further reducing the delay of playing video fragments.
  • 1 is a network architecture diagram of a content distribution network
  • FIG. 2 is a flowchart of a method for acquiring video fragments according to an embodiment of the present invention
  • FIG. 3 is a flowchart of another method for acquiring video fragments according to an embodiment of the present invention.
  • FIG. 4 is a flowchart of still another method for acquiring video fragments according to an embodiment of the present invention.
  • FIG. 5 is a flowchart of still another method for acquiring video fragments according to an embodiment of the present invention.
  • FIG. 6 is a schematic structural diagram of an apparatus for acquiring video fragments according to an embodiment of the present invention.
  • FIG. 7 is a schematic structural diagram of another apparatus for acquiring video fragments according to an embodiment of the present invention.
  • FIG. 8 is a schematic structural diagram of another apparatus for acquiring video fragments according to an embodiment of the present disclosure.
  • FIG. 9 is a schematic structural diagram of acquiring video fragments according to an embodiment of the present invention.
  • FIG. 10 is a schematic structural diagram of another method for acquiring video fragments according to an embodiment of the present invention.
  • An embodiment of the present invention provides a system architecture for acquiring video fragments.
  • the system includes: a cache server, a content source station, and a terminal, and optionally includes a portal website, as shown in FIG. 1 , wherein the terminal and the cache server, There is a communication connection between the cache server and the source station and between the portal and the terminal.
  • the terminal requests the cache server for the main file information of the video file corresponding to the "Friends". If the cache file stores the main file information corresponding to "Friends", the cache server directly returns the main file information of the video file. If the cache file server does not store the main file information corresponding to "Friends", the cache server is from the source station. The main file information of the video file is obtained, and the terminal parses the main file information to obtain the download address of all the sub-file information, and sends a request message carrying the download address of all the sub-files to the cache server, and the cache is sent to the terminal.
  • the server obtains all the sub-file information of the video file, and sends the information to the terminal, and the terminal selects the download address of the first video fragment of the "friend" that needs to be obtained from all the sub-file information of the video file according to the download rate of the video file. And sending a request message carrying the download address to the cache server, the cache server detecting whether the video fragment is stored locally, and if the video fragment is stored, returning to the terminal; if not, obtaining from the source station And then sent to the terminal.
  • the embodiment of the present invention provides a method for acquiring a video fragment, which can reduce the delay of acquiring a video fragment by the terminal. As shown in FIG. 2, the method includes:
  • the terminal determines, according to the trigger condition for acquiring the video fragment, that the video fragment that the terminal needs to acquire is the Nth video fragment of the video file.
  • N is a positive integer.
  • each video file may have a different code rate version in the source station; in the embodiment of the present invention, each video file is divided into multiple video segments. storage.
  • each video file can be sliced every 10 seconds (s), and each video file has a different code rate, so each video slice of the video file has a different code rate.
  • a 30s video file 0 to 10s can be the first video slice, 10 to 20s can be the second video slice, 20 to 30s can be the third video slice, and the first video slice, the first
  • the code rates corresponding to the two video segments and the third video segment may include: 1000 kbps, 1500 Kbps, and 2000 kbps, as shown in Table 1.
  • the triggering condition is specifically: receiving the code rate conversion information input by the user; or receiving the information that the video file plays the cardon; or receiving the touch operation of the user, where Touch operations include drag and drop operations.
  • the terminal when the terminal receives the rate conversion information input by the user, for example, the speed is converted to high definition, the terminal determines that the video segment that the user needs to obtain at this time is the first video segment of the video file, for example, when When the terminal receives the bit rate conversion information input by the user, the terminal will play to the 15th second (s) in the video file, and the terminal needs to acquire the second video segment of the video file.
  • the terminal when the terminal detects that the video file being played has a play jam, the terminal needs to determine the video segment to be played. For example, if the terminal appears to play the jam at the 15th time of playing the video file, the terminal determines that the video fragment to be acquired is the second video fragment of the video file.
  • the terminal when the terminal receives the user's drag operation, the terminal needs to determine the location of the user's drag to determine the video segment to be played. For example, if the location after the user drags is located at the 15th point of the video file, it is determined that the video fragment that the terminal needs to acquire is the second video fragment of the video file.
  • the terminal acquires video index information of the video file from the cache server.
  • the video index information includes sub-file information of at least two code rates, and the sub-file information of each code rate includes download addresses of different video fragments and corresponding priority information.
  • the priority information is used to represent the probability that the video fragments stored in the cache server are eliminated. The greater the priority information, the smaller the probability that the video fragments stored in the cache server are eliminated, and the smaller the priority information, the greater the probability that the video fragments stored in the cache server are eliminated.
  • the priority information includes: heat information.
  • the greater the heat information the smaller the probability that the video fragments stored in the cache server corresponding to the heat information are eliminated.
  • the heat information when the heat information is 0 or empty, the video fragment corresponding to the heat information is not stored in the cache server.
  • each video file has a corresponding video index information
  • the video index information corresponding to each video file is obtained by the cache server from the source station where the video file is stored and stored locally.
  • the video index information includes at least two sub-file information of different code rates.
  • the sub-file information of each code rate includes a download address of the different video fragments at the code rate and corresponding priority information.
  • the terminal first obtains the main file information corresponding to the video segment to be acquired from the cache server, and obtains the download address of the sub-file information corresponding to all the rate video segments from the main file information, and then downloads according to the download. Address, which obtains subfile information of all rate video segments from the cache server.
  • the video index information acquired by the terminal may be:
  • the terminal determines, according to the download rate of the terminal and the video index information, a download address of the Nth video segment.
  • the download rate of the terminal includes: a historical download rate of the terminal or the The current download rate of the terminal.
  • each video slice in the video file includes at least two versions of different code rates, and therefore, the terminal first according to the download rate. Determine a code rate of the video fragment that meets the download rate, and if the number of video fragments that meet the download rate is greater than or equal to 2, the terminal determines the priority according to the priority information of the video fragment of each code rate. The video fragment of the higher rate of the information is obtained, and the download address of the code rate video fragment is obtained from the subfile information corresponding to the video fragment.
  • the terminal needs to acquire the second video fragment, wherein the priority information of the second video fragment of the 1000 kbps code rate is 200, and the version of the 1500 kbps code rate is the second.
  • the priority information of the video fragments is 150
  • the priority information of the second video fragment of the 2000 kbps version is 50.
  • the terminal determines that the video fragments of the two code rates of 1000 kbps and 1500 kbps satisfy the current download rate requirement of the terminal.
  • the terminal determines the download address of the second video fragment of the 1000 kbps code rate, that is, http://youku/test1000/1.ts, which is the download address of the video fragment that the terminal needs to obtain.
  • the terminal sends a request message for acquiring a video fragment to the cache server.
  • the request message for acquiring the video segment includes the download address of the Nth video segment.
  • the download address of the video fragment is obtained from the sub-file information corresponding to the video fragment, and the download address corresponding to the required video fragment is requested.
  • the message is sent to the cache server.
  • the terminal will carry the video fragmentation request message with the download address http://youku/test1000/1.ts. Send to the cache server.
  • the terminal receives the Nth video fragment returned by the cache server.
  • the terminal after the terminal requests the video fragment from the cache server, the terminal will receive the video fragment returned by the subsequent cache server.
  • the method for obtaining a video segmentation first determines that the video segment to be acquired by the terminal is the Nth video segment of the video file according to the trigger condition for acquiring the video segment.
  • the terminal when the terminal needs to acquire the Nth video segment of the video file, the terminal selects the priority information of the Nth video segment and the terminal according to different code rates in the video index information.
  • the download rate of the Nth video segment corresponding to the code rate that meets the download rate and the highest priority information is determined as the request address, and the video segment is obtained.
  • the solution provided by the present invention can reduce the probability of the cache server returning to the source, thereby reducing the time for the terminal to obtain the video fragment, and further reducing the delay of the terminal playing the video fragment.
  • step 203 the terminal determines the download address of the Nth video segment according to the download rate of the terminal and the video index information. Specifically, the steps 301-304 as shown in FIG. 3 may also be included.
  • the terminal determines, according to the download rate of the terminal, sub-file information that meets a code rate corresponding to the download rate of the terminal.
  • the terminal determines that the code rate corresponding to the video segment to be acquired is less than or equal to the download rate of the terminal according to the download rate of the terminal.
  • the current download rate of the terminal is 1600 bit rate (kbps)
  • the video fragment that the terminal needs to acquire has three code rates, namely 1000 kbps, 1500 kbps, and 2000 kbps
  • the code rate of the video fragment that satisfies the terminal download rate It is 1000kbps and 1500kbps respectively.
  • the terminal obtains, from the sub-file information that meets the code rate corresponding to the download rate of the terminal, the download address of the Nth video segment in the sub-file information of the code rate with the highest heat information of the Nth video segment.
  • the terminal first determines the code rate corresponding to the video segment that meets the download rate of the terminal, and then obtains the heat information corresponding to the Nth video segment from the code rate corresponding sub-file information, and obtains the code with the highest heat information.
  • the terminal determines the code rate of the rate download rate according to the terminal download rate, and determines the download address corresponding to the video fragment that the terminal needs to obtain according to the heat information, so that the download rate of the terminal can be satisfied.
  • the video fragment can be directly obtained from the cache server without the cache server, and the cache server first obtains the video fragment from the source station and then sends the video fragment to the terminal, thereby reducing the time for the terminal to obtain the video fragment. The delay in playing video segments can be further reduced.
  • the terminal determines, according to the download rate of the terminal, that the sub-file information that meets the code rate corresponding to the download rate of the terminal does not exist.
  • the terminal determines that the code rate corresponding to the video file is greater than the download rate of the terminal according to the download rate of the terminal, that is, there is no sub-file information that satisfies the download rate corresponding to the terminal.
  • the code rate of the video file is greater than the download rate of the terminal, that is, there is no sub-rate corresponding to the terminal download rate.
  • the terminal acquires, from the video index information, a download address of the Nth video segment in the sub-file information with the smallest bit rate.
  • the terminal acquires the download address of the Nth video segment in the sub-file information with the smallest bit rate from the video index information.
  • the terminal acquires the download address of the Nth video segment in the 1000 kbps sub-file information from the video index information.
  • the terminal can select the download address of the Nth video file in the sub-file information with the smallest bit rate by determining that there is no sub-file information that satisfies the code rate corresponding to the download rate of the terminal, thereby reducing the playing of the video.
  • the probability of fragmentation is the probability of fragmentation.
  • An embodiment of the present invention further provides a method for acquiring video fragments. As shown in FIG. 4, the method includes:
  • the cache server acquires and saves video index information of the video file from the source station.
  • the video index information includes primary file information and sub-file information.
  • the cache server obtains the video index information of each video segment from the source station, and saves the video index information of each video segment to the local cache of the cache server.
  • the cache server will record the storage path of the video index information of the video file, wherein the video index information is represented by the URL of the video index information.
  • the video index information is http://youku/test.m3u8, Http://youku/test1500.m3u8, http://youku/test2500.m3u8 and http://youku/test3500.m3u8, the corresponding storage paths are /youku/test.m3u8, /youku/test1500.m3u8 , /youku/test2500.m3u8 and /youku/test3500.m3u8, as shown in Table 2.
  • Video index information URL Video index information local storage path Http://youku/test.m3u8 /youku/test.m3u8 Http://youku/test1000.m3u8 /youku/test1000.m3u8 Http://youku/test1500.m3u8 /youku/test1500.m3u8 Http://youku/test2000.m3u8 /youku/test2000.m3u8
  • the cache server monitors the number of times each video segment of the video file is requested, and obtains priority information of each video segment of the video file.
  • the cache server monitors the number of times each video segment of the video file is requested in the preset period to obtain the priority information of each video segment of the video file.
  • the priority information may be heat information.
  • the priority information of the video fragment is specifically: the number of times the video fragment is requested; or, according to the number of times the video fragment is requested, converted according to a predetermined rule.
  • the priority information of the video fragment is 300, or the number of times the video fragment is requested 300, and the priority information is converted according to a predetermined rule, which may be 3;
  • the predetermined rule may be: the number of times the video fragment is requested is divided by 100, that is, DIV (the number of times the video fragment is requested, 100).
  • the cache server periodically obtains priority information corresponding to each video segment of the video file.
  • the cache server acquires priority information corresponding to each video segment of the video file every hour, half day, or day. It is not limited in the embodiment of the present invention.
  • the cache server adds the priority information corresponding to each video segment of the obtained video file to the video index information.
  • each video segment has video index information corresponding thereto, and the cache server adds the priority information corresponding to each video segment of the obtained video file to the video index corresponding to each video segment. Information.
  • the cache server stores the local storage path of the video fragment, the priority information, and whether it is locally cached according to a specific storage format, as shown in Table 3.
  • the "1" representation is stored locally, and the "0" representation is not stored locally.
  • the cache server receives a request for acquiring video index information sent by the terminal.
  • the cache server sends the video index information to the terminal, so that the terminal determines, according to the video index information, a download address of the video segment that needs to be downloaded.
  • the cache server when the cache server receives the request for acquiring the video index information sent by the terminal, the cache server first sends the main file information to the terminal, and then parses the main file information through the terminal to obtain all the sub-file information.
  • the cache server receives the request message carrying the download address of all the sub-file information, and the cache server sends all the sub-file information to the terminal, so that the terminal determines the download rate of the terminal and the priority information in the sub-file information.
  • the download address of the video shard that needs to be downloaded.
  • the method for obtaining a video segmentation provided by the embodiment of the present invention is compared with the video segmentation obtained by the prior art.
  • the cache server obtains the video by monitoring the number of times each video segment of the video file is requested.
  • the priority information of the fragment, and the priority information of each video fragment is added to
  • the video index information enables the terminal to determine the probability that each video segment is stored in the cache server by using the priority information in the video index information of the video segmentation, so that the video segment that is more likely to be locally cached can be preferentially selected.
  • the probability of the video server obtaining the video fragment from the source station is reduced, so that the time for the terminal to obtain the video fragment can be reduced, and the delay of playing the video fragment can be further reduced.
  • step 404 the cache server adds the priority information corresponding to each video segment of the acquired video file to the video.
  • the index information may also include the step 501 as shown in FIG. 5, the step 404, the cache server adds the priority information corresponding to each video segment of the obtained video file to the video index information, and may further include, for example, Steps 502-503 shown in Figure 5.
  • the cache server determines whether each video fragment of the video file is cached locally.
  • the cache server adds the priority information corresponding to the obtained video fragment to the video index information.
  • the video segmentation http://youku/test1500/0.ts and the local storage state 1 of the video slice http://youku/test1500/1.ts characterize the above two video points.
  • the slice is stored locally, and the priority information corresponding to the two video fragments respectively is added to the corresponding video index information.
  • the cache server sets the priority information corresponding to the obtained video fragment to 0 or null, and adds the information to the video index information.
  • the local storage state of the video fragment http://youku/test1500/2.ts is 0, indicating that the video fragment is not stored locally, and the priority corresponding to the video fragment is Information 0 is either empty and added to the video index information.
  • the priority information of the video fragments in the cache server is constantly changing, and the video fragment is preferentially obtained in the embodiment of the present invention.
  • the level information and the addition of the priority information into the video index information are performed periodically, for example, when the traffic volume is small every morning. Therefore, when the terminal obtains the video index information from the cache server at a certain moment, the priority information of the video fragment included in the video index information may be inaccurate (because it is the data in the early morning), which is also the implementation of the present invention.
  • the meaning of the priority information Since the storage space of the cache server is limited, when the cache server has insufficient space, video fragments with low priority information are preferentially eliminated. Video sharding with high priority information means that the video shards continue to be cached on the cache server for a higher period of time.
  • the cache server can add the priority information corresponding to the video fragment to the corresponding video index information, or set the priority information corresponding to the video fragment to 0 by determining whether the video fragment is locally cached. Alternatively, it is empty and added to the corresponding video index information, so that the terminal can determine whether the video fragment is stored locally through the priority information of the video fragment in the video index information, and if the download rate is met,
  • the video clips that are cached locally are preferentially selected, thereby reducing the probability that the cache server obtains video fragments from the source station, thereby reducing the time for the terminal to obtain video fragments.
  • the embodiment of the present invention further provides an apparatus for acquiring a video fragment, where the apparatus may be located in the terminal, and used to reduce the delay of acquiring the video fragment.
  • the apparatus includes: a determining unit 61, an obtaining unit 62, a transmitting unit 63, and a receiving unit 64.
  • the determining unit 61 is configured to determine, according to the trigger condition for acquiring the video fragment, that the video fragment that the terminal needs to acquire is the Nth video fragment of the video file.
  • N is a positive integer.
  • the triggering condition is that the rate conversion information input by the user is received; or the information of playing the card is received for receiving the video file; or the touch operation of the user is received, wherein the touch operation includes a drag operation.
  • the obtaining unit 62 is configured to obtain video index information of the video file from the cache server.
  • the video index information includes sub-file information of at least two code rates, and the sub-file information of each code rate includes download addresses of different video fragments and corresponding priority information.
  • the priority information is used to represent the probability that the video fragments stored in the cache server are eliminated.
  • the priority information includes: heat information, wherein the greater the heat information, the smaller the probability that the video fragments stored in the cache server corresponding to the heat information are eliminated.
  • the determining unit 61 is further configured to determine a download address of the Nth video slice according to the download rate of the terminal and the video index information acquired by the obtaining unit 62.
  • the sending unit 63 is configured to send a request message for acquiring a video fragment to the cache server.
  • the request message for acquiring the video fragment includes the download address of the Nth video fragment determined by the determining unit 61.
  • the receiving unit 64 is configured to receive the Nth video segment returned by the cache server.
  • the determining unit 61 is specifically configured to determine, according to the download rate of the terminal, sub-file information that meets a code rate corresponding to the download rate of the terminal.
  • the determining unit 61 is further configured to: obtain the Nth video in the sub-file information of the highest rate information of the Nth video segment from the sub-file information that meets the code rate corresponding to the download rate of the terminal.
  • the download address of the shard is further configured to: obtain the Nth video in the sub-file information of the highest rate information of the Nth video segment from the sub-file information that meets the code rate corresponding to the download rate of the terminal. The download address of the shard.
  • the determining unit 61 is further configured to determine, according to the download rate of the terminal, that there is no sub-file information that satisfies the code rate corresponding to the download rate of the terminal.
  • the determining unit 61 is further configured to obtain, from the video index information, a download address of the Nth video segment in the sub-file information with the smallest bit rate.
  • the apparatus for acquiring video fragments provided by the embodiment of the present invention, when the terminal needs to acquire the Nth video fragment of the video file, the terminal according to different codes in the video index information Rate the priority information of the Nth video segment and the download rate of the terminal itself, determine the download address of the Nth video segment corresponding to the code rate that meets the download rate and the highest priority information as the request address, and obtain the video score. sheet.
  • the solution provided by the embodiment of the present invention can reduce the probability of the cache server returning to the source, thereby reducing the time for the terminal to obtain the video fragment, and further reducing the delay of the terminal playing the video fragment.
  • the embodiment of the present invention provides another apparatus for acquiring video fragments.
  • the terminal first determines a code rate of a code rate download rate according to a terminal download rate, and determines, according to the priority information, the Nth video slice corresponding.
  • the download address so that the download rate of the terminal can be satisfied, and the Nth video segment can be directly obtained from the cache server without the cache server being first obtained from the source station.
  • the Nth video segment is taken and then sent to the terminal, so that the delay of acquiring the video segment can be further reduced.
  • the embodiment of the present invention further provides another apparatus for acquiring video fragments, where the apparatus may be located in a cache server for reducing delay of playing video information.
  • the apparatus includes: an obtaining unit 71, a saving unit 72, a monitoring unit 73, an adding unit 74, a receiving unit 75, and a transmitting unit 76.
  • the obtaining unit 71 is configured to acquire video index information of the video file from the source station.
  • the saving unit 72 is configured to save video index information of the video file.
  • the monitoring unit 73 is configured to monitor the number of times each video segment of the video file is requested, and obtain the priority information of each video segment of the video file.
  • the priority information of the video fragment is specifically: the number of times the video fragment is requested; or, according to the number of times the video fragment is requested, converted according to a predetermined rule.
  • the obtaining unit 71 is further configured to periodically acquire priority information corresponding to each video segment of the video file.
  • the adding unit 74 is further configured to add priority information corresponding to each video slice of the video file acquired by the obtaining unit 71 to the video index information.
  • the receiving unit 75 is configured to receive a request for acquiring video index information sent by the terminal.
  • the sending unit 76 is configured to send the video index information to the terminal, so that the terminal determines, according to the video index information, a download address of the video slice that needs to be downloaded.
  • the apparatus further includes: a determining unit 81;
  • the determining unit 81 is configured to determine whether each video slice of the video file is cached locally.
  • the adding unit 74 is specifically configured to: when the determining unit 81 determines that the video fragment cache is local, add the priority information corresponding to the acquired video fragment to the video index information; when the determining unit 81 determines that the video fragment is not cached in the When local, the priority information corresponding to the obtained video fragment is set to 0 or null, and is added to the video index information.
  • the cache server obtains the priority information of the video fragment by monitoring the number of times each video fragment of the video file is requested. Adding the priority information of each video fragment to the video index information enables the terminal to determine the probability that each video fragment is stored in the cache server by using the priority information in the video index information of the video fragment.
  • the video fragmentation that is more likely to be cached locally is preferentially selected, which reduces the probability that the cache server obtains video fragments from the source station, thereby reducing the time for the terminal to obtain video fragments, and further reducing the delay of playing video fragments.
  • the embodiment of the present invention provides another apparatus for acquiring video fragments.
  • the cache server can add the priority information corresponding to the video fragment to the corresponding video index information by determining whether the video fragment is locally cached, or The priority information corresponding to the video fragment is set to 0 or null, and is added to the corresponding video index information, so that the terminal can determine the video score by using the priority information in the video index information corresponding to the video fragment. Whether the slice is stored locally or not, and the video segmentation stored locally is preferentially selected, thereby reducing the time for the terminal to obtain the video segmentation.
  • the embodiment of the present invention further provides a terminal.
  • the terminal includes: a memory 901, a transceiver 902, and a processor 903.
  • the memory 901 and the transceiver 902 are respectively connected to the processor 903.
  • FIG. 9 is a diagram showing the structure of a terminal provided by another embodiment of the present invention for performing the authorization method implemented by the terminal in the foregoing embodiments of FIG. 2 and FIG. 3.
  • the memory 901 is configured to store computer executable program code.
  • Transceiver 902, and processor 903, are coupled to memory 901 and transceiver 902.
  • the program code includes instructions, and when the processor 903 executes the instructions, the instructions cause the network element to perform the following operations:
  • the video index information includes sub-file information of at least two code rates, and the sub-file information of each code rate includes download addresses of different video fragments and corresponding priority information;
  • the terminal provided by the embodiment of the present invention, when the terminal needs to acquire the Nth video fragment of the video file, the terminal according to the Nth code rate of the video index information
  • the priority information of the video fragment and the download rate of the terminal itself are determined, and the download address of the Nth video fragment corresponding to the code rate that meets the download rate and the highest priority information is determined as the request address, and the video fragment is obtained.
  • the solution provided by the present invention can reduce the probability of the cache server returning to the source, thereby reducing the time for the terminal to obtain the video fragment, and further reducing the delay of the terminal playing the video fragment.
  • the embodiment of the present invention provides a terminal, which determines a code rate of a code rate download rate according to a terminal download rate, and determines a download address corresponding to the Nth video segment according to the priority information, thereby
  • the N-th video segment can be directly obtained from the cache server, and the N-th video segment is obtained from the source station and then sent to the terminal, and then further Reduce the delay in obtaining video fragments.
  • the embodiment of the present invention further provides a cache server.
  • the cache server includes: a memory 1001, a transceiver 1002, and a processor 1003.
  • the transceiver 1002 and the memory 1001 are respectively processed and processed.
  • the device 1003 is connected.
  • FIG. 10 illustrates a structure of a cache server provided by another embodiment of the present invention for performing the authorization method implemented by the cache server in the foregoing embodiments of FIG. 4 and FIG. 5.
  • the memory 1001 is configured to store computer executable program code.
  • Transceiver 1002, and processor 1003, are coupled to memory and transceiver 1001.
  • the program code includes instructions that, when executed by the processor 1003, cause the memory 1001 to store computer executable program code.
  • transceiver 1002 a transceiver 1002, and a processor 1003 coupled to the memory 1001 and the transceiver 1002;
  • the program code includes an instruction, and when the processor executes the instruction, the instruction causes the network element to perform the following operations:
  • the cache server of the embodiment of the present invention obtains the priority information of the video fragment by monitoring the number of times each video fragment of the video file is requested, and each video is obtained.
  • the priority information of the fragment is added to the video index information, so that the terminal can determine the probability that each video fragment is stored in the cache server by using the priority information in the video index information of the video fragment, so that the priority can be preferentially selected.
  • the video fragmentation that may be cached locally reduces the probability that the cache server obtains video fragments from the source station, thereby reducing the time for the terminal to obtain video fragments, and further reducing the delay of playing video fragments.
  • the device for obtaining the video fragmentation provided by the embodiment of the present invention may implement the foregoing method embodiment.
  • the method and device for obtaining a video segmentation provided by the embodiment of the present invention may be applicable to the terminal directly acquiring the video segment to be acquired from the cache server, and playing the video segment. But it is not limited to this.
  • the storage medium may be a magnetic disk, an optical disk, a read-only memory (ROM), or a random access memory (RAM).

Landscapes

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

Abstract

本发明公开了一种终端、缓存服务器及获取视频分片的方法及装置,涉及信息技术领域,可以降低播放视频分片的时延。所述方法包括:首先根据获取视频分片的触发条件,确定终端需要获取的视频分片为视频文件的第N个视频分片,然后从缓存服务器获取视频文件的视频索引信息,其后根据终端的下载速率以及视频索引信息,确定第N个视频分片的下载地址,并向缓存服务器发送获取视频分片的请求消息,其中获取视频分片的请求消息包括第N个的视频分片的下载地址,最后接收缓存服务器返回的所述第N个视频分片。采用本发明提供的方法,可以有效的减小缓存服务器回源的概率,从而减少了终端获取视频分片的时间。

Description

终端、缓存服务器及获取视频分片的方法及装置
本申请要求于2015年09月30日提交中国专利局、申请号为201510644214.7,发明名称为“终端、缓存服务器及获取视频分片的方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本发明涉及信息技术领域,特别涉及一种终端、缓存服务器及获取视频分片的方法及装置。
背景技术
超文本传输协议流(英文全称:HyperText Transfer Protocol Streaming,英文缩写:HTTP Streaming)协议是基于超文本传输协议的流媒体传输协议,其中,该HTTP Streaming协议的特点是将视频文件进行分片存储,并能够生成视频索引信息以及视频分片,以使得视频文件能够顺利播放,其中,视频索引信息包括:主文件信息以及子文件信息。其中,主文件信息中包含该视频文件对应的不同码率的子文件信息的下载地址,子文件信息中包含该码率下视频文件的不同视频分片的下载地址。
目前,一种获取视频分片的方法,首先终端获取用户在门户网站上的选择视频文件的统一资源定位符(英文全称:Uniform Resource Locator,英文缩写:URL)URL,并向内容分发网络(英文全称:Content Delivery Network,英文缩写:CDN)中的调度服务器发送携带有上述URL的内容服务请求信息,以使得调度服务器选择合适的缓存服务器,并向终端发送该缓存服务器地址信息对应的URL,然后终端根据该缓存服务器地址信息对应的URL向该缓存服务器发送获取上述视频文件对应的主文件信息的请求信息,以使得缓存服务器向源站获取主文件信息。缓存服务器从源站获取主文件信息,并发送至终端,终端通过该主文件信息获取该视频文件对应的各个子文件信息的下载地址,并根据自身的下载速率,从主文件信息中确定一个低于自身下载速率的码率的子文件信息的下载地址,向缓存服务器发送请求该子文件信息的请求信息,其后,缓存 服务器从源站中获取上述码率对应的子文件信息,并发送至终端,以使得终端获取上述码率对应视频分片的下载地址,最后,终端向缓存服务器发送获取视频分片的请求消息,以使得缓存服务器从源站中获取该视频分片并发送至终端。
然而,当通过现有技术获取视频分片时,终端向缓存服务器请求该视频分片,由于缓存服务器中可能未存储该视频分片,需要向源站请求并获取该视频分片,再将获取到的视频分片发送至终端,从而增加了终端获取视频分片的时间,进而导致终端播放该视频分片的时延较长。
发明内容
本发明提供一种终端、缓存服务器及获取视频分片的方法及装置,可以降低终端播放视频分片的时延。
本发明采用的技术方案为:
第一方面,本发明提供一种获取视频分片的方法,所述方法用于终端获取视频文件的视频分片,包括:
根据获取视频分片的触发条件,确定所述终端需要获取的视频分片为所述视频文件的第N个视频分片,其中N为正整数;
从缓存服务器获取所述视频文件的视频索引信息,所述视频索引信息包括至少2个码率的子文件信息,每个码率的子文件信息包括不同视频分片的下载地址以及对应的优先级信息;
根据所述终端的下载速率以及所述视频索引信息,确定所述第N个视频分片的下载地址;
向所述缓存服务器发送获取视频分片的请求消息,所述获取视频分片的请求消息包括所述第N个的视频分片的下载地址;
接收所述缓存服务器返回的所述第N个视频分片。
结合第一方面,在第一方面的第一种可能的实现方式中,
所述触发条件,具体为:
接收到用户输入的码率转换信息;或者
接收到所述视频文件播放卡顿的信息;或者
接收到所述用户的触摸操作,其中,所述触摸操作包括拖拽操作。
结合第一方面或者第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述优先级信息用于表征存储在所述缓存服务器中的视频分片被淘汰的概率。
结合第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,所述优先级信息包括:热度信息,其中所述热度信息越大,表征所述热度信息对应的存储在所述缓存服务器中的视频分片被淘汰的概率越小。
结合第一方面第三种可能的实现方式,在第一方面第四种可能的实现方式中,当所述热度信息为0或者空时,表征所述缓存服务器中未存储所述热度信息对应的视频分片。
结合第一方面第三种可能的实现方式,在第一方面第五种可能的实现方式中,
所述根据终端的下载速率以及所述视频索引信息,确定所述第N个视频分片的下载地址的步骤,具体包括:
根据所述终端的下载速率,确定满足所述终端的下载速率对应的码率的子文件信息;
从所述满足所述终端的下载速率对应的码率的子文件信息中,获取所述第N个视频分片的热度信息最高的码率的子文件信息中的第N个视频分片的下载地址;
或者,
根据所述终端的下载速率,确定不存在满足所述终端的下载速率对应的码率的子文件信息;
从所述视频索引信息中获取码率最小的子文件信息中的第N个视频分片的下载地址。
第二方面,本发明提供了另一种获取视频分片的方法,所述方法应用于缓存服务器,所述方法包括:
从源站获取并保存视频文件的视频索引信息;
监控所述视频文件的每个视频分片分别被请求的次数,得到所述视频文件的每个视频分片的优先级信息;
周期性的获取所述视频文件的每个视频分片对应的优先级信息,并将获取的所述视频文件的每个视频分片对应的优先级信息添加到所述视频索引信息中;
接收终端发送的获取所述视频索引信息的请求;
将所述视频索引信息发送给所述终端,以便于所述终端根据所述视频索引信息确定需要下载的视频分片的下载地址。
结合第二方面,在第二方面第一种可能的实现方式中,所述视频分片的优先级信息,具体为:
所述视频分片被请求的次数;或者,
根据所述视频分片被请求的次数,按照预定的规则转换得到。
结合第二方面,在第二方面第二种可能的实现方式中,,在将获取的所述视频文件的每个视频分片对应的优先级信息添加到所述视频索引信息中之前,所述方法还包括:确定所述视频文件的每个视频分片是否缓存在本地;所述将所述视频文件的每个视频分片对应的优先级信息添加到所述视频索引信息中,具体为:当所述视频分片缓存在本地时,则将获取的所述视频分片对应的优先级信息添加到所述视频索引信息中;当所述视频分片没有缓存在本地时,则将获取的所述视频分片对应的优先级信息设置为0或者空,并添加到所述视频索引信息中。
第三方面,本发明提供了一种获取视频分片的装置,所述装置位于终端,其特征在于,包括:
确定单元,用于根据获取视频分片的触发条件,确定所述终端需要获取的视频分片为所述视频文件的第N个视频分片,其中N为正整数;
获取单元,用于从缓存服务器获取所述视频文件的视频索引信息,所述视频索引信息包括至少2个码率的子文件信息,每个码率的子文件信息包括不同视频分片的下载地址以及对应的优先级信息;
所述确定单元,还用于根据所述终端的下载速率以及所述获取单元获取的所述视频索引信息,确定所述第N个视频分片的下载地址;
发送单元,用于向所述缓存服务器发送获取视频分片的请求消息,所述获取视频分片的请求消息包括所述确定单元确定的所述第N个的视频分片的下载地址;
接收单元,用于接收所述缓存服务器返回的所述第N个视频分片。
结合第三方面,在第三方面的第一种可能的实现方式中,
所述触发条件为接收到用户输入的码率转换信息;或者
为接收到所述视频文件播放卡顿的信息;或者
为接收到所述用户的触摸操作,其中,所述触摸操作包括拖拽操作。
结合第三方面或者第三方面的第一种可能的实现方式,在第三方面第二种可能的实现方式中,
所述触发条件,具体为:
接收到用户输入的码率转换信息;或者
接收到所述视频文件播放卡顿的信息;或者
接收到所述用户的触摸操作,其中,所述触摸操作包括拖拽操作。
结合第三方面的第二种可能的实现方式,在第三方面的第三种可能的实现方式中,所述优先级信息包括:热度信息,其中所述热度信息越大,表征所述热度信息对应的存储在所述缓存服务器中的视频分片被淘汰的概率越小。
结合第三方面第三种可能的实现方式,在第三方面第四种可能的实现方式中,当所述热度信息为0或者空时,表征所述缓存服务器中未存储所述热度信息对应的视频分片。
结合第三方面第三种可能的实现方式,在第三方面第五种可能的实现方式中,
所述确定单元具体包括:确定模块、获取模块;
所述确定模块,用于根据所述终端的下载速率,确定满足所述终端的下载速率对应的码率的子文件信息;
所述获取模块,用于从所述确定模块确定的所述满足所述终端的下载速率对应的码率的子文件信息中,获取所述第N个视频分片的热度信息最高的码率的子文件信息中的第N个视频分片的下载地址;
或者,
所述确定模块,还用于根据所述终端的下载速率,确定不存在满足所述终端的下载速率对应的码率的子文件信息;
所述获取模块,还用于从所述视频索引信息中获取码率最小的子文件信息中的第N个视频分片的下载地址。
第四方面,本发明提供了另一种获取视频分片的装置,所述装置位于缓存服务器,所述装置包括:
获取单元,用于从源站获取视频文件的视频索引信息;
保存单元,用于保存所述视频文件的视频索引信息。
监控单元,用于监控所述视频文件的每个视频分片分别被请求的次数,得到所述视频文件的每个视频分片的优先级信息;
所述获取单元,还用于周期性的获取所述视频文件的每个视频分片对应的优先级信息;
添加单元单元,还用于将所述获取单元获取的所述视频文件的每个视频分片对应的优先级信息添加到所述视频索引信息中;
接收单元,用于接收终端发送的获取所述视频索引信息的请求;
发送单元,用于将所述视频索引信息发送给所述终端,以便于所述终端根据所述视频索引信息确定需要下载的视频分片的下载地址。
结合第四方面,在第四方面的第一种可能的实现方式中,,所述视频分片的优先级信息,具体为:
所述视频分片被请求的次数;或者,
根据所述视频分片被请求的次数,按照预定的规则转换得到。
结合第四方面,在第四方面第二种可能的实现方式中,所述装置还包括:确定单元;
所述确定单元,用于确定所述视频文件的每个视频分片是否缓存在本地;
所述添加单元,具体用于当所述确定单元确定所述视频分片缓存在本地时,则将获取的所述视频分片对应的优先级信息添加到所述视频索引信息中;当所述确定单元确定所述视频分片没有缓存在本地时,则将获取的所述视频分片对应的优先级信息设置为0或者空,并添加到所述视频索引信息中。
第五方面,本发明提供一种获取视频分片的终端,其特征在于,包括:
存储器,用于存储计算机可执行程序代码;
收发器,以及处理器,与所述存储器和所述收发器耦合;
其中所述程序代码包括指令,当所述处理器执行所述指令时,所述指令使所述网元执行以下操作:
根据获取视频分片的触发条件,确定所述终端需要获取的视频分片为所述视频文件的第N个视频分片,其中N为正整数;
从缓存服务器获取所述视频文件的视频索引信息,所述视频索引信息包括至少2个码率的子文件信息,每个码率的子文件信息包括不同视频分片的下载地址以及对应的优先级信息;
根据所述终端的下载速率以及所述视频索引信息,确定所述第N个视频分片的下载地址;
向所述缓存服务器发送获取视频分片的请求消息,所述获取视频分片的请求消息包括所述第N个的视频分片的下载地址;
接收所述缓存服务器返回的所述第N个视频分片。
第六方面,本发明提供了一种缓存服务器,其特征在于,包括:
存储器,用于存储计算机可执行程序代码;
收发器,以及处理器,与所述存储器和所述收发器耦合;
其中所述程序代码包括指令,当所述处理器执行所述指令时,所述指令使存储器,用于存储计算机可执行程序代码;
收发器,以及处理器,与所述存储器和所述收发器耦合;
其中所述程序代码包括指令,当所述处理器执行所述指令时,所述指令使 所述网元执行以下操作:
从源站获取并保存视频文件的视频索引信息;
监控所述视频文件的每个视频分片分别被请求的次数,得到所述视频文件的每个视频分片的优先级信息;
周期性的获取所述视频文件的每个视频分片对应的优先级信息,并将获取的所述视频文件的每个视频分片对应的优先级信息添加到所述视频索引信息中;
接收终端发送的获取所述视频索引信息的请求;
将所述视频索引信息发送给所述终端,以便于所述终端根据所述视频索引信息确定需要下载的视频分片的下载地址。
与现有技术获取播放的视频分片信息相比,本发明提供的终端及获取视频分片的方法,当终端需要获取视频文件的第N个视频分片时,终端根据视频索引信息中不同码率的第N个视频分片的优先级信息以及终端自身的下载速率,确定满足自身下载速率且优先级信息最高的码率对应的第N个视频分片的下载地址作为请求地址,获取视频分片。采用本发明提供的方案可以减少缓存服务器从源站获取视频分片的概率,从而可以减少终端获取视频分片的时间,进一步可以降低终端播放视频分片的时延。
与现有技术获取播放的视频分片信息相比,本发明缓存服务器通过监控视频文件的每个视频分片被请求的次数,得到该视频分片的优先级信息,并将每个视频分片的优先级信息添加至视频索引信息,能够使终端通过视频分片的视频索引信息中的优先级信息,确定每个视频分片在缓存服务器中存储的概率,从而可以优先选择有较大可能在本地缓存的视频分片,减少了缓存服务器从源站获取视频分片的概率,从而可以降低终端获取视频分片的时间,进一步可以降低播放视频分片的时延。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对本发明或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附 图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为内容分发网络的网络架构图;
图2为本发明实施例中一种获取视频分片的方法流程图;
图3为本发明实施例中另一种获取视频分片的方法流程图;
图4为本发明实施例中又一种获取视频分片的方法流程图;
图5为本发明实施例中又一种获取视频分片的方法流程图;
图6为本发明实施例中一种获取视频分片的装置结构示意图;
图7为本发明实施例中另一种获取视频分片的装置结构示意图;
图8为本发明实施例中又一种获取视频分片的装置结构示意图;
图9为本发明实施例中一种获取视频分片的结构示意图;
图10为本发明实施例中另一种获取视频分片的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明实施例提供了一种获取视频分片的系统架构,该系统包括:缓存服务器、内容源站、终端,可选的还包括门户网站,如图1所示,其中,终端与缓存服务器、缓存服务器与源站以及门户网站与终端之间分别存在通信连接。
例如,终端打开搜狐的门户网站,点击播放“老友记”的链接,并确定需要获取“老友记”的第一个视频分片,则终端向缓存服务器请求该“老友记”对应的视频文件的主文件信息,若缓存服务器中存储着“老友记”对应的主文件信息,则缓存服务器直接返回该视频文件的主文件信息,若缓存服务器中未存储“老友记”对应的主文件信息,则缓存服务器从源站中获取该视频文件的主文件信息,在发送至终端,终端解析主文件信息,以获取所有子文件信息的下载地址,并向缓存服务器发送携带有所有子文件下载地址的请求消息,缓存 服务器获取该视频文件的所有子文件信息,并发送至终端,终端根据自身的下载速率,从该视频文件的所有子文件信息中选择需要获取的“老友记”的第一个视频分片的下载地址,并向缓存服务器发送携带有该下载地址的请求消息,缓存服务器检测本地是否存储有该视频分片,若存储有该视频分片,则返回至终端;若未存储,则从源站获取后,再发送至终端。
本发明实施例提供一种获取视频分片的方法,能够降低终端获取视频分片的时延,如图2所示,所述方法包括:
201、终端根据获取视频分片的触发条件,确定终端需要获取的视频分片为视频文件的第N个视频分片。
其中,N为正整数。
在实际组网中,为了适应终端不同下载速率的需求,每个视频文件在源站会存在不同码率的版本;在本发明实施例中,每个视频文件被分割成多个视频分片进行存储。
对于本发明实施例,每个视频文件可以每10秒(s)进行切片,并且每个视频文件均存在不同的码率,因此该视频文件的每个视频分片均存在不同的码率。
例如,一个30s的视频文件,0~10s可以为第1个视频切片、10~20s可以为第2个视频切片,20~30s可以为第3个视频切片,并且第1个视频分片、第2个视频分片以及第3个视频分片对应的码率均可以包括:1000kbps、1500Kbps、2000kbps,如表一所示。
表一视频文件的不同码率的视频分片
Figure PCTCN2016090067-appb-000001
对于本发明实施例,触发条件,具体为:接收到用户输入的码率转换信息;或者接收到所述视频文件播放卡顿的信息;或者接收到用户的触摸操作,其中, 触摸操作包括拖拽操作。
对于本发明实施例,当终端接收到用户输入的码率转换信息,例如极速转化为高清,终端确定用户此时需要获取的视频分片为该视频文件的第几个视频分片,例如,当终端接收到用户输入的码率转换信息时,终端将要播放至该视频文件中第15秒(s)处,则终端需要获取该视频文件的第2个视频分片。
对于本发明实施例,当终端检测到正在播放的视频文件出现播放卡顿时,终端需要确定将要播放的视频分片。例如,终端在播放该视频文件的第15s处出现播放卡顿的现象,则终端确定需要获取的视频分片为该视频文件的第2个视频分片。
对于本发明实施例,当终端接收到用户的拖拽操作时,终端需要确定用户拖拽的位置,以确定将要播放的视频分片。例如,所述用户拖拽后的位置位于该视频文件的第15s处,则确定终端需要获取的视频分片为该视频文件的第2个视频分片。
202、终端从缓存服务器获取视频文件的视频索引信息。
其中,视频索引信息包括至少2个码率的子文件信息,每个码率的子文件信息包括不同视频分片的下载地址以及对应的优先级信息。
对于本发明实施例,优先级信息用于表征存储在缓存服务器中的视频分片被淘汰的概率。其中,优先级信息越大,表征存储在缓存服务器中的视频分片被淘汰的概率越小,优先级信息越小,表征存储在缓存服务器中的视频分片被淘汰的概率越大。
可选的,优先级信息包括:热度信息。其中,热度信息越大,表征热度信息对应的存储在缓存服务器中的视频分片被淘汰的概率越小。在本发明实施例中,当热度信息为0或者空时,表征缓存服务器中未存储热度信息对应的视频分片。
对于本发明实施例,每个视频文件都有一个对应的视频索引信息,每个视频文件对应的视频索引信息由缓存服务器从视频文件存储的源站获取并保存在本地。在本发明实施例中,视频索引信息包括至少2个不同码率的子文件信息, 其中,每个码率的子文件信息中包含该码率下不同视频分片的下载地址以及对应的优先级信息。
对于本发明实施例,终端首先从缓存服务器中获取需要获取的视频分片对应的主文件信息,并从主文件信息中获取所有码率视频分片对应的子文件信息的下载地址,然后根据下载地址,从缓存服务器中获取所有码率视频分片的子文件信息。具体的,终端获取的视频索引信息可以为:
http://youku/test1000.m3u8//码率为1000kbps的子文件信息
#EXTM3U
#EXT-X-TARGETDURATION:2
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:2,
http://youku/test1000/0.ts/100//第1个视频分片的下载地址
                       //http://youku/test1000/0.ts,优先级信息为100
#EXTINF:2,
http://youku/test1000/1.ts/200  //第2个视频分片的下载地址
                         //http://youku/test1000/1.ts,优先级信息为200
#EXTINF:2,
http://youku/test1000/2.ts    //第3个视频分片的下载地址为
                         //http://youku/test1000/2.ts,优先级信息为空,
                        //表明缓存服务器本地没有缓存该视频分片
#EXTINF:2,
#EXT-X-ENDLIST
http://youku/test1500.m3u8    //码率为1500kbps的子文件信息
#EXTM3U
#EXT-X-TARGETDURATION:2
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:2,
http://youku/test2000/0.ts/100   //第1个视频分片的下载地址为
                         //http://youku/test1500/0.ts,优先级信息为100
#EXTINF:2,
http://youku/test1500/1.ts/150  //第2个视频分片的下载地址为
                           //http://youku/test1500/1.ts,优先级信息为150
#EXTINF:2,
http://youku/test1500/2.ts/20  //第3个视频分片的下载地址为
                            //http://youku/test1500/2.ts,优先级信息20
#EXTINF:2,
#EXT-X-ENDLIST
http://youku/test2000.m3u8  //码率为2000kbps的子文件信息
#EXTM3U
#EXT-X-TARGETDURATION:2
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:2,
http://youku/test2000/0.ts/30  //第1个视频分片的下载地址为
                       //http://youku/test2000/0.ts,优先级信息为30
#EXTINF:2,
http://youku/test1500/1.ts/50  //第2个视频分片的下载地址为
                       //http://youku/test1500/1.ts,优先级信息为50
#EXTINF:2,
http://youku/test1500/2.ts/10  //第3个视频分片的下载地址为
                         //http://youku/test1500/2.ts,优先级信息10
#EXTINF:2,
#EXT-X-ENDLIST
203、终端根据终端的下载速率以及视频索引信息,确定第N个视频分片的下载地址。
对于本发明实施例,终端的下载速率包括:该终端的历史下载速率或者该 终端的当前下载速率。
对于本发明实施例,由于每个视频文件包括至少两个不同码率的版本,所以该视频文件中的每个视频分片至少包含两个不同码率的版本,因此,终端首先根据下载速率,确定符合该下载速率的视频分片的码率,然后若符合该下载速率的视频分片的个数大于或者等于2,则终端根据每个码率的视频分片的优先级信息,确定优先级信息较高的码率的视频分片,并从该视频分片对应的子文件信息中获取该码率视频分片的下载地址。以步骤201以及步骤202的例子来说,终端需要获取第2个视频分片,其中,1000kbps码率的版本的第2个视频分片的优先级信息为200,1500kbps码率的版本的第2个视频分片的优先级信息为150,2000kbps码率的版本的第2个视频分片的优先级信息为50。假设终端当前的下载速率为1600kbps,终端确定1000kbps和1500kbps两个码率的视频分片满足终端当前下载速率的要求,进一步的,由于1000kbps码率的第2个视频分片对应的优先级最高,所以终端确定1000kbps码率的第2个视频分片的下载地址,即http://youku/test1000/1.ts,为终端需要获取的视频分片的下载地址。
204、终端向缓存服务器发送获取视频分片的请求消息。
其中,获取视频分片的请求消息包括第N个的视频分片的下载地址。
对于本发明实施例,当终端确定需要获取的视频分片后,从该视频分片对应的子文件信息中获取该视频分片的下载地址,并将需要的视频分片对应的下载地址通过请求消息发送至缓存服务器。
例如,终端需要获取的视频分片的下载地址为http://youku/test1000/1.ts,则终端将携带有下载地址http://youku/test1000/1.ts,的视频分片请求消息发送至缓存服务器。
205、终端接收缓存服务器返回的第N个视频分片。
对于本发明实施例,当终端向缓存服务器请求该视频分片后,将接收后续缓存服务器返回的视频分片。
本发明实施例提供的获取视频分片的方法,首先根据获取视频分片的触发条件,确定终端需要获取的视频分片为视频文件的第N个视频分片,。与现有技 术获取视频分片相比,本发明实施例中当终端需要获取视频文件的第N个视频分片时,终端根据视频索引信息中不同码率的第N个视频分片的优先级信息以及终端自身的下载速率,确定满足自身下载速率且优先级信息最高的码率对应的第N个视频分片的下载地址作为请求地址,获取视频分片。采用本发明提供的方案可以减少缓存服务器回源的概率,从而可以减少终端获取视频分片的时间,进一步可以降低终端播放视频分片的时延。
本发明实施例的另一种可能的实现方式,在如图2所示的实现方式的基础上,步骤203、终端根据终端的下载速率以及视频索引信息,确定第N个视频分片的下载地址,具体还可以包括如图3所示的步骤301-304。
301、终端根据终端的下载速率,确定满足终端的下载速率对应的码率的子文件信息。
对于本发明实施例,终端根据终端的下载速率,确定需要获取的视频分片对应的码率小于或者等于该终端的下载速率。
例如,若终端当前的下载速率为1600比特率(kbps),并且终端需要获取的视频分片存在三种码率,分别为1000kbps,1500kbps以及2000kbps,则满足终端下载速率的视频分片的码率分别为1000kbps以及1500kbps。
302、终端从满足终端的下载速率对应的码率的子文件信息中,获取第N个视频分片的热度信息最高的码率的子文件信息中的第N个视频分片的下载地址。
对于本发明实施例,终端首先确定满足终端下载速率的视频分片对应的码率,然后从该码率对应子文件信息中获取第N个视频分片对应的热度信息,获取热度信息最高的码率的子文件信息中第N个视频分片的下载地址。
对于本发明实施例,通过终端先根据终端下载速率,确定码率下载速率的码率,并根据热度信息,确定终端需要获取的视频分片对应的下载地址,从而可以在满足终端的下载速率的前提下,较大概率的从缓存服务器中能够直接获取到该视频分片,而不需要缓存服务器先从源站获取视频分片,再发送至终端,降低了终端获取视频分片的时间,进而可以进一步地降低播放视频分片的时延。
303、终端根据终端的下载速率,确定不存在满足终端的下载速率对应的码率的子文件信息。
对于本发明实施例,终端根据终端的下载速率,确定该视频文件对应的码率均大于该终端的下载速率,即不存在满足终端的下载速率对应码率的子文件信息。
例如,终端的下载速率为900kbps,而该视频文件的码率分别为1000kbps,1500kbps以及2000kbps,则该视频文件的码率均大于终端的下载速率,即不存在满足终端下载速率对应码率的子文件信息。
304、终端从视频索引信息中获取码率最小的子文件信息中的第N个视频分片的下载地址。
对于本发明实施例,若不存在满足终端下载速率的码率,则终端从视频索引信息中获取码率最小的子文件信息中的第N个视频分片的下载地址。
例如,终端的下载速率为900kbps,而该视频文件的码率分别为1000kbps,1500kbps以及2000kbps,则终端从视频索引信息中获取1000kbps的子文件信息中的第N个视频分片的下载地址。
对于本发明实施例,终端通过确定不存在满足终端的下载速率对应的码率的子文件信息,能够选择码率最小的子文件信息中第N个视频文件的下载地址,从而可以降低播放该视频分片卡顿的概率。
本发明实施例还提供了一种获取视频分片的方法,如图4所示,所述方法包括:
401、缓存服务器从源站获取并保存视频文件的视频索引信息。
对于本发明实施例,视频索引信息包括主文件信息以及子文件信息。
对于本发明实施例,缓存服务器从源站中获取每个视频分片的视频索引信息,并将每个视频分片的视频索引信息保存至该缓存服务器的本地缓存中。在本发明实施例中,缓存服务器将记录视频文件的视频索引信息的存储路径,其中视频索引信息通过视频索引信息的URL表示。
例如,视频索引信息分别为http://youku/test.m3u8、 http://youku/test1500.m3u8、http://youku/test2500.m3u8以及http://youku/test3500.m3u8,则对应的存储路径分别为/youku/test.m3u8、/youku/test1500.m3u8、/youku/test2500.m3u8以及/youku/test3500.m3u8,如表二所示。
表二视频索引信息的存储
视频索引信息URL 视频索引信息本地存储路径
http://youku/test.m3u8 /youku/test.m3u8
http://youku/test1000.m3u8 /youku/test1000.m3u8
http://youku/test1500.m3u8 /youku/test1500.m3u8
http://youku/test2000.m3u8 /youku/test2000.m3u8
402、缓存服务器监控视频文件的每个视频分片分别被请求的次数,得到视频文件的每个视频分片的优先级信息。
对于本发明实施例,缓存服务器监控视频文件的每个视频分片在预置周期内分别被请求的次数,以得到该视频文件的每个视频分片的优先级信息。其中,优先级信息可以为热度信息。
其中,视频分片的优先级信息,具体为:视频分片被请求的次数;或者,根据视频分片被请求的次数,按照预定的规则转换得到。
例如,若视频分片被请求的次数为300,则该视频分片的优先级信息为300,或者将视频分片被请求的次数300,按照预定的规则转换得到优先级信息可以为3;其中,预定的规则可以为:视频分片被请求的次数除以100取商,即DIV(视频分片被请求的次数,100)。
403、缓存服务器周期性的获取视频文件的每个视频分片对应的优先级信息。
对于本发明实施例,缓存服务器每隔一个小时、半天或者一天获取视频文件的每个视频分片对应的优先级信息。在本发明实施例中不做限定。
404、缓存服务器将获取的视频文件的每个视频分片对应的优先级信息添加到视频索引信息中。
对于本发明实施例,每个视频分片均存在与其相对应的视频索引信息,缓存服务器将获取的视频文件的每个视频分片对应的优先级信息添加至每个视频分片对应的视频索引信息中。
对于本发明实施例,缓存服务器按照特定的存储格式存储着视频分片的本地存储路径、优先级信息以及是否在本地缓存,如表三所示。
表三视频分片的存储
视频分片URL 本地存储路径 优先级信息 本地是否缓存
http://youku/test1500/0.ts /youku/test1500/0.ts 100 1
http://youku/test1500/1.ts /youku/test1500/1.ts 200 1
http://youku/test1500/2.ts /youku/test1500/2.ts 5 0
其中,“1”表征在本地存储,“0”表征未在本地存储。
405、缓存服务器接收终端发送的获取视频索引信息的请求。
406、缓存服务器将视频索引信息发送给终端,以便于终端根据视频索引信息确定需要下载的视频分片的下载地址。
需要说明的是,对于本发明实施例,当缓存服务器接收到终端发送的获取视频索引信息的请求时,缓存服务器先向终端发送主文件信息,然后通过终端解析主文件信息,得到所有子文件信息的下载地址时,缓存服务器接收到携带有所有子文件信息下载地址的请求消息,缓存服务器将所有子文件信息发送至终端,以便于终端通过终端的下载速率以及子文件信息中的优先级信息确定需要下载的视频分片的下载地址。
本发明实施例提供的获取视频分片的方法,与现有技术获取播放的视频分片相比,本发明实施例缓存服务器通过监控视频文件的每个视频分片被请求的次数,得到该视频分片的优先级信息,并将每个视频分片的优先级信息添加至 视频索引信息,能够使终端通过视频分片的视频索引信息中的优先级信息,确定每个视频分片在缓存服务器中存储的概率,从而可以优先选择有较大可能在本地缓存的视频分片,减少了缓存服务器从源站获取视频分片的概率,从而可以降低终端获取视频分片的时间,进一步可以降低播放视频分片的时延。
本发明实施例的另一种可能的实现方式,在如图4所示的实现方式的基础上,步骤404、缓存服务器将获取的视频文件的每个视频分片对应的优先级信息添加到视频索引信息中,之前还可以包括如图5所示的步骤501,步骤404、缓存服务器将获取的视频文件的每个视频分片对应的优先级信息添加到视频索引信息中,具体还可以包括如图5所示的步骤502-503。
501、缓存服务器确定视频文件的每个视频分片是否缓存在本地。
502、当视频分片缓存在本地时,缓存服务器将获取的视频分片对应的优先级信息添加到视频索引信息中。
例如,表四中所示,视频分片http://youku/test1500/0.ts以及视频分片http://youku/test1500/1.ts的本地存储状态1,则表征上述两个视频分片在本地存储,则将上述两个视频分片分别对应的优先级信息添加至对应的视频索引信息中。
503、当视频分片没有缓存在本地时,缓存服务器将获取的视频分片对应的优先级信息设置为0或者空,并添加到视频索引信息中。
例如,表四中所示,视频分片http://youku/test1500/2.ts的本地存储状态为0,则表征该视频分片未在本地存储,则将该视频分片对应的优先级信息0或者为空,添加至视频索引信息中。
需要说明的是,由于缓存服务器每时每刻都接收大量终端的请求,所以缓存服务器中的视频分片的优先级信息一直处于不停的变化中,本发明实施例中获取视频分片的优先级信息,并将优先级信息添加进视频索引信息中是周期性进行的,例如,可以在每天凌晨业务流量较小的时候。因此当终端某一时刻从缓存服务器上获取的视频索引信息时,该视频索引信息包括的视频分片的优先级信息可能是不准确的(因为是当天凌晨时的数据),这也是本发明实施例中引 入优先级信息的意义。由于缓存服务器的存储空间是有限的,当缓存服务器空间不足时,优先会淘汰优先级信息低的视频分片。优先级信息高的视频分片意味着未来一段时间内,该视频分片继续缓存在缓存服务器上的概率更高。
对于本发明实施例,缓存服务器通过确定视频分片是否在本地缓存,能够将视频分片对应的优先级信息添加至对应的视频索引信息,或者将该视频分片对应的优先级信息设置为0或者为空,并将其添加至对应的视频索引信息,从而可以使终端通过视频索引信息中视频分片的优先级信息确定该视频分片是否在本地存储,并在满足下载速率的前提下,优先选择较大概率缓存在本地的视频分片,从而减少了缓存服务器从源站获取视频分片的概率,进而可以降低终端获取视频分片的时间。
进一步地,作为对图2及图3所示方法的实现,本发明实施例还提供了一种获取视频分片的装置,该装置可以位于终端中,用于降低获取视频分片的时延,如图6所示,所述装置包括:确定单元61、获取单元62、发送单元63、接收单元64。
确定单元61,用于根据获取视频分片的触发条件,确定终端需要获取的视频分片为所述视频文件的第N个视频分片。
其中N为正整数。
其中,触发条件为接收到用户输入的码率转换信息;或者为接收到视频文件播放卡顿的信息;或者为接收到用户的触摸操作,其中,触摸操作包括拖拽操作。
获取单元62,用于从缓存服务器获取视频文件的视频索引信息.
其中,视频索引信息包括至少2个码率的子文件信息,每个码率的子文件信息包括不同视频分片的下载地址以及对应的优先级信息。
其中,优先级信息用于表征存储在缓存服务器中的视频分片被淘汰的概率。
其中,优先级信息包括:热度信息,其中热度信息越大,表征热度信息对应的存储在缓存服务器中的视频分片被淘汰的概率越小。
其中,当热度信息为0或者空时,表征缓存服务器中未存储热度信息对应的 视频分片。
确定单元61,还用于根据终端的下载速率以及获取单元62获取的视频索引信息,确定第N个视频分片的下载地址。
发送单元63,用于向缓存服务器发送获取视频分片的请求消息。
其中,获取视频分片的请求消息包括确定单元61确定的第N个的视频分片的下载地址。
接收单元64,用于接收缓存服务器返回的第N个视频分片。
确定单元61,具体用于根据终端的下载速率,确定满足终端的下载速率对应的码率的子文件信息。
确定单元61,具体还用于从所述满足终端的下载速率对应的码率的子文件信息中,获取第N个视频分片的热度信息最高的码率的子文件信息中的第N个视频分片的下载地址。
确定单元61,具体还用于根据终端的下载速率,确定不存在满足终端的下载速率对应的码率的子文件信息。
确定单元61,具体还用于从视频索引信息中获取码率最小的子文件信息中的第N个视频分片的下载地址。
与现有技术获取播放的视频分片信息相比,本发明实施例提供的获取视频分片的装置,当终端需要获取视频文件的第N个视频分片时,终端根据视频索引信息中不同码率的第N个视频分片的优先级信息以及终端自身的下载速率,确定满足自身下载速率且优先级信息最高的码率对应的第N个视频分片的下载地址作为请求地址,获取视频分片。采用本发明实施例提供的方案可以减少缓存服务器回源的概率,从而可以减少终端获取视频分片的时间,进一步可以降低终端播放视频分片的时延。
进一步地,本发明实施例提供了另一种获取视频分片的装置,通过终端先根据终端下载速率,确定码率下载速率的码率,并根据优先级信息,确定第N个视频分片对应的下载地址,从而可以既满足终端的下载速率,又可以从缓存服务器中能够直接获取到该第N个视频分片,而不需要缓存服务器先从源站获 取第N个视频分片,再发送至终端,进而可以进一步地降低获取视频分片的时延。
进一步地,作为对图4及图5所示方法的实现,本发明实施例还提供了另一种获取视频分片的装置,该装置可以位于缓存服务器中,用于降低播放视频信息的时延,如图7所示,所述装置包括:获取单元71、保存单元72、监控单元73、添加单元74、接收单元75、发送单元76。
获取单元71,用于从源站获取视频文件的视频索引信息。
保存单元72,用于保存视频文件的视频索引信息。
监控单元73,用于监控视频文件的每个视频分片分别被请求的次数,得到视频文件的每个视频分片的优先级信息。
其中,视频分片的优先级信息,具体为:视频分片被请求的次数;或者,根据视频分片被请求的次数,按照预定的规则转换得到。
获取单元71,还用于周期性的获取视频文件的每个视频分片对应的优先级信息。
添加单元74,还用于将获取单元71获取的视频文件的每个视频分片对应的优先级信息添加到视频索引信息中。
接收单元75,用于接收终端发送的获取视频索引信息的请求。
发送单元76,用于将视频索引信息发送给终端,以便于终端根据视频索引信息确定需要下载的视频分片的下载地址。
进一步地,如图8所示,所述装置还包括:确定单元81;
确定单元81,用于确定视频文件的每个视频分片是否缓存在本地。
添加单元74,具体用于当确定单元81确定视频分片缓存在本地时,则将获取的视频分片对应的优先级信息添加到视频索引信息中;当确定单元81确定视频分片没有缓存在本地时,则将获取的视频分片对应的优先级信息设置为0或者空,并添加到视频索引信息中。
与现有技术获取播放的视频分片信息相比,本发明实施例缓存服务器通过监控视频文件的每个视频分片被请求的次数,得到该视频分片的优先级信息, 并将每个视频分片的优先级信息添加至视频索引信息,能够使终端通过视频分片的视频索引信息中的优先级信息,确定每个视频分片在缓存服务器中存储的概率,从而可以优先选择有较大可能在本地缓存的视频分片,减少了缓存服务器从源站获取视频分片的概率,从而可以降低终端获取视频分片的时间,进一步可以降低播放视频分片的时延。
进一步地,本发明实施例提供了另一种获取视频分片的装置,缓存服务器通过确定视频分片是否在本地缓存,能够将视频分片对应的优先级信息添加至对应的视频索引信息,或者将该视频分片对应的优先级信息设置为0或者为空,并将其添加至对应的视频索引信息,从而可以使终端通过视频分片对应的视频索引信息中的优先级信息确定该视频分片是否在本地存储,并在满足下载速率的前提下,优先选择在本地存储的视频分片,进而可以降低终端获取视频分片的时间。
再进一步地,本发明实施例还提供了一种终端,如图9所示,所述终端包括:存储器901、收发器902、处理器903。所述存储器901、收发器902分别与处理器903相连接。图9描述了本发明另一个实施例提供的终端的结构,用于执行前述图2及图3所述实施例的终端实施的授权方法。
存储器901,用于存储计算机可执行程序代码。
收发器902,以及处理器903,与存储器901和收发器902耦合。
其中程序代码包括指令,当处理器903执行所述指令时,指令使网元执行以下操作:
根据获取视频分片的触发条件,确定终端需要获取的视频分片为视频文件的第N个视频分片,其中N为正整数;
从缓存服务器获取视频文件的视频索引信息,视频索引信息包括至少2个码率的子文件信息,每个码率的子文件信息包括不同视频分片的下载地址以及对应的优先级信息;
根据终端的下载速率以及视频索引信息,确定第N个视频分片的下载地址;
向缓存服务器发送获取视频分片的请求消息,获取视频分片的请求消息包 括所述第N个的视频分片的下载地址。
接收所述缓存服务器返回的第N个视频分片。
与现有技术获取播放的视频分片信息相比,本发明实施例提供的终端,当终端需要获取视频文件的第N个视频分片时,终端根据视频索引信息中不同码率的第N个视频分片的优先级信息以及终端自身的下载速率,确定满足自身下载速率且优先级信息最高的码率对应的第N个视频分片的下载地址作为请求地址,获取视频分片。采用本发明提供的方案可以减少缓存服务器回源的概率,从而可以减少终端获取视频分片的时间,进一步可以降低终端播放视频分片的时延。
进一步地,本发明实施例提供了一种终端,通过终端先根据终端下载速率,确定码率下载速率的码率,并根据优先级信息,确定第N个视频分片对应的下载地址,从而可以既满足终端的下载速率,又可以从缓存服务器中能够直接获取到该第N个视频分片,而不需要缓存服务器先从源站获取第N个视频分片,再发送至终端,进而可以进一步地降低获取视频分片的时延。
再进一步地,本发明实施例还提供了一种缓存服务器,如图10所示,所述缓存服务器包括:存储器1001、收发器1002、处理器1003,所述收发器1002、存储器1001分别与处理器1003相连接,图10描述了本发明另一个实施例提供的缓存服务器的结构,用于执行前述图4及图5所述实施例的缓存服务器实施的授权方法。
存储器1001,用于存储计算机可执行程序代码。
收发器1002,以及处理器1003,与存储器和收发器1001耦合。
其中程序代码包括指令,当处理器1003执行指令时,指令使存储器1001,用于存储计算机可执行程序代码。
收发器1002,以及处理器1003,与存储器1001和收发器1002耦合;
其中程序代码包括指令,当处理器执行指令时,指令使网元执行以下操作:
从源站获取并保存视频文件的视频索引信息;
监控视频文件的每个视频分片分别被请求的次数,得到视频文件的每个视 频分片的优先级信息;
周期性的获取视频文件的每个视频分片对应的优先级信息,并将获取的视频文件的每个视频分片对应的优先级信息添加到所述视频索引信息中;
接收终端发送的获取视频索引信息的请求;
将所述视频索引信息发送给终端,以便于终端根据视频索引信息确定需要下载的视频分片的下载地址。
与现有技术获取播放的视频分片信息相比,本发明实施例缓存服务器通过监控视频文件的每个视频分片被请求的次数,得到该视频分片的优先级信息,并将每个视频分片的优先级信息添加至视频索引信息,能够使终端通过视频分片的视频索引信息中的优先级信息,确定每个视频分片在缓存服务器中存储的概率,从而可以优先选择有较大可能在本地缓存的视频分片,减少了缓存服务器从源站获取视频分片的概率,从而可以降低终端获取视频分片的时间,进一步可以降低播放视频分片的时延。
需要说明的是,本发明实施例中提供的获取视频分片的装置中各单元所对应的其他相应描述,可以参考图2、图3、图4及图5中的对应描述,在此不再赘述。
本发明实施例提供的获取视频分片的装置可以实现上述提供的方法实施例,具体功能实现请参见方法实施例中的说明,在此不再赘述。本发明实施例提供的获取视频分片的方法及装置可以适用于终端从缓存服务器中直接获取需要获取的视频分片,并播放该视频分片。但不仅限于此。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,上述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,上述的存储介质可为磁碟、光盘、只读存储记忆体(ROM:Read-Only Memory)或随机存储记忆体(RAM:Random Access Memory)等。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

Claims (18)

  1. 一种获取视频分片的方法,所述方法用于终端获取视频文件的视频分片,其特征在于,包括:
    根据获取视频分片的触发条件,确定所述终端需要获取的视频分片为所述视频文件的第N个视频分片,其中N为正整数;
    从缓存服务器获取所述视频文件的视频索引信息,所述视频索引信息包括至少2个码率的子文件信息,每个码率的子文件信息包括不同视频分片的下载地址以及对应的优先级信息;
    根据所述终端的下载速率以及所述视频索引信息,确定所述第N个视频分片的下载地址;
    向所述缓存服务器发送获取视频分片的请求消息,所述获取视频分片的请求消息包括所述第N个的视频分片的下载地址;
    接收所述缓存服务器返回的所述第N个视频分片。
  2. 根据权利要求1所述的获取视频分片的方法,其特征在于,所述触发条件,具体为:
    接收到用户输入的码率转换信息;或者
    接收到所述视频文件播放卡顿的信息;或者
    接收到所述用户的触摸操作,其中,所述触摸操作包括拖拽操作。
  3. 根据权利要求1或2任一项所述的获取视频分片的方法,其特征在于,所述优先级信息用于表征存储在所述缓存服务器中的视频分片被淘汰的概率。
  4. 根据权利要求3所述的获取被视频分片的方法,其特征在于,所述优先级信息包括:热度信息,其中所述热度信息越大,表征所述热度信息对应的存储在所述缓存服务器中的视频分片被淘汰的概率越小。
  5. 根据权利要求4所述的获取被视频分片的方法,其特征在于,当所述热度信息为0或者空时,表征所述缓存服务器中未存储所述热度信息对应的视频分片。
  6. 根据权利要求4所述的获取视频分片的方法,其特征在于,所述根据终端的下载速率以及所述视频索引信息,确定所述第N个视频分片的下载地址的步骤,具体包括:
    根据所述终端的下载速率,确定满足所述终端的下载速率对应的码率的子文件信息;
    从所述满足所述终端的下载速率对应的码率的子文件信息中,获取所述第N个视频分片的热度信息最高的码率的子文件信息中的第N个视频分片的下载地址;
    或者,
    根据所述终端的下载速率,确定不存在满足所述终端的下载速率对应的码率的子文件信息;
    从所述视频索引信息中获取码率最小的子文件信息中的第N个视频分片的下载地址。
  7. 一种获取视频分片的方法,所述方法应用于缓存服务器,其特征在于,所述方法包括:
    从源站获取并保存视频文件的视频索引信息;
    监控所述视频文件的每个视频分片分别被请求的次数,得到所述视频文件的每个视频分片的优先级信息;
    周期性的获取所述视频文件的每个视频分片对应的优先级信息,并将获取的所述视频文件的每个视频分片对应的优先级信息添加到所述视频索引信息中;
    接收终端发送的获取所述视频索引信息的请求;
    将所述视频索引信息发送给所述终端,以便于所述终端根据所述视频索引信息确定需要下载的视频分片的下载地址。
  8. 根据权利要求7所述的获取视频分片的方法,其特征在于,所述视频分片的优先级信息,具体为:
    所述视频分片被请求的次数;或者,
    根据所述视频分片被请求的次数,按照预定的规则转换得到。
  9. 根据权利要求7所述的获取视频分片的方法,其特征在于,在将获取的所述视频文件的每个视频分片对应的优先级信息添加到所述视频索引信息中之前,所述方法还包括:确定所述视频文件的每个视频分片是否缓存在本地;所述将所述视频文件的每个视频分片对应的优先级信息添加到所述视频索引信息中,具体为:当所述视频分片缓存在本地时,则将获取的所述视频分片对应的优先级信息添加到所述视频索引信息中;当所述视频分片没有缓存在本地时,则将获取的所述视频分片对应的优先级信息设置为0或者空,并添加到所述视频索引信息中。
  10. 一种获取视频分片的装置,所述装置位于终端,其特征在于,包括:
    确定单元,用于根据获取视频分片的触发条件,确定所述终端需要获取的视频分片为所述视频文件的第N个视频分片,其中N为正整数;
    获取单元,用于从缓存服务器获取所述视频文件的视频索引信息,所述视频索引信息包括至少2个码率的子文件信息,每个码率的子文件信息包括不同视频分片的下载地址以及对应的优先级信息;
    所述确定单元,还用于根据所述终端的下载速率以及所述获取单元获取的所述视频索引信息,确定所述第N个视频分片的下载地址;
    发送单元,用于向所述缓存服务器发送获取视频分片的请求消息,所述获取视频分片的请求消息包括所述确定单元确定的所述第N个的视频分片的下载地址;
    接收单元,用于接收所述缓存服务器返回的所述第N个视频分片。
  11. 根据权利要求10所述的获取视频分片的装置,其特征在于,所述触发条件,具体为:
    接收到用户输入的码率转换信息;或者
    接收到所述视频文件播放卡顿的信息;或者
    接收到所述用户的触摸操作,其中,所述触摸操作包括拖拽操作。
  12. 根据权利要求10或11任一项所述的获取视频分片的装置,其特征在于, 所述优先级信息用于表征存储在所述缓存服务器中的视频分片被淘汰的概率。
  13. 根据权利要求12所述的获取被视频分片的装置,其特征在于,所述优先级信息包括:热度信息,其中所述热度信息越大,表征所述热度信息对应的存储在所述缓存服务器中的视频分片被淘汰的概率越小。
  14. 根据权利要求13所述的获取被视频分片的装置,其特征在于,当所述热度信息为0或者空时,表征所述缓存服务器中未存储所述热度信息对应的视频分片。
  15. 根据权利要求13所述的获取视频分片的装置,其特征在于,
    所述确定单元,具体用于根据所述终端的下载速率,确定满足所述终端的下载速率对应的码率的子文件信息;
    所述确定单元,具体还用于从所述确定模块确定的所述满足所述终端的下载速率对应的码率的子文件信息中,获取所述第N个视频分片的热度信息最高的码率的子文件信息中的第N个视频分片的下载地址;
    所述确定单元,具体还用于根据所述终端的下载速率,确定不存在满足所述终端的下载速率对应的码率的子文件信息;
    所述确定单元,具体还用于从所述视频索引信息中获取码率最小的子文件信息中的第N个视频分片的下载地址。
  16. 一种获取视频分片的装置,所述装置位于缓存服务器,其特征在于,所述装置包括:
    获取单元,用于从源站获取视频文件的视频索引信息;
    保存单元,用于保存所述视频文件的视频索引信息;
    监控单元,用于监控所述视频文件的每个视频分片分别被请求的次数,得到所述视频文件的每个视频分片的优先级信息;
    所述获取单元,还用于周期性的获取所述视频文件的每个视频分片对应的优先级信息;
    添加单元,还用于将所述获取单元获取的所述视频文件的每个视频分片对应的优先级信息添加到所述视频索引信息中;
    接收单元,用于接收终端发送的获取所述视频索引信息的请求;
    发送单元,用于将所述视频索引信息发送给所述终端,以便于所述终端根据所述视频索引信息确定需要下载的视频分片的下载地址。
  17. 根据权利要求16所述的获取视频分片的装置,其特征在于,所述视频分片的优先级信息,具体为:
    所述视频分片被请求的次数;或者,
    根据所述视频分片被请求的次数,按照预定的规则转换得到。
  18. 根据权利要求16所述的获取视频分片的装置,其特征在于,所述装置还包括:确定单元;
    所述确定单元,用于确定所述视频文件的每个视频分片是否缓存在本地;
    所述添加单元,具体用于当所述确定单元确定所述视频分片缓存在本地时,则将获取的所述视频分片对应的优先级信息添加到所述视频索引信息中;当所述确定单元确定所述视频分片没有缓存在本地时,则将获取的所述视频分片对应的优先级信息设置为0或者空,并添加到所述视频索引信息中。
PCT/CN2016/090067 2015-09-30 2016-07-14 终端、缓存服务器及获取视频分片的方法及装置 WO2017054552A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP16850176.5A EP3340633B1 (en) 2015-09-30 2016-07-14 Terminal, cache server, and method for acquiring video slices and device thereof
US15/925,487 US20180205976A1 (en) 2015-09-30 2018-03-19 Method and apparatus of obtaining video fragment

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510644214.7A CN106559677B (zh) 2015-09-30 2015-09-30 终端、缓存服务器及获取视频分片的方法及装置
CN201510644214.7 2015-09-30

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/925,487 Continuation US20180205976A1 (en) 2015-09-30 2018-03-19 Method and apparatus of obtaining video fragment

Publications (1)

Publication Number Publication Date
WO2017054552A1 true WO2017054552A1 (zh) 2017-04-06

Family

ID=58418069

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/090067 WO2017054552A1 (zh) 2015-09-30 2016-07-14 终端、缓存服务器及获取视频分片的方法及装置

Country Status (4)

Country Link
US (1) US20180205976A1 (zh)
EP (1) EP3340633B1 (zh)
CN (1) CN106559677B (zh)
WO (1) WO2017054552A1 (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108769830A (zh) * 2018-05-29 2018-11-06 武汉斗鱼网络科技有限公司 一种缓存视频的方法以及相关设备
CN108833968A (zh) * 2018-05-29 2018-11-16 武汉斗鱼网络科技有限公司 一种缓存视频的方法以及相关设备
CN110636340A (zh) * 2019-09-30 2019-12-31 普联技术有限公司 一种视频文件的上传方法及存储设备
CN111107438A (zh) * 2019-12-30 2020-05-05 北京奇艺世纪科技有限公司 一种视频加载方法、装置及电子设备
WO2020211731A1 (zh) * 2019-04-19 2020-10-22 华为技术有限公司 一种视频播放方法及相关设备
CN112351101A (zh) * 2020-11-09 2021-02-09 武汉好多米科技有限公司 一种视频数据高速下载方法
CN112925999A (zh) * 2019-12-05 2021-06-08 北京沃东天骏信息技术有限公司 数据处理方法、数据存储方法、服务器和客户端

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108810565A (zh) * 2017-04-28 2018-11-13 华为技术有限公司 存储、调度媒体资源的方法、装置及分布式存储系统
CN107820115A (zh) * 2017-09-30 2018-03-20 中兴通讯股份有限公司 实现视频信息预览的方法、装置及客户端和存储介质
CN107911712B (zh) * 2017-11-30 2020-10-09 歌尔科技有限公司 数据缓冲方法和电子设备
CN109889917B (zh) * 2017-12-06 2020-07-14 上海交通大学 一种基于缓存编码的视频传输方法
CN109996110B (zh) * 2017-12-29 2021-10-22 中兴通讯股份有限公司 一种视频播放方法、终端、服务器及存储介质
CN109996092B (zh) * 2017-12-29 2021-01-15 华为技术有限公司 用于视频播放的方法和装置
CN108494875A (zh) * 2018-04-10 2018-09-04 网宿科技股份有限公司 一种反馈资源文件的方法和装置
CN110545459A (zh) * 2018-05-29 2019-12-06 武汉斗鱼网络科技有限公司 一种缓存视频的方法以及相关设备
CN108924630B (zh) * 2018-05-29 2022-02-22 武汉斗鱼网络科技有限公司 一种显示缓存进度的方法和播放设备
CN111343225B (zh) * 2018-12-19 2024-04-09 三六零科技集团有限公司 一种文件处理方法和装置
CN111510789B (zh) 2019-01-30 2021-09-21 上海哔哩哔哩科技有限公司 视频播放方法、系统、计算机设备及计算机可读存储介质
CN112752033B (zh) * 2019-10-31 2022-03-22 上海哔哩哔哩科技有限公司 导播方法和系统
CN110784775A (zh) * 2019-11-25 2020-02-11 金明晔 一种视频分片缓存方法、装置及视频点播系统
US11516192B2 (en) * 2019-12-19 2022-11-29 Augustine Fou System and method for combinatorial security
CN111212301B (zh) * 2020-01-09 2021-10-08 鹏城实验室 一种视频码率的匹配方法、存储介质及终端设备
CN111614744A (zh) * 2020-05-15 2020-09-01 武汉麦子科技有限公司 一种大文件下载传输方法
CN112104897B (zh) * 2020-11-04 2021-03-12 北京达佳互联信息技术有限公司 视频获取方法、终端及存储介质
CN113163226B (zh) * 2021-03-26 2023-04-07 维沃移动通信有限公司 媒体文件的播放方法、装置、电子设备、服务器和介质
CN113395529A (zh) * 2021-06-11 2021-09-14 重庆农村商业银行股份有限公司 一种视频录像读取方法、装置、设备及存储介质
CN113329238B (zh) * 2021-08-03 2021-11-30 武汉中科通达高新技术股份有限公司 视频文件管理方法、装置及服务器
CN114025201A (zh) * 2021-10-29 2022-02-08 恒安嘉新(北京)科技股份公司 一种视频播放方法、装置、设备及存储介质
CN114339452A (zh) * 2022-01-25 2022-04-12 福建中科多特健康科技有限公司 一种视频播放方法和存储设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102088620A (zh) * 2010-12-01 2011-06-08 中兴通讯股份有限公司 一种内容分发网络中媒体文件下载方法及客户端
CN102123303A (zh) * 2011-03-25 2011-07-13 天脉聚源(北京)传媒科技有限公司 一种音视频文件播放方法、系统及传输控制装置
WO2012093718A1 (ja) * 2011-01-07 2012-07-12 シャープ株式会社 コンテンツ取得装置、再生装置、コンテンツ取得方法、配信システム、コンテンツ取得プログラム、および記録媒体
CN104349176A (zh) * 2013-07-30 2015-02-11 中国电信股份有限公司 自适应流媒体系统、下载方法及流媒体服务器、用户终端

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6263023B1 (en) * 1998-10-15 2001-07-17 International Business Machines Corporation High definition television decoder
CN101540885A (zh) * 2009-04-30 2009-09-23 中兴通讯股份有限公司 一种iptv点播系统及方法
CN102075562B (zh) * 2010-12-03 2014-08-20 华为技术有限公司 协作缓存的方法和装置
US8489760B2 (en) * 2011-03-31 2013-07-16 Juniper Networks, Inc. Media file storage format and adaptive delivery system
CN103051931B (zh) * 2011-10-11 2018-05-01 中兴通讯股份有限公司 回看节目录制、播放方法、服务器、客户端及系统
US10038927B2 (en) * 2011-12-22 2018-07-31 Cisco Technology, Inc. Out-of-band signaling and device-based content control
CN104221390B (zh) * 2012-04-26 2018-10-02 高通股份有限公司 用于处置低等待时间流送的增强型块请求流送系统
CN104580274B (zh) * 2013-10-12 2018-06-19 中国电信股份有限公司 内容分发网络中的内容置换方法与系统、节点

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102088620A (zh) * 2010-12-01 2011-06-08 中兴通讯股份有限公司 一种内容分发网络中媒体文件下载方法及客户端
WO2012093718A1 (ja) * 2011-01-07 2012-07-12 シャープ株式会社 コンテンツ取得装置、再生装置、コンテンツ取得方法、配信システム、コンテンツ取得プログラム、および記録媒体
CN102123303A (zh) * 2011-03-25 2011-07-13 天脉聚源(北京)传媒科技有限公司 一种音视频文件播放方法、系统及传输控制装置
CN104349176A (zh) * 2013-07-30 2015-02-11 中国电信股份有限公司 自适应流媒体系统、下载方法及流媒体服务器、用户终端

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3340633A4 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108769830A (zh) * 2018-05-29 2018-11-06 武汉斗鱼网络科技有限公司 一种缓存视频的方法以及相关设备
CN108833968A (zh) * 2018-05-29 2018-11-16 武汉斗鱼网络科技有限公司 一种缓存视频的方法以及相关设备
CN108769830B (zh) * 2018-05-29 2021-05-28 武汉斗鱼网络科技有限公司 一种缓存视频的方法以及相关设备
WO2020211731A1 (zh) * 2019-04-19 2020-10-22 华为技术有限公司 一种视频播放方法及相关设备
CN110636340A (zh) * 2019-09-30 2019-12-31 普联技术有限公司 一种视频文件的上传方法及存储设备
CN110636340B (zh) * 2019-09-30 2021-11-09 普联技术有限公司 视频文件的上传方法、存储设备、终端设备及存储介质
CN112925999A (zh) * 2019-12-05 2021-06-08 北京沃东天骏信息技术有限公司 数据处理方法、数据存储方法、服务器和客户端
CN111107438A (zh) * 2019-12-30 2020-05-05 北京奇艺世纪科技有限公司 一种视频加载方法、装置及电子设备
CN112351101A (zh) * 2020-11-09 2021-02-09 武汉好多米科技有限公司 一种视频数据高速下载方法
CN112351101B (zh) * 2020-11-09 2024-04-26 武汉好多米科技有限公司 一种视频数据高速下载方法

Also Published As

Publication number Publication date
EP3340633A4 (en) 2018-08-01
EP3340633B1 (en) 2020-10-14
CN106559677A (zh) 2017-04-05
EP3340633A1 (en) 2018-06-27
US20180205976A1 (en) 2018-07-19
CN106559677B (zh) 2020-04-03

Similar Documents

Publication Publication Date Title
WO2017054552A1 (zh) 终端、缓存服务器及获取视频分片的方法及装置
US10791190B2 (en) Systems and methods for avoiding server push of objects already cached at a client
RU2632410C2 (ru) Управляемое приложением предварительное кэширование в cdn
US9237210B2 (en) Internet access method, terminal and storage medium
US9948709B2 (en) Using resource timing data for server push in multiple web page transactions
US9185158B2 (en) Content delivery in a network
US9426244B2 (en) Content delivery in a network
US10630758B2 (en) Method and system for fulfilling server push directives on an edge proxy
US20120192080A1 (en) Tailoring content based on available bandwidth
US8589477B2 (en) Content information display device, system, and method used for creating content list information based on a storage state of contents in a cache
US10375192B1 (en) Faster web browsing using HTTP over an aggregated TCP transport
KR20110076457A (ko) 콘텐츠 명 기반의 네트워크 장치 및 데이터 요청 방법
US10085046B2 (en) Video transmission method, gateway device, and video transmission system
CN110933517A (zh) 码率切换方法、客户端和计算机可读存储介质
WO2011088725A1 (zh) 基于http的同步方法和装置
WO2020155959A1 (zh) 切换清晰度的方法、装置、计算机设备及可读存储介质
WO2018233190A1 (zh) 媒体分片的下载方法、终端和计算机可读存储介质
EP2925002B1 (en) System and method for predictive buffering and network shaping
US9882794B2 (en) Method, media type server and terminal device for identifying service request type
JP2014002634A (ja) 通信制御システム、集約サーバおよび通信制御方法
CN115297095B (zh) 回源处理方法、装置、计算设备及存储介质
WO2010031297A1 (zh) 一种wap网关提取业务的实现方法和系统
CN114301848B (zh) 基于cdn的通信方法、系统、设备及存储介质
US20150095964A1 (en) Bumper video carousel for digital video delivery
JP6378631B2 (ja) 映像配信システム、及び映像配信方法

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

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2016850176

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE