WO2018113648A1 - 动画播放方法、装置、客户端、视频直播系统以及存储介质 - Google Patents

动画播放方法、装置、客户端、视频直播系统以及存储介质 Download PDF

Info

Publication number
WO2018113648A1
WO2018113648A1 PCT/CN2017/117093 CN2017117093W WO2018113648A1 WO 2018113648 A1 WO2018113648 A1 WO 2018113648A1 CN 2017117093 W CN2017117093 W CN 2017117093W WO 2018113648 A1 WO2018113648 A1 WO 2018113648A1
Authority
WO
WIPO (PCT)
Prior art keywords
animation
played
play
playing
currently playing
Prior art date
Application number
PCT/CN2017/117093
Other languages
English (en)
French (fr)
Inventor
曹超利
潘文婷
宁彬泉
成平
郭林烁
谢晋
任志豪
潘佳韩
余子翼
叶建军
吴世友
李继超
谢方钧
Original Assignee
腾讯科技(深圳)有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 腾讯科技(深圳)有限公司 filed Critical 腾讯科技(深圳)有限公司
Publication of WO2018113648A1 publication Critical patent/WO2018113648A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/764Media network packet handling at the destination 
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • 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/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • 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/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • 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/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
    • 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/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4788Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
    • 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/47End-user applications
    • H04N21/485End-user interface for client configuration

