Data processing method and device, equipment, medium and product
By separating the rendering tasks of the broadcaster and the audience, and caching and verifying the rendering process data of the broadcaster, the problem of large rendering computation and low efficiency in existing technologies is solved, and more efficient special effects rendering is achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-26
- Publication Date
- 2026-03-27
AI Technical Summary
Existing live streaming rendering technologies suffer from high computational loads and low rendering efficiency when dealing with complex scenes or high-concurrency live streaming rendering objects.
By separating the rendering tasks of the broadcaster and the audience, the rendering process data of the broadcaster is cached and verified, thereby enabling the reuse of rendering process data and reducing redundant calculations.
This reduces the amount of rendering computation, improves rendering efficiency, and ensures the visual effects display on the viewer's end.
Smart Images

Figure CN121750894A_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of computer processing technology, and more particularly to a data processing method, apparatus, device, medium, and product. Background Technology
[0002] Nowadays, in order to improve the viewing experience and enhance the interactivity of live streams, it is usually necessary to render various information such as the live stream content and the interaction between the viewers and the streamer with special effects, and then display the rendered live stream to the viewers.
[0003] Existing live streaming rendering objects typically include at least two types: virtual props added by the streamer to the live stream and virtual objects gifted to the streamer by viewers. The usual method for rendering these objects is for the streamer's client to simultaneously render all objects present during the live stream and then push the entire rendering result as a single video stream to the viewers. This special effects rendering method suffers from high computational load and low rendering efficiency when handling complex scenes or high-concurrency live streaming rendering objects. Summary of the Invention
[0004] This disclosure provides a data processing method, apparatus, device, medium, and product to reduce rendering computation and improve special effects rendering efficiency.
[0005] In a first aspect, embodiments of this disclosure provide a data processing method, the method comprising:
[0006] In response to a data acquisition event sent by a first special effects rendering instance, available rendering data corresponding to the data acquisition event is acquired and cached, wherein the first special effects rendering instance is an instance that performs special effects rendering on a trigger operation of a first object, and the available rendering data is rendering process data generated by a second special effects rendering instance when performing special effects rendering, wherein the second special effects rendering instance is an instance that performs special effects rendering on a trigger operation of a second object;
[0007] In response to a special effects rendering event, the usable rendering data is validated based on reusable rendering attributes, so that when the validation result meets preset conditions, the usable rendering data is processed with special effects based on the first special effects rendering instance.
[0008] The special effects rendering result is fused with the multimedia data stream pushed to the target client to obtain the target video stream displayed on the target client, wherein the target client is the client corresponding to the first object, and the multimedia data stream is the multimedia data stream collected by the client corresponding to the second object.
[0009] Secondly, embodiments of this disclosure also provide a data processing apparatus, the apparatus comprising:
[0010] A rendering data acquisition module can be used to respond to a data acquisition event sent by a first special effects rendering instance, acquire and cache the usable rendering data corresponding to the data acquisition event, wherein the first special effects rendering instance is an instance that performs special effects rendering on a trigger operation of a first object, and the usable rendering data is the rendering process data generated by a second special effects rendering instance when performing special effects rendering, wherein the second special effects rendering instance is an instance that performs special effects rendering on a trigger operation of a second object;
[0011] The special effects processing module is used to respond to special effects rendering events, and to perform verification processing on the usable rendering data based on reusable rendering attributes, so that when the verification result meets preset conditions, the usable rendering data is processed with special effects based on the first special effects rendering instance.
[0012] The target video stream determination module is used to fuse the special effects rendering result with the multimedia data stream pushed to the target client to obtain the target video stream displayed on the target client, wherein the target client is the client corresponding to the first object, and the multimedia data stream is the multimedia data stream collected by the client corresponding to the second object.
[0013] Thirdly, embodiments of this disclosure also provide an electronic device, the electronic device comprising:
[0014] One or more processors;
[0015] Storage device for storing one or more programs.
[0016] When the one or more programs are executed by the one or more processors, the one or more processors implement the data processing method as described in any of the embodiments of this disclosure.
[0017] Fourthly, embodiments of this disclosure also provide a storage medium containing computer-executable instructions, which, when executed by a computer processor, are used to perform the data processing method as described in any of the embodiments of this disclosure.
[0018] Fifthly, embodiments of this disclosure also provide a computer program product, including a computer program that, when executed by a processor, implements the data processing method as described in any of the embodiments of this disclosure.
[0019] In this embodiment, in response to a data acquisition event sent by a first special effects rendering instance, usable rendering data corresponding to the data acquisition event is acquired and cached. The first special effects rendering instance is an instance that performs special effects rendering on a trigger operation of a first object. The usable rendering data is the rendering process data generated by a second special effects rendering instance when performing special effects rendering. The second special effects rendering instance is an instance that performs special effects rendering on a trigger operation of a second object. In response to a special effects rendering event, the usable rendering data is validated based on reusable rendering attributes. When the validation result meets preset conditions, special effects processing is performed on the usable rendering data based on the first special effects rendering instance. The special effects rendering result is fused with the multimedia data stream pushed to the target client to obtain the target video stream displayed on the target client. The target client is the client corresponding to the first object, and the multimedia data stream is collected by the client corresponding to the second object. This multimedia data stream addresses the problem of high computational load and low efficiency in existing technologies where all special effects rendering for the entire live stream is completed on the live streaming end. It achieves special effects rendering by having a first special effects rendering instance execute the trigger operation of a first object, and a second special effects rendering instance executes the trigger operation of the first object. This separates the rendering on the broadcaster's end from the viewer's end. By separating the rendering tasks, when the first special effects rendering instance executes its special effects rendering, it obtains the rendering process data generated by the second special effects rendering instance during its special effects rendering. It then verifies and processes the usable rendering data based on reusable rendering attributes, enabling the reuse of some rendering process data between the two special effects rendering instances. This eliminates the need to repeatedly calculate rendering process data during special effects rendering, reducing computational load and improving rendering efficiency. Simultaneously, by using the verified and processed usable rendering data for special effects processing, it ensures the effective display of special effects on the viewer's end. Attached Figure Description
[0020] The above and other features, advantages, and aspects of the embodiments of this disclosure will become more apparent from the accompanying drawings and the following detailed description. Throughout the drawings, the same or similar reference numerals denote the same or similar elements. It should be understood that the drawings are schematic, and the originals and elements are not necessarily drawn to scale.
[0021] Figure 1 This is a schematic flowchart of a data processing method provided in an embodiment of the present disclosure;
[0022] Figure 2 This is a schematic diagram of the data processing method involved in the embodiments of this disclosure;
[0023] Figure 3 This is a timing diagram of the data processing method involved in the embodiments of this disclosure;
[0024] Figure 4 This is a schematic diagram of the data processing method involved in the embodiments of this disclosure;
[0025] Figure 5 This is a schematic diagram of the data processing method involved in the embodiments of this disclosure;
[0026] Figure 6 This is a schematic diagram of the data processing method involved in the embodiments of this disclosure;
[0027] Figure 7 This is a schematic flowchart of a data processing method provided in an embodiment of the present disclosure;
[0028] Figure 8 This is a schematic diagram of the structure of an environment map generation device provided in an embodiment of the present disclosure;
[0029] Figure 9 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this disclosure. Detailed Implementation
[0030] Embodiments of this disclosure will now be described in more detail with reference to the accompanying drawings. While some embodiments of this disclosure are shown in the drawings, it should be understood that this disclosure can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided to provide a more thorough and complete understanding of this disclosure. It should be understood that the accompanying drawings and embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of protection of this disclosure.
[0031] It should be understood that the steps described in the method embodiments of this disclosure may be performed in different orders and / or in parallel. Furthermore, the method embodiments may include additional steps and / or omit the steps shown. The scope of this disclosure is not limited in this respect.
[0032] The term "comprising" and its variations as used herein are open-ended inclusions, meaning "including but not limited to". The term "based on" means "at least partially based on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". Definitions of other terms will be given in the description below.
[0033] It should be noted that the concepts of "first" and "second" mentioned in this disclosure are used only to distinguish different devices, modules or units, and are not used to limit the order of functions performed by these devices, modules or units or their interdependencies.
[0034] It should be noted that the terms "a" and "a plurality of" used in this disclosure are illustrative rather than restrictive, and those skilled in the art should understand that, unless otherwise expressly indicated in the context, they should be understood as "one or more".
[0035] The names of messages or information exchanged between multiple devices in the embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of such messages or information.
[0036] It is understood that before using the technical solutions disclosed in the various embodiments of this disclosure, users should be informed of the types, scope of use, and usage scenarios of the personal information involved in this disclosure in an appropriate manner in accordance with relevant laws and regulations, and user authorization should be obtained.
[0037] For example, upon receiving a user's active request, a prompt message is sent to the user to explicitly inform them that the requested operation will require the acquisition and use of the user's personal information. This allows the user to independently choose whether to provide personal information to the software or hardware, such as the electronic device, application, server, or storage medium performing the operations of this disclosed technical solution, based on the prompt message.
[0038] As an optional but non-limiting implementation, in response to a user's active request, sending a prompt message to the user can be done via a pop-up window, where the prompt message can be presented in text format. Furthermore, the pop-up window can also include a selection control allowing the user to choose "agree" or "disagree" to provide personal information to the electronic device.
[0039] It is understood that the above notification and user authorization process are merely illustrative and do not constitute a limitation on the implementation of this disclosure. Other methods that comply with relevant laws and regulations may also be applied to the implementation of this disclosure.
[0040] It is understood that the data involved in this technical solution (including but not limited to the data itself, the acquisition or use of the data) shall comply with the requirements of relevant laws, regulations and related provisions.
[0041] Before introducing this technical solution, an example application scenario can be provided. This technical solution can be applied in scenarios where special effects rendering of the live stream is required. For example, in a live stream scenario, when a user is watching a streamer's live stream, a series of rendering objects during the live stream need to be rendered with special effects to push the rendered live stream to the user. In this case, the special effects rendering can be performed based on the technical solution provided in the embodiments of this disclosure.
[0042] To more clearly illustrate this technical solution, we will consider the user watching the live stream as the first object and the streamer as the second object. The execution process of this technical solution will be explained using a specific example. For instance, a first special effects rendering instance and a second special effects rendering instance can be pre-created. During the second object's live stream, the second object can add props to its own live stream, such as beauty filters, backgrounds, filters, stickers, etc. At this time, special effects rendering is required for the added props, and this rendering effect operation can be implemented based on the second special effects rendering instance. Simultaneously, the second object's client can capture the second object's live video stream in real time as a multimedia data stream and push the multimedia data stream to the first object's client. At this time, the multimedia data stream has no special effects added. The first object can gift virtual objects to the second object, such as virtual flowers, lollipops, ships, cars, or accessories, etc. At this time, the virtual object needs to be rendered in the multimedia data stream pushed to the first object's client, and this rendering effect operation can be implemented based on the first special effects rendering instance. It should be noted that the special effects rendering operation can be performed on the client or the server, as long as the executing entity has the execution function. There is no limitation on the specific executing entity. For specific special effects rendering methods, please refer to the following introduction of the technical solutions provided in the embodiments of this disclosure.
[0043] Figure 1 This is a flowchart illustrating a data processing method provided in an embodiment of the present disclosure. This embodiment is applicable to scenarios where special effects rendering of the live broadcast screen is required during live broadcasting. The method can be executed by a data processing device, which can be implemented in the form of software and / or hardware. Optionally, it can be implemented by an electronic device, such as a mobile terminal, a PC, or a server.
[0044] like Figure 1 As shown, the method in this embodiment may specifically include:
[0045] S110, In response to the data acquisition event sent by the first special effects rendering instance, acquire the usable rendering data corresponding to the data acquisition event and cache it.
[0046] The first special effects rendering instance is an instance that executes special effects rendering on a triggering operation of the first object. The triggering operation of the first object can be triggered when the first object interacts with the live streamer, such as when the first object watches the live stream, when the first object gifts a virtual object to the streamer, or when the first object posts a comment during the live stream. The operation can be one of browsing, clicking, touching, swiping, or dragging. A data acquisition event can be an event used to trigger data acquisition, allowing the listener to determine if usable rendering data is needed. Usable rendering data refers to the rendering process data generated by the second special effects rendering instance during special effects rendering. Rendering process data can refer to a series of intermediate and final data generated throughout the rendering process. For example, rendering process data includes, but is not limited to, detected environmental parameters such as lighting, shadows, reflections, and refractions in the live stream scene, relevant information about the user in the live stream (such as facial information, head information, clothing information, accessory information, etc.), and background information in the live stream. The second special effects rendering instance is an instance that executes special effects rendering on a triggering operation of the second object. The second object can be a user in the live stream or a user belonging to a live stream account. The second object's triggering action can be triggered when the streamer engages in interactive behavior during the live stream, such as when the streamer performs physical actions or adds props to the live stream. Both the first and second special effects rendering instances can include a series of rendering processes and implementation strategies designed for specific visual effect requirements.
[0047] In this embodiment, when the second object is detected to be interacting with the live stream, the second special effects rendering instance performs special effects rendering operations on the live stream previewed by the broadcaster, generating a series of rendering process data during the rendering process. When the first object interacts with the broadcaster, the first special effects rendering instance performs special effects rendering operations on the previewed live stream for the viewers. The server can consider that it has detected a data acquisition event from the first special effects rendering instance when it is detected rendering effects, or the first special effects rendering instance can actively send a data acquisition event to the server during its rendering process. When the server receives the data acquisition event from the first special effects rendering instance, it can retrieve the usable rendering data corresponding to the data acquisition event from the rendering process data generated by the second special effects rendering instance and cache the usable rendering data so that the first special effects rendering instance can use the usable rendering data during its rendering process, reducing rendering overhead.
[0048] It should be noted that, in order to ensure that the server can respond to the data acquisition events sent by the first special effects rendering instance in real time and accurately, and to ensure that the server can obtain usable rendering data from the second special effects rendering instance, a protocol layer can be deployed on the server to realize data communication between the server and the first and second special effects rendering instances.
[0049] Based on the above technical solution, the data processing method further includes: configuring a transmission protocol and reusable rendering attributes in the protocol layer; establishing communication between the first special effects rendering instance and the protocol layer, and establishing communication between the second special effects rendering instance and the protocol layer, so as to send the rendering process data generated by the second special effects rendering instance to the first special effects rendering instance based on the transmission protocol in the protocol layer, and performing verification processing on the usable rendering data received by the first special effects rendering instance based on the reusable rendering attributes.
[0050] The transport protocol can be the rules and conventions used to transmit data between two or more communicating entities. For example, the transport protocol can be a transmission control protocol (such as TCP), a user datagram protocol (such as UDP), a stream control transmission protocol (SCTP), or a real-time transport protocol (RTP), etc. Reusable rendering attributes can be the rules or strategies used to verify whether rendering process data can be reused. For example, reusable rendering attributes can include, but are not limited to, color, font, layout, time, etc.
[0051] Understandably, after configuring the transport protocol in the protocol layer, communication between the first effects rendering instance and the protocol layer, as well as communication between the second effects rendering instance and the protocol layer, can be established using the transport protocol. Simultaneously, reusable rendering attributes can be configured in the protocol layer. This allows, after obtaining the usable rendering data corresponding to the data acquisition event, the reusable rendering attributes to validate the usable rendering data. If the validation passes, the first effects rendering instance can use the usable rendering data for effects processing. For example, see [link to example]. Figure 2 It can distribute transmission protocols and reusable rendering attributes to the protocol layer based on the platform, and configure them within the protocol layer to achieve flexible protocol specification and distribution. Further details can be found in [link to relevant documentation]. Figure 3After creating the first special effects rendering instance, the second special effects rendering instance, and the protocol layer, the protocol layer is initialized. A callback function is enabled and added in the protocol layer to establish a communication connection with the first and second special effects rendering instances, thereby binding multiple instances to the protocol layer and starting the data communication link.
[0052] To clearly explain the relationship between the first special effects rendering instance, the second special effects rendering instance, and the protocol layer, please refer to [link / reference needed]. Figure 4 The technical solution provided in this embodiment establishes a new protocol layer between the first special effects rendering instance and the second special effects rendering instance, enabling data between the two instances to be relayed through the protocol layer. The protocol layer also performs verification and judgment, determining the form in which the data is consumed, shared, and controlled. This ensures both the efficiency and security of data transmission, as well as the accuracy of the special effects display.
[0053] S120. In response to the special effects rendering event, the usable rendering data is validated and processed according to the reusable rendering attributes, so that when the validation result meets the preset conditions, the usable rendering data is processed with special effects based on the first special effects rendering instance.
[0054] Among them, the special effects rendering event can be a custom event used to trigger the rendering of special effects.
[0055] In this embodiment, special effects rendering events can be pre-configured. For example, an event can be considered to have been detected when usable rendering data is acquired, when a special effects rendering instance is detected rendering special effects, or before the special effects are rendered to the screen. Alternatively, it can be considered to have been detected when a specified callback function is called after each frame of the live broadcast is rendered. When a special effects rendering event is detected, pre-configured reusable rendering attributes are obtained, and the usable rendering data is validated using these attributes. For example, if the live scene color in the usable rendering data is yellow, and the reusable rendering attribute is red, the validation is considered to have failed. Conversely, if the usable rendering data is the header position, and the reusable rendering attribute indicates that the header position supports reuse, the validation is considered to have passed. After obtaining the validation result of the usable rendering data, it can be determined whether the validation result matches the preset result (e.g., the preset result is "validation passed"). If so, the validation result is considered to meet the preset condition; otherwise, the validation result does not meet the preset condition. If the validation result meets the preset condition, the first special effects rendering instance is controlled to process the special effects of the usable rendering data.
[0056] For example, see [link to previous article] Figure 3When the first special effects rendering instance renders a virtual object, it can send a special effects rendering event to the protocol layer. After receiving the special effects rendering event, the protocol layer can verify the available rendering data. If the verification passes, it can control the first special effects rendering instance to perform special effects processing on the available rendering data.
[0057] To ensure the synchronization between the preview and the live stream and to guarantee the accuracy of the live stream display, during the verification process of reusable rendering data based on reusable rendering attributes, in response to events indicating that the reusable rendering data is valid and supports reuse, it is determined whether the rendering result of the reusable rendering data is consistent with the preset result; if so, the verification result of the reusable rendering data is determined to be verified as passed.
[0058] It's understandable that the live stream visuals dynamically change based on the streamer's body language, the actions of other participants, and the position of other objects within the live stream environment. Changes in the streamer's view will correspondingly change the view on the viewer's end. To ensure synchronization between the streamer's and viewer's views and avoid lag in viewer-side effects display, a reusable rendering attribute can be used to verify the validity of available rendering data. For example, the reusable rendering attribute could specify a valid frame. This attribute verifies whether the available rendering data corresponds to the rendering process data of the latest frame on the streamer's end. If so, the available rendering data is valid; otherwise, it is invalid. Furthermore, the reusable rendering attribute can also include whether the available rendering data of a second effects rendering instance can be reused by the first effects rendering instance. This allows verification that the available rendering data can be reused by the first effects rendering instance; if so, an event indicating that the available rendering data can be reused has been detected. Furthermore, when the available rendering data is valid and events indicating that the available rendering data supports reuse are detected, an algorithm can be used to detect whether there are any anomalies in the rendering result of the available rendering data. If there are no anomalies, it means that the rendering result is consistent with the preset result; if there are anomalies, it means that the rendering result is inconsistent with the preset result. When the rendering result of the available rendering data is consistent with the preset result, the verification result of the available rendering data is determined to be successful. By verifying the available rendering data and sending the verified available rendering data to the first special effects rendering instance for special effects rendering, not only can data synchronization between the viewer's interface and the live streaming interface be guaranteed, but the special effects display effect of the viewer's interface can also be guaranteed, thereby providing users with a better live streaming viewing experience.
[0059] For example, see Figure 5It can iterate through the reusable rendering data that supports reuse, determine whether the first effects rendering instance has already stored the reusable rendering data, and if so, determine whether the reusable rendering data is valid. If valid, determine whether the reusable rendering data supports reuse by the first effects rendering instance. If reuse is supported, mark the reusable rendering data as reusable. If the second effects rendering instance no longer produces the reusable rendering data, check whether the rendering result of the reusable rendering data has any effect abnormality. If the effect is abnormal, mark the status as abnormal; if the effect is normal, render and display it. For example, see... Figure 6 If a user triggers the action of gifting a virtual object, the rendering data can be used to process the virtual object's special effects to generate a rendering result. This rendering result is then compared with the rendering result of the virtual object itself, and the similarity between the two rendering results is calculated. If the similarity is less than a preset threshold, the rendering result of the rendering data is considered to be consistent with the preset result. If the similarity is not less than the preset threshold, the rendering result of the rendering data is considered to be inconsistent with the preset result.
[0060] In this embodiment, the special effects processing of the available rendering data based on the first special effects rendering instance includes: reusing the available rendering data when performing special effects rendering based on the first special effects rendering instance to generate a special effects rendering result corresponding to the triggering operation of the first object.
[0061] Specifically, when the first special effects rendering instance performs special effects rendering, it does not need to repeatedly calculate the usable rendering data. It can directly reuse the verified usable rendering data through rendering techniques such as shaders and textures to generate the special effects rendering result corresponding to the trigger operation of the first object. At this time, the special effects rendering result corresponds to the viewer's interface. This not only reduces the rendering calculation cost and improves the rendering speed and efficiency, but also ensures that the special effects rendering result is synchronized with the multimedia data stream in time, thus guaranteeing the accuracy of the special effects rendering.
[0062] For example, see [link to previous article] Figure 3 When the first special effects rendering instance performs special effects rendering, it can control the algorithm to run the rendering program and reuse the stored available rendering data. To clearly explain this technical solution, we will take the example of the first object's triggering operation being triggered when the first object gives a virtual object to the streamer. Assuming the virtual object is a wreath worn on the head, when rendering the wreath onto the streamer's head as a special effect, we can directly use the streamer's head information from the available rendering data to generate the special effects rendering result of the wreath being worn on the streamer's head.
[0063] S130. The special effects rendering result is fused with the multimedia data stream pushed to the target client to obtain the target video stream displayed on the target client.
[0064] The target client is the client corresponding to the first object, i.e., the viewer. The multimedia data stream is the multimedia data stream collected by the client corresponding to the second object. The multimedia data stream can be a data stream composed of at least one media type. For example, a multimedia data stream can be media data containing audio and video images.
[0065] In a live streaming scenario, the client corresponding to the second object is the broadcaster. The multimedia data stream can be the live video and audio information simultaneously presented on the broadcaster's end. The raw multimedia data stream can be captured from the broadcaster's end; this stream is un-effected and can be pushed to the target client. Then, video processing technology can be used to blend the rendered effects with the multimedia data stream. This process can include operations such as cropping, scaling, rotating, and adjusting transparency to ensure the rendered effects blend naturally into the live video. Once the target video stream is obtained, it can be displayed on the target client. This target video stream includes the blended effect of the rendered effects and the live video, allowing the first object to view the live content with the rendered effects through the target client interface.
[0066] In this embodiment, the special effects rendering result is fused with the multimedia data stream pushed to the target client to obtain the target video stream displayed on the target client. This includes rendering the special effects rendering result into the multimedia data stream and rendering it on the screen to obtain the target video stream displayed on the target client.
[0067] Specifically, it can parse the multimedia data stream pushed to the target client, use a graphics rendering engine to render the special effects rendering results into the multimedia data stream, generate special effects images, and display the special effects images on the screen to be displayed in the target video stream on the target client. The special effects rendering results are displayed to the user together with the live content, improving the special effects display effect.
[0068] The technical solution of this disclosure embodiment, in response to a data acquisition event sent by a first special effects rendering instance, acquires and caches usable rendering data corresponding to the data acquisition event. The first special effects rendering instance is an instance that performs special effects rendering on a trigger operation of a first object. The usable rendering data is the rendering process data generated by a second special effects rendering instance when performing special effects rendering. The second special effects rendering instance is an instance that performs special effects rendering on a trigger operation of a second object. In response to a special effects rendering event, the usable rendering data is validated based on reusable rendering attributes. When the validation result meets preset conditions, special effects processing is applied to the usable rendering data based on the first special effects rendering instance. The special effects rendering result is then fused with the multimedia data stream pushed to the target client to obtain a target video stream displayed on the target client. The target client is the client corresponding to the first object, and the multimedia data stream is the client corresponding to the second object. The client-side multimedia data stream addresses the problem of high computational load and low efficiency in existing technologies where all special effects rendering for the entire live stream is completed on the live streaming end. It achieves special effects rendering by having a first special effects rendering instance execute the trigger operation of a first object, and a second special effects rendering instance executes the trigger operation of the first object. This separates the rendering on the broadcaster's end from the rendering on the viewer's end. By separating the rendering tasks, when the first special effects rendering instance executes special effects rendering, it obtains the rendering process data generated by the second special effects rendering instance during its execution. Based on reusable rendering attributes, it verifies and processes the usable rendering data, enabling the reuse of some rendering process data between the two special effects rendering instances. This eliminates the need to repeatedly calculate rendering process data during special effects rendering, reducing computational load and improving rendering efficiency. Simultaneously, by using the verified usable rendering data for special effects processing, it ensures the effective display of special effects on the viewer's end.
[0069] Figure 7 This is a flowchart illustrating a data processing method provided in an embodiment of this disclosure. Based on the above embodiments, this embodiment further explains the process of "receiving and caching usable rendering data corresponding to the data acquisition event in response to a data acquisition event sent by a first special effects rendering instance." For detailed implementation methods, please refer to the detailed description of the embodiments of this disclosure. Technical features that are the same as or similar to those in the foregoing embodiments will not be repeated here.
[0070] like Figure 7 As shown, the method in this embodiment may specifically include:
[0071] S210. In response to the rendering event corresponding to the triggering operation of the first object, the first special effects rendering instance is invoked to send a data acquisition event to the protocol layer based on the first special effects rendering instance.
[0072] Among them, the rendering event can be an event that triggers the function control that gives away virtual objects.
[0073] In this embodiment, an event listener can be pre-configured to monitor events from the target client interface, sensors, or other input sources. When a triggering operation related to the first object is detected (such as a click, touch, or voice command), the event listener captures this triggering event. When this triggering event is a rendering event, the system invokes the first effects rendering instance. After invoking the first effects rendering instance, the first effects rendering instance needs to perform effects rendering. Before this, the first effects rendering instance can send a data acquisition event to the protocol layer to request the data required for effects rendering, i.e., to request usable rendering data.
[0074] For example, see [link to previous article] Figure 3 This example illustrates how a first object can gift a virtual object to a second object. The target client interface displays a gift control corresponding to the virtual object. The first object can trigger the gifting function by clicking the gift control or entering its shortcut key. This triggering operation instructs the first special effects rendering instance to execute the special effects rendering task corresponding to the virtual object; that is, the triggering event is a rendering event. In other words, when this triggering operation is detected, the first special effects rendering instance is invoked to execute the special effects rendering task corresponding to the virtual object, at which point a data acquisition event is sent to the protocol layer.
[0075] S220. In response to the data acquisition event, retrieve the usable rendering data corresponding to the data acquisition event from the cache space corresponding to the second special effects rendering instance, and feed back the usable rendering data to the first special effects rendering instance for caching in the cache space corresponding to the first special effects rendering instance.
[0076] The data acquisition event includes a rendering data acquisition list corresponding to the triggering operation of the first object. This allows the protocol layer to retrieve usable rendering data from the list after receiving the data acquisition event, facilitating efficient special effects rendering and display. The rendering data acquisition list includes a rendering identifier to be acquired for each piece of rendering data. The cache space corresponding to the second special effects rendering instance includes a cached rendering list corresponding to the triggering operation of the second object, which in turn includes cached rendering identifiers for each piece of rendering process data. The rendering identifier to be acquired is used to characterize the uniqueness of the rendering data, which refers to the rendering data currently needed. The cached rendering identifier is used to characterize the uniqueness of the rendering process data, which is the result data generated during the rendering process.
[0077] In this embodiment, a data acquisition event can be sent to the protocol layer when the first special effects rendering instance needs the data required for the special effects, or when the first special effects rendering instance starts executing special effects rendering. When the protocol layer receives the data acquisition event, it can parse the rendering data acquisition list corresponding to the triggering operation of the first object in the data acquisition event. Further, the protocol layer can search for a cached rendering identifier that matches the rendering identifier to be acquired corresponding to each rendering data in the rendering data acquisition list from the cache space corresponding to the second special effects rendering instance, and use the rendering process data corresponding to the found cached rendering identifier as usable rendering data. Then, the usable rendering data can be fed back to the first special effects rendering instance. At this time, this usable rendering data is the data required by the first special effects rendering instance to execute special effects rendering. In order to avoid high concurrency issues, the usable rendering data can be cached in the cache space corresponding to the first special effects rendering instance, so that the first special effects rendering instance can execute special effects rendering and call it from its own cache space at any time, which helps to reduce the response time of requests for the same data in the future and improve rendering efficiency.
[0078] In this embodiment, in response to a data acquisition event, usable rendering data corresponding to the data acquisition event is acquired from the cache space corresponding to the second special effects rendering instance, including: determining the rendering process data to be used that matches the rendering identifier to be acquired based on the cache rendering identifier corresponding to each rendering process data in the cache rendering list and the rendering identifier to be acquired in the rendering data acquisition list; and using the rendering process data to be used as usable rendering data.
[0079] Specifically, each rendering identifier to be retrieved in the cached rendering list can be traversed. For each identifier, a matching cached rendering identifier can be found in the rendering data retrieval list. If a matching cached rendering identifier is found, it means that rendering process data exists in the rendering data retrieval list that can meet the current rendering needs of the first effects rendering instance. The rendering process data corresponding to the matching cached rendering identifier can be used as the rendering process data to be used, consistent with the rendering identifier to be retrieved. Furthermore, the rendering process data to be used can be marked as usable rendering data, so that usable rendering data can be used by the first effects rendering instance for subsequent rendering operations, improving rendering efficiency.
[0080] S230. In response to the special effects rendering event, perform verification processing on the usable rendering data based on the reusable rendering attributes, so that when the verification result meets the preset conditions, perform special effects processing on the usable rendering data based on the first special effects rendering instance.
[0081] S240. The special effects rendering result is fused with the multimedia data stream pushed to the target client to obtain the target video stream displayed on the target client.
[0082] The technical solution of this disclosure embodiment calls a first special effects rendering instance when a trigger operation of a first object is detected. Based on the first special effects rendering instance, a data acquisition event is sent to the protocol layer. In response to the data acquisition event, usable rendering data corresponding to the data acquisition event is obtained from the cache space corresponding to the second special effects rendering instance. The usable rendering data is then fed back to the first special effects rendering instance and cached in the cache space corresponding to the first special effects rendering instance. This allows the first special effects rendering instance to obtain the data from the cache space during special effects rendering, thereby improving data processing efficiency and rendering efficiency.
[0083] Figure 8 This is a schematic diagram of the structure of a data processing apparatus provided in an embodiment of the present disclosure, as shown below. Figure 8 As shown, the device includes: a rendering data acquisition module 310, a special effects processing module 320, and a target video stream determination module 330.
[0084] The system includes a rendering data acquisition module 310, which responds to a data acquisition event sent by a first special effects rendering instance, acquires and caches the rendering data corresponding to the data acquisition event, wherein the first special effects rendering instance is an instance that performs special effects rendering on a trigger operation of a first object, and the rendering data is the rendering process data generated by a second special effects rendering instance when performing special effects rendering, wherein the second special effects rendering instance is an instance that performs special effects rendering on a trigger operation of a second object; a special effects processing module 320, which responds to a special effects rendering event, verifies the rendering data based on reusable rendering attributes, and performs special effects processing on the rendering data based on the first special effects rendering instance when the verification result meets preset conditions; and a target video stream determination module 330, which merges the special effects rendering result with the multimedia data stream pushed to the target client to obtain a target video stream displayed on the target client, wherein the target client is the client corresponding to the first object, and the multimedia data stream is the multimedia data stream collected by the client corresponding to the second object.
[0085] Optionally, based on the above-described apparatus, the apparatus may further include:
[0086] A configuration module is used to configure the transport protocol and the reusable rendering attributes in the protocol layer;
[0087] The communication establishment module is used to establish communication between the first special effects rendering instance and the protocol layer, and to establish communication between the second special effects rendering instance and the protocol layer, so as to send the rendering process data generated by the second special effects rendering instance to the first special effects rendering instance based on the transmission protocol in the protocol layer, and to perform verification processing on the usable rendering data received by the first special effects rendering instance based on the reusable rendering attributes.
[0088] Optionally, based on the above-described apparatus, the rendering data acquisition module 310 may include:
[0089] An instance invocation unit is used to invoke the first special effects rendering instance in response to a rendering event corresponding to the triggering operation of the first object, so as to send the data acquisition event to the protocol layer based on the first special effects rendering instance;
[0090] The data feedback unit is used to respond to the data acquisition event, obtain usable rendering data corresponding to the data acquisition event from the cache space corresponding to the second special effects rendering instance, and feed back the usable rendering data to the first special effects rendering instance so as to cache it in the cache space corresponding to the first special effects rendering instance.
[0091] Optionally, based on the above-mentioned device, the data acquisition event includes a rendering data acquisition list corresponding to the triggering operation of the first object, the rendering data acquisition list includes a rendering identifier to be acquired corresponding to each rendering data, and the cache space corresponding to the second special effects rendering instance includes a cache rendering list corresponding to the triggering operation of the second object, the cache rendering list includes a cache rendering identifier corresponding to each rendering process data.
[0092] Based on the above-mentioned device, optionally, the data feedback unit includes:
[0093] The rendering process data determination unit is used to determine the rendering process data to be used that matches the rendering identifier to be acquired, based on the cache rendering identifier corresponding to each rendering process data in the cache rendering list and the rendering identifier to be acquired in the rendering data acquisition list.
[0094] A rendering data determination unit can be used to determine the rendering process data to be used as the rendering data that can be used.
[0095] Based on the above device, optionally, the special effects processing module 320 is used to determine whether the rendering result of the usable rendering data is consistent with the preset result in response to an event that the usable rendering data is valid and the usable rendering data supports reuse; if so, the verification result of the usable rendering data is determined to be verified as passed.
[0096] Based on the above-mentioned device, optionally, the special effects processing module 320 is used to reuse the available rendering data when performing special effects rendering based on the first special effects rendering instance, so as to generate a special effects rendering result corresponding to the triggering operation of the determining unit for the first object.
[0097] Based on the above-mentioned device, optionally, a target video stream determination module 330 is used to render the special effects rendering result into the multimedia data stream and render it on the screen to obtain a target video stream displayed on the target client.
[0098] The technical solution of this disclosure embodiment, in response to a data acquisition event sent by a first special effects rendering instance, acquires and caches usable rendering data corresponding to the data acquisition event. The first special effects rendering instance is an instance that performs special effects rendering on a trigger operation of a first object. The usable rendering data is the rendering process data generated by a second special effects rendering instance when performing special effects rendering. The second special effects rendering instance is an instance that performs special effects rendering on a trigger operation of a second object. In response to a special effects rendering event, the usable rendering data is verified based on reusable rendering attributes. When the verification result meets preset conditions, special effects processing is performed on the usable rendering data based on the first special effects rendering instance. The special effects rendering result is fused with the multimedia data stream pushed to the target client to obtain a target video stream displayed on the target client. The target client is the client corresponding to the first object, and the multimedia data stream is the client corresponding to the second object. The acquired multimedia data stream addresses the problem of high rendering computation and low efficiency in existing technologies where the entire live stream's special effects are rendered on the live streaming end. It achieves special effects rendering by having a first special effects rendering instance execute the trigger operation of a first object, and a second special effects rendering instance executes the trigger operation of the first object. This separates the rendering on the broadcaster's end from the rendering on the viewer's end. By separating the rendering tasks, when the first special effects rendering instance executes special effects rendering, it acquires the rendering process data generated by the second special effects rendering instance during its execution. Based on reusable rendering attributes, it verifies and processes the usable rendering data, enabling the reuse of some rendering process data between the two special effects rendering instances. This eliminates the need to repeatedly calculate rendering process data during special effects rendering, reducing the rendering computation load and improving rendering efficiency. Simultaneously, by using the verified and processed usable rendering data for special effects processing, it ensures the effective display of special effects on the viewer's end.
[0099] The environment map generation apparatus provided in this disclosure can execute the data processing method provided in any embodiment of this disclosure, and has the corresponding functional modules and beneficial effects of executing the method.
[0100] It is worth noting that the various units and modules included in the above-mentioned device are only divided according to functional logic, but are not limited to the above division, as long as the corresponding functions can be realized; in addition, the specific names of each functional unit are only for easy differentiation and are not used to limit the protection scope of the embodiments of this disclosure.
[0101] like Figure 9 As shown, electronic device 400 may include a processing device (e.g., a central processing unit, a graphics processor, etc.) 401, which can perform various appropriate actions and processes according to a program stored in read-only memory (ROM) 402 or a program loaded from storage device 408 into random access memory (RAM) 403. RAM 403 also stores various programs and data required for the operation of electronic device 400. Processing device 401, ROM 402, and RAM 403 are interconnected via bus 404. Input / output (I / O) interface 405 is also connected to bus 404.
[0102] Typically, the following devices can be connected to I / O interface 405: input devices 406 including, for example, touchscreens, touchpads, keyboards, mice, cameras, microphones, accelerometers, gyroscopes, etc.; output devices 407 including, for example, liquid crystal displays (LCDs), speakers, vibrators, etc.; storage devices 408 including, for example, magnetic tapes, hard disks, etc.; and communication devices 409. Communication device 409 allows electronic device 400 to communicate wirelessly or wiredly with other devices to exchange data. Although Figure 9 An electronic device 400 with various devices is shown; however, it should be understood that it is not required to implement or possess all of the devices shown. More or fewer devices may be implemented or possessed alternatively.
[0103] In particular, according to embodiments of this disclosure, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of this disclosure include a computer program product comprising a computer program carried on a non-transitory computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via communication device 409, or installed from storage device 408, or installed from ROM 402. When the computer program is executed by processing device 401, it performs the functions defined in the methods of embodiments of this disclosure.
[0104] The names of messages or information exchanged between multiple devices in the embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of such messages or information.
[0105] The electronic device provided in this disclosure and the data processing method provided in the above embodiments belong to the same inventive concept. Technical details not described in detail in this disclosure can be found in the above embodiments, and this embodiment has the same beneficial effects as the above embodiments.
[0106] This disclosure provides a computer storage medium storing a computer program that, when executed by a processor, implements the data processing method provided in the above embodiments.
[0107] It should be noted that the computer-readable medium described in this disclosure can be a computer-readable signal medium or a computer-readable storage medium, or any combination thereof. A computer-readable storage medium can be, for example,—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of a computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this disclosure, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in connection with an instruction execution system, apparatus, or device. In this disclosure, a computer-readable signal medium can include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A computer-readable signal medium can be any computer-readable medium other than a computer-readable storage medium, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to: wires, optical fibers, RF (radio frequency), etc., or any suitable combination thereof.
[0108] In some implementations, clients and servers can communicate using any currently known or future-developed network protocol such as HTTP (Hypertext Transfer Protocol) and can interconnect with digital data communication (e.g., communication networks) of any form or medium. Examples of communication networks include local area networks (“LANs”), wide area networks (“WANs”), the Internet (e.g., the Internet of Things), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks), as well as any currently known or future-developed networks.
[0109] The aforementioned computer-readable medium may be included in the aforementioned electronic device; or it may exist independently and not assembled into the electronic device.
[0110] The aforementioned computer-readable medium carries one or more programs. When the electronic device executes the one or more programs, the electronic device causes the following to occur: In response to a data acquisition event sent by a first special effects rendering instance, the electronic device acquires and caches usable rendering data corresponding to the data acquisition event, wherein the first special effects rendering instance is an instance that performs special effects rendering on a trigger operation of a first object, and the usable rendering data is rendering process data generated by a second special effects rendering instance when performing special effects rendering, and the second special effects rendering instance is an instance that performs special effects rendering on a trigger operation of a second object; In response to a special effects rendering event, the electronic device verifies the usable rendering data according to reusable rendering attributes, and when the verification result meets preset conditions, performs special effects processing on the usable rendering data based on the first special effects rendering instance; The electronic device merges the special effects rendering result with a multimedia data stream pushed to a target client to obtain a target video stream displayed on the target client, wherein the target client is the client corresponding to the first object, and the multimedia data stream is the multimedia data stream collected by the client corresponding to the second object.
[0111] Computer program code for performing the operations of this disclosure can be written in one or more programming languages or a combination thereof, including but not limited to object-oriented programming languages such as Java, Smalltalk, and C++, as well as conventional procedural programming languages such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including a local area network (LAN) or a wide area network (WAN)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0112] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0113] The units described in the embodiments of this disclosure can be implemented in software or in hardware. The name of a unit does not necessarily limit the unit itself; for example, the first acquisition unit can also be described as "a unit that acquires at least two Internet Protocol addresses".
[0114] The functions described above in this document can be performed, at least in part, by one or more hardware logic components. For example, exemplary types of hardware logic components that can be used, without limitation, include: Field Programmable Gate Arrays (FPGAs), Application-Specific Integrated Circuits (ASICs), Application Standard Products (ASSPs), System-on-Chip (SoCs), Complex Programmable Logic Devices (CPLDs), and so on.
[0115] In the context of this disclosure, a machine-readable medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
[0116] The above description is merely a preferred embodiment of this disclosure and an explanation of the technical principles employed. Those skilled in the art should understand that the scope of this disclosure is not limited to technical solutions formed by specific combinations of the above-described technical features, but should also cover other technical solutions formed by arbitrary combinations of the above-described technical features or their equivalents without departing from the above-described concept. For example, technical solutions formed by substituting the above features with (but not limited to) technical features disclosed in this disclosure that have similar functions.
[0117] Furthermore, while the operations are described in a specific order, this should not be construed as requiring these operations to be performed in the specific order shown or in a sequential order. In certain environments, multitasking and parallel processing may be advantageous. Similarly, while several specific implementation details are included in the above discussion, these should not be construed as limiting the scope of this disclosure. Certain features described in the context of individual embodiments may also be implemented in combination in a single embodiment. Conversely, various features described in the context of a single embodiment may also be implemented individually or in any suitable sub-combination in multiple embodiments.
[0118] Although the subject matter has been described using language specific to structural features and / or methodological logic, it should be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or actions described above. Rather, the specific features and actions described above are merely illustrative examples of implementing the claims.
Claims
1. A data processing method, characterized by, The method comprises: in response to a data acquisition event sent by a first special effect rendering instance, acquiring and caching usable rendering data corresponding to the data acquisition event, wherein the first special effect rendering instance is an instance of performing special effect rendering on a trigger operation of a first object, the usable rendering data is rendering process data generated by a second special effect rendering instance when performing special effect rendering, and the second special effect rendering instance is an instance of performing special effect rendering on a trigger operation of a second object; in response to a special effect rendering event, performing verification processing on the usable rendering data according to reusable rendering attributes, so that when a verification result meets a preset condition, the first special effect rendering instance performs special effect processing on the usable rendering data; fusing a special effect rendering result with a multimedia data stream pushed to a target client to obtain a target video stream displayed on the target client, wherein the target client is a client corresponding to the first object, and the multimedia data stream is a multimedia data stream collected by a client corresponding to the second object.
2. The method of claim 1, wherein, The method further comprises: configuring a transmission protocol and the reusable rendering attributes in a protocol layer; establishing communication between the first special effect rendering instance and the protocol layer, and establishing communication between the second special effect rendering instance and the protocol layer, so as to send rendering process data generated by the second special effect rendering instance to the first special effect rendering instance based on the transmission protocol in the protocol layer, and perform verification processing on usable rendering data received by the first special effect rendering instance based on the reusable rendering attributes.
3. The method of claim 2, wherein, The method further comprises: in response to a rendering event corresponding to a trigger operation of the first object, calling the first special effect rendering instance to send the data acquisition event to the protocol layer based on the first special effect rendering instance; in response to the data acquisition event, acquiring usable rendering data corresponding to the data acquisition event from a cache space corresponding to the second special effect rendering instance, and feeding back the usable rendering data to the first special effect rendering instance for caching in a cache space corresponding to the first special effect rendering instance.
4. The method of claim 3, wherein, The data acquisition event includes a rendering data acquisition list corresponding to the trigger operation of the first object, the rendering data acquisition list includes a to-be-acquired rendering identifier corresponding to each rendering data, and the cache space corresponding to the second special effect rendering instance includes a cache rendering list corresponding to the trigger operation of the second object, the cache rendering list includes a cache rendering identifier corresponding to each rendering process data.
5. The method of claim 4, wherein, The method further comprises: in response to the data acquisition event, acquiring usable rendering data corresponding to the data acquisition event from a cache space corresponding to the second special effect rendering instance, and feeding back the usable rendering data to the first special effect rendering instance for caching in a cache space corresponding to the first special effect rendering instance. According to the cache rendering identifier corresponding to each rendering process data in the cache rendering list and the to-be-acquired rendering identifier in the rendering data acquisition list, determine the to-be-used rendering process data consistent with the to-be-acquired rendering identifier; The to-be-used rendering process data is used as the usable rendering data.
6. The method of claim 1, wherein, The verification processing of the usable rendering data according to the reusable rendering attribute includes: For the usable rendering data, in response to the event that the usable rendering data is valid and the usable rendering data supports reuse, determine whether the rendering result of the usable rendering data is consistent with a preset result; If yes, it is determined that the verification result of the usable rendering data is passed.
7. The method of claim 1, wherein, The special effect processing of the usable rendering data based on the first special effect rendering instance includes: When performing special effect rendering based on the first special effect rendering instance, the usable rendering data is reused to generate a special effect rendering result corresponding to the trigger operation of the first object.
8. The method of claim 1, wherein, The special effect rendering result is fused with the multimedia data stream pushed to the target client to obtain a target video stream displayed on the target client. The special effect rendering result is rendered into the multimedia data stream and is rendered on screen to obtain a target video stream displayed on the target client.
9. A data processing apparatus, characterized by, It includes: The usable rendering data acquisition module is configured to acquire usable rendering data corresponding to a data acquisition event sent by a first special effect rendering instance and cache the usable rendering data in response to the data acquisition event, wherein the first special effect rendering instance is an instance of performing special effect rendering on a trigger operation of a first object, the usable rendering data is rendering process data generated by a second special effect rendering instance when performing special effect rendering, and the second special effect rendering instance is an instance of performing special effect rendering on a trigger operation of a second object. The special effect processing module is configured to verify the usable rendering data according to a reusable rendering attribute in response to a special effect rendering event, and perform special effect processing on the usable rendering data based on the first special effect rendering instance when the verification result meets a preset condition. The target video stream determination module is configured to fuse a special effect rendering result with a multimedia data stream pushed to a target client to obtain a target video stream displayed on the target client, wherein the target client is a client corresponding to the first object, and the multimedia data stream is a multimedia data stream collected by a client corresponding to the second object.
10. An electronic device, comprising: The electronic device includes: One or more processors; A storage device for storing one or more programs, When the one or more programs are executed by the one or more processors, the one or more processors implement the data processing method of any one of claims 1-8.
11. A storage medium containing computer-executable instructions, wherein: The computer executable instructions, when executed by a computer processor, are used to perform the data processing method of any one of claims 1-8.
12. A computer program product comprising a computer program, characterized in that, The computer program, when executed by a processor, implements the data processing method of any one of claims 1-8.