CN105025391A - Video playing method and apparatus - Google Patents

Video playing method and apparatus Download PDF

Info

Publication number
CN105025391A
CN105025391A CN201410182809.0A CN201410182809A CN105025391A CN 105025391 A CN105025391 A CN 105025391A CN 201410182809 A CN201410182809 A CN 201410182809A CN 105025391 A CN105025391 A CN 105025391A
Authority
CN
China
Prior art keywords
server
current slice
file
terminal
video
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
CN201410182809.0A
Other languages
Chinese (zh)
Inventor
刘刚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201410182809.0A priority Critical patent/CN105025391A/en
Priority to PCT/CN2015/077762 priority patent/WO2015165395A1/en
Publication of CN105025391A publication Critical patent/CN105025391A/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • 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/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/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234309Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4 or from Quicktime to Realvideo
    • 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/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/4622Retrieving content or additional data from different sources, e.g. from a broadcast channel and the Internet
    • 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

Abstract

The invention discloses a video playing method and apparatus. The method comprises: a terminal receiving an inputted video playing instruction, wherein the video playing instruction is used for asking for displaying a current sharding file in a video file, and the video file comprises a plurality of sharding files including the current sharding file; the terminal obtaining the current sharding file from one of multiple servers, wherein each server stores the current sharding file; and the terminal playing the current sharding file. The video playing method and apparatus solve the technical problem of poor playing fluency in the prior art caused by obtaining a video file through a single server, and improve video file playing fluency.

Description