Definitions

  • the present application belongs to the field of Internet technologies, and specifically relates to an animation playing method, device, client, video live broadcast system, and storage medium.
  • Animation playback techniques are ubiquitous in the art, such as web animation, game animation, chat animation, and the like. Animation technology will also be used in conjunction with the game to express the intensity of the game, scores and other information. Usually the game animation will only be used in the turn-based game, the two sides of the game will operate in a time-sharing manner, and the animation mode will be in the form of a simple immediate trigger. However, when the animation is applied to the voting PK game, since the voting operations of the voting parties are synchronized, the score changes quickly, the interval time is uncontrollable, and multiple animations overlap each other. If the overlapping animations are postponed so that the animations do not overlap each other, the animation is lost for real-time broadcast of the game, which can result in a bad user experience.
  • the present application provides an animation playing method, including: receiving animation play trigger data from a server; generating an animation of a different priority queue according to the trigger data; and when the animation to be played belongs to a first priority play queue Determining a play queue to which the currently playing animation belongs; if the currently playing animation belongs to the first priority queue, stopping the current play Animating and playing the animation to be played; if the currently playing animation belongs to the second priority queue, masking the current playing animation and playing the desired animation.
  • the present application further provides an animation playing device, comprising: a trigger data receiving module, configured to receive animation play trigger data from a server; and an animation queue generating module, configured to generate different priority queues according to the trigger data
  • the play queue determining module is configured to determine a play queue to which the currently played animation belongs when the animation to be played belongs to the high priority play queue; stop the processing module, if the current play animation belongs to the first priority queue And stopping the current playing animation, and playing the animation to be played;
  • the mask processing module is configured to mask the current playing animation and play the animation to be played if the currently playing animation belongs to the second priority queue.
  • the application also provides a client comprising the aforementioned animation playing device.
  • the present application also provides a video live broadcast system, the system includes an anchor client, a user client, and a server, and the client includes the foregoing animation playback device.
  • the application also provides a non-transitory computer readable storage medium storing computer readable instructions that cause at least one processor to perform the method as described above.
  • FIG. 1 is a schematic diagram of an implementation environment provided by an example of the present application.
  • FIG. 2 is a flow chart of a method for playing an animation provided by an example of the present application.
  • FIG. 3 is a schematic block diagram of a video live broadcast system provided by an example of the present application.
  • FIG. 4 is a flow chart of a method for playing an animation provided by an example of the present application.
  • FIG. 5 is a flowchart of an animation playing method provided by an example of the present application.
  • FIG. 6 is a flowchart of a method for playing an animation provided by an example of the present application.
  • FIG. 7 is a flowchart of an animation playing method provided by an example of the present application.
  • FIG. 8 is a flowchart of a method for playing an animation provided by an example of the present application.
  • FIG. 9 is a flowchart of a method for playing an animation provided by an example of the present application.
  • FIG. 10 is a schematic block diagram of an animation playing device provided by an example of the present application.
  • FIG. 11 is a schematic block diagram of an animation playing device provided by an example of the present application.
  • FIG. 12 is a schematic structural diagram of a terminal provided by an example of the present application.
  • FIG. 13 is a schematic structural diagram of a server provided by an example of the present application.
  • the application example provides an animation playing method, device, client, video live broadcast system, and storage medium.
  • FIG. 1 is a schematic diagram of an application scenario of an animation playing method provided by an example of the present application. It shows a schematic structural diagram of an implementation environment involved in the verification method provided by the example of the present application.
  • the implementation environment includes a plurality of user devices 101, a background server 102 for authentication, and a database 103.
  • a client executing the animation playing method provided by the present application is installed in the user device 101 to execute the animation playing method provided by the present application.
  • server 102 can be implemented by a distributed server cluster.
  • FIG. 2 illustrates an animation playing method provided by an example of the present application.
  • the method can be applied to the implementation environment shown in FIG.
  • the method can include the following steps:
  • the client 101 receives the animation play trigger data from the server 102, and the animation play trigger data may be broadcast data similar to the server, or may be dedicated line data transmitted to the designated client.
  • the A anchor and the B anchor are respectively in different chat rooms, and the users in the chat room can present gifts to the anchor through the gift, reward or the like of the client.
  • the gift is first processed by the gift server to obtain the support value corresponding to the different types of gifts, and is deducted from the user account that sends the gift through the billing server according to the amount corresponding to the different gifts.
  • the gift server will send the statistics of the gift data to the broadcast server.
  • the broadcast server pulls the user list from the room server and sends the gift data to the user client in the form of a broadcast to feedback the gift behavior of the user client.
  • the broadcast server will also feed the gift data back to the anchor client to let the anchor know the gift they have received, so as to better interact with the users in the room according to the gift.
  • the client that receives the broadcast data of the broadcast server triggers its own animation playback.
  • the broadcast data of the broadcast server may only include the gift information received by the gift server, thereby triggering the animation effect of the host receiving the gift information.
  • the broadcast data of the broadcast server may include the number of support received by the anchor that the gift server converts the gift information received by the anchor.
  • the A anchor and the B anchor belong to the same type of anchor, and are in the game user support number.
  • the broadcast data of the broadcast server includes the A anchor and the B anchor in addition to the support data of the A anchor and the B anchor. The real-time winning and losing relationship, as well as the overbearing and anti-super relational data of the supporting data of A anchor and B anchor.
  • the client After receiving the above data sent by the broadcast server, the client generates different types of animation according to different types of broadcast data.
  • the aforementioned anchor support data generates real-time support numbers or gift quantity display animations to quantify the support of the anchor, and the overtaking and anti-super data of the two anchor game processes generate dynamic animations to enhance the fierceness of the game.
  • the degree of tension That is, the client receives different types of animation trigger data from the server, which triggers different animation effects.
  • S220 Generate an animation to be played (that is, an animation to be played) of different priority queues according to the type of the trigger data.
  • the client 101 After receiving the trigger data, the client 101 generates different types of animation effects according to the type of the trigger data. As mentioned above, in a specific scenario, depending on the size, type, change, etc. of the data values sent by the server, the client will generate different animation effects. Sometimes, the same data may produce two or more animation effects, and the animation generated by the previous data may still be in the playing state when the current animation effect is generated.
  • A-Announcer and B-Announcer are in a fan-supported game, and the number of supporters is close, with the number of A-host support exceeding the B-host and being overtaken by the B anchor later.
  • the data counted by the broadcast server is the support number in which the A-host and the B-host alternately rise, and the support ranking relationship in which the two are alternately changed. It is difficult to distinguish the above process by using only the same animation effect. Specifically, the playback animation corresponding to different types of data distinguishes the priority of the playback.
  • the support animation of the A anchor and the B anchor is listed as a low priority; and the change of the transcendental and anti-transcendence of the A anchor and the B anchor is the quality of the two. Change to set this change to high priority.
  • the corresponding client-generated playback animations are listed in a low priority queue (or second priority queue) and a high priority queue (or first priority queue).
  • the generated playback animations are located in two queues, which become the animation to be played. The first priority is higher than the second priority.
  • the generated play animation may belong to a low priority queue or a high priority queue. If the animation belongs to a low priority queue, the animation will be in the low priority queue in order.
  • the specified location of the client is displayed.
  • the low priority queue may be a FIFO queue, and the animations to be played are played in a first-in, first-out order.
  • the animation in the low priority queue can be, for example, a normal character motion animation.
  • the animation to be played belongs to a high priority queue.
  • the types of animations to be played are all real-time animations that need to be played immediately.
  • the A-player's score exceeds the instant animation of the B anchor, and the animation is played.
  • the timing must be the same as receiving the trigger signal from the server. Also, there is no queuing in the high priority queue.
  • a new high priority animation is generated, if the animation being played is a low priority animation, the currently playing low priority animation is paused and blocked.
  • the interception means that after the current frame is played, the subsequent frames are no longer played, and the first frame of the high priority to play the animation is played, so that two animations can be guaranteed during the animation. There is no overlap between high priority animations.
  • the animation content is preloaded; at this time, the client waits for a trigger signal from the server; when receiving the trigger signal of the server, determines the animation priority triggered by the trigger signal; if the animation belongs to the high Priority queue, which calculates the implementation order of the animation according to the content of the trigger signal, then starts the cascading style sheet (css) and countdown to control the motion of the animation. In the process, if the high priority animation trigger signal from the server is not received , the animation continues until the end of the countdown.
  • the information contained in the high-priority animation is compressed in the first frame, so that even the currently played high-priority animation By the high-priority animation that is intercepted later, the information contained in the animation can also be passed.
  • the animation playing method provided by the present example can automatically realize the orderly playing of different priority animations according to the received server triggering signal, and obtain real-time data according to the server to ensure the seamless connection of the animation playing, and at the same time ensure the animation switching. Does not exist between different animations overlapping.
  • FIG. 9 illustrates an animation playing method provided by an example of the present application, which can be applied to the implementation environment shown in FIG. 1 .
  • the method can include the following steps:
  • the A anchor and the B anchor are respectively in different chat rooms, and the users in the chat room can present gifts to the anchor through the gift, reward or the like of the client.
  • the gift is first processed by the gift server to obtain the support value corresponding to the different types of gifts, and is deducted from the user account that sends the gift through the billing server according to the amount corresponding to the different gifts.
  • the gift server will send the statistics of the gift data to the broadcast server.
  • the broadcast server pulls the user list from the room server and sends the gift data to the user client in the form of a broadcast to feedback the gift behavior of the user client.
  • the broadcast data transmitted by the broadcast server contains at least two types of data, trigger type data and numeric type data.
  • the numeric type data indicates the specific value of the support received by the anchor, and the value may be a converted value or a directly obtained value.
  • the directly obtained value can be the number of various gifts obtained by the anchor, and the converted value is obtained according to the converted value of various gifts obtained by the anchor, for example, flowers, eggs, praises, red packets, ingots, etc. obtained by the two anchors. Both can be converted to the score of the anchor.
  • the trigger type data is the data generated when the two participating races alternate in the score, and the data can be used as a trigger condition for a special type of event.
  • this example is merely an illustrative example, and the animation playing method provided by this example is applicable during a PK game like two or more people.
  • the client 101 After receiving the trigger data, the client 101 generates different types according to the type of the trigger data.
  • the type of animation effect As mentioned above, in a specific scenario, depending on the size, type, change, etc. of the data values sent by the server, the client will generate different animation effects. Sometimes, the same data may produce two or more animation effects, and the animation generated by the previous data may still be in the playing state when the current animation effect is generated.
  • the step S920 may further include the following sub-steps:
  • S9201 Generate an animation to be played (that is, an animation to be played) according to the animation playing trigger data.
  • the client after receiving the animation play trigger data, the client generates an animation to be played according to the animation play trigger data.
  • this step can include the following substeps:
  • the client loads the generated animation material, and the material may be a static image based on the page technology.
  • These images have an initial position on the page and form a static template for the animation to be played, each material forming a sub-template of the static template.
  • Each sub-template has a separate page attribute.
  • the page attributes of the sub-template By controlling the page attributes of the sub-template, the position, size/zoom, display/hide, transparency, color, and the like of the sub-template can be controlled. These can be achieved by techniques such as css, which control the properties of individual images in the page based on css.
  • S92012 configured to obtain a predefined timing action that matches the trigger data according to the animation play trigger data calculation.
  • the animation is stored according to the predefined timing action, and the client calculates the settlement data according to the received animation, obtains the settlement result, and queries the predefined timing action that matches the calculation result.
  • the predefined timing action may be that the first sub-template performs the first action at the first moment after the start time, and the second sub-template performs the second action at the second moment, At the third moment, the third sub-template is caused to perform the third action, and one or several actions can be defined as the frame of the animation.
  • the anti-over-the-animum animation is to mount the larger css class into the winner avatar element, that is, the size attribute of the avatar element is adjusted by css, so that the winning avatar is immediately enlarged, and the avatar behind the avatar effect is played, and the 1.2 second countdown is set to play.
  • the lightning anti-over animation on the front side of the avatar is set and after 3.2 seconds, the avatar of the playback sender becomes smaller, so that the overall avatar becomes smaller after the lightning strike.
  • the previously set countdown timer will be cleared, and the original anti-over-the-animation will be truncated to play the current winner's go-ahead.
  • the anti-over-the-animum will be played first and other animations will be blocked.
  • the direction of the anti-super-motion motion adopts the method of top left, bottom right, or top right and bottom left, and from left to right, or right to left. .
  • the entire large animation is split into a winning avatar, a large animation, a lightning animation, and the input avatar becomes a small animation, maintaining a small grain.
  • the animation time of the degree so that when the animation is truncated, it immediately pauses to the current animation playback situation. If the animation of the input avatar is not broadcast, the current avatar state of the input is maintained, and the next anti-over animation is started.
  • S92013 Load the time-series action attribute for each sub-template in the static template.
  • each sub-template After obtaining the time-series action attributes of each sub-template in the static template, the time-series action attributes are loaded on each sub-template of the static template. In this way, each sub-template will perform attribute changes of the sub-template according to a predetermined timing, such as a change in the size of the sub-template representing the character, display or hiding of the sub-template representing the specific action, change in the position of a particular sub-template, and the like.
  • S9202 Assign the animation to be played to different priority queues according to the trigger data.
  • the type of the animation to be played is identified according to the type of the trigger data, and if the animation to be played is a high priority animation to be played, the animation to be played is assigned to the high priority queue. If the animation you want to play is a low priority animation, assign the animation you want to play to the low priority queue.
  • the animation to be played is a low priority queue, it can be played in the low priority queue in FIFO rule order.
  • the type of animation to be played is a very real-time animation that needs to be played instantly. For example, if the A anchor scores more than the instant animation of the B anchor, the animation must be received at the same time. At the same time as the trigger signal from the server. Also, there is no queuing in the high priority queue.
  • the animation being played is a low priority animation, the currently playing low priority animation is paused and blocked. , to play the high priority animation to play; if the animation being played is a high priority animation, the currently played high priority animation will be immediately Stop and clear from the play area and replace with a new high priority animation. Therefore, when generating a high priority animation, it is necessary to determine the priority queue to which the currently playing animation belongs.
  • the step S940 includes the following sub-steps:
  • S9402 playing the first frame of the animation to be played, starting from the current frame end time of the currently playing animation.
  • the step S950 includes the following sub-steps:
  • S9502 playing the first frame of the animation to be played, starting from the current frame end time of the currently playing animation.
  • step S9502 the following sub-steps are further included:
  • the animation playing method provided by the present example can automatically generate different priority animations according to the received server trigger signal, and automatically play on the client, and can be realized based on timing control of different priority animations.
  • the non-overlapping switching of the same priority animation conflict avoids the visual confusion caused by the overlap during the animation switching process. While realizing automatic animation of the animation, the visual effect is greatly improved and the user experience is guaranteed.
  • FIG. 10 shows an animation playing device provided by an example of the present application
  • the device includes the following modules:
  • the trigger data receiving module executes step S210 for receiving animation play trigger data from the server.
  • step S220 is executed to generate an animation to be played of different priority queues according to the type of the trigger data.
  • the play queue judging module (or the play queue determining module) executes step S230 for judging (or determining) the priority queue to which the currently playing animation belongs when the animation to be played belongs to the high priority queue.
  • the interception processing module executes step S240 for intercepting (or stopping) the currently playing animation and playing the animation to be played when the currently playing animation belongs to the high priority queue.
  • the masking processing module executes step S250, and is configured to mask the current playing animation when the currently playing animation belongs to the low priority queue, and play the desired animation.
  • FIG. 11 shows an animation playing apparatus provided by an example of the present application, and the apparatus includes the following modules:
  • the trigger data receiving module executes step S910 to receive animation play trigger data from the server.
  • step S920 is executed to generate an animation to be played of different priority queues according to the type of the animation playback trigger data.
  • the animation queue generation module may also include the following sub-modules:
  • step S9201 is executed to generate an animation to be played according to the animation playing trigger data.
  • the priority queue allocation module is configured to execute step S9202, and allocate the animation to be played to different priority queues according to the trigger data.
  • the animation generation module to be played includes the following sub-modules:
  • the static template loading module executes step S92011 for loading a static template for playing an animation, and the static template includes a plurality of sub-templates for implementing animation.
  • the predefined action calculation module executes step S92012 for obtaining a predefined timing action that matches the trigger data according to the animation play trigger data calculation.
  • the sequence action loading module executes step S92013 for loading the time-series action attributes for each sub-template in the static template.
  • the play queue judging module executes step S930 for determining the priority queue to which the currently playing animation belongs when the animation to be played belongs to the high priority queue.
  • the processing module is interrupted, and step S940 is executed. If the currently playing animation belongs to the high priority queue, the current playing animation is intercepted, and the animation to be played is played.
  • the intercept processing module includes the following submodules:
  • the data clearing sub-module executes step S9401 to stop the timer of the currently playing animation at the end of the current frame of the currently playing animation, and clear all frames of the currently playing animation.
  • the first playing sub-module executes step S9402 to play the first frame of the animation to be played with the current frame ending time of the currently playing animation as the starting point of the timing.
  • the mask processing module executes step S950. If the currently playing animation belongs to the low priority queue, the current playing animation is masked, and the desired animation is played.
  • the mask processing module includes a submodule:
  • step S9501 is executed to pause the current playback animation of the currently playing animation, and set the property of the current playback animation to be hidden.
  • the second playing sub-module executes step S9502 for playing the first frame of the animation to be played with the current frame ending time of the currently playing animation as the starting point of the timing.
  • the shielding processing module further includes:
  • step S9503. After the high-priority animation to be played is finished playing, the attribute setting of the currently playing animation can be visible, and the current animation is continued to be played. For details, refer to the method example shown in FIG.
  • FIG. 12 is a schematic structural diagram of a terminal provided by an example of the present application.
  • the terminal is used to implement the legality verification method of the software product provided in the above example. Specifically:
  • the terminal 1000 may include an RF (Radio Frequency) circuit 110, a memory 120 including one or more computer readable storage media, an input unit 130, a display unit 140, a video sensor 150, an audio circuit 160, and a WiFi (wireless fidelity,
  • the Wireless Fidelity module 170 includes a processor 180 having one or more processing cores, and a power supply 190 and the like. It will be understood by those skilled in the art that the terminal structure shown in FIG. 1 does not constitute a limitation to the terminal, and may include more or less components than those illustrated, or a combination of certain components, or different component arrangements. among them:
  • the RF circuit 110 can be used for transmitting and receiving information or during a call, and receiving and transmitting signals. Specifically, after receiving downlink information of the base station, the downlink information is processed by one or more processors 180. In addition, the data related to the uplink is sent to the base station. .
  • the RF circuit 110 includes, but is not limited to, an antenna, at least one amplifier, a tuner, one or more oscillators, a Subscriber Identity Module (SIM) card, a transceiver, a coupler, an LNA (Low Noise Amplifier). , duplexer, etc.
  • RF circuitry 110 can also communicate with the network and other devices via wireless communication.
  • the wireless communication may use any communication standard or protocol, including but not limited to GSM (Global System of Mobile communication), GPRS (General Packet Radio Service), CDMA (Code Division Multiple Access). , Code Division Multiple Access), WCDMA (Wideband Code Division Multiple Access), LTE (Long Term Evolution), e-mail, SMS (Short Messaging Service), and the like.
  • GSM Global System of Mobile communication
  • GPRS General Packet Radio Service
  • CDMA Code Division Multiple Access
  • WCDMA Wideband Code Division Multiple Access
  • LTE Long Term Evolution
  • e-mail Short Messaging Service
  • the memory 120 can be used to store software programs and modules, and the processor 180 executes various functional applications and data processing by running software programs and modules stored in the memory 120.
  • the memory 120 may mainly include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application required for at least one function (such as a sound playing function, an image playing function, etc.), and the like; the storage data area may be stored according to The data created by the use of the terminal 1000 (such as video data, phone book, etc.) and the like.
  • memory 120 can include high speed random access memory, and can also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other volatile solid state storage device. Accordingly, memory 120 may also include a memory controller to provide access to memory 120 by processor 180 and input unit 130.
  • the input unit 130 can be configured to receive input numeric or character information and to generate keyboard, mouse, joystick, optical or trackball signal inputs related to user settings and function controls.
  • the input unit 130 may include an image input device 131 and other input devices 132.
  • the image input device 131 may be a camera or an optical scanning device.
  • the input unit 130 may also include other input devices 132.
  • other input devices 132 may include, but are not limited to, one or more of a physical keyboard, function keys (such as volume control buttons, switch buttons, etc.), trackballs, mice, joysticks, and the like.
  • the display unit 140 can be used to display information input by the user or information provided to the user and various graphical user interfaces of the terminal 1000, which can be composed of graphics, text, icons, video, and any combination thereof.
  • the display unit 140 may include a display panel 141.
  • the display panel 141 may be configured in the form of an LCD (Liquid Crystal Display), an OLED (Organic Light-Emitting Diode), or the like.
  • the terminal 1000 can include at least one video sensor 150 for use in acquiring User's video information.
  • Terminal 1000 may also include other sensors (not shown) such as light sensors, motion sensors, and other sensors.
  • the light sensor may include an ambient light sensor and a proximity sensor, wherein the ambient light sensor may adjust the brightness of the display panel 141 according to the brightness of the ambient light, and the proximity sensor may close the display panel 141 when the terminal 1000 moves to the ear. / or backlight.
  • the gravity acceleration sensor can detect the magnitude of acceleration in all directions (usually three axes). When it is stationary, it can detect the magnitude and direction of gravity.
  • the terminal 1000 can also be configured with gyroscopes, barometers, hygrometers, thermometers, infrared sensors and other sensors, not here Let me repeat.
  • the video circuit 160, the speaker 161, and the microphone 162 can provide a video interface between the user and the terminal 1000.
  • the audio circuit 160 can transmit the converted electrical data of the received audio data to the speaker 161 for conversion to the sound signal output by the speaker 161; on the other hand, the microphone 162 converts the collected sound signal into an electrical signal by the audio circuit 160. After receiving, it is converted into audio data, and then processed by the audio data output processor 180, sent to, for example, another terminal via the RF circuit 11, or outputted to the memory 120 for further processing.
  • the audio circuit 160 may also include an earbud jack to provide communication of the peripheral earphones with the terminal 1000.
  • WiFi is a short-range wireless transmission technology
  • the terminal 1000 can help users to send and receive emails, browse web pages, and access streaming media through the WiFi module 70, which provides wireless broadband Internet access for users.
  • FIG. 1 shows the WiFi module 170, it can be understood that it does not belong to the essential configuration of the terminal 1000, and may be omitted as needed within the scope of not changing the essence of the application.
  • the processor 180 is a control center of the terminal 1000, which connects various parts of the entire mobile phone using various interfaces and lines, by running or executing software programs stored in the memory 120 and / or modules, as well as calling data stored in the memory 120, performing various functions and processing data of the terminal 1000, thereby performing overall monitoring of the mobile phone.
  • the processor 180 may include one or more processing cores; preferably, the processor 180 may integrate an application processor and a modem processor, where the application processor mainly processes an operating system, a user interface, an application, and the like.
  • the modem processor primarily handles wireless communications.
  • modem processor may not be integrated into the processor 180.
  • the terminal 1000 also includes a power source 190 (such as a battery) for powering various components.
  • the power source can be logically coupled to the processor 180 through a power management system to manage functions such as charging, discharging, and power management through the power management system.
  • Power supply 190 may also include any one or more of a DC or AC power source, a recharging system, a power failure detection circuit, a power converter or inverter, a power status indicator, and the like.
  • the terminal 1000 may further include a Bluetooth module or the like, and details are not described herein again.
  • terminal 1000 further includes a memory, and one or more programs, wherein one or more programs are stored in the memory and configured to be executed by one or more processors.
  • the one or more programs described above include instructions for executing the method of the sender client side or the receiver client side described above.
  • the memory also includes one or more programs, the one or more programs being stored in a memory and configured to be executed by one or more processors.
  • the one or more programs described above include instructions for executing the method on the background server side described above.
  • FIG. 13 is a schematic structural diagram of a server provided by an example of the present application.
  • the server is used to implement the server-side seed population diffusion method provided in the above example. Specifically:
  • the server 900 includes a central processing unit (CPU) 901, a system memory 904 including a random access memory (RAM) 902 and a read only memory (ROM) 903, and System memory 904 and system bus 905 of central processing unit 901 are coupled.
  • the server 900 also includes a basic input/output system (I/O system) 906 that facilitates transfer of information between various devices within the computer, and mass storage for storing the operating system 913, applications 914, and other program modules 915.
  • I/O system basic input/output system
  • the basic input/output system 906 includes a display 908 for displaying information and an input device 909 such as a mouse or keyboard for user input of information. Both the display 908 and the input device 909 are connected to the central processing unit 901 via an input and output controller 910 that is coupled to the system bus 905.
  • the basic input/output system 906 can also include an input output controller 910 for receiving and processing input from a plurality of other devices, such as a keyboard, mouse, or electronic stylus. Similarly, input and output controller 910 also provides output to a display screen, printer, or other type of output device.
  • the mass storage device 907 is connected to the central processing unit 901 by a mass storage controller (not shown) connected to the system bus 905.
  • the mass storage device 907 and its associated computer readable medium provide non-volatile storage for the server 900. That is, the mass storage device 907 can include a computer readable medium (not shown) such as a hard disk or a CD-ROM drive.
  • the computer readable medium can include computer storage media and communication media.
  • Computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data.
  • Computer storage media include RAM, ROM, EPROM, EEPROM, flash memory or other solid state storage technologies, CD-ROM, DVD or other optical storage, tape cartridges, magnetic tape, magnetic disk storage or other magnetic storage devices.
  • RAM random access memory
  • ROM read only memory
  • EPROM Erasable programmable read-only memory
  • EEPROM electrically erasable programmable read-only memory
  • the server 900 may also pass through, for example, the Internet.
  • the network is connected to a remote computer running on the network. That is, the server 900 can be connected to the network 912 through a network interface unit 911 connected to the system bus 905, or can also be connected to other types of networks or remote computer systems (not shown) using the network interface unit 911. .
  • the memory also includes one or more programs, the one or more programs being stored in a memory and configured to be executed by one or more processors.
  • the one or more programs described above include instructions for performing the above method.
  • non-transitory computer readable storage medium comprising instructions, such as a memory comprising instructions executable by a processor of a terminal to perform a sender client or receiver in the method instance described above
  • the various steps on the client side, or the above instructions, are executed by the processor of the server to complete the various steps on the background server side of the above method instance.
  • the non-transitory computer readable storage medium may be a ROM, a random access memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, and an optical data storage device.
  • a plurality as referred to herein means two or more.
  • "and/or” describing the association relationship of the associated objects, indicating that there may be three relationships, for example, A and/or B, which may indicate that there are three cases where A exists separately, A and B exist at the same time, and B exists separately.
  • the character "/" generally indicates that the contextual object is an "or" relationship.
  • a person skilled in the art may understand that all or part of the steps of implementing the above examples may be completed by hardware, or may be instructed by a program to execute related hardware, and the program may be stored in a computer readable storage medium.
  • the storage medium to which it is obtained may be a read only memory, a magnetic disk or an optical disk or the like.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Processing Or Creating Images (AREA)

