Specific embodiment
Embodiment of the disclosure is more fully described below with reference to accompanying drawings.Although showing the certain of the disclosure in attached drawingEmbodiment, it should be understood that, the disclosure can be realized by various forms, and should not be construed as being limited to thisIn the embodiment that illustrates, providing these embodiments on the contrary is in order to more thorough and be fully understood by the disclosure.It should be understood thatIt is that being given for example only property of the accompanying drawings and embodiments effect of the disclosure is not intended to limit the protection scope of the disclosure.
Fig. 1 is a kind of flow chart of video delivery method shown according to one exemplary embodiment of the disclosure.Such as Fig. 1 instituteShow, the method includes the steps 101 to step 103.
In a step 101, it receives and sends instructions under video.The source to send instructions under the video is not limited in the disclosure, as long asIt is that server receives the instruction for being used to indicate and needing to issue a certain designated.
In a step 102, in the case where sending instructions under receiving the video, the meaning that sends instructions under the video is determinedThe corresponding video resource packet of the video to be issued of fixed first, the content in the video resource packet is to have configured in the server, and can dynamic configuration in the server.Wherein, include in the video resource packet and the described first video phase to be issuedCorresponding second video to be issued, described second wait issue video is described the after transparency and rgb value separating treatmentOne video to be issued, described second each frame video frame wait issue in video are all divided into two parts, the picture of first partFor saving the described first transparency wait issue each pixel in the corresponding video frame in video, the picture of second part in elementFor saving the described second rgb value wait issue each pixel in the corresponding video frame in video in element.It is connect in serverReceive after sending instructions under video, according in the instruction instruction need to be handed down to user terminal designated determine this first toVideo is issued, and determines that actual needs is handed down to the resource packet of user terminal according to first video to be issued.This is first underSending out video is original video animation, wherein all including rgb value in each of each frame video frame pixel and transparentDegree, this video cartoon with transparent channel can not be played directly by decoding on the subscriber terminal.And in a step 102In the identified resource packet that will be sent to user terminal, including be after transparency and rgb value separating treatment theTwo videos to be issued.This makes it possible to make user terminal, ability directly carries out broadcasting for video according to the resource packet received againPut so that the user of terminal it can be seen that first video to be issued result of broadcast.
Wherein, second all includes two parts in each frame video frame in video frame wait issue, and is respectively used to save original videoIn corresponding video frame in rgb value and transparency.For example, second can wait issue the picture of the 10th frame video frame in video frameAs shown in Fig. 2, as shown in the figure, which is divided into two parts, respectively first part 1 and second part 2, theStore in pixel in a part 1 is first included in all pixels point wait issue in the 10th frame video frame in videoTransparency, stored in the pixel in second part 2 be first wait issue in the 10th frame video frame in video ownIncluded rgb value in pixel.
Pixel in the second part 2 and first wait issue the pixel in the 10th frame video frame in video is one by oneIt is corresponding, such as rgb value i.e. first saved in the pixel of the first column position of the first row in second part 2 is wait issue in videoRgb value in corresponding video frame in the pixel of the first column position of the first row.
Pixel in the first part 1 and first can also be with wait issue pixel in the 10th frame video frame in videoIt is one-to-one, but the distributing position for the transparency being stored in the first part 1 can be with first wait issue in video frameThe 10th frame video frame in each pixel transparency distributing position it is not identical, that is, can not be deposited with each pixelThis mode of transparency of a corresponding pixel points is stored up to save transparency, but can be saved in each pixel multipleLightness, for example, can be by three transparencies of the pixel on three positions of the first, second and third column of the first row of original video frameValue is all stored in this second wait issue that picture for corresponding to the first column position of the first row of the second part in video frame 2 in videoIn vegetarian refreshments, three transparencies can be stored in respectively on three positions for being originally used for saving rgb value in the pixel, original videoThe transparency of all pixels point can be stored in second wait issue the one part of pixel in the correspondence video frame in video in frameIn point, the transparency of multiple pixels is compressed to a pixel to indicate in this way, can either user terminal again canIt is parsed, but also the video volume of second video to be issued can be reduced to a certain extent, to reduce under videoOccupied bandwidth when hair, so that the speed that video issues can be promoted effectively.
Wherein, Fig. 2 is merely to pair of the signal first after issuing the video frame of video and carrying out transparency and rgb value separationSecond answered is not used to limit wait issue in the video frame in video including the two parts for saving transparency and rgb value respectivelyThe video pictures of first part 1 processed and second part 2 must be consistent, without specific in video wait issue in limitation secondImage content.
In step 103, send instructions according under the video, the determining video resource packet is sent to specified wholeEnd.After resource packet to be issued has been determined, according to send instructions under the video determining video resource packet is sent to it is specifiedUser terminal in.
For example, user may generate some interactive operations when watching live streaming in the terminal in the scene of live streaming, such asSending main broadcaster's present etc., part present may require that when being sent shows corresponding animated video to realize the special efficacy given gifts, and thisA little corresponding animated videos be need in the client terminal start-up of terminal or other particular moments from server be issued to terminal intoRow caching, therefore the client of user terminal will be touched when judgement needs animated video resource corresponding from server bufferVideo shown in hair step 101 to step 103 issues process.
Through the above technical solutions, server can in advance move the video when needing to send video cartoon to terminalThe transparency of each frame video frame and rgb value separation in picture, enabling in each frame video frame includes two parts, and is saved respectivelyTransparency and rgb value in original video frame, so that user terminal can be solved directly according to the video cartoon receivedAnalyse simultaneously it is played out, can not only solve in this way the video cartoon with transparent channel can not directly be issued to user terminal intoThe problem of row plays, moreover it is possible to guarantee the reducing degree of video cartoon, and greatly reduce realization compared to other solutionsCost even more further improves user experience.
It further include corresponding with the described second video to be issued in a kind of possible embodiment, in the video resource packetConfiguration file, the configuration file be used for when described second maps to the texture coordinate of the designated terminal wait issue videoCorresponding cutting alignment thereof is provided.Since the video of the same format in different terminals when playing out, due to terminalThe difference of type, the same fixed-size video may show different sizes on different terminals type, therefore shouldConfiguration file can be aligned second cutting that offer adapts to various different type of machines when issuing video and playing out in terminalMode, so that this is second when issuing the texture coordinate that video can map on designated terminal, it can be according to configuration textThe cutting alignment thereof provided in part voluntarily adjusts mapping so that no matter the terminal of which kind of type can according to thisCutting alignment thereof display size in two videos and configuration file to be issued is most suitable for the video cartoon of the type of this terminal.
In a kind of possible embodiment, the described second video to be issued in the video resource packet includes and transverse screenThe corresponding transverse screen of the described first video to be issued video to be issued and corresponding with the described first video to be issued of vertical screen perpendicularShield video to be issued.In the scene of live streaming, picture can be broadcast live to play in terminal in transverse screen in the video to be issued of the first of transverse screenThe video cartoon of giving gifts played when face, as shown in Figure 3a;The video to be issued of the first of vertical screen can be to play in terminal in vertical screenThe video cartoon of giving gifts played when picture is broadcast live, as shown in Figure 3b.Both videos, which need all to be sent to user terminal, can just makeThe video cartoon of suitable dimension can be shown in different display pictures by obtaining user terminal, therefore passed through to first wait issueAfter video carries out transparency and rgb value separation, obtained second wait issue in video both include transverse screen video to be issued andVertical screen video to be issued, that is, in the video resource packet that be sent to designated terminal that server determines in a step 102 respectivelyIncluding the transverse screen video to be issued that transparency and rgb value separate, the vertical screen video to be issued of transparency and rgb value separation, oneIt will also include in the possible embodiment of kind above-mentioned for providing the configuration file for cutting alignment thereof, total three parts file.
Fig. 4 is a kind of flow chart of video delivery method shown according to disclosure another exemplary embodiment.Such as Fig. 4 instituteShow, the method further includes step 401 other than including step 101 to step 103 shown in Fig. 1.
In step 401, the described second video to be issued is recompiled, to reduce the body of the described second video to be issuedProduct.For example, can be by second Video Quality Metric to be issued at h265 format, so that the volume of the video file after conversion canVolume than the video file of conventional h264 format greatly reduces.And it is re-encoded as by second video to be issuedAfter h265 format, has no effect on and receive the decoding of the designated terminal of second video to be issued and play, designated terminal still can be withCompletion is decoded broadcasting to the second video to be issued of h265 format.In addition, the type of major part terminal can prop up at presentHardware decoding is held, enables to designated terminal to receive the h265 format by opening the decoded operation of hardware on designated terminalThe second video to be issued after can more rapidly be decoded broadcasting to it.It, should in a kind of possible embodimentSecond wait issue in video including transverse screen wait issuing video and vertical screen when issuing in video, which issues video and this is perpendicularShield can be re-coded wait issue video all, reduce volume after be sent to designated terminal again.
Fig. 5 is the structural block diagram according to transmitting apparatus under a kind of video shown in one exemplary embodiment of the disclosure.Such as Fig. 5 instituteShow, described device includes: receiving module 10, is sent instructions under video for receiving;Video determining module 20, for receivingIt states in the case where sending instructions under video, determines that the video issues the corresponding video money of the first video to be issued of instructionSource packet, wherein it include the second video to be issued corresponding with the described first video to be issued in the video resource packet, it is describedSecond wait issue video as the described first video to be issued after transparency and rgb value separating treatment, and described second underEach frame video frame in hair video is all divided into two parts, is used to save described first wait issue in the pixel of first partThe transparency of each pixel in corresponding video frame in video, for saving described second wait issue in the pixel of second partThe rgb value of each pixel in corresponding video frame in video;Video issues module 30, for bristling with anger according under the videoIt enables, the determining video resource packet is sent to designated terminal.
Through the above technical solutions, server can in advance move the video when needing to send video cartoon to terminalThe transparency of each frame video frame and rgb value separation in picture, enabling in each frame video frame includes two parts, and is saved respectivelyTransparency and rgb value in original video frame, so that user terminal can be solved directly according to the video cartoon receivedAnalyse simultaneously it is played out, can not only solve in this way the video cartoon with transparent channel can not directly be issued to user terminal intoThe problem of row plays, moreover it is possible to guarantee the reducing degree of video cartoon, and greatly reduce realization compared to other solutionsCost even more further improves user experience.
It further include corresponding with the described second video to be issued in a kind of possible embodiment, in the video resource packetConfiguration file, the configuration file be used for when described second maps to the texture coordinate of the designated terminal wait issue videoCorresponding cutting alignment thereof is provided.
In a kind of possible embodiment, the described second video to be issued in the video resource packet includes and transverse screenThe corresponding transverse screen of the described first video to be issued video to be issued and corresponding with the described first video to be issued of vertical screen perpendicularShield video to be issued.
In a kind of possible embodiment, described second wait issue described first of each frame video frame in videoIn partial pixel point in part, contain first wait issue the transparent of three pixels in the corresponding video frame in videoDegree.
Fig. 6 is the structural block diagram of transmitting apparatus under a kind of video shown according to disclosure another exemplary embodiment.Such as Fig. 6Shown, shown device is other than including module shown in Fig. 5, further includes: coding module 40 is used for described second underHair video recompiles, to reduce the volume of the described second video to be issued.
It should be appreciated that each step recorded in disclosed method embodiment can execute in a different order,And/or parallel execution.In addition, method implementation may include additional step and/or omit the step of execution is shown.This public affairsThe range opened is not limited in this respect.
Terms used herein " comprising " and its deformation are that opening includes, i.e., " including but not limited to ".Term "based"It is " being based at least partially on ".Term " one embodiment " expression " at least one embodiment ";Term " another embodiment " indicates" at least one other embodiment ";Term " some embodiments " expression " at least some embodiments ".The correlation of other terms is fixedJustice provides in will be described below.
It is noted that the concepts such as " first " that refers in the disclosure, " second " are only used for different devices, module or listMember distinguishes, and is not intended to limit the sequence or relation of interdependence of function performed by these devices, module or unit.
It is noted that referred in the disclosure "one", the modification of " multiple " be schematically and not restrictive this fieldIt will be appreciated by the skilled person that being otherwise construed as " one or more " unless clearly indicate otherwise in context.
The being merely to illustrate property of title of the message or information that are interacted between multiple devices in disclosure embodimentPurpose, and be not used to limit the range of these message or information.
Those skilled in the art can be understood that, for convenience and simplicity of description, only with above-mentioned each function mouldThe division progress of block can according to need and for example, in practical application by above-mentioned function distribution by different functional modulesIt completes, i.e., the internal structure of device is divided into different functional modules, to complete all or part of the functions described above.The specific work process of foregoing description functional module, can refer to corresponding processes in the foregoing method embodiment, no longer superfluous hereinIt states.
Below with reference to Fig. 7, it illustrates the structural representations for the electronic equipment 600 for being suitable for being used to realize the embodiment of the present disclosureFigure.Terminal device in the embodiment of the present disclosure can include but is not limited to such as mobile phone, laptop, digital broadcasting and connectReceive device, PDA (personal digital assistant), PAD (tablet computer), PMP (portable media player), car-mounted terminal (such as vehicleCarry navigation terminal) etc. mobile terminal and such as number TV, desktop computer, background server etc. fixed terminal.Electronic equipment shown in Fig. 7 is only an example, should not function to the embodiment of the present disclosure and use scope bring any limitSystem.
As shown in fig. 7, electronic equipment 600 may include processing unit (such as central processing unit, graphics processor etc.)601, random access can be loaded into according to the program being stored in read-only memory (ROM) 602 or from storage device 606Program in memory (RAM) 603 and execute various movements appropriate and processing.In RAM 603, it is also stored with electronic equipmentVarious programs and data needed for 600 operations.Processing unit 601, ROM 602 and RAM 603 pass through the phase each other of bus 604Even.Input/output (I/O) interface 605 is also connected to bus 604.
In general, following device can connect to I/O interface 605: including such as touch screen, touch tablet, keyboard, mouse, taking the photographAs the input unit 606 of head, microphone, accelerometer, gyroscope etc.;Including such as liquid crystal display (LCD), loudspeaker, vibrationThe output device 607 of dynamic device etc.;Storage device 606 including such as tape, hard disk etc.;And communication device 609.Communication device609, which can permit electronic equipment 600, is wirelessly or non-wirelessly communicated with other equipment to exchange data.Although Fig. 7 shows toolThere is the electronic equipment 600 of various devices, it should be understood that being not required for implementing or having all devices shown.It can be withAlternatively implement or have more or fewer devices.
Particularly, in accordance with an embodiment of the present disclosure, it may be implemented as computer above with reference to the process of flow chart descriptionSoftware program.For example, embodiment of the disclosure includes a kind of computer program product comprising being carried on non-transient computer canThe computer program on medium is read, which includes the program code for method shown in execution flow chart.At thisIn the embodiment of sample, which can be downloaded and installed from network by communication device 609, or be filled from storageIt sets 606 to be mounted, or is mounted from ROM 602.When the computer program is executed by processing unit 601, the disclosure is executedThe above-mentioned function of being limited in the method for embodiment.
It should be noted that the above-mentioned computer-readable medium of the disclosure can be computer-readable signal media or meterCalculation machine readable storage medium storing program for executing either the two any combination.Computer readable storage medium for example can be --- but notBe limited to --- electricity, magnetic, optical, electromagnetic, infrared ray or semiconductor system, device or device, or any above combination.MeterThe more specific example of calculation machine readable storage medium storing program for executing can include but is not limited to: have the electrical connection, just of one or more conducting wiresTaking formula computer disk, hard disk, random access storage device (RAM), read-only memory (ROM), erasable type may be programmed read-only storageDevice (EPROM or flash memory), optical fiber, portable compact disc read-only memory (CD-ROM), light storage device, magnetic memory device,Or above-mentioned any appropriate combination.In the disclosure, computer readable storage medium can be it is any include or storage journeyThe tangible medium of sequence, the program can be commanded execution system, device or device use or in connection.And at thisIn open, computer-readable signal media may include in a base band or as the data-signal that carrier wave a part is propagated,In carry computer-readable program code.The data-signal of this propagation can take various forms, including but not limited toElectromagnetic signal, optical signal or above-mentioned any appropriate combination.Computer-readable signal media can also be computer-readable and depositAny computer-readable medium other than storage media, the computer-readable signal media can send, propagate or transmit and be used forBy the use of instruction execution system, device or device or program in connection.Include on computer-readable mediumProgram code can transmit with any suitable medium, including but not limited to: electric wire, optical cable, RF (radio frequency) etc. are above-mentionedAny appropriate combination.
In some embodiments, client, server can use such as HTTP (HyperText TransferProtocol, hypertext transfer protocol) etc the network protocols of any currently known or following research and development communicated, and canTo be interconnected with the digital data communications (for example, communication network) of arbitrary form or medium.The example of communication network includes local area network(" LAN "), wide area network (" WAN "), Internet (for example, internet) and ad-hoc network are (for example, the end-to-end net of ad hocNetwork) and any currently known or following research and development network.
Above-mentioned computer-readable medium can be included in above-mentioned electronic equipment;It is also possible to individualism, and notIt is fitted into the electronic equipment.
Above-mentioned computer-readable medium carries one or more program, when said one or multiple programs are by the electricityWhen sub- equipment executes, so that the electronic equipment: obtaining at least two internet protocol addresses;Send to Node evaluation equipment includes instituteState the Node evaluation request of at least two internet protocol addresses, wherein the Node evaluation equipment is internet from described at least twoIn protocol address, chooses internet protocol address and return;Receive the internet protocol address that the Node evaluation equipment returns;ItsIn, the fringe node in acquired internet protocol address instruction content distributing network.
Alternatively, above-mentioned computer-readable medium carries one or more program, when said one or multiple programsWhen being executed by the electronic equipment, so that the electronic equipment: receiving the Node evaluation including at least two internet protocol addresses and request;From at least two internet protocol address, internet protocol address is chosen;Return to the internet protocol address selected;Wherein,The fringe node in internet protocol address instruction content distributing network received.
The calculating of the operation for executing the disclosure can be write with one or more programming languages or combinations thereofMachine program code, above procedure design language include but is not limited to object oriented program language-such as Java,Smalltalk, C++ further include conventional procedural programming language-such as " C " language or similar program design languageSpeech.Program code can be executed fully on the user computer, partly be executed on the user computer, as an independenceSoftware package execute, part on the user computer part execute on the remote computer or completely in remote computer orIt is executed on server.In situations involving remote computers, remote computer can pass through the network of any kind --- packetIt includes local area network (LAN) or wide area network (WAN)-is connected to subscriber computer, or, it may be connected to outer computer (such as benefitIt is connected with ISP by internet).
Flow chart and block diagram in attached drawing are illustrated according to the system of the various embodiments of the disclosure, method and computer journeyThe architecture, function and operation in the cards of sequence product.In this regard, each box in flowchart or block diagram can generationA part of one module, program segment or code of table, a part of the module, program segment or code include one or more useThe executable instruction of the logic function as defined in realizing.It should also be noted that in some implementations as replacements, being marked in boxThe function of note can also occur in a different order than that indicated in the drawings.For example, two boxes succeedingly indicated are actuallyIt can be basically executed in parallel, they can also be executed in the opposite order sometimes, and this depends on the function involved.Also it to infuseMeaning, the combination of each box in block diagram and or flow chart and the box in block diagram and or flow chart can be with holdingThe dedicated hardware based system of functions or operations as defined in row is realized, or can use specialized hardware and computer instructionCombination realize.
Being described in unit involved in the embodiment of the present disclosure can be realized by way of software, can also be by hardThe mode of part is realized.Wherein, the title of unit does not constitute the restriction to the unit itself under certain conditions, for example, theOne acquiring unit is also described as " obtaining the unit of at least two internet protocol addresses ".
Function described herein can be executed at least partly by one or more hardware logic components.ExampleSuch as, without limitation, the hardware logic component for the exemplary type that can be used include: field programmable gate array (FPGA), speciallyWith integrated circuit (ASIC), Application Specific Standard Product (ASSP), system on chip (SOC), complex programmable logic equipment (CPLD) etc.Deng.
According to one or more other embodiments of the present disclosure, a kind of video delivery method is provided, comprising: receive video and issueInstruction;In the case where sending instructions under receiving the video, determine that the video issues the first of instruction wait issueThe corresponding video resource packet of video, wherein include corresponding with the described first video to be issued in the video resource packetTwo videos to be issued, described second wait issue video is after transparency and rgb value separating treatment described first wait issueVideo, described second each frame video frame wait issue in video are all divided into two parts, are used in the pixel of first partThe described first transparency wait issue each pixel in the corresponding video frame in video is saved, is used in the pixel of second partSave the described second rgb value wait issue each pixel in the corresponding video frame in video;Bristle with anger according under the videoIt enables, the determining video resource packet is sent to designated terminal.
According to one or more other embodiments of the present disclosure, a kind of video delivery method is additionally provided, wherein the video moneyIt further include configuration file corresponding with the described second video to be issued in the packet of source, the configuration file is used for described second underHair video provides corresponding cutting alignment thereof when mapping to the texture coordinate of the designated terminal.
According to one or more other embodiments of the present disclosure, a kind of video delivery method is additionally provided, wherein the video moneyThe described second video to be issued in the packet of source includes transverse screen video to be issued corresponding with described the first of transverse screen the video to be issuedWith vertical screen video to be issued corresponding with described the first of vertical screen the video to be issued.
According to one or more other embodiments of the present disclosure, a kind of video delivery method is additionally provided, wherein described secondIn the partial pixel point in the first part wait issue each frame video frame in video, contain first wait issue viewThe transparency of three pixels in corresponding video frame in frequency.
According to one or more other embodiments of the present disclosure, a kind of video delivery method is additionally provided, wherein in the basisSend instructions under the video, before the determining video resource packet is sent to designated terminal, the method also includes: by instituteIt states the second video to be issued to recompile, to reduce the volume of the described second video to be issued.
According to one or more other embodiments of the present disclosure, transmitting apparatus under a kind of video is provided, comprising: receiving module is usedSend instructions under video in receiving;Video determining module, described in determining in the case where sending instructions under receiving the videoVideo issues the corresponding video resource packet of the first video to be issued of instruction, wherein includes in the video resource packetThe second video to be issued corresponding with the described first video to be issued, second video to be issued be by transparency andThe described first video to be issued after rgb value separating treatment, described second each frame video frame wait issue in video are all drawnIt is divided into two parts, is used to save described first wait issue each pixel in the corresponding video frame in video in the pixel of first partThe transparency of point, for saving described second wait issue each picture in the corresponding video frame in video in the pixel of second partThe rgb value of vegetarian refreshments;Video issues module, and for sending instructions according under the video, the determining video resource packet is sentTo designated terminal.
According to one or more other embodiments of the present disclosure, transmitting apparatus under a kind of video is additionally provided, wherein the video moneyIt further include configuration file corresponding with the described second video to be issued in the packet of source, the configuration file is used for described second underHair video provides corresponding cutting alignment thereof when mapping to the texture coordinate of the designated terminal.
According to one or more other embodiments of the present disclosure, transmitting apparatus under a kind of video is additionally provided, wherein the video moneyThe described second video to be issued in the packet of source includes transverse screen video to be issued corresponding with described the first of transverse screen the video to be issuedWith vertical screen video to be issued corresponding with described the first of vertical screen the video to be issued.
According to one or more other embodiments of the present disclosure, a kind of computer readable storage medium is provided, is stored thereon withComputer program, when which is executed by processor the step of the above video delivery method.
According to one or more other embodiments of the present disclosure, a kind of electronic equipment is provided, comprising: memory stores thereonThere is computer program;Processor, for executing the computer program in the memory, to realize under video described aboveThe step of forwarding method.
Above description is only the preferred embodiment of the disclosure and the explanation to institute's application technology principle.Those skilled in the artMember is it should be appreciated that the open scope involved in the disclosure, however it is not limited to technology made of the specific combination of above-mentioned technical characteristicScheme, while should also cover in the case where not departing from design disclosed above, it is carried out by above-mentioned technical characteristic or its equivalent featureAny combination and the other technical solutions formed.Such as features described above has similar function with (but being not limited to) disclosed in the disclosureCan technical characteristic replaced mutually and the technical solution that is formed.
Although this is not construed as requiring these operations with institute in addition, depicting each operation using certain orderThe certain order that shows executes in sequential order to execute.Under certain environment, multitask and parallel processing may be advantageous's.Similarly, although containing several specific implementation details in being discussed above, these are not construed as to this public affairsThe limitation for the range opened.Certain features described in the context of individual embodiment can also be realized in combination single realIt applies in example.On the contrary, the various features described in the context of single embodiment can also be individually or with any suitableThe mode of sub-portfolio is realized in various embodiments.
Although having used specific to this theme of the language description of structure feature and/or method logical action, answerWhen understanding that theme defined in the appended claims is not necessarily limited to special characteristic described above or movement.On on the contrary,Special characteristic described in face and movement are only to realize the exemplary forms of claims.