Video broadcasting method and device
Technical field
The present invention relates to multimedia technology field, in particular to a kind of video broadcasting method and device.
Background technology
At present, video playback of the prior art mainly adopts order method as shown in Figure 1, and wherein, the idiographic flow of order method is if the step S102 in Fig. 1 is to step S116.Usually, existing order method is from individual data source (such as, a server) transmitting video data, but the difficult quality guarantee of data source, and the cost of transfer of data is very high, current most video website bandwidth cost account for the very large part of cost.Due to the complexity of network environment, particularly for CDN (Content Delivery Network, content distributing network) user that cannot cover all the time, the efficiency and the speed that obtain video data from individual data source cannot ensure, thus it is comparatively slow or cannot carry out in the situation such as be connected with data source in network transfer speeds, terminal cannot start the broadcasting of video or occur significantly card when video playback, causing the fluency of video playback very low like this.
In addition, off-line of the prior art is downloaded, and usually uses limit to broadcast technology below, can only work for specific form, simultaneously also and film code check and user bandwidth have relation.Such as, code check is greater than to the film of user bandwidth, even if offline service device provides to download and accelerates, speed of download also can not be greater than user bandwidth, just can not smoothness broadcast, now need former film to be transcoded into low bit-rate film, make the code check of the film after transcoding lower than user bandwidth, the film after ability smooth playing transcoding.Therefore, carry out video playback on mobile terminals and the form of downloaded video do not supported by player on mobile terminal time, then need to carry out transcoding and loading to downloaded video.But, adopt and need longer buffer time in this way.In addition, after completing transcoding to above-mentioned video, owing to needing the index information loading whole video, therefore, when the file size of this video is very large, need longer start-up time, this have impact on the reproduction time (time particularly loaded first) of video greatly.
For above-mentioned problem, at present effective solution is not yet proposed.
Summary of the invention
Embodiments provide a kind of video broadcasting method and device, obtain video file and the low technical problem of the broadcasting fluency that causes at least to solve in prior art by single server.
According to an aspect of the embodiment of the present invention, provide a kind of video broadcasting method, comprise: terminal receives the video playback instruction of input, wherein, above-mentioned video playback instruction is for asking the current slice file in playing video file, and above-mentioned video file has the multiple slicing files comprising above-mentioned current slice file; Above-mentioned terminal obtains above-mentioned current slice file from multiple server, and wherein, each in above-mentioned multiple server all stores above-mentioned current slice file; The above-mentioned current slice file of above-mentioned terminal plays.
Alternatively, above-mentioned terminal comprises from the above-mentioned current slice file of acquisition of multiple server: when above-mentioned terminal obtains above-mentioned current slice file failure from a server above-mentioned multiple server, above-mentioned terminal obtains above-mentioned current slice file from another server above-mentioned multiple server.
Alternatively, above-mentioned when above-mentioned terminal obtains above-mentioned current slice file failure from a server above-mentioned multiple server above-mentioned terminal obtain above-mentioned current slice file from another server above-mentioned multiple server and comprise: above-mentioned terminal sends the first burst to the first server in above-mentioned multiple server and obtains request, wherein, above-mentioned first burst obtains request for obtaining above-mentioned current slice file; If above-mentioned terminal does not receive burst that above-mentioned first server sends and obtains response or above-mentioned terminal and receive burst that above-mentioned first server sends and obtain failure response or above-mentioned terminal do not complete reception to the above-mentioned current slice file that above-mentioned first server sends within the second predetermined time period in predetermined first time period, then above-mentioned terminal sends the second burst to the second server in above-mentioned multiple server and obtains request, wherein, above-mentioned second burst obtains request for obtaining above-mentioned current slice file; Above-mentioned terminal receives the above-mentioned current slice file that above-mentioned second server sends.
Alternatively, above-mentioned when above-mentioned terminal obtains above-mentioned current slice file failure from a server above-mentioned multiple server above-mentioned terminal obtain above-mentioned current slice file from another server above-mentioned multiple server and comprise: above-mentioned terminal sends the 3rd burst to each in above-mentioned multiple server and obtains request, wherein, above-mentioned first burst obtains request for obtaining above-mentioned current slice file; Above-mentioned terminal have sent in the server of burst acquisition response to above-mentioned terminal and selects one as the 3rd server from above-mentioned multiple server, and sends the first request for building link to above-mentioned 3rd server; If above-mentioned terminal does not receive link establishment response that above-mentioned 3rd server sends or above-mentioned terminal and receives link establishment failure response that above-mentioned 3rd server sends or above-mentioned terminal does not complete the reception of above-mentioned current slice file sent above-mentioned 3rd server within the 4th predetermined time period within the 3rd predetermined time period, then above-mentioned terminal selects another as the 4th server from the server that have sent above-mentioned burst acquisition response to above-mentioned terminal, and sends the second request for building link to above-mentioned 4th server; Above-mentioned terminal receives the above-mentioned current slice file that above-mentioned 4th server sends.
Alternatively, it is that the above-mentioned terminal burst that first receives in above-mentioned multiple server obtains response that the burst that above-mentioned 3rd server sends obtains response.
Alternatively, above-mentioned terminal one of in the following manner plays above-mentioned current slice file: above-mentioned current slice file is deposited in memory by above-mentioned terminal, and uses the video player that above-mentioned terminal is installed to play above-mentioned current slice file; Or, above-mentioned current slice file exists in internal memory by above-mentioned terminal, and the above-mentioned current slice file using the video player that above-mentioned terminal is installed to play to store in above-mentioned internal memory, after above-mentioned current slice file finishes playing, from above-mentioned internal memory, delete above-mentioned current slice file; Or above-mentioned current slice Document encapsulation becomes to be served by the local video that above-mentioned video player calls by above-mentioned terminal, uses the video player that above-mentioned terminal is installed to call above-mentioned local video service, to play above-mentioned current slice file.
Alternatively, before receiving the video playback instruction of input, also comprise: the original document corresponding with above-mentioned video file is carried out transcoding in above-mentioned terminal, obtain file after multiple transcoding, wherein, after each above-mentioned transcoding, the code check of file is different; Burst is carried out to file after each above-mentioned transcoding, obtains the slicing files of file after each above-mentioned transcoding; The each above-mentioned slicing files of file after each above-mentioned transcoding is stored in above-mentioned multiple server.
According to the another aspect of the embodiment of the present invention, additionally provide a kind of video play device, comprise: receiving element, the video playback instruction of input is received for terminal, wherein, above-mentioned video playback instruction is for asking the current slice file in playing video file, and above-mentioned video file has the multiple slicing files comprising above-mentioned current slice file; Acquiring unit, for obtaining above-mentioned current slice file from multiple server, wherein, each in above-mentioned multiple server all stores above-mentioned current slice file; Broadcast unit, for playing above-mentioned current slice file.
Alternatively, above-mentioned acquiring unit comprises: acquisition module, obtains above-mentioned current slice file for the above-mentioned terminal when obtaining above-mentioned current slice file failure from a server in above-mentioned multiple server from another server above-mentioned multiple server.
Alternatively, above-mentioned acquisition module comprises: first sends submodule, obtains request for sending the first burst to the first server in above-mentioned multiple server, and wherein, above-mentioned first burst obtains request for obtaining above-mentioned current slice file; Second sends submodule, the burst sent for not receiving above-mentioned first server in predetermined first time period obtains response or receives burst that above-mentioned first server sends when obtaining failure response or do not complete the above-mentioned current slice file that above-mentioned first server sends within the second predetermined time period reception, send the second burst to the second server in above-mentioned multiple server and obtain request, wherein, above-mentioned second burst obtains request for obtaining above-mentioned current slice file; First receives submodule, for receiving the above-mentioned current slice file that above-mentioned second server sends.
Alternatively, above-mentioned acquisition module comprises: the 3rd sends submodule, obtains request for sending the 3rd burst to each in above-mentioned multiple server, and wherein, above-mentioned first burst obtains request for obtaining above-mentioned current slice file; First chooser module, the burst for sending from above-mentioned multiple server obtains in the server of response selects one as the 3rd server, and sends the first request for building link to above-mentioned 3rd server; Second chooser module, when not receiving link establishment response that above-mentioned 3rd server sends or receive link establishment failure response that above-mentioned 3rd server sends or do not complete the reception of above-mentioned current slice file that above-mentioned 3rd server is sent within the 4th predetermined time period within the 3rd predetermined time period, obtaining the server of response from the above-mentioned burst sent selects another as the 4th server, and sends the second request for building link to above-mentioned 4th server; Second receives submodule, for receiving the above-mentioned current slice file that above-mentioned 4th server sends.
Alternatively, it is that the above-mentioned video play device burst that first receives in above-mentioned multiple server obtains response that the burst that above-mentioned 3rd server selected by above-mentioned first chooser module sends obtains response.
Alternatively, above-mentioned broadcast unit comprises one of following: the first playing module, for play be stored in above-mentioned video play device memory in above-mentioned current slice file; Or, the second playing module, for play be stored in above-mentioned video play device internal memory in above-mentioned current slice file, and from above-mentioned internal memory, delete above-mentioned current slice file after above-mentioned current slice file finishes playing; Or the 3rd playing module, for calling the local video service become by above-mentioned current slice Document encapsulation, uses mounted video player to call above-mentioned local video service, to play above-mentioned current slice file.
In embodiments of the present invention, by means of multi-source transmission technology, by the mode being obtained the slicing files in video file by fixed data source simple for player in video display process, change the mode obtaining slicing files from multiple data source into, like this when slicing files cannot be transferred to terminal by a data source, terminal can to other this slicing files of data source request, thus ensure that the speed obtaining slicing files, the technical problem that the broadcasting fluency caused by single server acquisition video file in solution prior art is low, improve the fluency that video file is play.
In addition, in embodiments of the present invention, after the mode transmitted by multi-source gets the slicing files of video file, the slicing files got can be saved as local temporary files or be encapsulated as local video service, then play above-mentioned local temporary files by the video player in terminal or call local video service, relieve being coupled between the transmitting procedure of video file and the playing process of video player in this way, achieve transmitting procedure and playing process is separated.
Further, by carrying out transcoding and sectioning at server end to video file, video file can be converted to the video file of various different video form, thus significantly reducing the size of video player.
Accompanying drawing explanation
Accompanying drawing described herein is used to provide a further understanding of the present invention, and form a application's part, schematic description and description of the present invention, for explaining the present invention, does not form inappropriate limitation of the present invention.In the accompanying drawings:
Fig. 1 is the schematic flow sheet of the video broadcasting method according to prior art;
Fig. 2 is the schematic flow sheet of a kind of optional video broadcasting method according to the embodiment of the present invention;
Fig. 3 is the schematic flow sheet according to the optional video broadcasting method of the another kind of the embodiment of the present invention;
Fig. 4 is the schematic flow sheet of another the optional video broadcasting method according to the embodiment of the present invention;
Fig. 5 is the schematic flow sheet of another the optional video broadcasting method according to the embodiment of the present invention;
Fig. 6 is the schematic flow sheet of another the optional video broadcasting method according to the embodiment of the present invention; And
Fig. 7 is the structural representation of a kind of optional video play device according to the embodiment of the present invention.
Embodiment
The present invention program is understood better in order to make those skilled in the art person, below in conjunction with the accompanying drawing in the embodiment of the present invention, technical scheme in the embodiment of the present invention is clearly and completely described, obviously, described embodiment is only the embodiment of a part of the present invention, instead of whole embodiments.Based on the embodiment in the present invention, those of ordinary skill in the art, not making the every other embodiment obtained under creative work prerequisite, should belong to the scope of protection of the invention.
It should be noted that, term " first ", " second " etc. in specification of the present invention and claims and above-mentioned accompanying drawing are for distinguishing similar object, and need not be used for describing specific order or precedence.Should be appreciated that the data used like this can be exchanged in the appropriate case, so as embodiments of the invention described herein can with except here diagram or describe those except order implement.In addition, term " comprises " and " having " and their any distortion, intention is to cover not exclusive comprising, such as, contain those steps or unit that the process of series of steps or unit, method, system, product or equipment is not necessarily limited to clearly list, but can comprise clearly do not list or for intrinsic other step of these processes, method, product or equipment or unit.
Embodiment 1
According to the embodiment of the present invention, provide a kind of video broadcasting method, as shown in Figure 2, the method comprises:
S202, terminal receives the video playback instruction of input, and wherein, this video playback instruction is for asking the current slice file in playing video file, and above-mentioned video file has the multiple slicing files comprising described current slice file;
S204, terminal obtains current slice file from multiple server, and wherein, each in described multiple server all stores described current slice file;
S206, terminal plays current slice file.
Alternatively, above-mentioned video broadcasting method can be applied in the video player that terminal is installed in the present embodiment, and wherein, above-mentioned terminal can comprise one of following: mobile phone, panel computer.
Alternatively, Fig. 3 provides the optional video broadcasting method of one in the present embodiment.Relate in the video broadcasting method shown in Fig. 3 with lower module:
1) video playback kernel module
Alternatively, the various videos that above-mentioned video playback kernel module is used for receiver, video playback terminal control interface layer and provides connect, and can be URL, eMule links, whether Bt seed or Magnet chain, inquire about according to file hash/bt+index/emule link etc. and can play in high in the clouds;
Alternatively, above-mentioned video playback kernel module is also for data that the video file of reading video data Switching Module is corresponding, above-mentioned data can be kept at local temporary file, directly deleting from internal memory after finishing playing, also can be the local video service of being called by the video server of local http.Then to the work such as to play up at the process of the broadcasting of media video file, burst, interface.
Alternatively, video player in the present embodiment also needs to call multi-source transmission kernel: carry out actual video file download from playing link, and give player go play, multi-source transmission kernel module is responsible for efficiently needing from high efficiency of transmission the peer node of high in the clouds storage server and opposite end the video file that carries out playing, wherein the address of high in the clouds storage server address and opposite end peer is obtained by multi-source transmission directory system, multi-source data transport module, according to the control command of player, downloads the specific part of file to be played; Resolve file structure to be played, inform that download module needs the specific part start-stop position of downloading; Resolve file structure to be played, be separated audio frequency and video bag; Audio frequency and video bag is decoded; Display and broadcast decoder after audio, video data, carry out concrete broadcasting;
Alternatively, video data Switching Module in the present embodiment comprises: the efficient data being realized the video player in server and terminal by following two kinds of modes is exchanged and seamless some multicast function: video data http serves, local temporary files.
Alternatively, player and the exchange process downloaded between kernel include but not limited to: player stochastic searching seek process, the process of burst seamless switching.Alternatively, user can arbitrarily drag by the key-course of video player the video file play in the present embodiment.When adopting the mode of local temporary files swap data, when stochastic searching seek to some positions, need according to target duration position and slice size, calculate which burst, slicing files downloads the Range address of transmission, if to the edge of a burst, need, across sheet transmission data, first to load new slicing files.The Range address transfer of request is downloaded kernel to multi-source, multi-source downloads the range address that kernel can adjust download, prioritised transmission needs the slicing files of the video play, the speed and progress msg of downloading transmission are adjusted back to player simultaneously, player just can carry out after obtaining the slicing files that can play playing up broadcasting, is now the slicing files directly being read the video of local temporary files by the skew interface of file.
Alternatively, when adopting the mode of local video http-server to carry out exchanges data, the address transition of stochastic searching seek is local URL address Range information, local http-server is being converted to the remote data download request of multi-source download kernel from cloud storage server and the Internet download data, and the data of download are successively notifying upper strata until player is play.
Alternatively, in the present embodiment in order to ensure the speed of experience and the loading of playing, burst is carried out to the video file after transcoding.Alternatively, burst seamless switching can in the following ways in the present embodiment: adopt two to play views and be laid in together, time the broadcasting view that first slicing files is corresponding starts to broadcast, second slicing files starts to prepare, when receiving broadcasting view corresponding to first slicing files and playing the readjustment terminated, first play view hidden fall, second play view start play, guarantee have one to be in broadcasting view activation state corresponding to slicing files so at every turn.
Alternatively, play in the present embodiment and the various daily record inquired about in downloading process and state information report to statistical server for follow-up analysis.
2) video playing terminal control interface:
Alternatively, above-mentioned control interface is for controlling playing function interface in the present embodiment, completes the interactive operation with user, and user is to the operation requests action of video file in response;
Alternatively, video playback kernel module is submitted in the various videos connections of above-mentioned control interface also for user being provided in the present embodiment, determine whether to play-over, alternatively, video connection in the present embodiment can be, but not limited to: URL, eMule links, Bt seed, Magnet chain
3) query interface server is play in high in the clouds
Alternatively, the high in the clouds broadcasting inquiry that query interface server is used for receiver, video broadcasting kernel module is play in above-mentioned high in the clouds in the present embodiment, alternatively, in the present embodiment by playing reading transcoding result database, obtain the burst information of displaying video, the relevant informations such as URL address and duration;
Alternatively, in the present embodiment when video file to be checked cannot be play-overed, can call transcoding task Distributor directly carry out original video files transcoding sectioning or be submitted to off-line download server first carry out off-line download be saved on cloud storage server.
4) transcoding result database
Alternatively, above-mentioned transcoding result database is other to the video file mark after the transcoding of original video files and section for preserving transcoding section server in the present embodiment, the information such as video file size duration;
Alternatively, above-mentioned transcoding result database also provides inquiry service for playing query interface server for cloud in the present embodiment.
5) transcoding section server zone
Alternatively, in the present embodiment transcoding section server zone for receive transcoding task distribution take device transcoding section task scheduling;
Alternatively, above-mentioned transcoding section server zone is also for from downloading video files on cloud storage server to this locality in the present embodiment, carries out various definition and code check, the format conversion operation of resolution to video file.Alternatively, also sectioning to be carried out to the video file after transcoding in the present embodiment.
Alternatively, the object information of above-mentioned transcoding section server zone also for being cut into slices by transcoding is kept in the middle of transcoding result database in the present embodiment.
6) transcoding task Distributor
Alternatively, its video task information directly can not carrying out high in the clouds broadcasting submitted to for receiving high in the clouds broadcasting query interface server of above-mentioned transcoding task distribution processor in the present embodiment, if the original document of this video beyond the clouds storage server exists, transcoding sectioning is carried out with regard to directly calling transcoding section server zone, otherwise first call off-line download group system and carry out high in the clouds download service, the file of download is saved on the storage server of high in the clouds.
7) multi-source transmission directory system
Alternatively, be the directory system service that video player kernel provides multi-source data to transmit in the present embodiment, promote the efficiency of transfer of data.Alternatively, can comprise in the present embodiment: p2s and p2p index service two parts;
Alternatively, p2s service in the present embodiment, by the entrance URL address of file transfer or the mark of local temporary files, inquires about a collection of other URL address information set comprising same video file, downloads respective file for multi-source transmission kernel.Alternatively, peer IP address and the port of p2p service for providing other carrying out same video file transfer in the present embodiment.
8) video content provides/off-line download system
Alternatively, said system is for receiving the scheduling of transcoding sub server in the present embodiment, from assignment database, obtain download link, carries out task download.
Alternatively, the video file of said system also for having been downloaded in high in the clouds is stored in high in the clouds storage server in the present embodiment, fetches for the video player in terminal.
Alternatively, said system is also for providing initial data service for transcoding section server cluster in the present embodiment, preserves transcoding and the video file after having cut into slices simultaneously.
Alternatively, said system is as content source in the present embodiment, is also that non-internet carries content up and down, such as, the initiatively data source having the content of copyright video of operation, by here by transfer of data corresponding for video file on high in the clouds storage server or various CDN data source server.
9) high in the clouds storage server
Alternatively, in the present embodiment above-mentioned high in the clouds storage server for data corresponding to the video file preserving off-line download system and downloaded at server end;
Alternatively, the data source of above-mentioned high in the clouds storage server also for fetching data corresponding to video file as video playback list download off-line provides service in the present embodiment.
Alternatively, the data source that above-mentioned high in the clouds storage server also provides transcoding to export for cutting into slices for transcoding server in the present embodiment preserve section simultaneously after complete video slicing files.
10) statistical server
Alternatively, statistical server is in the present embodiment used for receiver, video and plays URL speed of download in downloading process, download time, connection situation, downloads reporting of the information such as result, file size.
Alternatively, statistical server is in the present embodiment also for adding up number of times and the duration of video random cache in the middle of the loading velocity of video content in the middle of receiver, video playing process and play buffering process, and the effect being used for assessing and analyzing video playback is experienced.
Alternatively, in the present embodiment, above-mentioned video file is divided into multiple slicing files in advance, wherein, can be, but not limited to carry out burst division according to predetermined point leaf length to above-mentioned video file, such as, for point leaf length, burst division was carried out to the video file that playing duration is 50 minutes with 5 minutes, obtain 10 slicing files.Alternatively, above-mentioned point leaf length can be determined according to different factors, above-mentioned factor include but not limited to following one of at least: the playing duration of video file, for storing storage size, the network transfer speeds of slicing files.
Alternatively, video playback instruction is in the present embodiment for asking the current slice file in playing video file, and video file has the multiple slicing files comprising current slice file.Alternatively, each slicing files in multiple slicing files in the present embodiment all has storage in multiple server.Such as, as shown in Figure 4, video file comprises 10 slicing files, the current slice file that terminal 402 is asked is the 2nd slicing files in above-mentioned 10 slicing files, 2nd slicing files is stored in multiple server (such as, server 404-1, server 404-2, server 404-3, server 404-4) in, to form the backup to the 2nd slicing files between the plurality of server.
Alternatively, above-mentioned terminal obtains above-mentioned current slice file from multiple server and comprises: when terminal obtains above-mentioned current slice file failure from a server above-mentioned multiple server, above-mentioned terminal obtains above-mentioned current slice file from another server above-mentioned multiple server.
Alternatively, the process that terminal obtains current slice file from a server comprises:
S1, terminal sends burst to this server and obtains request;
S2, terminal receives the burst acquisition response that this server sends;
S3, terminal sends request for building link to this server;
S4, terminal receives the link establishment response that this server sends;
S5, the link that terminal is set up between terminal and this server receives the current slice file that this server sends.
Alternatively, said process is only that terminal obtains a kind of example of current slice file from server, and the present embodiment is also applicable to the process that other obtain current slice file.In the process of above-mentioned acquisition current slice file, the condition of current slice file acquisition failure can include but not limited to one of following:
1) terminal does not receive the burst that server sends and obtains response in predetermined time section;
2) terminal receives the burst that server sends and obtains failure response in predetermined time section;
3) terminal does not receive the link establishment response that server sends in predetermined time section;
4) terminal receives the link establishment failure response that server sends in predetermined time section;
5) terminal does not complete the reception to the current slice file that server sends in predetermined time section.
Alternatively, the video playback kernel module in the present embodiment as shown in Figure 3 in terminal introduces multi-source data transport module, again provides brand-new mode of carrying out data interaction with video player.Wherein, above-mentioned interactive mode can include but not limited to: the mode adopting local temporary files, video data http local service, to realize carrying out exchanges data with the video player in terminal.
Alternatively, receive the video playback instruction of input in the present embodiment in terminal before, the original document corresponding to video file is carried out transcoding, obtain file after multiple transcoding, then burst is carried out to file after each transcoding.Alternatively, after each transcoding in the present embodiment, the code check of file is different, to make the video player in terminal without the need to adopting the player of full format, that is, the size of player and size can greatly simplify, as long as support predetermined form, just by the mode of transcoding, the video file video file of multiple different-format being changed into predetermined format is play in above-mentioned video player.Alternatively, transcoding in the present embodiment can be, but not limited to the operation of format conversion for carrying out various definition, code check, resolution to above-mentioned video file.Such as, the video file of WMV form is the super clear video file that code check is relatively high, resolution is relatively high, if the video player in terminal only supports the video file of FLV form (wherein, the video file of FLV form is the ordinary video file that code check is relatively low, resolution is relatively low), then need to carry out transcoding operation to the video file of above-mentioned WMV form, obtain the video file of corresponding FLV form.
Again such as, video player in terminal only supports the video file of MP4 form, when server only storing the video file of WMV form, because the video file of WMV form can not normal play in the video player of above-mentioned terminal, thus, can be the video file of WMV form by the video file transcoding of WMV form at server side.
Further, as shown in table 1, video player in terminal 402 is just at playing video file Movie_1, and this video file is different-format (such as, FLV at server side by transcoding, WMV, RA, MP4) transcoding after file, then each burst in file after the transcoding of different-format is divided into multiple slicing files, such as, the slicing files that after each transcoding, file has comprises: slicing files f-1, f-2, f-3, f-4, f-5, f-6; Above-mentioned each slicing files is stored on multiple server, above to form the backup to above-mentioned slicing files at multiple server (such as, comprising server 404-1, server 404-2, server 404-3, server 404-4).As a kind of example, above-mentioned slicing files, storage format and for store slicing files server between corresponding relation as shown in table 1 below.
Table 1
It should be noted that, the number of above-mentioned slicing files, form classification, and corresponding relation is only a kind of example of the application, the present embodiment is to the number of slicing files, form classification, and corresponding relation does not limit, the present embodiment can also be applicable to other scene, such as, at server 404-1, server 404-2, server 404-3 and server 404-4 all stores 6 slicing files that form is file after the transcoding of FLV, form is 6 slicing files of file after the transcoding of WMV, form is 6 slicing files of file after the transcoding of RA, form is 6 slicing files of file after the transcoding of MP4.
Below specifically describe in conjunction with example, as illustrated in figures 4-5, video player in terminal 402 is just at playing video file Movie_1, above-mentioned video file is divided into multiple slicing files, terminal 402 receives the video playback instruction of user's input, current slice file f-5 in request playing video file Movie_1, this slicing files is at server 404-1, server 404-2, server 404-3, server 404-4 all there is storage, suppose according to predetermined condition (such as, predetermined condition is the fastest link of transmission speed) have selected server 404-3, then above-mentioned terminal 402 will play the current slice file f-5 obtained by server 404-3.
By embodiment provided by the invention, by video file is carried out burst, and play by the acquisition current slice file of in multiple server, thus ensure that the speed obtaining slicing files, the technical problem that the broadcasting fluency caused by single server acquisition video file in solution prior art is low, improves the fluency that video file is play.
As the optional scheme of one, above-mentioned steps terminal obtains current slice file from multiple server and comprises:
S1, when terminal obtains current slice file failure from the server of multiple server, terminal obtains current slice file from another server multiple server.
Alternatively, in the present embodiment as shown in Figure 3, if the current slice file obtained can not directly be play in terminal, then need by transcoding task Distributor, the original video files of correspondence is distributed in transcoding section server cluster and carries out corresponding transcoding and sectioning, then obtain the slicing files in the video file after transcoding from a server above-mentioned transcoding section server cluster.
Alternatively, in the present embodiment as shown in Figure 3, video player obtains the entry address of current slice file by video playing terminal control interface, then play query interface server by high in the clouds and obtain the streaming media data stream address directly can carrying out local broadcasting, the essential information obtained when inquiry comprises the burst information of slicing files, wherein above-mentioned burst information can include but not limited to: burst URL address, the Hash mark of file, the Hash mark of slicing files, duration.
Such as, as shown in Figure 4, video player in terminal 402 is just at playing video file Movie_1, above-mentioned video file is divided into multiple slicing files, terminal 402 receives the video playback instruction of user's input, current slice file f-5 in request playing video file Movie_1, this slicing files is at server 404-1, server 404-2, server 404-3, server 404-4 all there is storage, suppose according to predetermined condition (such as, predetermined condition is the fastest link of transmission speed) have selected server 404-3, but when obtaining the failure of current slice file from server 404-3, terminal is attempted from other servers above-mentioned multiple server (such as successively, server 404-1, server 404-2, in server 404-4 one) obtain above-mentioned current slice file f-5, until successfully get current slice file f-5.
By embodiment provided by the invention, when the server of in multiple server obtains current slice file failure, terminal obtains current slice file by from another server in multiple server, by the mode of this multi-source transmitting video files, the speed obtaining current slice file can be ensured.
As the optional scheme of one, above-mentioned steps S204, when terminal obtains current slice file failure from the server of multiple server, terminal comprises from another server acquisition current slice file multiple server:
S1, terminal sends the first burst to the first server in multiple server and obtains request, and wherein, the first burst obtains request for obtaining current slice file;
S2, if terminal does not receive burst that first server sends and obtains response or terminal and receive burst that first server sends and obtain failure response or terminal do not complete reception to the current slice file that first server sends within the second predetermined time period in predetermined first time period, then terminal sends the second burst to the second server in multiple server and obtains request, wherein, the second burst obtains request for obtaining current slice file;
S3, terminal receives the current slice file that second server sends.
Alternatively, in the present embodiment to the first server (such as, server 403-1) in multiple server send first burst obtain request, wherein, first burst obtain request for obtaining current slice file.In the process obtaining current slice file, may obtain failure, above-mentioned steps S2 provides several conditions obtained unsuccessfully.Wherein, the third situation in step S2 in the present embodiment, the reception of current slice file do not completed within the second predetermined time period first server sends includes but not limited to: terminal does not receive the link establishment response that server sends in predetermined time section; Terminal receives the link establishment failure response that server sends in predetermined time section; Terminal does not complete the reception to the current slice file that server sends in predetermined time section.
Below specifically describe in conjunction with example, shown in composition graphs 4, video player in terminal 402 is just at playing video file Movie_1, above-mentioned video file is divided into multiple slicing files, terminal 402 receives the video playback instruction of user's input, current slice file f-5 in request playing video file Movie_1, this slicing files all has storage on server 404-1, server 404-2, server 404-3, server 404-4.Suppose that terminal 402 sends the acquisition request of current slice file f-5 to the server 404-1 in above-mentioned multiple server, if terminal 402 meets following at least one obtain failed condition: such as, terminal 402 does not receive the burst acquisition response that 404-1 sends in predetermined first time period (such as, 1 minute); Or terminal 402 receives the burst acquisition failure response that 404-1 sends; Or terminal 402 the second predetermined time period (such as, 5 minutes) in do not complete the reception of current slice file f-5 that server 404-1 is sent, then terminal 402 obtains request by sending the second burst to the server 404-2 in multiple server, wherein, second burst obtains request for obtaining current slice file f-5, if successfully obtain current slice file f-5, the current slice file f-5 that reception server 404-2 sends by terminal 402.
By embodiment provided by the invention, after obtaining request to the server of first in multiple server the first burst sent for obtaining current slice file, if meet at least one to obtain failed condition, then terminal obtains request by sending the second burst being used for obtaining current slice file equally to the second server in multiple server, thus ensure that the speed obtaining current slice file.
As the optional scheme of one, above-mentioned steps S104, when terminal obtains current slice file failure from the server of multiple server, terminal comprises from another server acquisition current slice file multiple server:
S1, terminal sends the 3rd burst to each in multiple server and obtains request, and wherein, the first burst obtains request for obtaining current slice file;
S2, terminal have sent in the server of burst acquisition response to terminal and selects one as the 3rd server from multiple server, and sends the first request for building link to the 3rd server;
S3, if terminal does not receive link establishment response that the 3rd server sends or terminal and receives link establishment failure response that the 3rd server sends or terminal does not complete the reception of current slice file sent the 3rd server within the 4th predetermined time period within the 3rd predetermined time period, then terminal selects another as the 4th server from the server that have sent burst acquisition response to terminal, and sends the second request for building link to the 4th server;
S4, terminal receives the current slice file that the 4th server sends.
Specifically describe in conjunction with example, shown in composition graphs 4, video player in terminal 402 is just at playing video file Movie_1, above-mentioned video file is divided into multiple slicing files, terminal 402 receives the video playback instruction of user's input, current slice file f-5 in request playing video file Movie_1, this slicing files all has storage on server 404-1, server 404-2, server 404-3, server 404-4.Suppose that terminal 402 sends the acquisition request of current slice file f-5 to the server 404-1 in above-mentioned multiple server, suppose that the server 404-3 in multiple server have sent burst acquisition response to terminal 402, then terminal 402 have sent the first request for building link to server 404-3, for setting up transmission link between terminal 402 and server 404-3 to transmit slicing files.
If terminal 402 meets following at least one set up failed condition: such as, terminal 402 does not receive the link establishment response that server 404-3 sends within predetermined the 3rd time period (such as, 2 minutes), or terminal 402 receives the link establishment failure response of server 404-3 transmission, or terminal 402 within the 4th predetermined time period (such as, 3 minutes) do not complete the reception of current slice file f-5 that server 404-3 is sent, then terminal 402 using from successful transmission of to terminal 402 burst obtain response server in select another as the 4th server (such as, server 404-4), and send the second request for building link to server 404-4, for setting up transmission link between terminal 402 to server 404-4 to transmit slicing files, if successfully set up link, then terminal 402 current slice file f-5 that reception server 404-2 is sent.
By embodiment provided by the invention, one is selected as the 3rd server in the server that successful transmission of acquisition response to terminal, and after sending the first request for building link to above-mentioned 3rd server, if meet at least one to set up failed condition, then terminal selects one as the 4th server using sending in the server obtained to other successes to it, and send the second request for building link to the 4th server, successfully to set up the reception of link realization to the slicing files of video file, thus ensure that the speed obtaining current slice file.
As the optional scheme of one, it is that the terminal burst that first receives in multiple server obtains response that the burst that the 3rd server sends obtains response.
Alternatively, the condition selecting the 3rd server to send the first request for building link in the present embodiment includes but not limited to: the 3rd transmission speed between server and terminal is the fastest, the 3rd server is made burst at first and obtained response.
As the optional scheme of one, terminal one of in the following manner plays current slice file:
As the optional execution mode of one, current slice file is deposited in memory by terminal, and uses the video player that terminal is installed to play current slice file.
Describe below in conjunction with concrete example, video player in terminal 402 is just at playing video file Movie_1, above-mentioned video file is divided into multiple slicing files, terminal 402 receives the video playback instruction of user's input, current slice file f-5 in request playing video file Movie_1, this slicing files all has storage on server 404-1, server 404-2, server 404-3, server 404-4.Suppose when terminal 402 and server 404-2 successfully set up link, then the current slice file f-5 that the video player come on transmission terminal 402 by above-mentioned link will be play.Above-mentioned current slice file f-5 has downloaded to the memory of terminal 402 from server 404-2, by directly calling the current slice file f-5 in the memory of terminal 402, with make in terminal 402 install video player can normal play current slice file f-5.
As another kind execution mode alternatively, current slice file exists in internal memory by terminal, and use the video player that terminal is installed to play the current slice file stored in internal memory, after current slice file finishes playing, from internal memory, delete current slice file.
Describe below in conjunction with concrete example, video player in terminal 402 is just at playing video file Movie_1, above-mentioned video file is divided into multiple slicing files, terminal 402 receives the video playback instruction of user's input, current slice file f-5 in request playing video file Movie_1, this slicing files all has storage on server 404-1, server 404-2, server 404-3, server 404-4.Suppose when terminal 402 and server 404-2 successfully set up link, then the current slice file f-5 that the video player come on transmission terminal 402 by above-mentioned link will be play.Above-mentioned current slice file f-5 has been downloaded from server 404-2 and has been saved in the internal memory of terminal 402, by directly calling the current slice file f-5 in the internal memory of terminal 402, to make the video player that terminal 402 is installed can normal play current slice file f-5, and after current slice file f-5 finishes playing, just from the internal memory of terminal 402, delete current slice file f-5.
As another optional execution mode, current slice Document encapsulation becomes to be served by the local video that video player calls by terminal, uses the video player that terminal is installed to call local video service, to play current slice file.
Describe below in conjunction with concrete example, video player in terminal 402 is just at playing video file Movie_1, above-mentioned video file is divided into multiple slicing files, terminal 402 receives the video playback instruction of user's input, current slice file f-5 in request playing video file Movie_1, this slicing files all has storage on server 404-1, server 404-2, server 404-3, server 404-4.Suppose when terminal 402 and server 404-2 successfully set up link, then the current slice file f-5 that the video player come on transmission terminal 402 by above-mentioned link will be play.Current slice file f-5 is packaged into and can be served by the local video that video player calls by terminal 402, and wherein, local video service in the present embodiment can be but be not limited to: video file is to the link of server.Such as, terminal 402 is provided with can be served by the local video that video player calls about current slice file f-5, then when slicing files f-5 will be play, selection have employed local video service, then directly call the data of current slice file f-5 correspondence in respective server by the chained address of correspondence.
By embodiment provided by the invention, the slicing files got is saved as local temporary files or is encapsulated as local video service, then play above-mentioned local temporary files by the video player in terminal or call local video service, relieve being coupled between the transmitting procedure of video file and the playing process of video player in this way, achieve transmitting procedure and playing process is separated.
As the optional scheme of one, as shown in Figure 6, in step S202, receive the video playback instruction of input in terminal before, also comprise
S602, carries out transcoding by the original document corresponding with video file, obtains file after multiple transcoding, and wherein, after each transcoding, the code check of file is different;
S604, carries out burst to file after each transcoding, obtains the slicing files of file after each transcoding;
S606, is stored in each slicing files of file after each transcoding in multiple server.
Alternatively, can include but not limited to the mode that the original document corresponding with video file carries out transcoding in the present embodiment: convert video file to predetermined form in advance, when receiving terminal for asking the request of current slice file, according to above-mentioned request, the video file of the predetermined format that above-mentioned terminal will be obtained sends to terminal.
Such as, by reference to the accompanying drawings shown in 4, video player in terminal 402 is just at playing video file Movie_1, above-mentioned video file is divided into multiple slicing files, terminal 402 receives the video playback instruction of user's input, current slice file f-5 in request playing video file Movie_1, this slicing files all has storage on server 404-1, server 404-2, server 404-3, server 404-4.The video file of corresponding format is sent to terminal 402 by according to above-mentioned request after receiving the request that terminal 402 sends by server.
Further, again cutting burst is carried out to the video file after transcoding, obtain the slicing files of file after each transcoding, and each slicing files of file after each transcoding is stored in multiple server (such as, server 404-1, server 404-2, server 404-3, server 404-4).
Pass through embodiments of the invention, by for code check under the mobile device of various different size and various heterogeneous networks condition, transcoding operation can be carried out to video file, file video file being converted to various different video form is kept on cloud server, for dissimilar terminal provides corresponding video playback demand.
It should be noted that, for aforesaid each embodiment of the method, in order to simple description, therefore it is all expressed as a series of combination of actions, but those skilled in the art should know, the present invention is not by the restriction of described sequence of movement, because according to the present invention, some step can adopt other orders or carry out simultaneously.Secondly, those skilled in the art also should know, the embodiment described in specification all belongs to preferred embodiment, and involved action and module might not be that the present invention is necessary.
Through the above description of the embodiments, those skilled in the art can be well understood to the mode that can add required general hardware platform by software according to the method for above-described embodiment and realize, hardware can certainly be passed through, but in a lot of situation, the former is better execution mode.Based on such understanding, technical scheme of the present invention can embody with the form of software product the part that prior art contributes in essence in other words, this computer software product is stored in a storage medium (as ROM/RAM, magnetic disc, CD), comprising some instructions in order to make a station terminal equipment (can be mobile phone, computer, server, or the network equipment etc.) perform method described in each embodiment of the present invention.
Embodiment 2
According to the embodiment of the present invention, additionally provide a kind of video play device for implementing above-mentioned player method, as shown in Figure 7, this device comprises in the present embodiment:
1) receiving element 702, receive the video playback instruction of input for terminal, wherein, video playback instruction is for asking the current slice file in playing video file, and video file has the multiple slicing files comprising current slice file;
2) acquiring unit 704, for obtaining current slice file from multiple server, wherein, each in multiple server all stores current slice file;
3) broadcast unit 706, for playing current slice file.
Alternatively, above-mentioned video broadcasting method can be applied in the video player that terminal is installed in the present embodiment, and wherein, above-mentioned terminal can comprise one of following: mobile phone, panel computer.
Alternatively, Fig. 3 provides the optional video broadcasting method of one in the present embodiment.Relate in the video broadcasting method shown in Fig. 3 with lower module:
1) video playback kernel module
Alternatively, the various videos that above-mentioned video playback kernel module is used for receiver, video playback terminal control interface layer and provides connect, and can be URL, eMule links, whether Bt seed or Magnet chain, inquire about according to file hash/bt+index/emule link etc. and can play in high in the clouds;
Alternatively, above-mentioned video playback kernel module is also for data that the video file of reading video data Switching Module is corresponding, above-mentioned data can be kept at local temporary file, directly deleting from internal memory after finishing playing, also can be the local video service of being called by the video server of local http.Then to the work such as to play up at the process of the broadcasting of media video file, burst, interface.
Alternatively, video player in the present embodiment also needs to call multi-source transmission kernel: carry out actual video file download from playing link, and give player go play, multi-source transmission kernel module is responsible for efficiently needing from high efficiency of transmission the peer node of high in the clouds storage server and opposite end the video file that carries out playing, wherein the address of high in the clouds storage server address and opposite end peer is obtained by multi-source transmission directory system, multi-source data transport module, according to the control command of player, downloads the specific part of file to be played; Resolve file structure to be played, inform that download module needs the specific part start-stop position of downloading; Resolve file structure to be played, be separated audio frequency and video bag; Audio frequency and video bag is decoded; Display and broadcast decoder after audio, video data, carry out concrete broadcasting;
Alternatively, video data Switching Module in the present embodiment comprises: the efficient data being realized the video player in server and terminal by following two kinds of modes is exchanged and seamless some multicast function: video data http serves, local temporary files.
Alternatively, player and the exchange process downloaded between kernel include but not limited to: player stochastic searching seek process, the process of burst seamless switching.Alternatively, user can arbitrarily drag by the key-course of video player the video file play in the present embodiment.When adopting the mode of local temporary files swap data, when stochastic searching seek to some positions, need according to target duration position and slice size, calculate which burst, slicing files downloads the Range address of transmission, if to the edge of a burst, need, across sheet transmission data, first to load new slicing files.The Range address transfer of request is downloaded kernel to multi-source, multi-source downloads the range address that kernel can adjust download, prioritised transmission needs the slicing files of the video play, the speed and progress msg of downloading transmission are adjusted back to player simultaneously, player just can carry out after obtaining the slicing files that can play playing up broadcasting, is now the slicing files directly being read the video of local temporary files by the skew interface of file.
Alternatively, when adopting the mode of local video http-server to carry out exchanges data, the address transition of stochastic searching seek is local URL address Range information, local http-server is being converted to the remote data download request of multi-source download kernel from cloud storage server and the Internet download data, and the data of download are successively notifying upper strata until player is play.
Alternatively, in the present embodiment in order to ensure the speed of experience and the loading of playing, burst is carried out to the video file after transcoding.Alternatively, burst seamless switching can in the following ways in the present embodiment: adopt two to play views and be laid in together, time the broadcasting view that first slicing files is corresponding starts to broadcast, second slicing files starts to prepare, when receiving broadcasting view corresponding to first slicing files and playing the readjustment terminated, first play view hidden fall, second play view start play, guarantee have one to be in broadcasting view activation state corresponding to slicing files so at every turn.
Alternatively, play in the present embodiment and the various daily record inquired about in downloading process and state information report to statistical server for follow-up analysis.
2) video playing terminal control interface:
Alternatively, above-mentioned control interface is for controlling playing function interface in the present embodiment, completes the interactive operation with user, and user is to the operation requests action of video file in response;
Alternatively, video playback kernel module is submitted in the various videos connections of above-mentioned control interface also for user being provided in the present embodiment, determine whether to play-over, alternatively, video connection in the present embodiment can be, but not limited to: URL, eMule links, Bt seed, Magnet chain
3) query interface server is play in high in the clouds
Alternatively, the high in the clouds broadcasting inquiry that query interface server is used for receiver, video broadcasting kernel module is play in above-mentioned high in the clouds in the present embodiment, alternatively, in the present embodiment by playing reading transcoding result database, obtain the burst information of displaying video, the relevant informations such as URL address and duration;
Alternatively, in the present embodiment when video file to be checked cannot be play-overed, can call transcoding task Distributor directly carry out original video files transcoding sectioning or be submitted to off-line download server first carry out off-line download be saved on cloud storage server.
4) transcoding result database
Alternatively, above-mentioned transcoding result database is other to the video file mark after the transcoding of original video files and section for preserving transcoding section server in the present embodiment, the information such as video file size duration;
Alternatively, above-mentioned transcoding result database also provides inquiry service for playing query interface server for cloud in the present embodiment.
5) transcoding section server zone
Alternatively, in the present embodiment transcoding section server zone for receive transcoding task distribution take device transcoding section task scheduling;
Alternatively, above-mentioned transcoding section server zone is also for from downloading video files on cloud storage server to this locality in the present embodiment, carries out various definition and code check, the format conversion operation of resolution to video file.Alternatively, also sectioning to be carried out to the video file after transcoding in the present embodiment.
Alternatively, the object information of above-mentioned transcoding section server zone also for being cut into slices by transcoding is kept in the middle of transcoding result database in the present embodiment.
6) transcoding task Distributor
Alternatively, its video task information directly can not carrying out high in the clouds broadcasting submitted to for receiving high in the clouds broadcasting query interface server of above-mentioned transcoding task distribution processor in the present embodiment, if the original document of this video beyond the clouds storage server exists, transcoding sectioning is carried out with regard to directly calling transcoding section server zone, otherwise first call off-line download group system and carry out high in the clouds download service, the file of download is saved on the storage server of high in the clouds.
7) multi-source transmission directory system
Alternatively, be the directory system service that video player kernel provides multi-source data to transmit in the present embodiment, promote the efficiency of transfer of data.Alternatively, can comprise in the present embodiment: p2s and p2p index service two parts;
Alternatively, p2s service in the present embodiment, by the entrance URL address of file transfer or the mark of local temporary files, inquires about a collection of other URL address information set comprising same video file, downloads respective file for multi-source transmission kernel.Alternatively, peer IP address and the port of p2p service for providing other carrying out same video file transfer in the present embodiment.
8) video content provides/off-line download system
Alternatively, said system is for receiving the scheduling of transcoding sub server in the present embodiment, from assignment database, obtain download link, carries out task download.
Alternatively, the video file of said system also for having been downloaded in high in the clouds is stored in high in the clouds storage server in the present embodiment, fetches for the video player in terminal.
Alternatively, said system is also for providing initial data service for transcoding section server cluster in the present embodiment, preserves transcoding and the video file after having cut into slices simultaneously.
Alternatively, said system is as content source in the present embodiment, is also that non-internet carries content up and down, such as, the initiatively data source having the content of copyright video of operation, by here by transfer of data corresponding for video file on high in the clouds storage server or various CDN data source server.
9) high in the clouds storage server
Alternatively, in the present embodiment above-mentioned high in the clouds storage server for data corresponding to the video file preserving off-line download system and downloaded at server end;
Alternatively, the data source of above-mentioned high in the clouds storage server also for fetching data corresponding to video file as video playback list download off-line provides service in the present embodiment.
Alternatively, the data source that above-mentioned high in the clouds storage server also provides transcoding to export for cutting into slices for transcoding server in the present embodiment preserve section simultaneously after complete video slicing files.
10) statistical server
Alternatively, statistical server is in the present embodiment used for receiver, video and plays URL speed of download in downloading process, download time, connection situation, downloads reporting of the information such as result, file size.
Alternatively, statistical server is in the present embodiment also for adding up number of times and the duration of video random cache in the middle of the loading velocity of video content in the middle of receiver, video playing process and play buffering process, and the effect being used for assessing and analyzing video playback is experienced.
Alternatively, in the present embodiment, above-mentioned video file is divided into multiple slicing files in advance, wherein, can be, but not limited to carry out burst division according to predetermined point leaf length to above-mentioned video file, such as, for point leaf length, burst division was carried out to the video file that playing duration is 50 minutes with 5 minutes, obtain 10 slicing files.Alternatively, above-mentioned point leaf length can be determined according to different factors, above-mentioned factor include but not limited to following one of at least: the playing duration of video file, for storing storage size, the network transfer speeds of slicing files.
Alternatively, video playback instruction is in the present embodiment for asking the current slice file in playing video file, and video file has the multiple slicing files comprising current slice file.Alternatively, each slicing files in multiple slicing files in the present embodiment all has storage in multiple server.Such as, as shown in Figure 4, video file comprises 10 slicing files, the current slice file that terminal 402 is asked is the 2nd slicing files in above-mentioned 10 slicing files, 2nd slicing files is stored in multiple server (such as, server 404-1, server 404-2, server 404-3, server 404-4) in, to form the backup to the 2nd slicing files between the plurality of server.
Alternatively, above-mentioned terminal obtains above-mentioned current slice file from multiple server and comprises: when terminal obtains above-mentioned current slice file failure from a server above-mentioned multiple server, above-mentioned terminal obtains above-mentioned current slice file from another server above-mentioned multiple server.
Alternatively, the process that terminal obtains current slice file from a server comprises:
S1, terminal sends burst to this server and obtains request;
S2, terminal receives the burst acquisition response that this server sends;
S3, terminal sends request for building link to this server;
S4, terminal receives the link establishment response that this server sends;
S5, the link that terminal is set up between terminal and this server receives the current slice file that this server sends.
Alternatively, said process is only that terminal obtains a kind of example of current slice file from server, and the present embodiment is also applicable to the process that other obtain current slice file.In the process of above-mentioned acquisition current slice file, the condition of current slice file acquisition failure can include but not limited to one of following:
1) terminal does not receive the burst that server sends and obtains response in predetermined time section;
2) terminal receives the burst that server sends and obtains failure response in predetermined time section;
3) terminal does not receive the link establishment response that server sends in predetermined time section;
4) terminal receives the link establishment failure response that server sends in predetermined time section;
5) terminal does not complete the reception to the current slice file that server sends in predetermined time section.
Alternatively, the video playback kernel module in the present embodiment as shown in Figure 3 in terminal introduces multi-source data transport module, again provides brand-new mode of carrying out data interaction with video player.Wherein, above-mentioned interactive mode can include but not limited to: the mode adopting local temporary files, video data http local service, to realize carrying out exchanges data with the video player in terminal.
Alternatively, receive the video playback instruction of input in the present embodiment in terminal before, the original document corresponding to video file is carried out transcoding, obtain file after multiple transcoding, then burst is carried out to file after each transcoding.Alternatively, after each transcoding in the present embodiment, the code check of file is different, to make the video player in terminal without the need to adopting the player of full format, that is, the size of player and size can greatly simplify, as long as support predetermined form, just by the mode of transcoding, the video file video file of multiple different-format being changed into predetermined format is play in above-mentioned video player.Alternatively, transcoding in the present embodiment can be, but not limited to the operation of format conversion for carrying out various definition, code check, resolution to above-mentioned video file.Such as, the video file of WMV form is the super clear video file that code check is relatively high, resolution is relatively high, if the video player in terminal only supports the video file of FLV form (wherein, the video file of FLV form is the ordinary video file that code check is relatively low, resolution is relatively low), then need to carry out transcoding operation to the video file of above-mentioned WMV form, obtain the video file of corresponding FLV form.
Again such as, video player in terminal only supports the video file of MP4 form, when server only storing the video file of WMV form, because the video file of WMV form can not normal play in the video player of above-mentioned terminal, thus, can be the video file of WMV form by the video file transcoding of WMV form at server side.
Further, as shown in table 2, the video player in terminal 402 just at playing video file Movie1, this video file server side by transcoding be different-format (such as, FLV, WMV,
_
RA, MP4) file after transcoding, then each burst in file after the transcoding of different-format is divided into multiple slicing files, such as, the slicing files that after each transcoding, file has comprises: slicing files f-1, f-2, f-3, f-4, f-5, f-6; Above-mentioned each slicing files is stored on multiple server, above to form the backup to above-mentioned slicing files at multiple server (such as, comprising server 404-1, server 404-2, server 404-3, server 404-4).As a kind of example, above-mentioned slicing files, storage format and for store slicing files server between corresponding relation as shown in table 2 below.
Table 2
It should be noted that, the number of above-mentioned slicing files, form classification, and corresponding relation is only a kind of example of the application, the present embodiment is to the number of slicing files, form classification, and corresponding relation does not limit, the present embodiment can also be applicable to other scene, such as, at server 404-1, server 404-2, server 404-3 and server 404-4 all stores 6 slicing files that form is file after the transcoding of FLV, form is 6 slicing files of file after the transcoding of WMV, form is 6 slicing files of file after the transcoding of RA, form is 6 slicing files of file after the transcoding of MP4.
Below specifically describe in conjunction with example, as illustrated in figures 4-5, video player in terminal 402 is just at playing video file Movie_1, above-mentioned video file is divided into multiple slicing files, terminal 402 receives the video playback instruction of user's input, current slice file f-5 in request playing video file Movie_1, this slicing files is at server 404-1, server 404-2, server 404-3, server 404-4 all there is storage, suppose according to predetermined condition (such as, predetermined condition is the fastest link of transmission speed) have selected server 404-3, then above-mentioned terminal 402 will play the current slice file f-5 obtained by server 404-3.
By embodiment provided by the invention, by video file is carried out burst, and play by the acquisition current slice file of in multiple server, thus ensure that the speed obtaining slicing files, the technical problem that the broadcasting fluency caused by single server acquisition video file in solution prior art is low, improves the fluency that video file is play.
As the optional scheme of one, acquiring unit 704 comprises:
1) acquisition module, obtains current slice file for the terminal when obtaining current slice file failure from the server of in multiple server from another server multiple server.
Alternatively, in the present embodiment as shown in Figure 3, if the current slice file obtained can not directly be play in terminal, then need by transcoding task Distributor, the original video files of correspondence is distributed in transcoding section server cluster and carries out corresponding transcoding and sectioning, then obtain the slicing files in the video file after transcoding from a server above-mentioned transcoding section server cluster.
Alternatively, in the present embodiment as shown in Figure 3, video player obtains the entry address of current slice file by video playing terminal control interface, then play query interface server by high in the clouds and obtain the streaming media data stream address directly can carrying out local broadcasting, the essential information obtained when inquiry comprises the burst information of slicing files, wherein above-mentioned burst information can include but not limited to: burst URL address, the Hash mark of file, the Hash mark of slicing files, duration.
Such as, as shown in Figure 4, video player in terminal 402 is just at playing video file Movie_1, above-mentioned video file is divided into multiple slicing files, terminal 402 receives the video playback instruction of user's input, current slice file f-5 in request playing video file Movie_1, this slicing files is at server 404-1, server 404-2, server 404-3, server 404-4 all there is storage, suppose according to predetermined condition (such as, predetermined condition is the fastest link of transmission speed) have selected server 404-3, but when obtaining the failure of current slice file from server 404-3, terminal is attempted from other servers above-mentioned multiple server (such as successively, server 404-1, server 404-2, in server 404-4 one) obtain above-mentioned current slice file f-5, until successfully get current slice file f-5.
By embodiment provided by the invention, when the server of in multiple server obtains current slice file failure, terminal obtains current slice file by from another server in multiple server, by the mode of this multi-source transmitting video files, the speed obtaining current slice file can be ensured.
As the optional scheme of one, acquisition module comprises:
1) first send submodule, obtain request for sending the first burst to the first server in multiple server, wherein, the first burst obtains request for obtaining current slice file;
2) second submodule is sent, the burst sent for not receiving first server in predetermined first time period obtains response or receives burst that first server sends when obtaining failure response or do not complete the reception of current slice file sent first server within the second predetermined time period, send the second burst to the second server in multiple server and obtain request, wherein, the second burst obtains request for obtaining current slice file;
3) first submodule is received, for receiving the current slice file that second server sends.
Alternatively, in the present embodiment to the first server (such as, server 403-1) in multiple server send first burst obtain request, wherein, first burst obtain request for obtaining current slice file.In the process obtaining current slice file, may obtain failure, above-mentioned steps S2 provides several conditions obtained unsuccessfully.Wherein, the third situation in step S2 in the present embodiment, the reception of current slice file do not completed within the second predetermined time period first server sends includes but not limited to: terminal does not receive the link establishment response that server sends in predetermined time section; Terminal receives the link establishment failure response that server sends in predetermined time section; Terminal does not complete the reception to the current slice file that server sends in predetermined time section.
Below specifically describe in conjunction with example, shown in composition graphs 4, video player in terminal 402 is just at playing video file Movie_1, above-mentioned video file is divided into multiple slicing files, terminal 402 receives the video playback instruction of user's input, current slice file f-5 in request playing video file Movie_1, this slicing files all has storage on server 404-1, server 404-2, server 404-3, server 404-4.Suppose that terminal 402 sends the acquisition request of current slice file f-5 to the server 404-1 in above-mentioned multiple server, if terminal 402 meets following at least one obtain failed condition: such as, terminal 402 does not receive the burst acquisition response that 404-1 sends in predetermined first time period (such as, 1 minute); Or terminal 402 receives the burst acquisition failure response that 404-1 sends; Or terminal 402 the second predetermined time period (such as, 5 minutes) in do not complete the reception of current slice file f-5 that server 404-1 is sent, then terminal 402 obtains request by sending the second burst to the server 404-2 in multiple server, wherein, second burst obtains request for obtaining current slice file f-5, if successfully obtain current slice file f-5, the current slice file f-5 that reception server 404-2 sends by terminal 402.
By embodiment provided by the invention, after obtaining request to the server of first in multiple server the first burst sent for obtaining current slice file, if meet at least one to obtain failed condition, then terminal obtains request by sending the second burst being used for obtaining current slice file equally to the second server in multiple server, thus ensure that the speed obtaining current slice file.
As the optional scheme of one, acquisition module comprises:
1) the 3rd sending submodule, obtaining request for sending the 3rd burst to each in multiple server, wherein, the first burst obtains request for obtaining current slice file;
2) the first chooser module, the burst for sending from multiple server obtains in the server of response selects one as the 3rd server, and sends the first request for building link to the 3rd server;
3) the second chooser module, when not receiving link establishment response that the 3rd server sends or receive link establishment failure response that the 3rd server sends or do not complete the reception of current slice file that the 3rd server is sent within the 4th predetermined time period within the 3rd predetermined time period, obtaining the server of response from the burst sent selects another as the 4th server, and sends the second request for building link to the 4th server;
4) second submodule is received, for receiving the current slice file that the 4th server sends.
Specifically describe in conjunction with example, shown in composition graphs 4, video player in terminal 402 is just at playing video file Movie_1, above-mentioned video file is divided into multiple slicing files, terminal 402 receives the video playback instruction of user's input, current slice file f-5 in request playing video file Movie_1, this slicing files all has storage on server 404-1, server 404-2, server 404-3, server 404-4.Suppose that terminal 402 sends the acquisition request of current slice file f-5 to the server 404-1 in above-mentioned multiple server, suppose that the server 404-3 in multiple server have sent burst acquisition response to terminal 402, then terminal 402 have sent the first request for building link to server 404-3, for setting up transmission link between terminal 402 and server 404-3 to transmit slicing files.
If terminal 402 meets following at least one set up failed condition: such as, terminal 402 does not receive the link establishment response that server 404-3 sends within predetermined the 3rd time period (such as, 2 minutes), or terminal 402 receives the link establishment failure response of server 404-3 transmission, or terminal 402 within the 4th predetermined time period (such as, 3 minutes) do not complete the reception of current slice file f-5 that server 404-3 is sent, then terminal 402 using from successful transmission of to terminal 402 burst obtain response server in select another as the 4th server (such as, server 404-4), and send the second request for building link to server 404-4, for setting up transmission link between terminal 402 to server 404-4 to transmit slicing files, if successfully set up link, then terminal 402 current slice file f-5 that reception server 404-2 is sent.
By embodiment provided by the invention, one is selected as the 3rd server in the server that successful transmission of acquisition response to terminal, and after sending the first request for building link to above-mentioned 3rd server, if meet at least one to set up failed condition, then terminal selects one as the 4th server using sending in the server obtained to other successes to it, and send the second request for building link to the 4th server, successfully to set up the reception of link realization to the slicing files of video file, thus ensure that the speed obtaining current slice file.
As the optional scheme of one, it is that the video play device burst that first receives in multiple server obtains response that the burst that the 3rd server selected by the first chooser module sends obtains response.
Alternatively, the condition selecting the 3rd server to send the first request for building link in the present embodiment includes but not limited to: the 3rd transmission speed between server and terminal is the fastest, the 3rd server is made burst at first and obtained response.
As the optional scheme of one, broadcast unit comprises one of following:
1) the first playing module, for playing the current slice file be stored in the memory of video play device.
Describe below in conjunction with concrete example, video player in terminal 402 is just at playing video file Movie_1, above-mentioned video file is divided into multiple slicing files, terminal 402 receives the video playback instruction of user's input, current slice file f-5 in request playing video file Movie_1, this slicing files all has storage on server 404-1, server 404-2, server 404-3, server 404-4.Suppose when terminal 402 and server 404-2 successfully set up link, then the current slice file f-5 that the video player come on transmission terminal 402 by above-mentioned link will be play.Above-mentioned current slice file f-5 has downloaded to the memory of terminal 402 from server 404-2, by directly calling the current slice file f-5 in the memory of terminal 402, with make in terminal 402 install video player can normal play current slice file f-5.
2) the second playing module, for playing the current slice file be stored in the internal memory of video play device, and deletes current slice file after current slice file finishes playing from internal memory.
Describe below in conjunction with concrete example, video player in terminal 402 is just at playing video file Movie_1, above-mentioned video file is divided into multiple slicing files, terminal 402 receives the video playback instruction of user's input, current slice file f-5 in request playing video file Movie_1, this slicing files all has storage on server 404-1, server 404-2, server 404-3, server 404-4.Suppose when terminal 402 and server 404-2 successfully set up link, then the current slice file f-5 that the video player come on transmission terminal 402 by above-mentioned link will be play.Above-mentioned current slice file f-5 has been downloaded from server 404-2 and has been saved in the internal memory of terminal 402, by directly calling the current slice file f-5 in the internal memory of terminal 402, to make the video player that terminal 402 is installed can normal play current slice file f-5, and after current slice file f-5 finishes playing, just from the internal memory of terminal 402, delete current slice file f-5.
3) the 3rd playing module, for calling the local video service become by current slice Document encapsulation, to play current slice file.
Describe below in conjunction with concrete example, video player in terminal 402 is just at playing video file Movie1, above-mentioned video file is divided into multiple slicing files, terminal 402 receives the video playback instruction of user's input, current slice file f-5 in request playing video file Movie_1, this slicing files all has storage on server 404-1, server 404-2, server 404-3, server 404-4.Suppose when terminal 402 and server 404-2 successfully set up link, then the current slice file f-5 that the video player come on transmission terminal 402 by above-mentioned link will be play.Current slice file f-5 is packaged into and can be served by the local video that video player calls by terminal 402, and wherein, local video service in the present embodiment can be but be not limited to: video file is to the link of server.Such as, terminal 402 is provided with can be served by the local video that video player calls about current slice file f-5, then when slicing files f-5 will be play, selection have employed local video service, then directly call the data of current slice file f-5 correspondence in respective server by the chained address of correspondence.
By embodiment provided by the invention, the slicing files got is saved as local temporary files or is encapsulated as local video service, then play above-mentioned local temporary files by the video player in terminal or call local video service, relieve being coupled between the transmitting procedure of video file and the playing process of video player in this way, achieve transmitting procedure and playing process is separated.
Alternatively, can include but not limited to the mode that the original document corresponding with video file carries out transcoding in the present embodiment: convert video file to predetermined form in advance, when receiving terminal for asking the request of current slice file, according to above-mentioned request, the video file of the predetermined format that above-mentioned terminal will be obtained sends to terminal.
Such as, by reference to the accompanying drawings shown in 4, video player in terminal 402 is just at playing video file Movie_1, above-mentioned video file is divided into multiple slicing files, terminal 402 receives the video playback instruction of user's input, current slice file f-5 in request playing video file Movie_1, this slicing files all has storage on server 404-1, server 404-2, server 404-3, server 404-4.The video file of corresponding format is sent to terminal 402 by according to above-mentioned request after receiving the request that terminal 402 sends by server.
Further, again cutting burst is carried out to the video file after transcoding, obtain the slicing files of file after each transcoding, and each slicing files of file after each transcoding is stored in multiple server (such as, server 404-1, server 404-2, server 404-3, server 404-4).
Pass through embodiments of the invention, by for code check under the mobile device of various different size and various heterogeneous networks condition, transcoding operation can be carried out to video file, file video file being converted to various different video form is kept on cloud server, for dissimilar terminal provides corresponding video playback demand.
The invention described above embodiment sequence number, just to describing, does not represent the quality of embodiment.
In the above embodiment of the present invention, the description of each embodiment is all emphasized particularly on different fields, in certain embodiment, there is no the part described in detail, can see the associated description of other embodiments.
In several embodiments that the application provides, should be understood that, disclosed client, the mode by other realizes.Wherein, device embodiment described above is only schematic, the such as division of described unit, be only a kind of logic function to divide, actual can have other dividing mode when realizing, such as multiple unit or assembly can in conjunction with or another system can be integrated into, or some features can be ignored, or do not perform.Another point, shown or discussed coupling each other or direct-coupling or communication connection can be by some interfaces, and the indirect coupling of unit or module or communication connection can be electrical or other form.
The described unit illustrated as separating component or can may not be and physically separates, and the parts as unit display can be or may not be physical location, namely can be positioned at a place, or also can be distributed in multiple network element.Some or all of unit wherein can be selected according to the actual needs to realize the object of the present embodiment scheme.
In addition, each functional unit in each embodiment of the present invention can be integrated in a processing unit, also can be that the independent physics of unit exists, also can two or more unit in a unit integrated.Above-mentioned integrated unit both can adopt the form of hardware to realize, and the form of SFU software functional unit also can be adopted to realize.
If described integrated unit using the form of SFU software functional unit realize and as independently production marketing or use time, can be stored in a computer read/write memory medium.Based on such understanding, the part that technical scheme of the present invention contributes to prior art in essence in other words or all or part of of this technical scheme can embody with the form of software product, this computer software product is stored in a storage medium, comprises all or part of step of some instructions in order to make a computer equipment (can be personal computer, server or the network equipment etc.) perform method described in each embodiment of the present invention.And aforesaid storage medium comprises: USB flash disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), portable hard drive, magnetic disc or CD etc. various can be program code stored medium.
The above is only the preferred embodiment of the present invention; it should be pointed out that for those skilled in the art, under the premise without departing from the principles of the invention; can also make some improvements and modifications, these improvements and modifications also should be considered as protection scope of the present invention.