Abstract

一种动画播放方法、装置、客户端以及视频直播系统。所述方法包括:接收来自服务器的动画播放触发数据;根据所述触发数据生成不同优先级队列的欲播放动画;当所述欲播放动画属于第一优先级播放队列时,确定当前播放动画所属的播放队列;若当前播放动画属于第一优先级队列,停止所述当前播放动画,并播放所述欲播放动画;若当前播放动画属于第二优先级队列,屏蔽所述当前播放动画,并播放所述欲播放动画。

Description

动画播放方法、装置、客户端、视频直播系统以及存储介质
本申请要求于2016年12月23日提交中国专利局、申请号为201611209078.X、发明名称为“一种自动动画播放方法、装置、客户端以及视频直播系统”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请属于互联网技术领域,具体涉及一种动画播放方法、装置、客户端、视频直播系统以及存储介质。
背景
动画播放技术普遍存在于本领域中,例如在网页动画、游戏动画、聊天动画等等。动画技术也会与比赛相结合用于表现比赛的激烈程度、比分等信息。通常比赛动画只会使用在回合制的比赛中,比赛双方分时进行操作,动画模式采用单纯的立即触发的形式。但是,将动画应用于投票PK赛中时,由于投票双方的投票操作是同步进行的,比分变化情况快,间隔时间不可控,会出现多个动画间的相互重叠。如果使重叠的动画延后,从而使动画不互相重叠,则丧失了动画对于比赛实时性的播报,这会造成不好的用户体验。
技术内容
本申请提供了一种动画播放方法,包括:接收来自服务器的动画播放触发数据;根据所述触发数据的生成不同优先级队列的欲播放动画;当所述欲播放动画属于第一优先级播放队列时,确定当前播放动画所属的播放队列;若当前播放动画属于第一优先级队列,停止所述当前播放 动画,并播放所述欲播放动画;若当前播放动画属于第二优先级队列,屏蔽所述当前播放动画,并播放所述欲播放动画。
本申请还提供了一种动画播放装置,包括:触发数据接收模块,用于接收来自服务器的动画播放触发数据;欲播动画队列生成模块,用于根据所述触发数据的生成不同优先级队列的欲播放动画;播放队列确定模块,用于在所述欲播放动画属于高优先级播放队列时,确定当前播放动画所属的播放队列;停止处理模块,用于若当前播放动画属于第一优先级队列时,停止所述当前播放动画,并播放所述欲播放动画;屏蔽处理模块,用于若当前播放动画属于第二优先级队列时,屏蔽所述当前播放动画,并播放所述欲播放动画。
本申请还提供了一种客户端,包含前述的动画播放装置。
本申请还提供了一种视频直播系统,所述系统包括主播客户端、用户客户端以及服务器,所述客户端中包含前述的动画播放装置。
本申请还提供了一种非易失性计算机可读存储介质,存储有计算机可读指令,可以使至少一个处理器执行如上所述的方法。
附图简要说明
下面结合附图对本发明的具体实施方式作进一步详细的说明;
图1是本申请实例提供的一种实施环境的示意图。
图2是本申请实例提供的动画播放方法流程图。
图3是本申请实例提供的视频直播系统原理框图。
图4是本申请实例提供的动画播放方法流程图。
图5是本申请实例提供的动画播放方法流程图。
图6是本申请实例提供的动画播放方法流程图。
图7是本申请实例提供的动画播放方法流程图。
图8是本申请实例提供的动画播放方法流程图。
图9是本申请实例提供的动画播放方法流程图。
图10是本申请实例提供的动画播放装置原理框图。
图11是本申请实例提供的动画播放装置原理框图。
图12是本申请实例提供的终端的结构示意图。
图13是本申请实例提供的服务器的结构示意图。
实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实例中的附图,对本申请实例中的技术方案进行清楚、完整地描述,显然,所描述的实例仅仅是本申请一部分的实例,而不是全部的实例。基于本申请中的实例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实例,都应当属于本申请保护的范围。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
本申请实例提供了一种动画播放方法、装置、客户端、视频直播系统以及存储介质。请参考图1,该图为本申请实例提供的动画播放方法的应用场景示意图。其示出了本申请实例提供的验证方法所涉及的实施环境的结构示意图。该实施环境包括配置有多个用户设备101、用于验证的后台服务器102和数据库103。
所述用户设备101中安装有执行本申请提供的动画播放方法的客户端以执行本申请提供的动画播放方法。
在一个示例中,服务器102的功能可以由分布式服务器集群实现。
请参考图2,其示出了本申请一个实例提供的动画播放方法,该方 法可应用于图1所示实施环境中。该方法可以包括如下步骤:
S210,接收来自服务器的动画播放触发数据。
客户端101会接收来自服务器102的动画播放触发数据,该动画播放触发数据可以是类似是服务器的广播数据,也可以是向指定客户端传输的专线数据。
在一个示例中,如图的3所示,在一个视频直播场景中,A主播和B主播分别处于不同的聊天室,聊天室内的用户可以通过客户端的送礼、打赏或者类似功能以向主播赠送礼物以表示对主播的支持。在礼物送出后,首先由礼物服务器对礼物进行处理,以获取不同类型礼物所对应的支持值,并按照不同礼物所对应的金额通过计费服务器在送出礼物的用户账户中扣除。之后,礼物服务器会将统计得到礼物数据发送至广播服务器。广播服务器则会从房间服务器处拉取用户列表,并将礼物数据通过广播的形式发送至用户客户端,以对用户客户端的送礼物行为进行反馈。当然,广播服务器还会将礼物数据反馈至主播客户端以使主播获知自己收到的礼物情况,从而更好地根据收礼情况与房间内的用户进行互动。而在该过程中,接收到广播服务器广播数据的客户端会触发自身的动画播放。
具体地,广播服务器的广播数据可以仅仅包括礼物服务器收到的礼物信息,从而触发主播收到礼物信息的动画效果。广播服务器的广播数据可以包括礼物服务器将主播收到的礼物信息换算得到的主播收到的支持数。
在一个示例中,A主播和B主播属于同一类型主播,而并且正在比赛用户支持数,此时广播服务器的广播数据除A主播和B主播的支持数据之外,还存有A主播和B主播的实时胜负关系,以及A主播和B主播的支持数据的超越与反超关系数据。
客户端在接收到广播服务器发送的上述数据之后,会根据广播数据的不同类型,生成不同类型的动画。例如,前述的主播支持数据生成实时的支持数字或者礼物数量显示动画,以量化反映主播的支持情况,两个主播比赛过程的超越与反超数据则生成具有动态效果的动画,以增强比赛的激烈和紧张程度。即,客户端从服务器接收到的是不同类型的动画触发数据,其会触发不同的动画效果。
S220,根据所述触发数据的类型生成不同优先级队列的欲播放动画(即准备播放的动画)。
客户端101在接收到触发数据后,会根据触发数据的类型生成不同类型的动画效果。如前所述,在具体的场景下,根据服务器发送的数据值的大小、类型、变化等等,客户端会产生不同的动画效果。而有时,同一数据可能会产生两个或者两个以上动画效果,并且可能在当前动画效果产生时,之前数据所产生的动画效果还处于播放状态中。
在一个视频直播场景的示例中,A主播和B主播正在进行粉丝支持的比赛,二者支持人数接近,不断出现A主播的支持数超过B主播并在稍后被B主播反超的情形。此时,广播服务器统计到的数据是A主播和B主播交替上升的支持数和二者交替改变的支持排名关系。只用同一种动画效果进行表现对上述过程进行区分是困难的。具体地,对不同类型的数据所对应的播放动画,区分播放的优先级。例如,因为支持数仅仅是数字的量化反映,将A主播和B主播的支持数动画列为低优先级;而A主播和B主播的超越与反超越的名次变化是二者位次的质的变化,将这种变化设置为高优先级。对应的客户端生成的播放动画分别列于低优先级队列(或称为第二优先级队列)和高优先级队列(或称为第一优先级队列)中。而生成的播放动画,则分别位于两个队列中,成为欲播放动画。其中,所述第一优先级高于所述第二优先级。
S230,当所述欲播放动画属于高优先级队列时,判断当前播放动画所属的优先级队列。
请参考图4,根据触发信号的类型,生成的播放动画可以属于低优先级队列,也可以属于高优先级队列,若动画属于低优先级队列,那么动画会在低优先级队列中按照顺序在客户端的指定位置显示。具体地,低优先级队列可以是一个FIFO队列,待播放的动画按照先入先出的顺序进行播放。低优先级队列中的动画可以是例如正常人物动作动画。
在本步骤中,主要涉及欲播放动画属于高优先级队列的情况。如前所述,当欲播放动画属于高优先级时,欲播放动画的类型均属于实时性很强的需即时播放的动画,例如A主播的得分超过B主播时的即时动画,该动画的播放时机必须是接收到来自服务器的触发信号的同时。并且,高优先级队列中是不存在排队现象的,当一个新的高优先级动画生成时,如果正在播放的动画是低优先级动画,则当前播放的低优先级动画被暂停播放,并且屏蔽(或隐藏),改为播放欲播放高优先级动画;如果正在播放的动画为高优先级动画,则当前播放的高优先级动画会被立即截停(或称停止),并从播放区域清除,并更换为新的高优先级动画播放。因此,当生成高优先级动画时,需要判断当前播放动画所属的优先级队列。
S240,若当前播放动画属于高优先级队列,截停所述当前播放动画,并播放所述欲播放动画。
如图5所示,如果当前播放的动画属于高优先级队列,则需要将该动画更换为欲播放动画,以展示欲播放动画因此,需要对当前播放动画进行截停和清除,并改为播放高优先级的动画。
如图6所示,截停是指待当前帧播放完毕后,后续帧不再播放,而改为播放高优先级欲播放动画的第一帧,如此可以保证在动画过程中两 个高优先级动画之间不存在重叠。
在一个示例中,请参考图7,不同高优先级动画之间的截停操作通过css技术和计时功能实现。
用户进入到聊天室时,动画内容被预加载;此时,客户端等待来自服务器的触发信号;当接收到服务器的触发信号后,判断触发信号所触发的动画优先级;如果所述动画属于高优先级队列,根据触发信号的内容计算动画的实现顺序,然后启动层叠式样表(css)和倒计时,以控制动画的动作,在该过程中,如果没有接收到来自服务器的高优先级动画触发信号,则动画持续至倒计时结束,如果接收到来自服务器的高优先级动画触发信号,则清除当前的层叠式样表(css)和倒计时,并根据触发信号的内容计算动画的实现顺序,然后启动层叠式样表(css)和倒计时。
在一个示例中,由于之后的高优先级动画会完全截断之前的高优先级动画播放,因此,将高优先级动画所包含的信息压缩在第一帧,这样,即使当前播放的高优先级动画被之后的高优先级动画截停,也能传递动画所包含的信息。
S250,若当前播放动画属于低优先级队列,隐藏(或屏蔽)所述当前播放动画,并播放所述预播放动画。
如图8所示,如果当前播放的动画属于低优先级队列,则同样需要将该动画所表现的信息更换为欲播放动画所表现的信息。不过需要将当前播放的低优先级动画予以保留,待高优先级动画播放完毕之后继续播放。因此,需要对当前播放动画进行屏蔽,并改为播放高优先级的动画。
综上所述,本实例提供的动画播放方法能够根据接收到的服务器触发信号自动地实现不同优先级动画的有序播放,根据服务器获得实时数据保证动画播放的无缝衔接,同时保证动画切换时不同动画之间不存在 重叠。
请参考图9,其示出了本申请一个实例提供的动画播放方法,该方法可应用于图1所示实施环境中。该方法可以包括如下步骤:
S910,接收来自服务器的动画播放触发数据。
在一个示例中,如图的3所示,在一个视频直播场景中,A主播和B主播分别处于不同的聊天室,聊天室内的用户可以通过客户端的送礼、打赏或者类似功能以向主播赠送礼物以表示对主播的支持。在礼物送出后,首先由礼物服务器对礼物进行处理,以获取不同类型礼物所对应的支持值,并按照不同礼物所对应的金额通过计费服务器在送出礼物的用户账户中扣除。之后,礼物服务器会将统计得到礼物数据发送至广播服务器。广播服务器则会从房间服务器处拉取用户列表,并将礼物数据通过广播的形式发送至用户客户端,以对用户客户端的送礼物行为进行反馈。在上述过程中,广播服务器发送的广播数据包含至少两个类型的数据,触发类型数据和数值类型数据。数值类型数据表示主播接收到的支持的具体数值,该数值可以是换算得到的数值或者直接得到的数值。直接得到的数值可以是主播得到的各类礼物的数量,换算得到的数值是根据主播得到的各类礼物的换算数值得到的,例如两个主播得到的鲜花、鸡蛋、赞、红包、元宝等等均可以换算成为主播的得分。触发类型数据则是当两个参与比赛的主播在比分发生交替时产生的数据,该类数据可以作为特殊类型事件的触发条件。
当然,本示例仅仅是示例性的说明,在类似二人或者多人的PK比赛过程中,本实例所提供的动画播放方法都是适用的。
S920,根据所述动画播放触发数据的类型生成不同优先级队列的欲播放动画。
客户端101在接收到触发数据后,会根据触发数据的类型生成不同 类型的动画效果。如前所述,在具体的场景下,根据服务器发送的数据值的大小、类型、变化等等,客户端会产生不同的动画效果。而有时,同一数据可能会产生两个或者两个以上动画效果,并且可能在当前动画效果产生时,之前数据所产生的动画效果还处于播放状态中。
该步骤S920还可以包括如下子步骤:
S9201,根据所述动画播放触发数据生成欲播放动画(即准备播放的动画)。
具体地,客户端在接收到动画播放触发数据之后,会根据所述动画播放触发数据生成欲播放动画。
在一个示例中,该步骤可以包含如下子步骤:
S92011,加载欲播放动画的静态模板,所述静态模板包含实现动画的多个子模板。
在用户进入到聊天房间,加载聊天界面之后,客户端会对产生动画的素材进行加载,素材可以是基于页面技术静态的图片。这些图片在页面上具有初始位置,并且构成了欲播放动画的静态模板,各个素材构成了静态模板的子模板。每个子模板都具有单独的页面属性,通过对子模板的页面属性的控制,可以对子模板的位置、大小/缩放、显示/隐藏,透明度、颜色等等属性进行控制。这些可以通过诸如css技术实现,基于css控制页面中各个图片的属性,从而实现动画效果。
S92012,用于根据所述动画播放触发数据计算获得与所述触发数据匹配的预定义时序动作。
动画是根据预定义的时序动作的形式存储的,客户端根据接收到的动画播放触发数据计算,获得结算结果,并查询与计算结果相匹配的预定义的时序动作。预定义的时序动作可以是,在起始时刻后的第一时刻使第一子模板执行第一动作,在第二时刻使第二子模板执行第二动作, 在第三时刻使第三子模板执行第三动作,可以将一个或者几个动作定义为动画的帧。在定义预定义动作时,由于动画会被之后高优先级动画截停,因此将表达动画主要信息的内容设置在先播放的帧中。这样即使在短时间内出现多次高优先级动画,导致动画多次被截停,也能够使用户了解到动画所表达的完整信息,从而保证在动画切换的同时传达足够的信息量。
在一个示例中,请参考图3所示的视频播放系统构架,预定义时序动作如下:
当接收到A主播的反超数据时,先判断是否正在播放其他类型的动画,如存在的话,则对其他类型的动画进行立即隐藏处理,并将双方当前分数进行对比来得出赢方,从而开始播放相应的反超动画。反超动画是通过往赢方头像元素中挂载变大css类,即通过css调整头像元素的大小属性,使赢方头像立即变大,且头像后侧光影效果播放,同时设置1.2秒倒计时,播放头像前侧的闪电反超动画,并设置在3.2秒后,播放输方的头像变小,从而达到整体的闪电劈打后头像变小的效果。正在播放过程中,如送礼服务器推送了当前最新比分,遇到原输方重新反超原赢方时,前面设置的倒计时器将被清除,则原来的反超动画将被截断,播放当前赢方的反超动画,反超动画的播放过程中,为了强调反超传递的激烈程度,会优先播放反超动画,屏蔽其他动画。
由于考虑到动画会被拦截,因此将动画的关键内容集中在前1秒。第二,主播的头像变化会被打断,动画终点及起点位置不确定,因此,反超动效的运动方向采用了左上右下或右上左下的方式,而从左到右,或从右到左。
在上述过程中,考虑到反超动画会被截断,所以将整个大的动画进行拆分成赢方头像变大动画、闪电动画,输方头像变小动画,维持小粒 度的动画时间,从而在动画被截断时,立即暂停至当前动画播放情况,如输方头像变小的动画未播时,则维持输方当前大头像态,并开始接下去的反超动画。
S92013,为所述静态模板中的各子模板加载所述时序动作属性。
在获取静态模板中各子模板的时序动作属性之后,将时序动作属性加载于静态模板的各子模板上。如此,各子模板将按照预定的时序执行子模板的属性变化,例如表示人物的子模板的大小变化,表示特定动作的子模板的显示或隐藏,某特定子模板的位置的改变等等。
S9202,根据所述触发数据将所述欲播放动画分配至不同的优先级队列。
根据触发数据的类型来识别欲播放动画的类型,如果欲播放动画是高优先级的欲播放动画,那么将欲播放动画分配至高优先级队列。如果欲播放动画是低优先级的动画,那么将欲播放动画分配至低优先级队列。
S930,当所述欲播放动画属于高优先级队列时,判断当前播放动画所属的优先级队列。
如果欲播放动画属于低优先级队列,那么其在低优先级队列中按照FIFO规则顺序播放即可。
如果欲播放动画属于高优先级队列,那么欲播放动画的类型均属于实时性很强的需即时播放的动画,例如A主播的得分超过B主播时的即时动画,该动画的播放时机必须是接收到来自服务器的触发信号的同时。并且,高优先级队列中是不存在排队现象的,当一个新的高优先级动画生成时,如果正在播放的动画是低优先级动画,则当前播放的低优先级动画被暂停播放,并且屏蔽,改为播放欲播放高优先级动画;如果正在播放的动画为高优先级动画,则当前播放的高优先级动画会被立即 截停,并从播放区域清除,并更换为新的高优先级动画播放。因此,当生成高优先级动画时,需要判断当前播放动画所属的优先级队列。
S940,若当前播放动画属于高优先级队列,截停所述当前播放动画,并播放所述欲播放动画。
该步骤S940包含如下子步骤:
S9401,在当前播放动画的当前帧结束时刻,停止当前播放动画的计时器,并清除所述当前播放动画的所有帧。
S9402,以当前播放动画的当前帧结束时刻为计时起点,播放所述欲播放动画的第一帧。
S950,若当前播放动画属于低优先级队列,屏蔽所述当前播放动画,并播放所述欲播放动画。
该步骤S950包含如下子步骤:
S9501,将当前播放动画的当前帧结束时刻,暂停所述当前播放动画,并将所述当前播放动画的属性设置为隐藏。
S9502,以当前播放动画的当前帧结束时刻为计时起点,播放所述欲播放动画的第一帧。
在步骤S9502后还包含如下子步骤:
S9503,在所述高优先级的欲播放动画播放完毕后,将所述当前播放动画的属性设置可以可见,并继续播放所述当前动画。
综上所述,本实例提供的动画播放方法能够根据接收到的服务器触发信号自动地实现不同优先级动画的生成,以及在客户端的自动播放,并且基于对不同优先级动画的时序控制,可以实现相同优先级动画冲突时的无重叠切换,避免了动画切换过程中由于重叠带来的视觉混淆。在实现动画自动播放的同时,极大地提高了视觉效果,保证了用户体验。
请参考图10,其示出了本申请一个实例提供的动画播放装置,所述 装置包括如下模块:
触发数据接收模块,执行步骤S210,用于接收来自服务器的动画播放触发数据。
欲播放动画队列生成模块,执行步骤S220,用于根据所述触发数据的类型生成不同优先级队列的欲播放动画。
播放队列判断模块(或称播放队列确定模块),执行步骤S230,用于在所述欲播放动画属于高优先级队列时,判断(或确定)当前播放动画所属的优先级队列。
截停处理模块(或称停止处理模块),执行步骤S240,用于在当前播放动画属于高优先级队列时,截停(或停止)所述当前播放动画,并播放所述欲播放动画。
屏蔽处理模块,执行步骤S250,用于在当前播放动画属于低优先级队列时,屏蔽所述当前播放动画,并播放所述欲播放动画。
相关细节可参考图2-5所示的方法实例。
请参考图11,其示出了本申请一个实例提供的动画播放装置,所述装置包括如下模块:
触发数据接收模块,执行步骤S910,接收来自服务器的动画播放触发数据。
欲播放动画队列生成模块,执行步骤S920,根据所述动画播放触发数据的类型生成不同优先级队列的欲播放动画。
欲播动画队列生成模块还可以包括如下子模块:
欲播放动画生成模块,执行步骤S9201,用于根据所述动画播放触发数据生成欲播放动画。
优先级队列分配模块,用于执行步骤S9202,根据所述触发数据将所述欲播放动画分配至不同的优先级队列。
在一个示例中,欲播放动画生成模块包含如下子模块:
静态模板加载模块,执行步骤S92011,用于加载欲播放动画的静态模板,所述静态模板包含实现动画的多个子模板。
预定义动作计算模块,执行步骤S92012,用于根据所述动画播放触发数据计算获得与所述触发数据匹配的预定义时序动作。
时序动作加载模块,执行步骤S92013,用于为所述静态模板中的各子模板加载所述时序动作属性。
播放队列判断模块,执行步骤S930,用于当所述欲播放动画属于高优先级队列时,判断当前播放动画所属的优先级队列。
截停处理模块,执行步骤S940,若当前播放动画属于高优先级队列,截停所述当前播放动画,并播放所述欲播放动画。
该截停处理模块包含如下子模块:
数据清除子模块,执行步骤S9401,在当前播放动画的当前帧结束时刻,停止当前播放动画的计时器,并清除所述当前播放动画的所有帧。
第一播放子模块,执行步骤S9402,以当前播放动画的当前帧结束时刻为计时起点,播放所述欲播放动画的第一帧。
屏蔽处理模块,执行步骤S950,若当前播放动画属于低优先级队列,屏蔽所述当前播放动画,并播放所述欲播放动画。
所述屏蔽处理模块包含子模块:
隐藏处理子模块,执行步骤S9501,用于将当前播放动画的当前帧结束时刻,暂停所述当前播放动画,并将所述当前播放动画的属性设置为隐藏。
第二播放子模块,执行步骤S9502,用于以当前播放动画的当前帧结束时刻为计时起点,播放所述欲播放动画的第一帧。
所述屏蔽处理模块还包括:
继续播放子模块,执行步骤S9503,在所述高优先级的欲播放动画播放完毕后,将所述当前播放动画的属性设置可以可见,并继续播放所述当前动画。相关细节可参考图9所示的方法实例。
请参考图12,其示出了本申请一个实例提供的终端的结构示意图。该终端用于实施上述实例中提供的软件产品的合法性验证方法。具体来讲:
终端1000可以包括RF(Radio Frequency,射频)电路110、包括有一个或一个以上计算机可读存储介质的存储器120、输入单元130、显示单元140、视频传感器150、音频电路160、WiFi(wireless fidelity,无线保真)模块170、包括有一个或者一个以上处理核心的处理器180、以及电源190等部件。本领域技术人员可以理解,图1中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
RF电路110可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器180处理;另外,将涉及上行的数据发送给基站。通常,RF电路110包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(SIM)卡、收发信机、耦合器、LNA(Low Noise Amplifier,低噪声放大器)、双工器等。此外,RF电路110还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于GSM(Global System of Mobile communication,全球移动通讯系统)、GPRS(General Packet Radio Service,通用分组无线服务)、CDMA(Code Division Multiple Access,码分多址)、WCDMA(Wideband Code Division Multiple Access,宽带码分多址)、LTE(Long Term Evolution,长期演进)、电子邮件、SMS(Short Messaging Service,短消息服务)等。
存储器120可用于存储软件程序以及模块,处理器180通过运行存储在存储器120的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器120可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据终端1000的使用所创建的数据(比如视频数据、电话本等)等。此外,存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器120还可以包括存储器控制器,以提供处理器180和输入单元130对存储器120的访问。
输入单元130可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,输入单元130可包括图像输入设备131以及其他输入设备132。图像输入设备131可以是摄像头,也可以是光电扫描设备。除了图像输入设备131,输入单元130还可以包括其他输入设备132。具体地,其他输入设备132可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元140可用于显示由用户输入的信息或提供给用户的信息以及终端1000的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元140可包括显示面板141,可选的,可以采用LCD(Liquid Crystal Display,液晶显示器)、OLED(Organic Light-Emitting Diode,15有机发光二极管)等形式来配置显示面板141。
终端1000可包括至少一种视频传感器150,视频传感器用于获取用 户的视频信息。终端1000还可以包括其它传感器(未示出),比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板141的亮度,接近传感器可在终端1000移动到耳边时,关闭显示面板141和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于终端1000还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
视频电路160、扬声器161,传声器162可提供用户与终端1000之间的视频接口。音频电路160可将接收到的音频数据转换后的电信号,传输到扬声器161,由扬声器161转换为声音信号输出;另一方面,传声器162将收集的声音信号转换为电信号,由音频电路160接收后转换为音频数据,再将音频数据输出处理器180处理后,经RF电路11以发送给比如另一终端,或者将音频数据输出至存储器120以便进一步处理。音频电路160还可能包括耳塞插孔,以提供外设耳机与终端1000的通信。
WiFi属于短距离无线传输技术,终端1000通过WiFi模块70可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图1示出了WiFi模块170,但是可以理解的是,其并不属于终端1000的必须构成,完全可以根据需要在不改变申请的本质的范围内而省略。
处理器180是终端1000的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器120内的软件程序和 /或模块,以及调用存储在存储器120内的数据,执行终端1000的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器180可包括一个或多个处理核心;优选的,处理器180可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。
可以理解的是,上述调制解调处理器也可以不集成到处理器180中。
终端1000还包括给各个部件供电的电源190(比如电池),优选的,电源可以通过电源管理系统与处理器180逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源190还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管未示出,终端1000还可以包括蓝牙模块等,在此不再赘述。
具体在本实例中,终端1000还包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行。上述一个或者一个以上程序包含用于执行上述发送方客户端侧或者接收方客户端侧的方法的指令。
所述存储器还包括一个或者一个以上的程序,所述一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行。上述一个或者一个以上程序包含用于执行上述后台服务器侧的方法的指令。
请参考图13,其示出了本申请实例提供的服务器的结构示意图。该服务器用于实施上述实例中提供的服务器侧的种子人群扩散方法。具体来讲:
所述服务器900包括中央处理单元(CPU)901、包括随机存取存储器(RAM)902和只读存储器(ROM)903的系统存储器904,以及连 接系统存储器904和中央处理单元901的系统总线905。所述服务器900还包括帮助计算机内的各个器件之间传输信息的基本输入/输出系统(I/O系统)906,和用于存储操作系统913、应用程序914和其他程序模块915的大容量存储设备907。
所述基本输入/输出系统906包括有用于显示信息的显示器908和用于用户输入信息的诸如鼠标、键盘之类的输入设备909。其中所述显示器908和输入设备909都通过连接到系统总线905的输入输出控制器910连接到中央处理单元901。所述基本输入/输出系统906还可以包括输入输出控制器910以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器910还提供输出到显示屏、打印机或其他类型的输出设备。
所述大容量存储设备907通过连接到系统总线905的大容量存储控制器(未示出)连接到中央处理单元901。所述大容量存储设备907及其相关联的计算机可读介质为服务器900提供非易失性存储。也就是说,所述大容量存储设备907可以包括诸如硬盘或者CD-ROM驱动器之类的计算机可读介质(未示出)。
不失一般性,所述计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、EPROM、EEPROM、闪存或其他固态存储其技术,CD-ROM、DVD或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的系统存储器904和大容量存储设备907可以统称为存储器。
根据本申请的各种实例,所述服务器900还可以通过诸如因特网等 网络连接到网络上的远程计算机运行。也即服务器900可以通过连接在所述系统总线905上的网络接口单元911连接到网络912,或者说,也可以使用网络接口单元911来连接到其他类型的网络或远程计算机系统(未示出)。
所述存储器还包括一个或者一个以上的程序,所述一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行。上述一个或者一个以上程序包含用于执行上述方法的指令。
在示例性实例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器,上述指令可由终端的处理器执行以完成上述方法实例中发送方客户端或接收方客户端侧的各个步骤,或者上述指令由服务器的处理器执行以完成上述方法实例中后台服务器侧的各个步骤。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
应当理解的是,在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
上述本申请实例序号仅仅为了描述,不代表实例的优劣。
本领域普通技术人员可以理解实现上述实例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的较佳实例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (24)

  1. 一种动画播放方法,其中,所述方法包括:
    接收来自服务器的动画播放触发数据;
    根据所述触发数据生成不同优先级队列的欲播放动画;
    当所述欲播放动画属于第一优先级播放队列时,确定当前播放动画所属的播放队列;
    若当前播放动画属于第一优先级队列时,停止所述当前播放动画,并播放所述欲播放动画;
    若当前播放动画属于第二优先级队列时,屏蔽所述当前播放动画,并播放所述欲播放动画。
  2. 根据权利要求1所述的方法,其中,所述动画播放触发数据包含触发类型数据和数值类型数据。
  3. 根据权利要求1所述的方法,其中,所述根据所述触发数据生成不同优先级队列的欲播放动画包括:
    根据所述动画播放触发数据生成欲播放动画;
    根据所述触发数据将所述欲播放动画分配至不同的优先级队列。
  4. 根据权利要求3所述的方法,其中,所述根据所述触发数据生成欲播放动画包括:
    加载欲播放动画的静态模板,所述静态模板包含实现动画的多个子模板;
    根据所述动画播放触发数据计算获得与所述触发数据匹配的预定义时序动作;
    为所述静态模板中的各子模板加载所述预定义时序动作。
  5. 根据权利要求1所述的方法,其中,所述停止所述当前播放动画,并播放所述欲播放动画包括:
    在当前播放动画的当前帧结束时刻,停止当前播放动画的计时器,并清除所述当前播放动画的所有帧;
    以当前播放动画的当前帧结束时刻为计时起点,播放所述欲播放动画的第一帧。
  6. 根据权利要求1所述的方法,其中,所述屏蔽所述当前播放动画,并播放所述欲播放动画包括:
    将当前播放动画的当前帧结束时刻,暂停所述当前播放动画,并将所述当前播放动画的属性设置为隐藏;
    以当前播放动画的当前帧结束时刻为计时起点,播放所述欲播放动画的第一帧。
  7. 根据权利要求6所述的方法,其中,在所述高优先级的欲播放动画播放完毕后,将所述被暂停的播放动画的属性设置可以可见,并继续播放所述动画。
  8. 一种动画播放方法,应用于客户端,所述客户端包括:处理器和存储器,所述处理器执行所述存储器中存储的机器可读存储指令,可以使所述处理器执行以下操作:
    接收来自服务器的动画播放触发数据;
    根据所述触发数据生成不同优先级队列的欲播放动画;
    当所述欲播放动画属于第一优先级播放队列时,确定当前播放动画所属的播放队列;
    若当前播放动画属于第一优先级队列时,停止所述当前播放动画,并播放所述欲播放动画;
    若当前播放动画属于第二优先级队列时,屏蔽所述当前播放动画,并播放所述欲播放动画。
  9. 根据权利要求8所述的方法,其中,所述动画播放触发数据包含触发类型数据和数值类型数据。
  10. 根据权利要求8所述的方法,其中,所述计算机可读指令可以使所述处理器执行以下操作:
    根据所述动画播放触发数据生成欲播放动画;
    根据所述触发数据将所述欲播放动画分配至不同的优先级队列。
  11. 根据权利要求10所述的方法,其中,所述计算机可读指令可以使所述处理器执行以下操作:
    加载欲播放动画的静态模板,所述静态模板包含实现动画的多个子模板;
    根据所述动画播放触发数据计算获得与所述触发数据匹配的预定义时序动作;
    为所述静态模板中的各子模板加载所述预定义时序动作。
  12. 根据权利要求8所述的方法,其中,所述计算机可读指令可以使所述处理器执行以下操作:
    在当前播放动画的当前帧结束时刻,停止当前播放动画的计时器,并清除所述当前播放动画的所有帧;
    以当前播放动画的当前帧结束时刻为计时起点,播放所述欲播放动画的第一帧。
  13. 根据权利要求8所述的方法,其中,所述计算机可读指令可以使所述处理器执行以下操作:
    将当前播放动画的当前帧结束时刻,暂停所述当前播放动画,并将所述当前播放动画的属性设置为隐藏;
    以当前播放动画的当前帧结束时刻为计时起点,播放所述欲播放动画的第一帧。
  14. 根据权利要求13所述的方法,其中,在所述第一优先级的欲播放动画播放完毕后,将所述被暂停的播放动画的属性设置可以可见,并继续播放所述动画。
  15. 一种动画播放装置,其中,所述装置包括:
    一个或一个以上存储器;
    一个或一个以上处理器;
    所述一个或一个以上存储器存储有一个或者一个以上指令模块,经配置由所述一个或者一个以上处理器执行;其中,
    所述一个或者一个以上指令模块包括:
    触发数据接收模块,用于接收来自服务器的动画播放触发数据;
    欲播动画队列生成模块,用于根据所述触发数据生成不同优先级队列的欲播放动画;
    播放队列确定模块,用于在所述欲播放动画属于第一优先级播放队列时,确定当前播放动画所属的播放队列;
    停止处理模块,用于若当前播放动画属于第一优先级队列时,停止所述当前播放动画,并播放所述欲播放动画;
    屏蔽处理模块,用于若当前播放动画属于第二优先级队列时,屏蔽所述当前播放动画,并播放所述欲播放动画。
  16. 根据权利要求15所述的装置,其中,所述动画播放触发数据包含触发类型数据和数值类型数据。
  17. 根据权利要求15所述的装置,其中,所述预播动画队列生成模块包括:
    欲播放动画生成模块,用于根据所述动画播放触发数据生成欲播放动画;
    优先级队列分配模块,用于根据所述触发数据将所述欲播放动画分配至不同的优先级队列。
  18. 根据权利要求17所述的装置,其中,所述预播放动画生成模块包括:
    静态模板加载模块,用于加载欲播放动画的静态模板,所述静态模板包含实现动画的多个子模板;
    预定义动作计算模块,用于根据所述动画播放触发数据计算获得与所述触发数据匹配的预定义时序动作;
    时序动作加载模块,用于为所述静态模板中的各子模板加载所述预定义时序动作。
  19. 根据权利要求15所述的装置,其中,所述停止处理模块包括:
    数据清除子模块,用于在当前播放动画的当前帧结束时刻,停止当前播放动画的计时器,并清除所述当前播放动画的所有帧;
    第一播放子模块,用于以当前播放动画的当前帧结束时刻为计时起点,播放所述欲播放动画的第一帧。
  20. 根据权利要求15所述的装置,其中,所述屏蔽处理模块包括:
    隐藏处理子模块,用于将当前播放动画的当前帧结束时刻,暂停所述当前播放动画,并将所述当前播放动画的属性设置为隐藏;
    第二播放子模块,用于以当前播放动画的当前帧结束时刻为计时起点,播放所述欲播放动画的第一帧。
  21. 根据权利要求20所述的装置,其中,所述屏蔽处理模块还包括继续播放子模块,用于在所述第一优先级的欲播放动画播放完毕后,将所述被暂停的播放动画的属性设置可以可见,并继续播放所述动画。
  22. 一种客户端,包括权利要求15-21之一所述的装置。
  23. 一种视频直播系统,包含权利要求15-21之一所述的装置。
  24. 一种非易失性计算机可读存储介质,存储有计算机可读指令,可以使至少一个处理器执行如权利要求1至14任一项所述的方法。
