Summary of the invention
Embodiment of the present invention technical problem to be solved is to provide the cloud edit methods of a kind of data and a kind of cloud editorClient and the cloud editing system of a kind of data, low and cannot to solve the limited space video editing efficiency of video editingMeet the problem that user carries out video editing whenever and wherever possible.
In order to solve the problems referred to above, according to an aspect of the present invention, the invention discloses the cloud editing side of a kind of dataMethod, including:
The first connection request is sent to the target streaming media server in high in the clouds;
When described first connection request meets with a response, with the target Streaming Media clothes of described target streaming media server distributionBusiness is set up and is connected;
Data stream read request is sent to described target streaming media service;
Receive the target data stream in response to described data stream read request;
To described target data stream editor.
According to a further aspect in the invention, the invention also discloses the client of a kind of cloud editor, including:
First connection request module, sends the first connection request for the target streaming media server to high in the clouds;
Link block, for when described first connection request meets with a response, distributes with described target streaming media serverTarget streaming media service set up connect;
Read request module, for sending data stream read request to described target streaming media service;
First receiver module, for receiving the target data stream in response to described data stream read request;
Editor module, for described target data stream editor.
In accordance with a further aspect of the present invention, the invention also discloses the cloud editing system of a kind of data, including:
Client and the streaming media server of side, high in the clouds;
Wherein, described client includes:
First connection request module, sends the first connection request for the target streaming media server to high in the clouds;
Link block, for when described first connection request meets with a response, distributes with described target streaming media serverTarget streaming media service set up connect;
Read request module, for sending data stream read request to described target streaming media service;
First receiver module, for receiving the target data stream in response to described data stream read request;
Editor module, for described target data stream editor;
The streaming media server of side, described high in the clouds includes:
Distribution module, for according to the described first connection request distribution target streaming media service extremely described client receivedEnd, and set up the connection between described client and described target streaming media service;
Read module, for and sending to institute in this locality reading target data stream according to the described data stream read request receivedState client.
Compared with prior art, the embodiment of the present invention includes advantages below:
The embodiment of the present invention can be not only restricted to storage device or the PC end fixed in the reading of editor's material of video,Realize editor's material reading on streamed;Meanwhile, the data stream read can be carried out real-time edition making, to realize regardingFrequency edits broadcasting anywhere or anytime, it is achieved that the networking of video editor, and makes edit the video obtained and be both in oughtThe video stream data of front reception, it is ensured that edited the real-time of the video obtained.
Detailed description of the invention
Understandable for enabling the above-mentioned purpose of the present invention, feature and advantage to become apparent from, real with concrete below in conjunction with the accompanying drawingsThe present invention is further detailed explanation to execute mode.
With reference to Fig. 1, it is shown that the flow chart of steps of the cloud edit methods embodiment of a kind of data of the present invention, the most permissibleComprise the steps:
Step 101, sends the first connection request to the target streaming media server in high in the clouds;
Step 103, when described first connection request meets with a response, with the target of described target streaming media server distributionStreaming media service is set up and is connected;
Step 105, sends data stream read request to described target streaming media service;
Wherein it is possible to real-time sends data stream read request to target streaming media service;
Step 107, receives the target data stream in response to described data stream read request;
Wherein it is possible to real-time receives the target data stream in response to described data stream read request;
Step 109, to described target data stream editor.
By means of the technical scheme of the above embodiment of the present invention, the embodiment of the present invention can be in the reading of editor's material of videoTake the storage device being not only restricted to fix or PC end, it is achieved editor's material reading on streamed;Meanwhile, to the number readReal-time edition making can be carried out according to stream, edit broadcasting anywhere or anytime realizing video, it is achieved that the networking editor of video,And make to be edited the video obtained and be both in currently received video stream data, it is ensured that edited the reality of the video obtainedShi Xing.
In order to be better understood from the technical scheme of the above embodiment of the present invention, below in conjunction with client and load balancing serviceInformation between device, streaming media server is come to be described in detail the technique scheme of the embodiment of the present invention alternately.
In order to realize the real-time reading of the client video data stream to streaming media server, firstly, it is necessary to start clientEnd, concrete Booting sequence includes:
First, client can use the interactive mode of the http protocol load-balanced server to high in the clouds to send and high in the cloudsStreaming media server set up the request connected, specifically include the request IP address of streaming media server and port numbers;
Load-balanced server upon receiving the request, can be according to the load information of multiple streaming media servers in high in the clouds(wherein, this load information can be the number that each streaming media server there is currently the client of connection), selects to loadLittle streaming media server is as the target streaming media server providing service for this client;
Further, load-balanced server can obtain the address information of this target streaming media server and (specifically include IP addressAnd port numbers) and send to this client.
Now, client just can receive IP address and the end of the target streaming media server in response to above-mentioned connection requestSlogan;
Then, client just can interact with streaming media server.Wherein, the two can use when mutualThe mode of Socket agreement, client is responsible for keeping this Socket to connect, once connects disconnection, and client is accomplished by load allWeighing apparatus server redistributes IP address and the port numbers of new streaming media server.Wherein, handed over by Socket agreementTime mutually, the most all of binary numeric field all uses big endian form to transmit;All of character stringAll using UTF-8 to encode, mutual unit of time used can be defaulted as millisecond without particular/special requirement.
Concrete, client can be sent out to the target streaming media server in the high in the clouds corresponding to above-mentioned IP address and port numbersSend connection request;
This target streaming media server, after receiving this connection request of client, will start a streaming media service(i.e. target streaming media service) also distributes to this client;Wherein, each streaming media service may only connect a client;
This client is set up with this target streaming media service and is connected, and now, the Booting sequence of client completes.
After client terminal start-up completes, i.e. setting up with streaming media service after being connected, client just can be by means of streamMedia services carry out the reading of audio and video data streams (i.e. video editing material) from streaming media server, to carry out the real-time of videoEditor and broadcasting.
And concrete interaction flow between client and streaming media service is as follows:
First, what client can be real-time opens new file to target streaming media service request, i.e. sends data stream and readsRequest, wherein, this data stream read request includes filename, stream ID and file path;
This target streaming media service is after receiving data stream read request, it is possible to determine mesh according to data stream read requestThe mark filename at data stream place, file path and the stream ID of described target data stream;
Then, when client needs to read this target data stream, i.e. client sends to this target streaming media service and asksIn the case of seeking audio, video data, this target streaming media service just can be under the file path in this target streaming media serverRead corresponding to above-mentioned filename and the target data stream of above-mentioned ID in real time;
Further, this target streaming media service also needs to be decoded target data stream and be compressed into the number of predetermined code streamAccording to and be sent to client;
Then, client just can be with real-time reception in response to the target data stream of described data stream read request;
Wherein, according to different editor's demands of video material, client can be simultaneously to multiple stream matchmakers of a clientMultiple different audio and video data streams are read in body service, it is also possible to simultaneously multiple not to multiple Streaming Medias reading of multiple clientsSame audio and video data streams, thus ensure to edit the real-time that material reads, and the multiformity of editor's material, beneficially videoVariation editor, meets different video editing demands.
Finally, one or more target data stream received just can be decoded by client, and editor renders outputScreen to television set, it is ensured that the real-time of the video that television set is play.
Wherein, in one embodiment, in order to meet different network conditions, target streaming media service is to target dataWhen stream is compressed, the height of the code stream being compressed target data stream can be set according to current network condition, such as,In the case of network is good, the data stream of high code stream (fine definition) can be compressed into and push to client;And it is poor at networkIn the case of, then can be compressed into low code stream (low definition, such as video flowing can be H.264, audio stream can be AAC pressureReduce the staff code) data stream and push to client.Wherein, streaming media service is responsible for processing client transmission to streaming media serverAll orders.
Additionally, in another embodiment, at the target Streaming Media clothes that client and target streaming media server are distributedWhen connection between business disconnects, target streaming media server can close this target streaming media service.
It addition, in one embodiment, in the target streaming media service foundation distributed with described target streaming media serverIn the case of connection, client can regularly send heart beating and instruct to target streaming media service, if so this target Streaming MediaService long-time (such as one time span threshold value) is not received by this heart beating instruction, it is possible to think that this client crashes,Now, target streaming media server just can close this streaming media service.
Further, in one embodiment, streaming media service can be carried out between streaming media server and load-balanced serverThe client of device connects the synchronizing information of the port numbers of number and presently used streaming media server, equalizes with proof loadServer is at the effectiveness of the distribution carrying out streaming media server.Therefore, it is turned on and off Streaming Media clothes at streaming media serverDuring business, load-balanced server all can carry out the synchronization of above-mentioned information.
Wherein, in current radio and television manufacturing mechanisms at different levels and broadcasting agency, all in the construction carrying out networking.AndThe technique scheme of the present embodiment just may apply in the making of TV programme, such as, the ball match of a certain field can be carried out realityTime broadcast, this ball match can be arranged multiple photographic head to gather current video and to be uploaded to streaming media server, thenWhen TV programme are to the live telecast of this ball match, it is possible to obtain the shooting of multiple photographic head by means of above-mentioned cloud edit methodsVideo, in the way of multiple data stream, read client, carry out editing, it is achieved TV programme live.Thus may be usedSee, the technical scheme of the above embodiment of the present invention can by the production of TV programme, gather, edit, transmit, manage, broadcast, manyChannel issue etc. is organically incorporated in a network platform, forms the technological process of production of brand-new TV programme.
It should be noted that for embodiment of the method, in order to be briefly described, therefore it is all expressed as a series of action groupClosing, but those skilled in the art should know, the embodiment of the present invention is not limited by described sequence of movement, because depending onAccording to the embodiment of the present invention, some step can use other orders or carry out simultaneously.Secondly, those skilled in the art also shouldKnowing, embodiment described in this description belongs to preferred embodiment, and the involved action not necessarily present invention implementsNecessary to example.
Corresponding with the method that the invention described above embodiment is provided, with reference to Fig. 2, it is shown that the present invention a kind of cloud editor'sThe structured flowchart of client embodiment, specifically can include such as lower module:
First connection request module 21, sends the first connection request for the target streaming media server to high in the clouds;
Link block 22, for when described first connection request meets with a response, divides with described target streaming media serverThe target streaming media service joined is set up and is connected;
Read request module 23, for sending data stream read request to described target streaming media service;
First receiver module 24, for receiving the target data stream in response to described data stream read request;
Editor module 25, for described target data stream editor.
By means of the technical scheme of the above embodiment of the present invention, the embodiment of the present invention can be in the reading of editor's material of videoTake the storage device being not only restricted to fix or PC end, it is achieved editor's material reading on streamed;Meanwhile, to the number readReal-time edition making can be carried out according to stream, edit broadcasting anywhere or anytime realizing video, it is achieved that the networking editor of video,And make to be edited the video obtained and be both in currently received video stream data, it is ensured that edited the video that obtainsReal-time.
Additionally, in an optional embodiment, with reference to Fig. 3, it is shown that another kind of the present invention includes that the cloud shown in Fig. 2 is compiledThe structured flowchart of the client embodiment collected, specifically can also include such as lower module:
Second connection request module 26, for described first connection request module send described first connection request itBefore, send the streaming media server with high in the clouds to load-balanced server and set up the second connection request being connected;
Second receiver module 27, for receiving the address of the target streaming media server in response to described second connection requestInformation;
Described first connection request module 21, for the target stream matchmaker to the described high in the clouds corresponding with described address informationBody server sends described first connection request.
Wherein, address above mentioned information includes: IP address and port numbers.
Send heartbeat module 28, for setting up company in target streaming media service distribute with described target streaming media serverIn the case of connecing, timing sends heart beating instruction to described target streaming media service.
Wherein, the client of cloud editor according to embodiments of the present invention is mainly responsible for the letter between load-balanced serverBreath is mutual;And obtain IP address and the port numbers of streaming media server;And control the opening of file of streaming media server, readTake and close;And receive the decode the data that streaming media server sends;And support all non-linear editing functions and sideFormula.
With reference to Fig. 4, it is shown that the system block diagram of the cloud editing system embodiment of a kind of data of the present invention, specifically can wrapInclude: client 4a, the streaming media server 4b of side, high in the clouds and the load-balanced server 4c of side, high in the clouds.
Wherein, client 4a includes:
First connection request module 41a, sends the first connection request for the target streaming media server to high in the clouds;
Link block 42a, for when described first connection request meets with a response, divides with described target streaming media serverThe target streaming media service joined is set up and is connected;
Read request module 43a, for sending data stream read request to described target streaming media service;
First receiver module 44a, for receiving the target data stream in response to described data stream read request;
Editor module 45a, for described target data stream editor;
Second connection request module 46a, for sending described first connection request in described first connection request module 41aBefore, send the streaming media server with high in the clouds to load-balanced server and set up the second connection request being connected;
Second receiver module 47a, for receiving the ground of the target streaming media server in response to described second connection requestLocation information;
Wherein, the first connection request module 41a, for the target stream to the described high in the clouds corresponding with described address informationMedia server sends described first connection request.
The streaming media server 4b of side, high in the clouds includes:
Distribution module 41b, for according to the described first connection request distribution target streaming media service extremely described visitor receivedFamily end, and set up the connection between described client and described target streaming media service;
Read module 42b, for and sending in this locality reading target data stream according to the described data stream read request receivedTo described client.
The load-balanced server 4c of side, high in the clouds includes:
Select module 41c, for when described second connection request is responded, according to multiple Streaming Medias of side, high in the cloudsThe load information of server, selects the streaming media server of load minimum as described target streaming media server;
Acquisition module 42c, for obtaining the address information of described target streaming media server and sending.
Wherein, this load information includes: currently set up the client number being connected with streaming media server.
It addition, in one embodiment, the streaming media service in streaming media server comprises the steps that
Determine submodule (not shown), for determining the filename at target data stream place according to described data stream read requestID with described target data stream;
Reading submodule (not shown), for reading in described target streaming media server corresponding to described filename andThe target data stream of described ID;
Process submodule (not shown), for described target data stream is decoded, compresses and send;
Closing unit (not shown), between the target streaming media service in the distribution of described target streaming media serverConnection disconnect time, close described target streaming media service.
Wherein, process submodule (not shown) and include arranging unit (not shown), for setting according to current network conditionPut the code stream that described target data stream is compressed.
The editing system of the embodiment of the present invention can be not only restricted to the storage fixed in the reading of editor's material of videoEquipment or PC end, it is achieved editor's material reading on streamed;Meanwhile, the data stream read can be carried out real-time edition systemMake, edit broadcasting anywhere or anytime realizing video, it is achieved that the networking editor of video, and make to be edited the video obtained allIt is aimed at currently received video stream data, it is ensured that edited the real-time of the video obtained.
For device embodiment, due to itself and embodiment of the method basic simlarity, so describe is fairly simple, relevantPart sees the part of embodiment of the method and illustrates.
Each embodiment in this specification all uses the mode gone forward one by one to describe, what each embodiment stressed is withThe difference of other embodiments, between each embodiment, identical similar part sees mutually.
Those skilled in the art are it should be appreciated that the embodiment of the embodiment of the present invention can be provided as method, device or calculateMachine program product.Therefore, the embodiment of the present invention can use complete hardware embodiment, complete software implementation or combine software andThe form of the embodiment of hardware aspect.And, the embodiment of the present invention can use one or more wherein include computer canWith in the computer-usable storage medium (including but not limited to disk memory, CD-ROM, optical memory etc.) of program codeThe form of the computer program implemented.
The embodiment of the present invention is with reference to method, terminal unit (system) and computer program according to embodiments of the present inventionThe flow chart of product and/or block diagram describe.It should be understood that can be by computer program instructions flowchart and/or block diagramIn each flow process and/or the flow process in square frame and flow chart and/or block diagram and/or the combination of square frame.These can be providedComputer program instructions sets to general purpose computer, special-purpose computer, Embedded Processor or other programmable data processing terminalsStandby processor is to produce a machine so that held by the processor of computer or other programmable data processing terminal equipmentThe instruction of row produces for realizing in one flow process of flow chart or multiple flow process and/or one square frame of block diagram or multiple square frameThe device of the function specified.
These computer program instructions may be alternatively stored in and can guide computer or other programmable data processing terminal equipmentIn the computer-readable memory worked in a specific way so that the instruction being stored in this computer-readable memory produces bagIncluding the manufacture of command device, this command device realizes in one flow process of flow chart or multiple flow process and/or one side of block diagramThe function specified in frame or multiple square frame.
These computer program instructions also can be loaded on computer or other programmable data processing terminal equipment so thatOn computer or other programmable terminal equipment, execution sequence of operations step is to produce computer implemented process, thusThe instruction performed on computer or other programmable terminal equipment provides for realizing in one flow process of flow chart or multiple flow processAnd/or the step of the function specified in one square frame of block diagram or multiple square frame.
Although having been described for the preferred embodiment of the embodiment of the present invention, but those skilled in the art once knowing baseThis creativeness concept, then can make other change and amendment to these embodiments.So, claims are intended to be construed toThe all changes including preferred embodiment and falling into range of embodiment of the invention and amendment.
Finally, in addition it is also necessary to explanation, in this article, the relational terms of such as first and second or the like be used merely to byOne entity or operation separate with another entity or operating space, and not necessarily require or imply these entities or operationBetween exist any this reality relation or order.And, term " includes ", " comprising " or its any other variant meaningContaining comprising of nonexcludability, so that include that the process of a series of key element, method, article or terminal unit not only wrapInclude those key elements, but also include other key elements being not expressly set out, or also include for this process, method, articleOr the key element that terminal unit is intrinsic.In the case of there is no more restriction, by wanting that statement " including ... " limitsElement, it is not excluded that there is also other identical element in including the process of described key element, method, article or terminal unit.
Above to the cloud edit methods of a kind of data provided by the present invention and the client of a kind of cloud editor and oneThe cloud editing system of data, is described in detail, and specific case used herein is to the principle of the present invention and embodimentBeing set forth, the explanation of above example is only intended to help to understand method and the core concept thereof of the present invention;Simultaneously forOne of ordinary skill in the art, according to the thought of the present invention, the most all can change itPlace, in sum, this specification content should not be construed as limitation of the present invention.