Claims (13)

1. a video broadcasting method, is characterized in that, comprising:
Terminal receives the video playback instruction of input, and wherein, described video playback instruction is for asking the current slice file in playing video file, and described video file has the multiple slicing files comprising described current slice file;
Described terminal obtains described current slice file from multiple server, and wherein, each in described multiple server all stores described current slice file;
Current slice file described in described terminal plays.
2. method according to claim 1, is characterized in that, described terminal obtains described current slice file from multiple server and comprises:
When described terminal obtains described current slice file failure from a server described multiple server, described terminal obtains described current slice file from another server described multiple server.
3. method according to claim 2, it is characterized in that, described when described terminal obtains described current slice file failure from a server described multiple server described terminal obtain described current slice file from another server described multiple server and comprise:
Described terminal sends the first burst to the first server in described multiple server and obtains request, and wherein, described first burst obtains request for obtaining described current slice file;
If described terminal does not receive burst that described first server sends and obtains response or described terminal and receive burst that described first server sends and obtain failure response or described terminal do not complete reception to the described current slice file that described first server sends within the second predetermined time period in predetermined first time period, then described terminal sends the second burst to the second server in described multiple server and obtains request, wherein, described second burst obtains request for obtaining described current slice file;
Described terminal receives the described current slice file that described second server sends.
4. method according to claim 2, it is characterized in that, described when described terminal obtains described current slice file failure from a server described multiple server described terminal obtain described current slice file from another server described multiple server and comprise:
Described terminal sends the 3rd burst to each in described multiple server and obtains request, and wherein, described first burst obtains request for obtaining described current slice file;
Described terminal have sent in the server of burst acquisition response to described terminal and selects one as the 3rd server from described multiple server, and sends the first request for building link to described 3rd server;
If described terminal does not receive link establishment response that described 3rd server sends or described terminal and receives link establishment failure response that described 3rd server sends or described terminal does not complete the reception of described current slice file sent described 3rd server within the 4th predetermined time period within the 3rd predetermined time period, then described terminal selects another as the 4th server from the server that have sent described burst acquisition response to described terminal, and sends the second request for building link to described 4th server;
Described terminal receives the described current slice file that described 4th server sends.
5. method according to claim 4, is characterized in that, it is that the described terminal burst that first receives in described multiple server obtains response that the burst that described 3rd server sends obtains response.
6. method according to any one of claim 1 to 5, is characterized in that, described terminal one of in the following manner plays described current slice file:
Described current slice file is deposited in memory by described terminal, and uses the video player that described terminal is installed to play described current slice file; Or
Described current slice file exists in internal memory by described terminal, and the described current slice file using the video player that described terminal is installed to play to store in described internal memory, after described current slice file finishes playing, from described internal memory, delete described current slice file; Or
Described current slice Document encapsulation becomes to be served by the local video that described video player calls by described terminal, uses the video player that described terminal is installed to call described local video service, to play described current slice file.
7. method according to any one of claim 1 to 5, is characterized in that, before receiving the video playback instruction of input, also comprises in described terminal:
The original document corresponding with described video file is carried out transcoding, obtains file after multiple transcoding, wherein, after each described transcoding, the code check of file is different;
Burst is carried out to file after each described transcoding, obtains the slicing files of file after each described transcoding;
The each described slicing files of file after each described transcoding is stored in described multiple server.
8. a video play device, is characterized in that, comprising:
Receiving element, receive the video playback instruction of input for terminal, wherein, described video playback instruction is for asking the current slice file in playing video file, and described video file has the multiple slicing files comprising described current slice file;
Acquiring unit, for obtaining described current slice file from multiple server, wherein, each in described multiple server all stores described current slice file;
Broadcast unit, for playing described current slice file.
9. device according to claim 8, is characterized in that, described acquiring unit comprises:
Acquisition module, obtains described current slice file for the described terminal when obtaining described current slice file failure from a server in described multiple server from another server described multiple server.
10. device according to claim 9, is characterized in that, described acquisition module comprises:
First sends submodule, obtains request for sending the first burst to the first server in described multiple server, and wherein, described first burst obtains request for obtaining described current slice file;
Second sends submodule, the burst sent for not receiving described first server in predetermined first time period obtains response or receives burst that described first server sends when obtaining failure response or do not complete the described current slice file that described first server sends within the second predetermined time period reception, send the second burst to the second server in described multiple server and obtain request, wherein, described second burst obtains request for obtaining described current slice file;
First receives submodule, for receiving the described current slice file that described second server sends.
11. devices according to claim 9, is characterized in that, described acquisition module comprises:
3rd sends submodule, obtains request for sending the 3rd burst to each in described multiple server, and wherein, described first burst obtains request for obtaining described current slice file;
First chooser module, the burst for sending from described multiple server obtains in the server of response selects one as the 3rd server, and sends the first request for building link to described 3rd server;
Second chooser module, when not receiving link establishment response that described 3rd server sends or receive link establishment failure response that described 3rd server sends or do not complete the reception of described current slice file that described 3rd server is sent within the 4th predetermined time period within the 3rd predetermined time period, obtaining the server of response from the described burst sent selects another as the 4th server, and sends the second request for building link to described 4th server;
Second receives submodule, for receiving the described current slice file that described 4th server sends.
12. devices according to claim 11, it is characterized in that, it is that the described video play device burst that first receives in described multiple server obtains response that the burst that described 3rd server selected by described first chooser module sends obtains response.
Device according to any one of 13. according to Claim 8 to 12, is characterized in that, described broadcast unit comprises one of following:
First playing module, for play be stored in described video play device memory in described current slice file; Or
Second playing module, for play be stored in described video play device internal memory in described current slice file, and from described internal memory, delete described current slice file after described current slice file finishes playing; Or
3rd playing module, for calling the local video service become by described current slice Document encapsulation, to play described current slice file.
CN201410182809.0A 2014-04-30 2014-04-30 Video playing method and apparatus Pending CN105025391A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201410182809.0A CN105025391A (en) 2014-04-30 2014-04-30 Video playing method and apparatus
PCT/CN2015/077762 WO2015165395A1 (en) 2014-04-30 2015-04-29 Video playback method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410182809.0A CN105025391A (en) 2014-04-30 2014-04-30 Video playing method and apparatus