PCT/CN2017/117093 2016-12-23 2017-12-19 动画播放方法、装置、客户端、视频直播系统以及存储介质 WO2018113648A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201611209078.X 2016-12-23
CN201611209078.XA CN108243151B (zh) 2016-12-23 2016-12-23 一种自动动画播放方法、装置、客户端以及视频直播系统

Publications (1)

Publication Number Publication Date
WO2018113648A1 true WO2018113648A1 (zh) 2018-06-28

Family

ID=62624415

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/117093 WO2018113648A1 (zh) 2016-12-23 2017-12-19 动画播放方法、装置、客户端、视频直播系统以及存储介质

Country Status (2)

Country Link
CN (1) CN108243151B (zh)
WO (1) WO2018113648A1 (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112399192A (zh) * 2020-11-03 2021-02-23 上海哔哩哔哩科技有限公司 网络直播中的礼物展示方法和系统
CN112770128A (zh) * 2020-12-31 2021-05-07 百果园技术(新加坡)有限公司 一种直播礼物的播放系统以及方法、装置和服务器
CN113573105A (zh) * 2021-07-01 2021-10-29 广州方硅信息技术有限公司 基于霸屏虚拟礼物的直播互动方法及计算机设备
CN113905270A (zh) * 2021-11-03 2022-01-07 广州博冠信息科技有限公司 节目播出控制方法和装置、可读存储介质、电子设备
CN115002495A (zh) * 2022-05-23 2022-09-02 上海哔哩哔哩科技有限公司 动画处理方法及装置
US20230209145A1 (en) * 2021-12-27 2023-06-29 17Live Japan Inc. Server and method

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111225229B (zh) * 2020-01-15 2021-12-03 广州酷狗计算机科技有限公司 直播方法、装置、计算机设备及存储介质
CN111831946A (zh) * 2020-07-24 2020-10-27 北京达佳互联信息技术有限公司 信息的展示方法、装置及电子设备
CN113050912B (zh) * 2020-09-30 2024-06-04 惠州华阳通用电子有限公司 一种音频文件输出方法及装置
CN113157366A (zh) * 2021-04-01 2021-07-23 北京达佳互联信息技术有限公司 动画播放方法、装置、电子设备和存储介质
CN113747225A (zh) * 2021-09-01 2021-12-03 北京达佳互联信息技术有限公司 界面处理方法、装置、电子设备及计算机可读存储介质
CN115460469B (zh) * 2022-08-24 2024-06-11 网易(杭州)网络有限公司 多视频播放的处理方法、装置、计算机设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103984597A (zh) * 2014-06-04 2014-08-13 福州瑞芯微电子有限公司 一种任务运行切换的方法、装置及系统
CN104506922A (zh) * 2014-12-31 2015-04-08 乐视网信息技术(北京)股份有限公司 一种视频信号播放方法、装置及设备
CN104918124A (zh) * 2015-05-11 2015-09-16 腾讯科技(北京)有限公司 直播互动系统、信息发送方法、信息接收方法及装置
CN105245546A (zh) * 2015-10-28 2016-01-13 广州华多网络科技有限公司 一种信息显示方法及系统
CN105808070A (zh) * 2016-03-31 2016-07-27 广州酷狗计算机科技有限公司 一种设置评论展示效果的方法和装置
CN106231415A (zh) * 2016-08-18 2016-12-14 北京奇虎科技有限公司 一种在视频直播中互动添加脸部特效的方法及装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN201100956Y (zh) * 2007-10-16 2008-08-13 鹰达科技有限公司 列车多媒体控制系统
US9225656B2 (en) * 2011-02-07 2015-12-29 Brocade Communications Systems, Inc. Quality of service in a heterogeneous network
CN103927722B (zh) * 2014-04-18 2017-10-13 深圳市幻实科技有限公司 一种增强现实的实现方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103984597A (zh) * 2014-06-04 2014-08-13 福州瑞芯微电子有限公司 一种任务运行切换的方法、装置及系统
CN104506922A (zh) * 2014-12-31 2015-04-08 乐视网信息技术(北京)股份有限公司 一种视频信号播放方法、装置及设备
CN104918124A (zh) * 2015-05-11 2015-09-16 腾讯科技(北京)有限公司 直播互动系统、信息发送方法、信息接收方法及装置
CN105245546A (zh) * 2015-10-28 2016-01-13 广州华多网络科技有限公司 一种信息显示方法及系统
CN105808070A (zh) * 2016-03-31 2016-07-27 广州酷狗计算机科技有限公司 一种设置评论展示效果的方法和装置
CN106231415A (zh) * 2016-08-18 2016-12-14 北京奇虎科技有限公司 一种在视频直播中互动添加脸部特效的方法及装置

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112399192A (zh) * 2020-11-03 2021-02-23 上海哔哩哔哩科技有限公司 网络直播中的礼物展示方法和系统
US11653051B2 (en) 2020-11-03 2023-05-16 Shanghai Bilibili Technology Co., Ltd. Gift display method and system in web-based live broadcast
CN112770128A (zh) * 2020-12-31 2021-05-07 百果园技术(新加坡)有限公司 一种直播礼物的播放系统以及方法、装置和服务器
CN112770128B (zh) * 2020-12-31 2023-04-07 百果园技术(新加坡)有限公司 一种直播礼物的播放系统以及方法、装置和服务器
CN113573105A (zh) * 2021-07-01 2021-10-29 广州方硅信息技术有限公司 基于霸屏虚拟礼物的直播互动方法及计算机设备
CN113573105B (zh) * 2021-07-01 2023-10-03 广州方硅信息技术有限公司 基于霸屏虚拟礼物的直播互动方法及计算机设备
CN113905270A (zh) * 2021-11-03 2022-01-07 广州博冠信息科技有限公司 节目播出控制方法和装置、可读存储介质、电子设备
CN113905270B (zh) * 2021-11-03 2024-04-09 广州博冠信息科技有限公司 节目播出控制方法和装置、可读存储介质、电子设备
US20230209145A1 (en) * 2021-12-27 2023-06-29 17Live Japan Inc. Server and method
US11778278B2 (en) * 2021-12-27 2023-10-03 17Live Japan Inc. Server and method
CN115002495A (zh) * 2022-05-23 2022-09-02 上海哔哩哔哩科技有限公司 动画处理方法及装置

Also Published As

Publication number Publication date
CN108243151A (zh) 2018-07-03
CN108243151B (zh) 2021-05-14

Similar Documents

Publication Publication Date Title
WO2018113648A1 (zh) 动画播放方法、装置、客户端、视频直播系统以及存储介质
JP6324495B2 (ja) チャットインターフェースでのゲーム実現の方法、装置および端末機器
US10341716B2 (en) Live interaction system, information sending method, information receiving method and apparatus
US10861107B2 (en) Interaction system and method, client, and background server
KR102040754B1 (ko) 추천 콘텐츠에 기초한 상호작용 방법, 단말기 및 서버
CN107371044B (zh) 电子设备互动方法、电子设备、用户终端及服务器
US9661390B2 (en) Method, server, and user terminal for sharing video information
US9961393B2 (en) Method and device for playing multimedia file
CN111263181A (zh) 直播互动方法、装置、电子设备、服务器及存储介质
WO2017016298A1 (zh) 广告投放系统、装置及方法
WO2020010819A1 (zh) 基于直播间的数据交互方法、装置、终端和存储介质
CN107888965B (zh) 图像礼物展示方法及装置、终端、系统、存储介质
WO2021185244A1 (zh) 一种设备交互的方法和电子设备
CN106658064B (zh) 虚拟礼物展示方法及装置
CN109343902A (zh) 音频处理组件的运行方法、装置、终端及存储介质
US20220272406A1 (en) Method for displaying interactive interface, method for generating interactive interface, and electronic device thereof
EP4054198A1 (en) Live broadcast method and apparatus, electronic device, and storage medium
WO2023000652A1 (zh) 直播互动及虚拟资源配置方法
CN109246228B (zh) 资源获取、资源分配方法、装置、设备及存储介质
US20180007420A1 (en) Method, device and system for recording television program
CN110572704A (zh) 一种控制弹幕播放速度的方法、装置、设备及介质
CN103716550B (zh) 用于减少呈现等待时间的方法和装置
CN112596807A (zh) 应用程序加速方法、装置、计算机设备及存储介质
CN109561217B (zh) 终端来电接听方法、装置、移动终端及存储介质
CN107395493B (zh) 一种基于意图Intent分享消息的方法及装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17883184

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17883184

Country of ref document: EP

Kind code of ref document: A1