Publications (1)

Publication Number Publication Date
CN105025391A true CN105025391A (en) 2015-11-04

Family

ID=54358181

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410182809.0A Pending CN105025391A (en) 2014-04-30 2014-04-30 Video playing method and apparatus

Country Status (2)

Country Link
CN (1) CN105025391A (en)
WO (1) WO2015165395A1 (en)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107707971A (en) * 2017-09-26 2018-02-16 上海欧美拉光电股份有限公司 One kind is used for long-distance cloud storage multimedia control system
WO2018119947A1 (en) * 2016-12-29 2018-07-05 深圳天珑无线科技有限公司 Method and device for coordinated transmission
CN108667871A (en) * 2017-03-31 2018-10-16 合网络技术(北京)有限公司 Transmission method based on P2P and device
CN109361933A (en) * 2018-11-13 2019-02-19 仲恺农业工程学院 A kind of audio/video information processing method
CN109670016A (en) * 2018-12-25 2019-04-23 苏州思必驰信息科技有限公司 Skills tests method and system for speech production in voice dialogue platform
CN109936768A (en) * 2017-12-19 2019-06-25 中国电信股份有限公司 Realize the method and system using terminal viewing IPTV programme televised live
CN110022482A (en) * 2019-03-05 2019-07-16 咪咕视讯科技有限公司 Video plays broadcasting method, video service system and storage medium
CN110493315A (en) * 2019-07-19 2019-11-22 视联动力信息技术股份有限公司 A kind of call method and device of video communication link
CN111047875A (en) * 2019-12-20 2020-04-21 北京看路科技有限公司 System and method for rapidly reporting traffic violation behaviors during driving
CN111343225A (en) * 2018-12-19 2020-06-26 北京奇虎科技有限公司 File processing method and device
CN111600937A (en) * 2020-04-28 2020-08-28 上海翌旭网络科技有限公司 Stream protocol file transmission method and system based on self-adaptive code rate
CN112584255A (en) * 2020-12-04 2021-03-30 广州虎牙科技有限公司 Method and device for playing streaming media data, computer equipment and storage medium
CN112738150A (en) * 2019-10-29 2021-04-30 厦门白山耘科技有限公司 File processing method and device, transmission equipment and computer readable storage medium

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113194275B (en) * 2021-04-30 2022-12-27 重庆天智慧启科技有限公司 Monitoring image preview system

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101127898A (en) * 2007-09-20 2008-02-20 Ut斯达康通讯有限公司 Slice storage and streaming service method for stream media system and multimedia files
CN101552799A (en) * 2008-04-04 2009-10-07 华为技术有限公司 Media node fault-tolerance method and device
CN101697549A (en) * 2009-10-23 2010-04-21 中兴通讯股份有限公司 Method and system for displaying stream media and stream media management server
CN102088620A (en) * 2010-12-01 2011-06-08 中兴通讯股份有限公司 Method for downloading media file in content distribution network and client
CN102256162A (en) * 2011-07-22 2011-11-23 网宿科技股份有限公司 Method and system for optimizing media-on-demand based on real-time file format conversion
CN102769638A (en) * 2011-05-05 2012-11-07 腾讯科技(深圳)有限公司 Method, device and system for downloading files

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101127898A (en) * 2007-09-20 2008-02-20 Ut斯达康通讯有限公司 Slice storage and streaming service method for stream media system and multimedia files
CN101552799A (en) * 2008-04-04 2009-10-07 华为技术有限公司 Media node fault-tolerance method and device
CN101697549A (en) * 2009-10-23 2010-04-21 中兴通讯股份有限公司 Method and system for displaying stream media and stream media management server
CN102088620A (en) * 2010-12-01 2011-06-08 中兴通讯股份有限公司 Method for downloading media file in content distribution network and client
CN102769638A (en) * 2011-05-05 2012-11-07 腾讯科技(深圳)有限公司 Method, device and system for downloading files
CN102256162A (en) * 2011-07-22 2011-11-23 网宿科技股份有限公司 Method and system for optimizing media-on-demand based on real-time file format conversion

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018119947A1 (en) * 2016-12-29 2018-07-05 深圳天珑无线科技有限公司 Method and device for coordinated transmission
CN108667871B (en) * 2017-03-31 2021-07-06 阿里巴巴(中国)有限公司 Transmission method and device based on P2P
CN108667871A (en) * 2017-03-31 2018-10-16 合网络技术(北京)有限公司 Transmission method based on P2P and device
CN107707971A (en) * 2017-09-26 2018-02-16 上海欧美拉光电股份有限公司 One kind is used for long-distance cloud storage multimedia control system
CN109936768A (en) * 2017-12-19 2019-06-25 中国电信股份有限公司 Realize the method and system using terminal viewing IPTV programme televised live
CN109361933A (en) * 2018-11-13 2019-02-19 仲恺农业工程学院 A kind of audio/video information processing method
CN109361933B (en) * 2018-11-13 2019-11-05 仲恺农业工程学院 A kind of audio/video information processing method
CN111343225B (en) * 2018-12-19 2024-04-09 三六零科技集团有限公司 File processing method and device
CN111343225A (en) * 2018-12-19 2020-06-26 北京奇虎科技有限公司 File processing method and device
CN109670016A (en) * 2018-12-25 2019-04-23 苏州思必驰信息科技有限公司 Skills tests method and system for speech production in voice dialogue platform
CN110022482A (en) * 2019-03-05 2019-07-16 咪咕视讯科技有限公司 Video plays broadcasting method, video service system and storage medium
CN110493315A (en) * 2019-07-19 2019-11-22 视联动力信息技术股份有限公司 A kind of call method and device of video communication link
CN110493315B (en) * 2019-07-19 2022-06-14 视联动力信息技术股份有限公司 Method and device for calling video communication link
CN112738150A (en) * 2019-10-29 2021-04-30 厦门白山耘科技有限公司 File processing method and device, transmission equipment and computer readable storage medium
CN111047875A (en) * 2019-12-20 2020-04-21 北京看路科技有限公司 System and method for rapidly reporting traffic violation behaviors during driving
CN111600937A (en) * 2020-04-28 2020-08-28 上海翌旭网络科技有限公司 Stream protocol file transmission method and system based on self-adaptive code rate
CN112584255A (en) * 2020-12-04 2021-03-30 广州虎牙科技有限公司 Method and device for playing streaming media data, computer equipment and storage medium

Also Published As

Publication number Publication date
WO2015165395A1 (en) 2015-11-05

Similar Documents

Publication Publication Date Title
CN105025391A (en) Video playing method and apparatus
US10616301B2 (en) Request-based encoding for streaming content portions
US9189806B2 (en) Streaming playback and dynamic ad insertion
US20140165119A1 (en) Offline download method, multimedia file download method and system thereof
CN102215116B (en) Method, equipment and system that time migration is served are provided in a digital broadcasting system
CN102547478B (en) Triggered slice on-demand system and method of streaming media based on CDN (Content Distribution Network)
CN108063769B (en) Method and device for realizing content service and content distribution network node
US9356985B2 (en) Streaming video to cellular phones
CN102694831B (en) Mobile terminal streaming compensation data method and system, content distributing network
CN102055718B (en) Method, device and system for layering request content in http streaming system
CN104320417A (en) Method for interconnection and stream transmission and stream media play between mobile terminal and web terminal
CN108200444B (en) Video live broadcast method, device and system
CN105592318A (en) System, device and method for realizing HLS channel replaying service
CN102131114A (en) Method and system for providing playlist
CN103716681A (en) Code stream switching method and electronic equipment
CN101656947B (en) Establishing method, device and system of cross-heterogeneous-network service sharing
WO2013185547A1 (en) Caching server service method, caching server and system thereof
US20170171579A1 (en) Method and Device for Transcoding Live Video
CN105392028A (en) Data transmission method and device
CN105007505A (en) Video broadcasting method and device
CN106302465A (en) A kind of method and device of playing audio-video data
WO2017071524A1 (en) Multimedia resource publishing method and apparatus
CN104660656A (en) P2P connecting method, server, terminal and communication system
CN104660651A (en) P2P connecting method, server, terminal and communication system
US20230222725A1 (en) Random access of scene description in iso base media file format (isobmff) files

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20151104