Application generation method, data processing method and apparatus
Patent Information
- Application Number
- CN202310149805.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-02-16
- Publication Date
- 2026-09-15
- Estimated Expiration
- 2043-02-16
AI Technical Summary
在设备采集用户的音视频数据流并传输成画面及声音的过程中,为了满足一些日常需求,用户可能会对音视频数据流进行相关处理,如添加图片背景、修改声音等,但是用户在使用目前的会议应用时,只能够基于会议应用中通用的素材对音视频数据进行修改,无法满足用户想要使用自己的素材进行个性化修改的需求
[0038] One embodiment of this specification implements a method to obtain the data processing type in a data processing request submitted by a user based on a data fusion application. Based on the data processing type, it determines which type of data processing the user intends to perform on the media stream data, identifies the data to be fused and the corresponding data information, and then merges the data to be fused with the media stream data based on the data information. This achieves the effect of merging user-defined data to be fused with media stream data according to the user-set data information, enabling users to personalize their media stream data. This provides users with a customizable data fusion application to meet the data processing needs of different users.
Smart Images

Figure CN116301769B_ABST
Abstract
Description
Technical Field
[0001] This specification relates to the field of multimedia data processing technology, and particularly to application generation methods and data processing methods. One or more embodiments of this specification also relate to application generation apparatus, data processing apparatus, a computing device, and a computer-readable storage medium. Background Technology
[0002] With the rapid development of internet technology, more and more companies are supporting remote work for their employees, which involves remote video conferencing. Currently, remote video conferencing products still largely rely on the internet's ability to connect various mobile devices or image capture devices across geographical boundaries to meet the needs of remote meetings. During the process of capturing users' audio and video data streams and transmitting them as video and audio, users may process the audio and video data streams to meet some daily needs, such as adding background images or modifying audio. However, when using current conferencing applications, users can only modify audio and video data based on commonly used materials within the application, failing to meet the needs of users who want to personalize their content with their own materials. Therefore, how to provide users with an application that allows for personalized modification of media stream data, enabling users to enhance media stream data based on proprietary materials, is a pressing issue that needs to be addressed. Summary of the Invention
[0003] In view of this, embodiments of this specification provide application generation methods and data processing methods. One or more embodiments of this specification also relate to application generation apparatus, data processing apparatus, a computing device, a computer-readable storage medium, and a computer program, to address technical deficiencies in the prior art.
[0004] According to a first aspect of the embodiments of this specification, an application generation method is provided, comprising:
[0005] Receive application development instructions for the target program and create an application development project corresponding to the application development instructions;
[0006] The application script file that receives the associated application development instructions is written into the application development project;
[0007] In the resource database corresponding to the target program, determine the calling interface corresponding to the application script file;
[0008] The configuration parameters of the calling interface are updated in the application development project, and a data fusion application is generated based on the updated application development project.
[0009] According to a second aspect of the embodiments of this specification, a data processing method is provided, comprising:
[0010] Collect media stream data from users participating in video conferences;
[0011] Receive data processing requests submitted by the participating users through the data fusion application, wherein the data processing request includes data processing type and user identification information corresponding to the participating users;
[0012] The data to be fused and the corresponding data information to be fused are determined based on the data processing type and the user identification information.
[0013] Based on the data to be merged, the data to be merged and the media stream data are merged to obtain the target media stream data corresponding to the participating user.
[0014] According to a third aspect of the embodiments of this specification, a data processing method is provided, comprising:
[0015] Collect first media stream data associated with a first participating user in a video conference, and receive second media stream data associated with a second participating user, wherein the first media stream data includes first display material carrying a first user identifier, and the second media stream data includes second display material carrying a second user identifier;
[0016] A first video frame containing the first display material is generated based on the first media stream data, and a second video frame containing the second display material is generated based on the second media stream data.
[0017] The video conference screen containing the first video feed and the second video feed is displayed to the first participating user.
[0018] According to a fourth aspect of the embodiments of this specification, an application generation apparatus is provided, comprising:
[0019] The module is configured to receive application development instructions for the target program and create the application development project corresponding to the application development instructions.
[0020] The writing module is configured to receive application script files associated with application development instructions and write the application script files into the application development project;
[0021] The determination module is configured to determine the calling interface corresponding to the application script file in the resource database corresponding to the target program.
[0022] The update module is configured to update the configuration parameters of the calling interface in the application development project, and generate a data fusion application based on the updated application development project.
[0023] According to a fifth aspect of the embodiments of this specification, a data processing apparatus is provided, comprising:
[0024] The acquisition module is configured to acquire media stream data from users participating in video conferences;
[0025] The receiving module is configured to receive data processing requests submitted by the participating users through the data fusion application, wherein the data processing request includes a data processing type and user identification information corresponding to the participating user;
[0026] The determination module is configured to determine the data to be fused and the corresponding data information to be fused based on the data processing type and the user identification information.
[0027] The fusion module is configured to fuse the data to be fused and the media stream data based on the data information to be fused, so as to obtain the target media stream data corresponding to the participating user.
[0028] According to a sixth aspect of the embodiments of this specification, a data processing apparatus is provided, comprising:
[0029] The acquisition module is configured to acquire first media stream data associated with a first participating user in a video conference, and receive second media stream data associated with a second participating user, wherein the first media stream data includes first display material carrying a first user identifier, and the second media stream data includes second display material carrying a second user identifier;
[0030] The generation module is configured to generate a first video frame containing the first display material based on the first media stream data, and to generate a second video frame containing the second display material based on the second media stream data;
[0031] The display module is configured to display a video conference screen containing the first video screen and the second video screen to the first participating user.
[0032] According to a seventh aspect of an embodiment of this specification, a computing device is provided, including a memory, a processor, and computer instructions stored in the memory and executable on the processor, wherein the processor executes the computer instructions to implement the steps of the data processing method.
[0033] According to an eighth aspect of an embodiment of this specification, a computer-readable storage medium is provided that stores computer instructions which, when executed by a processor, implement the steps of the data processing method.
[0034] According to a ninth aspect of the embodiments of this specification, a computer program is provided, wherein when the computer program is executed in a computer, it causes the computer to perform the steps of the above-described data processing method.
[0035] The application generation method provided in this specification includes: receiving an application development instruction for a target program and creating an application development project corresponding to the application development instruction; receiving an application script file associated with the application development instruction and writing the application script file into the application development project; determining the calling interface corresponding to the application script file in the resource database corresponding to the target program; updating the configuration parameters of the calling interface in the application development project, and generating a data fusion application based on the updated application development project.
[0036] One embodiment of this specification implements the generation of a data fusion application by selecting the corresponding calling interface for the application script file from the resource database corresponding to the target program and updating the configuration parameters of the calling interface. Based on the resource database corresponding to the target program provided by the project party, the calling interface used by the data fusion application is selected and the configuration parameters are updated, thereby developing an application that allows users to perform data fusion. This provides users with a function to modify media stream data, meeting user needs.
[0037] The data processing method provided in this specification includes: collecting media stream data of participating users in a video conference; receiving a data processing request submitted by the participating user through a data fusion application, wherein the data processing request includes a data processing type and user identification information corresponding to the participating user; determining the data to be fused and the corresponding data information to be fused based on the data processing type and the user identification information; and fusing the data to be fused and the media stream data based on the data information to be fused to obtain the target media stream data corresponding to the participating user.
[0038] One embodiment of this specification implements a method to obtain the data processing type in a data processing request submitted by a user based on a data fusion application. Based on the data processing type, it determines which type of data processing the user intends to perform on the media stream data, identifies the data to be fused and the corresponding data information, and then merges the data to be fused with the media stream data based on the data information. This achieves the effect of merging user-defined data to be fused with media stream data according to the user-set data information, enabling users to personalize their media stream data. This provides users with a customizable data fusion application to meet the data processing needs of different users. Attached Figure Description
[0039] Figure 1This is a schematic diagram of the structure of an application generation method provided in one embodiment of this specification;
[0040] Figure 2 This is a flowchart illustrating an application generation method provided in one embodiment of this specification;
[0041] Figure 3 This is a flowchart illustrating the processing steps of an application generation method provided in one embodiment of this specification.
[0042] Figure 4 This is a schematic diagram of the structure of a data processing method provided in one embodiment of this specification;
[0043] Figure 5 This is a flowchart illustrating a data processing method provided in one embodiment of this specification;
[0044] Figure 6 This is a schematic diagram illustrating the effect of image fusion in a data processing method provided in one embodiment of this specification;
[0045] Figure 7A This is a flowchart illustrating the processing procedure of a data processing method provided in one embodiment of this specification.
[0046] Figure 7B This is a schematic diagram of a video conferencing scenario in a data processing method provided in one embodiment of this specification;
[0047] Figure 7C This is a flowchart illustrating the processing procedure of a data processing method provided in one embodiment of this specification.
[0048] Figure 8 This is a schematic diagram of the structure of an application generation device provided in one embodiment of this specification;
[0049] Figure 9 This is a schematic diagram of the structure of a data processing apparatus provided in one embodiment of this specification;
[0050] Figure 10 This is a structural block diagram of a computing device provided in one embodiment of this specification. Detailed Implementation
[0051] Many specific details are set forth in the following description to provide a full understanding of this specification. However, this specification can be implemented in many other ways than those described herein, and those skilled in the art can make similar extensions without departing from the spirit of this specification. Therefore, this specification is not limited to the specific implementations disclosed below.
[0052] The terminology used in one or more embodiments of this specification is for the purpose of describing particular embodiments only and is not intended to be limiting of the one or more embodiments of this specification. The singular forms “a,” “described,” and “the” as used in one or more embodiments of this specification and the appended claims are also intended to include the plural forms unless the context clearly indicates otherwise. It should also be understood that the term “and / or” as used in one or more embodiments of this specification refers to any or all possible combinations including one or more of the associated listed items.
[0053] It should be understood that although the terms first, second, etc., may be used to describe various information in one or more embodiments of this specification, such information should not be limited to these terms. These terms are only used to distinguish information of the same type from one another. For example, first may also be referred to as second without departing from the scope of one or more embodiments of this specification, and similarly, second may also be referred to as first. Depending on the context, the word "if" as used herein may be interpreted as "when," "when," or "in response to a determination."
[0054] First, the terms and concepts used in one or more embodiments of this specification will be explained.
[0055] SDK: Software Development Kit, is a collection of development tools provided to developers when building application software;
[0056] API: Application Program Interface, a standard set of instructions that an application can use to exchange information and commands with a computer's operating system.
[0057] Toolbox: After developers upload their micro-applications, the toolbox will appear, and users can select tools from it to use.
[0058] Media enhancement: Modifying and supplementing the media captured by the hardware by adding images, videos, and audio materials.
[0059] With the development of internet technology, remote conferencing for working from home has been adopted by many companies. Remote conferencing involves capturing the audio and video of each participant and displaying it to other participants to ensure the smooth running of the meeting. Currently, many conferencing software products exist to meet users' basic online communication needs. However, as usage scenarios and user needs become increasingly complex, current conferencing software products are no longer sufficient. Most current audio and video conferencing media streams for participating users typically only contain captured video and audio from the microphone; users cannot modify the media stream themselves, thus failing to meet various personalized needs.
[0060] Based on this, this specification provides a data processing method for providing users with the function of personalized modification of media stream data, thereby meeting various personalized needs of users. This specification also relates to a data processing apparatus, a computing device, a computer-readable storage medium, and a computer program, which will be described in detail in the following embodiments.
[0061] Figure 1 This diagram illustrates a structural schematic of an application generation method according to an embodiment of this specification. After receiving application requirements submitted by a user, the developer develops corresponding functionalities within the target program to meet the user's needs. The developer uses a development client to develop the application. First, the developer sends application development instructions to the client, which may include instructions for creating an application development project. Upon receiving these instructions, the client creates the corresponding application development project. This project can be understood as a newly created project within the development software corresponding to the application to be developed. By configuring the application development project, the application required by the user is developed. The developer writes application script files into the application development project and selects the corresponding API calls from the target program's existing resource database. This allows the application script files to implement relevant functionalities by calling these API calls. Therefore, to meet users' application development needs, the configuration parameters of the API call can be updated during application development. Updating these parameters includes granting the application access to the API. Furthermore, to personalize the user's data, the user-provided fusion data can be added to the API's configuration parameters. For example, if a user wants to add a voice changer function to a video conferencing application, developers can create a data fusion application. This application can call a media stream acquisition interface to collect video and audio data streams from the user's client device, and then call an audio fusion interface to fuse the collected user audio with preset audio parameters, thus achieving voice changing. By leveraging the resource database provided by the target application provider, API calls can be directly accessed, facilitating application development. Additionally, the user-provided fusion data can be updated to the API's configuration parameters, allowing for the development of personalized data fusion applications tailored to the user's needs for media stream data fusion.
[0062] Figure 2 A flowchart of an application generation method according to an embodiment of this specification is shown, including steps 202 to 208.
[0063] Step 202: Receive application development instructions for the target program and create the application development project corresponding to the application development instructions.
[0064] In this context, application development instructions can be understood as development commands issued by developers to the development client. The development client can be understood as a device capable of running software application development, including but not limited to smart devices such as computers and mobile phones. The development client must provide the application development environment and have the corresponding development tools installed. Once developers receive the application development requirements submitted by the application user, they will proceed with application development according to those requirements.
[0065] In practical applications, developers first create the corresponding application development project using the client development tools. The application development project can be understood as a framework provided by the development tools for application development. Developers can adjust and configure the application development project to complete the development of application functions.
[0066] In a specific embodiment of this specification, a company has a requirement to modify the video feed during video conferences. For example, it might automatically play company promotional slogans when participants join or leave the meeting; or add relevant company-themed images to the video feed based on the meeting content. Upon receiving this application development requirement, the developers will develop a data fusion application. This application allows the company to fuse media stream data during video conferences using the target program. The media stream data fusion includes video fusion, image fusion, and audio fusion.
[0067] Step 204: Receive the application script file associated with the application development instructions and write the application script file into the application development project.
[0068] Application script files can be understood as script files programmed by developers using programming languages such as HTML, CSS, and JavaScript based on application requirements. Application script files contain instructions for application runtime, enabling clients to run the application based on these instructions. Script files may involve program project logic, i.e., API interface calls. Therefore, after writing application script files into the application development project, it is necessary to determine the corresponding API call interfaces for the application script files.
[0069] In practical applications, application script files can be files written by developers according to application requirements. These scripts contain the application's algorithmic logic, calling parameters, data usage, layer styles, etc., and the application's functionality is implemented based on them. Application script files can be pre-written code or code added temporarily during the application development process. It's worth noting that the application development project can also include the target program's resource database, i.e., the standardized basic framework and components provided by the target program's provider. Developers can combine these components to develop applications.
[0070] In one specific embodiment of this specification, the development client receives the application script file written by the developer and adds the application script file to the application development project.
[0071] Step 206: Determine the calling interface corresponding to the application script file in the resource database corresponding to the target program.
[0072] The resource database corresponding to the target program can be understood as a software development kit (SDK) provided by the program developer to the developers. This SDK provides developers with a collection of development tools needed when developing application software. Through the resource database, existing program logic can be directly invoked. For example, if the current application wants to capture the user's video feed, it can use the video capture interface in the target program to obtain the user's video stream data.
[0073] In practical applications, the resource database can include existing basic components in the target program, such as view container components and basic content components. With these existing components, developers can use them directly by calling the component interfaces without having to develop the corresponding functions themselves.
[0074] In a specific embodiment of this specification, if the application script file needs to use a video conferencing component, then the calling interface corresponding to the application script file is determined to be a video conferencing interface. Through this interface, video conferencing functionality can be provided in the developed application.
[0075] Furthermore, to avoid adding unnecessary components to the application under development, which would lead to redundant application code files and hinder application operation, the calling interface can be determined based on the developer's interface usage instructions. Specifically, in the resource database corresponding to the target program, the calling interface corresponding to the application script file is determined, including: receiving the interface usage instructions associated with the application script file and determining the interface character identifier carried in the interface usage instructions; and selecting the calling interface corresponding to the application script file in the resource database corresponding to the target program based on the interface character identifier.
[0076] Among them, the interface usage instructions can be understood as the specific instructions in the application script file that need to call the interface. By receiving the usage instructions, the corresponding interface character identifier can be determined. The interface character identifier can be understood as the name of the interface, such as getMeetingContext (meeting creation) and getUserContext (user joining meeting). The interface usage instructions can determine which API interfaces in the SDK the application script file will call.
[0077] In a specific embodiment of this specification, an interface usage instruction for an associated application script file is received. The interface usage instruction includes an interface character identifier "drawImage". Based on this interface character identifier, it can be determined that the interface to be called by the application script file is an image drawing interface. Subsequently, when the application runs, it can directly call the image drawing interface in the SDK to realize the image drawing function.
[0078] Step 208: Update the configuration parameters of the calling interface in the application development project, and generate a data fusion application based on the updated application development project.
[0079] Once the application script file's API call interface is determined, the configuration parameters of that interface can be adjusted. Updating the API call interface's configuration parameters can be understood as adding the API's usage permissions to the application development project, enabling the application to call the corresponding interface and achieve the desired functionality when running later. Alternatively, data can be added as parameters to the API call interface's configuration parameters to complete the update, allowing users to call the corresponding interface and use the data in the configuration parameters when using the application, thus enabling personalized configuration for users.
[0080] In practical applications, once the configuration parameters of each calling interface are configured in the application development project, the application has been developed and the data fusion application can be generated based on the updated application development project.
[0081] In a specific embodiment of this specification, the configuration parameters of the calling interface are updated in the application development project, and the enterprise advertising video uploaded by the user is added to the configuration parameters of the video fusion interface. After the configuration parameters of the calling interface are updated, the data fusion application is generated based on the updated application development project.
[0082] Furthermore, in order to meet users' needs for personalized modification of media streams using data fusion applications, the configuration parameters of the calling interface can be updated in the application development project by updating the configuration parameters of the calling interface based on the custom data of the application user. This includes: determining the custom data of the associated application user; and updating the configuration parameters of the calling interface in the application development project based on the custom data.
[0083] Custom data from application users can be understood as data uploaded by the application users. When using data fusion applications later, the custom data from application users can only be used by users authorized by the application users. For example, if the application user is a company, then the custom data uploaded by the company can only be used by users authorized by the company, such as its employees.
[0084] In practical applications, if a user wants to add their company's promotional advertisement to a video conference using the target application, they can upload the advertisement to the server during application development and configuration. Developers can then retrieve the advertisement and pass custom data as parameters to the API's configuration settings. When the user wants to add the advertisement to the video conference, the application will call the image fusion API, selecting the advertisement data and fusing it with the captured video feed to generate the video conference image with the advertisement added, thus meeting the user's needs. Therefore, during application development, the user's custom data can be passed to the API's configuration parameters.
[0085] In a specific embodiment of this specification, the development client obtains custom data uploaded by a company from the server. The custom data includes the company's advertising video and employee entry / exit audio. In the application development project, the configuration parameters of the video fusion interface are updated according to the company's advertising video, and the configuration parameters of the audio fusion interface are updated according to the employee entry / exit audio.
[0086] Based on this, by updating the configuration parameters of the calling interface with the custom data uploaded by the application user, the application user can use the custom data for data fusion when using the corresponding function of the calling interface, thereby realizing the function of enhancing media stream data based on the data uploaded by the user.
[0087] Furthermore, to prevent users from being unable to use the uploaded custom data normally in the future, it is necessary to pass the data type of the custom data into the corresponding call interface configuration parameters. Specifically, updating the call interface configuration parameters in the application development project based on the custom data includes: if the custom data is video data, determining a video fusion interface in the application development project based on the video data, and updating the configuration parameters of the video fusion interface based on the video data; or, if the custom data is image data, determining an image fusion interface in the application development project based on the image data, and updating the configuration parameters of the image fusion interface based on the custom data; or, if the custom data is audio data, determining an audio fusion interface in the application development project based on the audio data, and updating the configuration parameters of the audio fusion interface based on the audio data.
[0088] Specifically, when the custom data uploaded by the application user is video data, the data fusion interface corresponding to the video type needs to be determined. The video fusion interface is the data fusion interface corresponding to the video type, and its configuration parameters need to be updated according to the video data. When the custom data uploaded by the application user is image data, the data fusion interface corresponding to the image type needs to be determined. The image fusion interface is the data fusion interface corresponding to the image type, and its configuration parameters need to be updated according to the image data. When the custom data uploaded by the application user is audio data, the data fusion interface corresponding to the audio type needs to be determined. The audio fusion interface is the data fusion interface corresponding to the audio type, and its configuration parameters need to be updated according to the audio data.
[0089] In a practical application, when a company holds departmental meetings, it chooses to use a target program for video conferencing. If the meeting organizer wants to configure the playback of music when employees join the meeting, they need to upload the music data to the server in advance. Developers then retrieve the music data through a client application and pass it as an audio parameter into the configuration parameters of the audio fusion interface. During the meeting, the organizer activates the data fusion function through the data fusion application and selects the music data to be fused. Subsequently, the music plays whenever an employee joins the meeting, thus achieving the data fusion function for the media stream data.
[0090] In a specific embodiment of this specification, the custom data uploaded by a company is a corporate promotional video. After obtaining the corporate promotional video, it is passed as a parameter to the configuration parameters of the video fusion interface. During the company's video conference, if the meeting organizer wants to display the corporate promotional video on their own video screen, they can choose to launch the data fusion application, select the video to be displayed, and then the user client will call the video fusion interface based on the data fusion application. The corporate promotional video in the configuration parameters will be merged with the captured user screen to generate and display the desired video screen, thus realizing the video fusion function of the video stream data.
[0091] In another specific embodiment of this specification, the custom data uploaded by a company is an image of its corporate culture slogan. After obtaining the corporate culture slogan image, it is passed as a parameter into the configuration parameters of the image fusion interface. During the company's video conference, if the meeting organizer wants to display the corporate culture slogan image on their video screen, they can choose to launch the data fusion application, select the corporate culture slogan image for image fusion, and then the user client will call the image fusion interface based on the data fusion application. The corporate culture slogan image in the configuration parameters will be fused with the captured user screen to generate and display the desired video screen, thus realizing the image fusion function of the video stream data.
[0092] In another specific embodiment of this specification, the custom data uploaded by a company is its advertising audio. After obtaining the advertising audio, it is passed as a parameter to the configuration parameters of the image fusion interface. During the company's video conference, if the conference organizer wants to play the advertising audio in their video frame, they can choose to launch the data fusion application, select the advertising audio for audio fusion within the application, and then the user client will call the audio fusion interface based on the data fusion application. The advertising audio in the configuration parameters will be fused with the captured user frame, and the advertising audio will be played in the conference frame, thus realizing the audio fusion function of the video stream data.
[0093] In summary, by adding custom data uploaded by application users to the configuration parameters of the corresponding API during application development, application users can integrate their uploaded custom data with the collected media stream data when using the data fusion application. This enables the enhancement and modification of the media stream data, thus meeting user needs.
[0094] Furthermore, to avoid situations where users want to use new data for fusion in a data fusion application but the data fusion application does not pass in the parameters for the new data, fusion data can also be passed in during use. Specifically, the method also includes: receiving fusion data uploaded by the application user for the data fusion application, and updating the configuration parameters of the calling interface according to the fusion data; obtaining the target data fusion application associated with the application user based on the update result.
[0095] Among them, fused data can be understood as custom data added by the application user, which is used to merge with the collected media stream data in the future. The fused data can be video, image, or audio data. If a user wants to use new custom data when using the data fusion application, they can re-upload the custom data to the data fusion application.
[0096] In practical applications, once the user has developed the data fusion application, it can be used as a general application for various enterprises. When an enterprise has a data fusion requirement, its personalized data can be configured into the data fusion application to generate a data fusion application corresponding to that enterprise.
[0097] In a specific embodiment of this specification, when a company is using the target program for video conferencing, it wants to use a data fusion application to modify the media stream data and add background music to end the meeting. The background music can be uploaded to the server as audio data. After the client obtains the audio data, it can add the audio data to the configuration parameters corresponding to the audio fusion interface, so that the company can play background music before ending the video conference.
[0098] This specification provides an application generation method for client development, comprising: receiving application development instructions for a target program and creating an application development project corresponding to the application development instructions; receiving an application script file associated with the application development instructions and writing the application script file into the application development project; determining the calling interface corresponding to the application script file in the resource database corresponding to the target program; updating the configuration parameters of the calling interface in the application development project; and generating a data fusion application based on the updated application development project. By selecting the calling interface corresponding to the application script file in the resource database corresponding to the target program and updating the configuration parameters of the calling interface, a data fusion application is generated. Based on the resource database corresponding to the target program provided by the project party, by selecting the calling interface used by the data fusion application and updating the configuration parameters, an application that allows users to perform data fusion is developed, providing users with a function to modify media stream data and meeting user needs.
[0099] The following is in conjunction with the appendix Figure 3 Taking the application generation method provided in this specification as an example in the generation of data fusion applications, the application generation method will be further explained. Among them, Figure 3 A flowchart of a data processing method according to an embodiment of this specification is shown, with specific steps including steps 302 to 312.
[0100] Step 302: Receive application development instructions for the target program and create the application development project corresponding to the application development instructions.
[0101] In one feasible approach, the target program is a video conferencing program that provides video conferencing functionality for enterprises. When an enterprise has a need for data fusion application development, the development client receives application development instructions from developers for the target program and creates the application development project corresponding to the application development instructions.
[0102] Step 304: Receive the application script file associated with the application development instructions and write the application script file into the application development project.
[0103] In one feasible approach, the application script file of the data fusion application is received and written into the application development project.
[0104] Step 306: Receive the interface usage instruction of the associated application script file and determine the interface character identifier carried in the interface usage instruction.
[0105] In one feasible approach, the interface usage instructions of the associated application script file are received, and the interface character identifiers carried in the interface usage instructions are determined. These interface character identifiers include "getMeetingContent", "screenShareApp", etc.
[0106] Step 308: Based on the interface character identifier, select the calling interface corresponding to the application script file in the resource database corresponding to the target program.
[0107] In one feasible approach, the corresponding calling interface for the application script file is selected from the resource database of the video conferencing program based on the interface character identifier. The calling interfaces include the meeting creation interface, screen sharing interface, etc.
[0108] Step 310: Determine the custom data for the associated application user.
[0109] One feasible approach is to obtain custom data uploaded by the company, which is a video documenting the company's development history.
[0110] Step 312: Update the configuration parameters of the API call in the application development project based on custom data.
[0111] One feasible approach is to add videos of the company's development history to the configuration parameters of the data fusion interface in the application development project.
[0112] In another feasible approach, the system receives videos of the company's development history uploaded by the enterprise, uses these videos as fused data, adds the fused data to the configuration parameters of the data fusion interface, and obtains the target data fusion application for internal use by the enterprise.
[0113] The application generation method provided in this manual is applied to client development. It enables the generation of a data fusion application by selecting the corresponding API call for the application script file from the resource database of the target program and updating the configuration parameters of the API call. Based on the resource database of the target program provided by the project team, the method selects the API call used by the data fusion application and updates the configuration parameters, thereby developing an application that allows users to perform data fusion. This provides users with the ability to modify media stream data, meeting their needs.
[0114] Figure 4 The diagram illustrates a data processing method according to an embodiment of this specification. In this method, a user participates in a meeting via a client. After entering the meeting, the client collects the user's audio and video data as media stream data and displays it on the meeting screen. At this time, the user can send a data processing request for the media stream data to the client. The client can determine the data to be merged based on the data processing request. The data to be merged is the data that the user needs to merge with the media stream data. This data can be user-uploaded data or data stored on the user's client. Figure 4If a user wants to add an image of a house to their media stream data to indicate they are currently at home, the client, after collecting the user's media stream data and identifying the data to be merged, will merge the two to generate the target media stream data. Based on this target media stream data, the user's audio / video data and the house image data can be displayed on the meeting screen. The target media stream data can then be sent to other users' clients participating in the meeting, allowing them to simultaneously see the current user's meeting screen. The data processing method provided in this manual allows for the identification of user-defined data to be merged based on the user's data processing request for media stream data. This data is then merged with the media stream data to generate the desired target media stream data, satisfying users' personalized modification needs for media stream data. This provides users with data modification capabilities for different scenarios, improving user experience and user engagement. It should be noted that the media stream data of participating users involved in this application are all information and data authorized by the users or fully authorized by all parties. The media stream data includes, but is not limited to, video images and audio sounds collected by the user's client. The user data includes, but is not limited to, data used for analysis, data stored, and data displayed. Furthermore, the collection, use, and processing of the relevant data must comply with the relevant laws, regulations, and standards of the relevant countries and regions, and corresponding operation entry points are provided for users to choose to authorize or refuse.
[0115] Figure 5 A flowchart of a data processing method according to an embodiment of this specification is shown, including steps 502 to 508.
[0116] Step 502: Collect media stream data from users participating in the video conference.
[0117] Video conferencing can be understood as a remote meeting involving user participation. It involves capturing the audio and video data of participating users and sending it via a server to the clients of other participating users. This allows participating users to see and hear the video of other users in the meeting, thus enabling remote conferencing and improving work efficiency. Participating users are those who choose to join the video conference. After a participating user selects to join, the video conferencing software application activates the audio and video capture devices on the participating user's client. These devices collect the participating user's media stream data, such as capturing video from the client's camera and audio from the microphone.
[0118] In practical applications, clients include, but are not limited to, terminals such as computers, smartphones, and smart wearable devices. These clients can run video conferencing software applications and support the function of capturing user audio and video data. Specifically, users can launch the conferencing software application through the client to participate in video conferences, and the conferencing software application calls the client's capture device to collect the user's media stream data.
[0119] In a specific embodiment of this specification, user A participates in a video conference via a computer terminal. The computer terminal captures the image of user A through a camera and the audio of user A through a microphone, and generates media stream data of user A. The media stream data is used to display the image and sound of user A to other users in the video conference.
[0120] Step 504: Receive the data processing request submitted by the participating user through the data fusion application, wherein the data processing request includes the data processing type and the user identification information corresponding to the participating user.
[0121] Data processing requests can be understood as requests from participating users to enhance media stream data through data fusion applications. These requests involve users modifying and supplementing the media stream data collected by the client by adding materials such as images, videos, or audio. For example, a user might want to add their own uploaded images to a captured image frame or add their own audio material to the audio, thus enabling users to customize and modify the media stream data and satisfying their need to actively modify it. Each data processing request includes a data processing type, which can be understood as a specific type of data enhancement processing performed on the media stream data. Data processing types can include image enhancement, video enhancement, and audio enhancement. Different data processing types can be used to fuse different types of data materials with the media stream data to generate the target media stream data desired by the user. User identification information is information that uniquely identifies the participating user and is used to subsequently determine the data to be fused for that user.
[0122] In practical applications, since users can add custom images, videos, and audio to the media stream data, after participating users send data processing requests to the client for media stream data, the client needs to determine, based on the data processing type in the data processing request, what type of data the participating user is using to fuse with the media stream data, thereby achieving data enhancement of the media stream data.
[0123] In a specific embodiment of this specification, following the previous example, a data processing request submitted by user A for media stream data is received. The data processing request includes a data processing type. If the client determines that the data processing type is image processing, it indicates that user A wants to add image data to the media stream data. Subsequently, the corresponding image data can be determined based on the data processing request and integrated into the media stream data.
[0124] Step 506: Determine the data to be fused and the corresponding data information to be fused based on the data processing type and the user identification information.
[0125] The data to be merged can be understood as the data required by participating users to enhance the media stream data. This data includes, but is not limited to, image, video, and audio data. The data to be merged is used to merge with the media stream data to enhance it, thereby generating the target media stream data desired by the participating users. The data information to be merged can be understood as the parameters required for merging the data to be merged with the media stream data. This information can be pre-set by the user, and the data to be merged with the media stream data can be merged according to the user's settings.
[0126] In practical applications, the data to be merged and its corresponding information can be pre-uploaded by the user. This allows the user to directly select the data to be merged and the client to merge it with the media stream data according to the information, thereby generating the target media stream data desired by the user. The data to be merged may include its location, which can be understood as its display position within the media stream data. Specifically, the display position can be its coordinate position within the video frame of the media stream data. Based on the data position, the display location of the data to be merged within the media stream data can be determined. The data information may also include a corresponding data identifier, which identifies which data within that data type it belongs to.
[0127] In a specific embodiment of this specification, following the example above, the client, based on the data processing request sent by participating user A for media stream data, the client determines the image processing type according to the data processing type in the data processing request, and determines the custom image data and the corresponding data information to be merged, and merges the custom image data with the media stream data based on the data information to be merged.
[0128] Furthermore, to prevent slow acquisition of the data to be merged and its corresponding information due to slow user network conditions, the data to be merged and its corresponding information can be selected from the client's database. Specifically, if the database corresponding to the user identification information contains the data to be merged corresponding to the data processing type, the data to be merged and its corresponding information are determined according to the data processing type. This includes: filtering the data in the database corresponding to the user identification information according to the data processing type; determining the data set corresponding to the data processing type based on the filtering results; selecting the data to be merged from the data set according to the data information in the data processing request; and determining the corresponding information for the merged data.
[0129] The database corresponding to the user identification information can be understood as the database corresponding to the participating user. This database includes the user's saved custom data to be merged, as well as the data information to be merged corresponding to that data. By directly retrieving the data to be merged from the database corresponding to the user identification information, the slow retrieval speed due to slow network speeds, which prevents the provision of data fusion functionality to users, is avoided. It should be noted that the database corresponds to the user identification information of the participating user. User identification information can be understood as information that uniquely identifies a user. In practical applications, user identification information can be the company identifier, department identifier, or personal identifier of the participating user. When the user identification information is a company identifier, the database is determined to be the database corresponding to that company; when the user identification information is a department identifier, the database is determined to be the database corresponding to that department; and when the user identification information is a personal identifier, the database is determined to be the database corresponding to the participating user. A dataset can be understood as a collection of data filtered in a database according to the data processing type. Since the database may store various types of data such as video, image, and audio, filtering the database according to the data processing type in the data processing request allows us to select data that matches the data processing type and generate a dataset. Subsequently, we can further select from the dataset based on the data information in the data processing request. The data information in the data processing request can be understood as the data parameters of the data to be fused, or the data identifier of the data to be fused. Based on the data information, we can accurately determine the data to be fused in the future from the database.
[0130] In practical applications, the database can also only store data, and each data item can have corresponding data information stored in other locations. Therefore, after selecting the data to be merged from the database according to the data processing type and data information, the data information to be merged with the mapping relationship can be determined based on the data to be merged. Subsequently, the data to be merged can be merged with the media stream data based on the data information to be merged.
[0131] In a specific embodiment of this specification, following the example above, if it is detected that there is data to be fused in the database corresponding to the data processing type in the database corresponding to the user identification information, the data to be fused can be obtained from the database first. First, the database is filtered according to the image type to select the image data set in the database. Then, according to the data information in the data processing request, the image data a selected by the user in the image data set is determined. Image data a is taken as the data to be fused, and the data information of image data a is determined as the data information to be fused.
[0132] Based on this, by retrieving the data to be merged and the corresponding data information from the database, the slow acquisition speed of the data to be merged due to slow network speed can be avoided, thereby improving the data fusion efficiency and ensuring the stability of providing data enhancement functions to users.
[0133] Furthermore, to avoid situations where users cannot find the data to be merged in the database, thus preventing the provision of custom modification functions for media stream data, the data to be merged can be cached and downloaded from the network database corresponding to the user identification information. Specifically, if the database corresponding to the user identification information does not contain the data to be merged corresponding to the data processing type, the data to be merged and the corresponding data information to be merged are determined according to the data processing type, including: sending a data processing request to the server and receiving the network data corresponding to the user identification information returned by the server in response to the data processing request; selecting the data to be merged from the network data according to the data information in the data processing request; and determining the data information to be merged corresponding to the data to be merged.
[0134] In this context, the server can be understood as the server of the conferencing software application provider. If the client cannot find the corresponding data to be merged in the database corresponding to the user's identification information, it can send a data processing request to the server. The server then searches for the data to be merged in the network database corresponding to the user's identification information, ensuring that the corresponding data can be provided to the user. Correspondingly, the server has a network database corresponding to the user's identification information. Different network databases store the custom data uploaded by each user and the corresponding data information. When the server receives a data processing request from a user's client, it can filter the network database according to the data processing request to determine the network data that matches the data processing type in the request. It should be noted that, to prevent unauthorized users from accessing the user's uploaded custom data, when the client sends a data processing request to the server, the server can search the network database for the network data corresponding to the participating user based on the user's identification information. This ensures the security of each user's custom data and prevents other users from accessing that user's custom data. Network data can be understood as data that meets the data processing type. For example, if the data processing request is to determine image data A in the image type, then the network data of the image type can be returned according to the data processing request. The client can then further select image data A and the corresponding data information to be merged from the network data according to the data information.
[0135] In practical applications, data processing requests can also be sent to the server, which can directly determine the data to be fused and the corresponding data information based on the data processing request, and then return the data to be fused and the data information to be fused directly to the user client, thereby reducing the steps that the user client needs to further filter and improving the efficiency of subsequent data fusion.
[0136] In a specific embodiment of this specification, following the example above, when the client detects that the database corresponding to the user identification information does not contain data to be merged corresponding to the data processing type, it sends a data processing request to the server, receives the network data returned by the server in response to the data processing request, and further filters the network data according to the data information in the data processing request, selects the data to be merged, and determines the data information to be merged corresponding to the data to be merged.
[0137] Based on this, by cooperating with the database corresponding to the user identification information and the network database corresponding to the user identification information, even if the database corresponding to the user identification information does not contain the data to be merged, the client can still obtain the data to be merged and the corresponding data information to be merged. This ensures that the conferencing software application can provide users with normal data enhancement functions, meet users' needs to modify media stream data, and improve the user experience.
[0138] Furthermore, to avoid a situation where the user cannot obtain the data to be merged because the network database corresponding to the user's identification information also does not contain the data to be merged, the user can upload the data to be merged to the network database in advance. The specific method further includes: receiving the data upload request from the participating user; determining the target fusion data and the target fusion data information corresponding to the target fusion data based on the data upload request; and uploading the target fusion data and the target fusion data information to the network database.
[0139] In this context, a data upload request can be understood as a user's request to upload custom data. For example, if a user wants to merge video A with media stream data during a video conference, they can upload video A and its corresponding video parameters to the network database in advance. Then, the conferencing software application in the client can upload video A and its parameters to the network database, at which point the client sends a data upload request to the server. Therefore, the target fusion data can be understood as the data the user is about to upload. The target fusion data information is the data parameter information corresponding to the data the user is about to upload. By uploading the target fusion data and its information to the network database, users can retrieve the target fusion data from the database when they want to use it for data enhancement of the media stream data. This ensures the normal provision of the data enhancement function and meets the user's personalized data enhancement needs.
[0140] In practical applications, developers of conferencing software applications add API interfaces that users can use to modify media stream data. Through the API interfaces provided in the application, users can easily add their own custom data materials to the software application for subsequent modification of media stream data.
[0141] In a specific embodiment of this specification, a data upload request is received from a participating user. If the participating user wants to upload image data A to the network database, the target fusion data is determined to be image data A and the target fusion data information corresponding to image data A based on the data upload request. Subsequently, the client uploads the target fusion data and the target fusion data information to the network database so that the user can select image data A when using the media enhancement function.
[0142] Step 508: Based on the data to be merged information, merge the data to be merged and the media stream data to obtain the target media stream data corresponding to the participating user.
[0143] After determining the user-selected data to be merged, the data to be merged can be combined with the media stream data according to the corresponding data information. This enables data enhancement of the media stream data, meeting the user's need to customize and modify the media stream data, and obtaining the target media stream data that meets the user's modification expectations. The target media stream data is the media stream data modified by the user, meeting the user's personalized modification needs. Subsequently, the target media stream data can be displayed to other participants in the video conference.
[0144] In practical applications, once the client collects the media stream data of participating users and determines the data to be merged and the corresponding data information to be merged based on the data processing request sent by the user, the data to be merged can be merged with the media stream data according to the data information to be merged to generate the target media stream data that meets the user's modification expectations.
[0145] In a specific embodiment of this specification, following the example above, the data to be fused is determined to be image data A, and the data information to be fused is the data position of image data A in the media stream data. Image data A is fused with the media stream data according to the data information to be fused to obtain the target media stream data corresponding to the participating user. Subsequently, the target media stream data can be displayed to the participating user in the client so that the participating user can detect the target media stream data. The target media stream data can also be forwarded to other meeting participants through the server so that other meeting participants can also see the display screen corresponding to the target media stream data of the participating user.
[0146] Based on this, by analyzing the data processing requests sent by users, the user-defined data to be merged and the corresponding data information to be merged can be determined. The data to be merged is then merged with the media stream data according to the data information to be merged, generating target media stream data that meets the personalized modifications of participating users. This enables participating users to develop and modify media stream data, thereby improving the user experience.
[0147] Furthermore, to prevent the generated target media stream data from not meeting the modification needs of participating users, media stream data and data to be merged can be merged according to a data fusion strategy. Specifically, the data to be merged and the media stream data are merged based on the data to be merged information to obtain the target media stream data corresponding to the participating user, including: determining a data fusion strategy based on the data to be merged and the data to be merged information; and merging the data to be merged and the media stream data according to the data fusion strategy to obtain the target media stream data corresponding to the participating user.
[0148] The data fusion strategy can be understood as the strategy for merging the data to be merged with the media stream data. Based on the data fusion strategy, the data to be merged and the media stream data can be accurately merged according to the data information to be merged set by the user, thereby generating target media stream data that meets the user's personalized data enhancement needs.
[0149] In practical applications, users will pre-set the data information to be merged, which includes the data location of the data to be merged in the media stream data. The data fusion strategy includes the specific steps of data fusion. By following the fusion steps of the data fusion strategy, the data to be merged and the media stream data can be merged to generate the target media stream data.
[0150] In a specific embodiment of this specification, following the example above, the data to be fused is image data A, and the data information to be fused is the data position of image data A in the media stream data. A data fusion strategy is determined based on the data to be fused and the data information to be fused. The image data A is fused into the media stream data according to its data position according to the fusion steps in the data fusion strategy, thereby generating the target media stream data.
[0151] Based on this, the data fusion strategy can accurately merge the data to be merged with the media stream data, satisfying the user's pre-set data information to be merged, thereby providing users with better data enhancement functions.
[0152] Furthermore, since data fusion strategies include various types, such as image data fusion strategies and video data fusion strategies, in order to prevent the selection of an incorrect data fusion strategy that would prevent the subsequent generation of target media stream data, the corresponding data fusion strategy can be selected according to the data type of the data to be fused. Specifically, determining the data fusion strategy based on the data to be fused and the information of the data to be fused includes: selecting a preset data fusion strategy based on the data to be fused; and updating the preset data fusion strategy based on the information of the data to be fused to obtain the data fusion strategy.
[0153] The preset data fusion strategy can be understood as a data fusion strategy set in advance by the software project team for different types of data. The preset data fusion strategy may include preset image data fusion strategy, preset video data fusion strategy, preset audio data fusion strategy, etc. The preset data fusion strategy only includes the fusion steps for the corresponding type of data, but lacks specific fusion parameters. Therefore, after updating the preset data fusion strategy by participating users with the data to be fused information, the data fusion strategy corresponding to the data to be fused can be obtained, and then the data to be fused and the media stream data can be fused according to the data fusion strategy.
[0154] In a specific embodiment of this specification, a preset data fusion strategy of the corresponding type is determined based on the data to be fused, and the preset data fusion strategy is updated based on the data information to be fused corresponding to the data to be fused. The data fusion parameters in the data information to be fused are added to the preset data fusion strategy to obtain the data fusion strategy corresponding to the data to be fused. Subsequently, the data to be fused can be fused according to the data fusion strategy.
[0155] Based on this, by updating the preset data fusion strategy according to the data to be fused, the data fusion strategy corresponding to the data to be fused can be obtained, thereby meeting the needs of participating users to customize the fusion strategy and realizing the function of users to personalize the media stream data.
[0156] Furthermore, the fusion steps differ for different types of data fusion strategies. To prevent data fusion errors, the data to be fused and the media stream data can be fused according to the corresponding fusion strategy. Specifically, when the data to be fused is image fusion data and the data fusion strategy is an image data fusion strategy, the data to be fused and the media stream data are fused according to the data fusion strategy to obtain the target media stream data corresponding to the participating user. This includes: decomposing the media stream data according to the image data fusion strategy to obtain the image data corresponding to the media stream data; determining the image information of the image data and adjusting the image fusion data based on the image information; converting the image data and the adjusted image fusion data into a target format; and fusion the target format image data and the target format image fusion data according to a preset fusion algorithm to obtain the target media stream data corresponding to the participating user.
[0157] When the data fusion strategy is image data fusion, it indicates that the data to be fused is image data, signifying that the user wants to merge image data with media stream data. This involves merging images and video. To do this, the video data in the media stream needs to be broken down, and the image data from the video stream data needs to be obtained frame by frame. The image fusion data is then adjusted based on the image information, which can be understood as the image size of each frame in the video stream data. To better merge the image fusion data with the image data, the image fusion data needs to be adjusted to the same size format as the image data.
[0158] In practical applications, adjusting image fusion data based on image information can involve filling the image fusion data with blank pixels to the same size as the original image data. Furthermore, according to the data positions in the image data fusion strategy, the image fusion data can be filled to the same size as the original image data. To generate a more realistic fused image, both the original image data and the image fusion data can be converted to a target format. Specifically, the target format can be ARGB, which adds an alpha (transparency) channel to the RGB format, thus enabling a more realistic image to be generated during subsequent image fusion. The preset fusion algorithm can be understood as the image fusion algorithm. In the embodiments of this specification, the mix algorithm is used to mix the original image data with the image fusion data to generate new image data. After fusing each frame of the video stream image data, the fused image data for each frame can be obtained, and the target media stream data can be regenerated based on the fused image data for each frame. See also... Figure 6 , Figure 6 This illustration shows a schematic diagram of the image fusion effect in a data processing method according to a specific embodiment of this application, wherein... Figure 6 (A) is the image data of one frame obtained by decomposing media stream data. Figure 6 (B) is the image fusion data to be fused. Figure 6 (C) is a schematic diagram illustrating the effect of fusing image fusion data with a single frame of image data from a media stream. Figure 6 In (C), Figure 6 The house picture in (B) and Figure 6 (A) is generated by fusing image data from media stream data. Figure 6 (C) is the display screen.
[0159] In a specific embodiment of this specification, when a user wants to fuse image data into media stream data, the data to be fused is image fusion data A. The media stream data is decomposed to obtain image data B in the media stream data. The image size of image fusion data A is adjusted according to the size of image data B. Both image fusion data A and image data B are converted to ARGB format. The two images are mixed pixel by pixel using the minx algorithm to obtain fused image data C. Each frame of image data is fused according to the above fusion strategy to obtain each frame of fused image data C. At this time, the target media stream data can be obtained based on each frame of fused image data C.
[0160] In summary, through the fusion steps in the image data fusion strategy, image data can be merged with image fusion data to generate more realistic fused image data. Target media stream data is then generated based on the fused image data for each frame, thereby meeting the needs of participating users for image enhancement of media stream data.
[0161] Furthermore, when a participating user wants to fuse video data with media stream data, to prevent the generation of incongruous target media stream data, fusion can be performed according to a video fusion strategy. Specifically, when the data to be fused is video fusion data and the data fusion strategy is a video data fusion strategy, the data to be fused and the media stream data are fused according to the data fusion strategy to obtain the target media stream data corresponding to the participating user. This includes: determining the acquisition information of the media stream data according to the video data fusion strategy; decomposing the video fusion data and the media stream data based on the acquisition information to obtain the decomposed image fusion data corresponding to the video fusion data and the image data corresponding to the media stream data; and fusing the decomposed image fusion data and the image data to obtain the target media stream data corresponding to the participating user.
[0162] In this context, video fusion data can be understood as user-defined video data. Users can choose to fuse video fusion data with media stream data, which requires following a video data fusion strategy. Since both are video data, they need to be decomposed to obtain their corresponding image data. Subsequently, they are fused according to the image fusion steps to achieve the fusion of video data.
[0163] In practical applications, when obtaining image data from video fusion strategies and media stream data by frame-by-frame decomposition, it is first necessary to determine the acquisition information of the media stream data. This acquisition information can be understood as the frame rate of the video stream data within the media stream. For example, if the frame rate of the video stream data is 15 FPS, then the video fusion data and media stream data need to be decomposed frame-by-frame according to 15 FPS to obtain image data with the same frame rate. The decomposed image fusion data is the image data obtained after frame-by-frame decomposition of the video fusion data, and the image data is the image data obtained after frame-by-frame decomposition of the media stream data. After obtaining image data with the same frame rate, the two can be fused according to the image fusion steps in the image fusion strategy described above, thereby achieving data fusion between videos. This manual will not elaborate on this further; please refer to the image data fusion strategy described above for details.
[0164] In a specific embodiment of this specification, when the data to be fused is video fusion data, it is explained that if the participating user wants to fuse video and media stream data, data fusion needs to be performed according to a video data fusion strategy. The video data fusion strategy determines the acquisition information of the video stream data in the media stream data. The acquisition information is that the video stream frame rate is 30 FPS. Then, the video fusion data and media stream data are decomposed frame by frame according to this frame rate to obtain the decomposed image fusion data corresponding to the video fusion data and the image data corresponding to the media stream data. The decomposed image fusion data and the image data are fused according to the image data fusion strategy to obtain the target media stream data corresponding to the participating user.
[0165] In summary, by employing video data fusion strategies, when the data to be fused is video fusion data, the video fusion data and media stream data can be analyzed frame by frame according to the acquired information to obtain the image decomposition data corresponding to the video fusion data and the image data corresponding to the media stream data. Subsequently, the two data can be fused according to the image fusion data to generate more realistic target media stream data, thereby meeting users' needs for video enhancement of media stream data.
[0166] Furthermore, to improve the efficiency of video-to-video fusion, the decomposed image fusion data can be fused with the image data according to the image data fusion strategy, thereby achieving video-to-video fusion. Specifically, the decomposed image fusion data and the image data are fused to obtain the target media stream data corresponding to the participating user, including: determining the image information of the image data; adjusting the decomposed image fusion data based on the image information; converting the image data and the adjusted decomposed image fusion data into a target format; and fusing the target format image data and the target format decomposed image fusion data according to a preset fusion algorithm to obtain the target media stream data corresponding to the participating user.
[0167] In this process, according to the data fusion strategy between images, the decomposed image fusion data obtained after frame-by-frame decomposition and the image data need to be converted into the same target format and fused according to the preset fusion algorithm.
[0168] In practical applications, the target format is the same as the format in the image data fusion strategy, which can also be set to ARGB format. The preset fusion algorithm can also be the mix algorithm. It should be noted that the preset fusion algorithm can also be other fusion algorithms, as long as it can fuse images with images.
[0169] In a specific embodiment of this specification, after decomposing the video fusion data and media stream data frame by frame, the decomposed image fusion data corresponding to the video fusion data and the image data corresponding to the media stream data are obtained. The image data and the decomposed image fusion data are converted into a target format, and the target format image data and the target format decomposed image fusion data are fused according to the mix algorithm to obtain the fused image data corresponding to each frame of the media stream data. Based on the fused image data, the target media stream data corresponding to the participating user is generated.
[0170] In summary, by decomposing video fusion data and media stream data frame by frame into image data, the data fusion between videos is transformed into data fusion between images, reducing the amount of data fusion computation on the client side and improving fusion efficiency.
[0171] Furthermore, to prevent situations where users want to directly modify image data in the media stream data, but the image data fusion strategy cannot meet this requirement, the video data fusion strategy can also be set to adjust the target object in the image data by decomposing the image fusion data, thereby achieving video enhancement of the media stream data. Specifically, the decomposed image fusion data and the image data are fused to obtain the target media stream data corresponding to the participating user, including: determining the target object in the image data; adjusting the target object according to the decomposed image fusion data; and generating the target media stream data corresponding to the participating user based on the adjusted image data.
[0172] The target object can be understood as the object in the image data that the participating user wants to modify. For example, the target object could be the participating user's image in the video stream. If the participating user wants to replace their real image in the video stream with a virtual image, then the real image in the video stream can be identified as the target object. Subsequently, the target object is adjusted based on the decomposed and fused data to replace the real image with a virtual image, thereby enabling the user to modify the media stream data, rather than simply adding the decomposed and fused image data to the image data.
[0173] In practical applications, data fusion between videos can include directly adding video A to video B for playback and display, or merging video A and video B for display. Therefore, for the case of merging two videos, the target objects in video B that need to be adjusted can be determined. Subsequently, the target objects in video B are adjusted based on the decomposed image fusion data of video A, thereby generating target media stream data.
[0174] In a specific embodiment of this specification, following the example above, the target object in the image data is determined to be a real person image. The target object is adjusted according to the virtual image in the decomposed image fusion data, and the real person image in the image data is replaced with a virtual image. Based on the adjusted image data, target media stream data corresponding to the participating user is generated.
[0175] Based on this, by decomposing and fusing image data and adjusting the target objects in the image data, it is possible to enhance the media stream data based on the video fusion data. This enables users to enhance the media stream data through video, meets their personalized customization needs, and improves their user experience.
[0176] Furthermore, in order to meet the user's need to enhance media stream data with audio, an audio fusion strategy is also required. Specifically, when the data to be fused is audio fusion data and the data fusion strategy is an audio data fusion strategy, the data to be fused and the media stream data are fused according to the data fusion strategy to obtain the target media stream data corresponding to the participating user, including: adding the audio fusion data to the media stream data according to the audio data fusion strategy to generate the target media stream data corresponding to the participating user.
[0177] The audio data fusion strategy can be understood as a strategy that uses audio to enhance media stream data. In the audio data fusion strategy, the audio data to be fused is simply added to the audio data of the media stream data, and the target media stream data enhanced by the audio data can be generated.
[0178] In practical applications, instead of adding the audio fusion data to the audio data in the media stream data, you can directly transmit the audio fusion data together with the media stream data to the clients of other participating users via WebRTC (Web Real-Time Communications), and then play the audio fusion data on the other clients.
[0179] In a specific embodiment of this specification, audio fusion data is added to the audio stream in the media stream data according to the audio data fusion strategy, thereby generating target media stream data corresponding to the participating user.
[0180] Based on this, by fusing audio fusion data with audio streams in media stream data, target media stream data enhanced by participating users can be generated, allowing other users to hear the audio fusion data added by the user and meeting the user's personalized needs.
[0181] Furthermore, after generating the target media stream data corresponding to the participating user, in order for other meeting participants to obtain the enhanced target media stream data of the participating user, the participating user's client also needs to send the target media stream data to the server, which then forwards it to other meeting participants. The method further includes: determining and displaying the target media stream data corresponding to the participating user; and sending the target media stream data to the server, wherein the server is used to distribute the target media stream data to the associated clients corresponding to the associated participating users in the video conference.
[0182] In this context, the server can be understood as the server provided by the conference application provider. The server is used for data transmission between the clients of different conference participants, enabling real-time communication among them. Associated participants can be understood as other participants in the conference that the current participant is attending. For example, after participant A generates target media stream data using image enhancement media stream data, they upload the target media stream data to the server through their client. The server can then distribute this data to other participants in the conference, allowing them to see the personalized target media stream data modified by participant A.
[0183] In a specific embodiment of this specification, after generating the target media stream data corresponding to participating user A, participating user A's client can display the target media stream data to participating user A, and can also send the target media stream data to the server, which will then distribute the target media stream data to other participating users in the association, so that the target media stream data can be displayed and played on the associated clients of the associated participating users.
[0184] Based on this, by sending the target media stream data to the server, the server can forward the target media stream data to other participating users' associated users, so that associated users can see the media stream data that the participants have customized, thereby increasing the fun of the meeting and meeting the personalized modification needs of the participants.
[0185] This specification provides a data processing method, comprising: collecting media stream data from participating users in a video conference; receiving a data processing request submitted by the participating user through a data fusion application, wherein the data processing request includes a data processing type and user identification information corresponding to the participating user; determining the data to be fused and the corresponding data information to be fused based on the data processing type and the user identification information; and fusing the data to be fused and the media stream data based on the data information to be fused to obtain the target media stream data corresponding to the participating user. By obtaining the data processing type from the data processing request submitted by the user, determining the type of data processing the user is performing on the media stream data based on the data processing type, and determining the data to be fused and the corresponding data information to be fused, and fusing the data to be fused and the media stream data based on the data information to be fused, the method achieves the effect of merging user-defined data to be fused with media stream data according to the user-set data information to be fused, thereby providing personalized settings for users and meeting the data processing needs of different users.
[0186] The following is in conjunction with the appendix Figure 7A Taking the data processing method provided in this specification in the application of video conferencing as an example, the data processing method will be further explained. Among other things, Figure 7A A flowchart of a data processing method provided in one embodiment of this specification is shown, with specific steps including steps 702 to 714.
[0187] Step 702: Collect media stream data from users participating in the video conference.
[0188] In one feasible approach, Company A and Company B conduct a video conference. User A from Company A participates in the video conference, as does user B from Company B. At the start of the video conference, user A's client acquires their media stream data (including video and audio stream data) via a capture device. Similarly, user B's client acquires their media stream data (including video and audio stream data) via the same capture device. See also... Figure 7B , Figure 7B This is a schematic diagram of a video conferencing scenario in a data processing method provided in one embodiment of this specification. In this scenario, Company A and Company B are conducting a video conference. User A's client collects the video stream data of Company A and displays the video screen of Company A, while User B's client collects the video stream data of Company B and displays the video screen of Company B.
[0189] Step 704: Receive the data processing request submitted by the participating user through the data fusion application, wherein the data processing request includes the data processing type and the user identification information corresponding to the participating user.
[0190] In one possible implementation, user A's client receives a data processing request for media stream data submitted by user A through a data fusion application in the client. The data processing request includes the data processing type selected by user A and user identification information corresponding to user A. The data processing type can be image processing, video processing, or audio processing. User B receives a data processing request for media stream data submitted by user B through a data fusion application in the client. The data processing request includes the processing type selected by user B and user identification information corresponding to user B. In this embodiment, the data processing type is image processing.
[0191] Step 706: Determine the data to be fused and the corresponding data information to be fused based on the data processing type and the user identification information.
[0192] In one feasible approach, user A can select desired data to be merged from company A's media library using the data fusion application in user A's client, and user B can select desired data to be merged from company B's media library using the data fusion application in user B's client. The media in each company's media library consists of personalized configuration data uploaded by the company itself, such as company logos and promotional videos. During company video conferencing, user A can only select media data for fusion from company A's media library, and user B can only select media data for fusion from company B's media library. It should be noted that the data fusion application also includes some general media uploaded by the application provider, which can be used by each company. The media categories in the media library can be seen in Table 1.
[0193] Table 1
[0194]
[0195] Company A and Company B each have their own content materials. Within Company A's material library, both departments under Company A can use materials bearing Company A's logo. Each department also has its own set of company materials; for example, the logo for Department A-1 is used by Department A-1, and the logo for Department A-2 is used by Department A-2. In practice, material categories can be set for individual users. For instance, user A in Department A-1 can upload their own exclusive materials, which can then be used only by user A.
[0196] In practical applications, the meeting program can identify users based on user identifiers. For example, if user A belongs to department A-1 of company A, then when user A uses the data fusion application, they will be provided with all available materials from company A and department A-1. Similarly, if user B belongs to department B-2 of company B, then when user B uses the data fusion application, they will be provided with all available materials from company B and department B-2. In some special cases, there may be industry distinctions between different departments. For example, if department A-1 is the finance department, then department A-1 data may be accounting law; if department A-2 is the legal department, then department A-2 data may be patent law, etc. Therefore, the content of the materials can also be differentiated according to different industries.
[0197] In one feasible approach, when the enterprise material library is the database corresponding to the user identification information, and the database contains data to be merged corresponding to the data processing type, the image type data is selected from the database according to the image processing type to obtain a data set. The data set is then further filtered according to the data information in the data processing request to determine the image fusion data that the participating user wants to use, and to determine the fusion data information corresponding to the image fusion data. The fusion data information includes the fusion position of the image fusion data in the media stream data.
[0198] In another possible approach, when the enterprise material library is the database corresponding to the user identification information, and the database corresponding to the user identification information does not contain the data to be merged corresponding to the data processing type, a data processing request is sent to the server, and the image fusion data and corresponding fusion data information returned by the server in response to the data processing request are received.
[0199] Step 708: Select a preset data fusion strategy based on the data to be fused, update the preset data fusion strategy based on the information of the data to be fused, and obtain the data fusion strategy.
[0200] In one feasible approach, a preset image data fusion strategy is selected based on the data to be fused, and the fusion parameters of the image data to be fused are added to the preset image data fusion strategy based on the information of the data to be fused to obtain the image data fusion strategy. Subsequently, the media stream data is enhanced by data fusion according to the image data fusion strategy.
[0201] If user A wants to use company A's logo as the background of a video conference, then based on the data fusion application, company A's logo material is selected from company A's material library. The preset data fusion strategy corresponding to company A's logo material is a preset image data fusion strategy. Company A's logo material is added to the preset image data fusion strategy to obtain the image data fusion strategy. Subsequently, the video stream data of user B is fused according to the image data fusion strategy.
[0202] If user B wants to add company B's promotional slogan to the video, the system will select company B's promotional slogan material from company B's material library based on the data fusion application. The corresponding preset data fusion strategy is the preset image data fusion strategy. The promotional slogan material of company B is added to the preset image data fusion strategy to obtain the image data fusion strategy. Subsequently, the video stream data of user B will be fused according to the image data fusion strategy.
[0203] Step 710: Merge the data to be merged and the media stream data according to the data fusion strategy to obtain the target media stream data corresponding to the participating users.
[0204] In one feasible approach, when the data to be fused is image fusion data, the media stream data is decomposed frame by frame to obtain the image data of each frame in the media stream data conversion, and the image information of the image data is determined. The image information is the image size information of the image data. The image fusion data is adjusted according to the image information, and the image fusion data is filled to the same size as the image data. Both are converted to the target format ARGB, and the two are fused using the mix algorithm to obtain the fused image data of each frame. The target media stream data participating in user A data enhancement is generated based on the fused image data of each frame.
[0205] In one feasible approach, when the data to be fused is video fusion data, the media stream data and video fusion data are decomposed frame by frame according to the acquired information, such as the video stream frame rate of 15FPS, to obtain the image data corresponding to the media stream data and the decomposed image fusion data corresponding to the video fusion data. The two are then fused according to the image fusion strategy to generate the target media stream data after data enhancement for user A.
[0206] In another feasible approach, when the data to be fused is video fusion data, after obtaining the image data corresponding to the media stream data and the decomposed image fusion data corresponding to the video fusion data, the target object in the image data can be determined, such as the real portrait of participating user A. The target object in the image data is then adjusted according to the virtual portrait in the decomposed image fusion data, and the target media stream data corresponding to the participating user is generated based on the adjusted image data.
[0207] In one feasible approach, when the data to be fused is audio fusion data, the audio fusion data is added to the media stream data according to the audio data fusion strategy to generate target media stream data corresponding to the participating users.
[0208] Step 712: Determine and display the target media stream data corresponding to the participating users.
[0209] In one feasible approach, after generating the data-enhanced target media stream data for participating user A, the video is displayed to participating user A on participating user A's client.
[0210] Step 714: Send the target media stream data to the server, whereby the server distributes the target media stream data to the associated clients of the users participating in the video conference.
[0211] In one feasible approach, the target media stream data is sent to a server, which then sends the target media stream data corresponding to user A to other participating users in the video conference.
[0212] This specification provides a data processing method for video conferencing. It obtains the data processing type from a user-submitted data processing request, determines the type of data processing the user intends to perform on the media stream data based on the data processing type, identifies the data to be merged and the corresponding data information, and merges the data to be merged with the media stream data based on the data information. This achieves the integration of user-defined data to be merged with the media stream data according to the user-set data information, enabling personalized modification of the media stream data and providing customized settings to meet the data processing needs of different users.
[0213] The following is in conjunction with the appendix Figure 7C Taking the data processing method provided in this specification in the application of enterprise video conferencing as an example, the data processing method will be further explained. Figure 7C A flowchart of a data processing method according to an embodiment of this specification is shown, with specific steps including steps 70 to 74.
[0214] Step 70: Collect the first media stream data associated with the first participating user in the video conference, and receive the second media stream data associated with the second participating user, wherein the first media stream data includes first display material carrying the first user identifier, and the second media stream data includes second display material carrying the second user identifier.
[0215] In this context, the first and second participating users can be users attending the video conference. The first media stream data can be understood as the media stream data collected from the first participating user through audio and video capture equipment, and the second media stream data can be understood as the media stream data collected from the second participating user through audio and video capture equipment. The first user identifier is the user identifier corresponding to the first participating user, and the second user identifier is the user identifier corresponding to the second participating user. The first display material corresponds to the first user identifier, and the second display material corresponds to the second user identifier. In practical applications, the first and second user identifiers can be company or enterprise identifiers, department identifiers within a company, or individual user identifiers, etc. Different user identifiers correspond to different display materials, thus enabling different users to use their own customized materials to enhance the media stream data and meet the needs of personalized configuration.
[0216] In a specific embodiment of this specification, Company A and Company B conduct a video conference. Company A is represented by a first participating user, and Company B is represented by a second participating user. The user client of the first participating user collects its own first media stream data and receives second media stream data sent by the user client of the second participating user. Both the first and second participating users perform image fusion in their media stream data, meaning that both parties want to add their company logos to their respective video screens. Therefore, the first media stream data contains first display material carrying the first user's identifier, i.e., the first media stream data contains the company logo corresponding to Company A. The second media stream data contains second display material carrying the second user's identifier, i.e., the second media stream data contains the company logo corresponding to Company B.
[0217] Step 72: Generate a first video frame containing the first display material based on the first media stream data, and generate a second video frame containing the second display material based on the second media stream data.
[0218] The first video frame can be understood as a video frame generated based on the first media stream data, and the second video frame can be understood as a video frame generated based on the second media stream data. Since the media stream data contains display materials carrying user identifiers, the generated video frames also contain the display effects of the display materials.
[0219] In a specific embodiment of this specification, referring to the above example, a first video frame containing the logo of Company A is generated based on the first media stream data, and a second video frame containing the logo of Company B is generated based on the second media stream data.
[0220] Step 74: Show the first participating user a video conference screen containing the first video screen and the second video screen.
[0221] After generating the first and second video frames, the video conference screen can be displayed to the first participating user. This video conference screen can be understood as the view seen by the first participating user through their client. It includes the first video frame corresponding to the first participating user and the second video frame corresponding to the second participating user, thus enabling a video conference between the first and second participating users. Figure 7B As shown, the first participating user can see both the video feed of Company A and the video feed of Company B.
[0222] In a specific embodiment of this specification, referring to the above example, a video conference screen containing a first video frame and a second video frame is displayed to the first participating user of Company A.
[0223] This specification provides a data processing method applied to a user client, comprising: acquiring first media stream data associated with a first participating user in a video conference, and receiving second media stream data associated with a second participating user. The first media stream data includes first display material carrying a first user identifier, and the second media stream data includes second display material carrying a second user identifier. The method generates a first video frame containing the first display material based on the first media stream data, and generates a second video frame containing the second display material based on the second media stream data. Finally, it displays a video conference frame containing both the first and second video frames to the first participating user. By including media stream data with display material corresponding to the participating user identifier, the method can display display material corresponding to the user identifier, enabling users to personalize the media stream data based on the display material corresponding to their own user identifier.
[0224] Corresponding to the above method embodiments, this specification also provides application generation apparatus embodiments. Figure 8 A schematic diagram of an application generation apparatus according to an embodiment of this specification is shown. Figure 8 As shown, the device includes:
[0225] The creation module 802 is configured to receive application development instructions for the target program and create an application development project corresponding to the application development instructions.
[0226] The writing module 804 is configured to receive an application script file associated with application development instructions and write the application script file into the application development project;
[0227] The determination module 806 is configured to determine the calling interface corresponding to the application script file in the resource database corresponding to the target program.
[0228] The update module 808 is configured to update the configuration parameters of the calling interface in the application development project and generate a data fusion application based on the updated application development project.
[0229] Optionally, the determining module 806 is further configured to: receive an interface usage instruction from an associated application script file, and determine the interface character identifier carried in the interface usage instruction; and select the calling interface corresponding to the application script file from the resource database corresponding to the target program based on the interface character identifier.
[0230] Optionally, the update module 808 is further configured to: determine the custom data of the associated application user; and update the configuration parameters of the calling interface in the application development project based on the custom data.
[0231] Optionally, the update module 808 is further configured to: when the custom data is video data, determine a video fusion interface in the application development project based on the video data, and update the configuration parameters of the video fusion interface based on the video data; or, when the custom data is image data, determine an image fusion interface in the application development project based on the image data, and update the configuration parameters of the image fusion interface based on the custom data; or, when the custom data is audio data, determine an audio fusion interface in the application development project based on the audio data, and update the configuration parameters of the audio fusion interface based on the audio data.
[0232] Optionally, the device further includes a receiving module configured to: receive fused data uploaded by the application user for the data fusion application, and update the configuration parameters of the calling interface according to the fused data; and obtain the target data fusion application associated with the application user based on the update result.
[0233] This specification provides an application generation method for client development, comprising: a creation module configured to receive application development instructions for a target program and create an application development project corresponding to the application development instructions; a writing module configured to receive an application script file associated with the application development instructions and write the application script file into the application development project; a determination module configured to determine the calling interface corresponding to the application script file in the resource database corresponding to the target program; and an update module configured to update the configuration parameters of the calling interface in the application development project and generate a data fusion application based on the updated application development project. By selecting the calling interface corresponding to the application script file in the resource database corresponding to the target program and updating the configuration parameters of the calling interface, a data fusion application is generated. Based on the resource database corresponding to the target program provided by the project party, by selecting the calling interface used by the data fusion application and updating the configuration parameters, an application that allows users to perform data fusion is developed, providing users with a function to modify media stream data and meeting user needs.
[0234] The above is an illustrative scheme of an application generation apparatus according to this embodiment. It should be noted that the technical solution of this application generation apparatus and the technical solution of the application generation method described above belong to the same concept. For details not described in detail in the technical solution of the application generation apparatus, please refer to the description of the technical solution of the application generation method described above.
[0235] Corresponding to the above method embodiments, this specification also provides data processing apparatus embodiments. Figure 9 A schematic diagram of the structure of a data processing apparatus provided in one embodiment of this specification is shown. For example... Figure 9 As shown, the device includes:
[0236] Acquisition module 902 is configured to acquire media stream data from users participating in a video conference;
[0237] The receiving module 904 is configured to receive a data processing request submitted by the participating user through the data fusion application, wherein the data processing request includes a data processing type and user identification information corresponding to the participating user;
[0238] The determination module 906 is configured to determine the data to be fused and the corresponding data information to be fused based on the data processing type and the user identification information.
[0239] The fusion module 908 is configured to fuse the data to be fused and the media stream data based on the data information to be fused, so as to obtain the target media stream data corresponding to the participating user.
[0240] Optionally, the determining module 906 is further configured to: filter the data in the database corresponding to the user identification information according to the data processing type; determine the data set corresponding to the data processing type according to the filtering results; select the data to be fused in the data set according to the data information in the data processing request; and determine the data information to be fused corresponding to the data to be fused.
[0241] Optionally, the determining module 906 is further configured to: send a data processing request to the server and receive network data corresponding to the user identification information returned by the server in response to the data processing request; select the data to be merged from the network data according to the data information in the data processing request; and determine the data information to be merged corresponding to the data to be merged.
[0242] Optionally, the fusion module 908 is further configured to: select a preset data fusion strategy based on the data to be fused; update the preset data fusion strategy based on the data to be fused information to obtain a data fusion strategy; and fuse the data to be fused and the media stream data according to the data fusion strategy to obtain the target media stream data corresponding to the participating user.
[0243] Optionally, the fusion module 908 is further configured to: select a preset data fusion strategy based on the data to be fused; update the preset data fusion strategy based on the data to be fused information to obtain a data fusion strategy.
[0244] Optionally, the fusion module 908 is further configured to: decompose the media stream data according to the image data fusion strategy to obtain image data corresponding to the media stream data; determine the image information of the image data and adjust the image fusion data based on the image information; convert the image data and the adjusted image fusion data into a target format; and fuse the image data in the target format and the image fusion data in the target format according to a preset fusion algorithm to obtain the target media stream data corresponding to the participating user.
[0245] Optionally, the fusion module 908 is further configured to: determine the acquisition information of the media stream data according to the video data fusion strategy; decompose the video fusion data and the media stream data based on the acquisition information to obtain the decomposed image fusion data corresponding to the video fusion data and the image data corresponding to the media stream data; and fuse the decomposed image fusion data and the image data to obtain the target media stream data corresponding to the participating user.
[0246] Optionally, the fusion module 908 is further configured to: determine the image information of the image data; adjust the decomposed image fusion data based on the image information; convert the image data and the adjusted decomposed image fusion data into a target format; and fuse the image data in the target format and the decomposed image fusion data in the target format according to a preset fusion algorithm to obtain the target media stream data corresponding to the participating user.
[0247] Optionally, the fusion module 908 is further configured to: determine the target object in the image data; adjust the target object according to the decomposed image fusion data; and generate the target media stream data corresponding to the participating user based on the adjusted image data.
[0248] Optionally, the fusion module 908 is further configured to: add the audio fusion data to the media stream data according to the audio data fusion strategy to generate the target media stream data corresponding to the participating user.
[0249] Optionally, the device further includes an upload module configured to: receive a data upload request from the participating user; determine target fusion data and target fusion data information corresponding to the target fusion data based on the data upload request; and upload the target fusion data and the target fusion data information to a network database.
[0250] Optionally, the device further includes a display module configured to: determine and display target media stream data corresponding to the participating user; and send the target media stream data to a server, wherein the server is configured to distribute the target media stream data to associated clients corresponding to the participating users in the video conference.
[0251] This specification provides a data processing device, comprising: a collection module configured to collect media stream data from participating users in a video conference; a receiving module configured to receive data processing requests submitted by the participating users through a data fusion application, wherein the data processing request includes a data processing type and user identification information corresponding to the participating user; a determining module configured to determine data to be fused and corresponding data information to be fused based on the data processing type and the user identification information; and a fusion module configured to fuse the data to be fused and the media stream data based on the data information to be fused to obtain target media stream data corresponding to the participating user. By obtaining the data processing type from the user's submitted data processing request, determining the type of data processing the user intends to perform on the media stream data based on the data processing type, and determining the data to be fused and the corresponding data information to be fused, the device fuses the data to be fused and the media stream data based on the data information to be fused. This achieves the effect of user-defined data to be fused being fused with media stream data according to the user-set data information to be fused, enabling personalized modification of media stream data by the user, providing personalized settings, and meeting the data processing needs of different users.
[0252] The above is an illustrative scheme of a data processing apparatus according to this embodiment. It should be noted that the technical solution of this data processing apparatus and the technical solution of the data processing method described above belong to the same concept. For details not described in detail in the technical solution of the data processing apparatus, please refer to the description of the technical solution of the data processing method described above.
[0253] Figure 10 A structural block diagram of a computing device 1000 according to an embodiment of this specification is shown. The components of the computing device 1000 include, but are not limited to, a memory 1010 and a processor 1020. The processor 1020 is connected to the memory 1010 via a bus 1030, and a database 1050 is used to store data.
[0254] The computing device 1000 also includes an access device 1040, which enables the computing device 1000 to communicate via one or more networks 1060. Examples of these networks include a Public Switched Telephone Network (PSTN), a Local Area Network (LAN), a Wide Area Network (WAN), a Personal Area Network (PAN), or a combination of communication networks such as the Internet. The access device 1040 may include one or more of any type of wired or wireless network interface (e.g., a Network Interface Card (NIC)), such as an IEEE 802.11 Wireless Local Area Network (WLAN) interface, a Wi-MAX interface, an Ethernet interface, a Universal Serial Bus (USB) interface, a cellular network interface, a Bluetooth interface, a Near Field Communication (NFC) interface, and so on.
[0255] In one embodiment of this specification, the above-described components of the computing device 1000 and Figure 10 Other components, not shown, can also be connected to each other, for example, via a bus. It should be understood that... Figure 10 The block diagram of the computing device shown is for illustrative purposes only and is not intended to limit the scope of this specification. Those skilled in the art can add or replace other components as needed.
[0256] The computing device 1000 can be any type of stationary or mobile computing device, including mobile computers or mobile computing devices (e.g., tablet computers, personal digital assistants, laptop computers, notebook computers, netbooks, etc.), mobile phones (e.g., smartphones), wearable computing devices (e.g., smartwatches, smart glasses, etc.) or other types of mobile devices, or stationary computing devices such as desktop computers or PCs. The computing device 1000 can also be a mobile or stationary server.
[0257] The processor 1020 executes the computer instructions to implement the steps of the application generation method and the data processing method.
[0258] The above is an illustrative scheme of a computing device according to this embodiment. It should be noted that the technical solution of this computing device belongs to the same concept as the technical solutions of the application generation method and the data processing method described above. For details not described in detail in the technical solution of the computing device, please refer to the description of the technical solutions of the application generation method and the data processing method described above.
[0259] An embodiment of this specification also provides a computer-readable storage medium storing computer instructions that, when executed by a processor, implement the steps of the application generation method and the data processing method as described above.
[0260] The above is an illustrative scheme of a computer-readable storage medium according to this embodiment. It should be noted that the technical solution of this storage medium belongs to the same concept as the technical solutions of the application generation method and the data processing method described above. For details not described in detail in the technical solution of the storage medium, please refer to the description of the technical solutions of the application generation method and the data processing method described above.
[0261] An embodiment of this specification also provides a computer program, wherein when the computer program is executed in a computer, it causes the computer to perform the steps of the above-described application generation method and data processing method.
[0262] The above is an illustrative scheme of a computer program according to this embodiment. It should be noted that the technical solution of this computer program belongs to the same concept as the technical solutions of the application generation method and the data processing method described above. For details not described in detail in the technical solution of the computer program, please refer to the description of the technical solutions of the application generation method and the data processing method described above.
[0263] The foregoing has described specific embodiments of this specification. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims may be performed in a different order than that shown in the embodiments and may still achieve the desired result. Furthermore, the processes depicted in the drawings do not necessarily require the specific or sequential order shown to achieve the desired result. In some embodiments, multitasking and parallel processing are possible or may be advantageous.
[0264] The computer instructions include computer program code, which may be in the form of source code, object code, executable file, or some intermediate form. The computer-readable medium may include: any entity or device capable of carrying the computer program code, recording media, USB flash drive, portable hard drive, magnetic disk, optical disk, computer memory, read-only memory (ROM), random access memory (RAM), electrical carrier signals, telecommunication signals, and software distribution media, etc. It should be noted that the content included in the computer-readable medium may be appropriately added to or subtracted according to the requirements of legislation and patent practice in the jurisdiction. For example, in some jurisdictions, according to legislation and patent practice, computer-readable media may not include electrical carrier signals and telecommunication signals.
[0265] It should be noted that, for the sake of simplicity, the foregoing method embodiments are all described as a series of actions. However, those skilled in the art should understand that the embodiments in this specification are not limited to the described order of actions, because according to the embodiments in this specification, some steps can be performed in other orders or simultaneously. Furthermore, those skilled in the art should also understand that the embodiments described in this specification are all preferred embodiments, and the actions and modules involved are not necessarily essential to the embodiments in this specification.
[0266] In the above embodiments, the descriptions of each embodiment have different focuses. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions in other embodiments.
[0267] The preferred embodiments disclosed above are merely illustrative of this specification. The optional embodiments do not exhaustively describe all details, nor do they limit the invention to the specific implementations described. Clearly, many modifications and variations can be made based on the embodiments described herein. These embodiments are selected and specifically described in this specification to better explain the principles and practical applications of the embodiments, thereby enabling those skilled in the art to better understand and utilize this specification. This specification is limited only by the claims and their full scope and equivalents.
Claims
1. An application generation method, applied to client development, comprising: Receive application development instructions for the target program and create an application development project corresponding to the application development instructions; The application script file receives the associated application development instructions and writes the application script file into the application development project; In the resource database corresponding to the target program, determine the calling interface corresponding to the application script file; The configuration parameters of the calling interface are updated in the application development project, and a data fusion application is generated based on the updated application development project. The step of updating the configuration parameters of the calling interface in the application development project includes: determining custom data associated with the application user, wherein the custom data of the application user is used by a user authorized by the application user; if the custom data is video data, determining a video fusion interface in the application development project based on the video data, and updating the configuration parameters of the video fusion interface based on the video data; or, if the custom data is image data, determining an image fusion interface in the application development project based on the image data, and updating the configuration parameters of the image fusion interface based on the custom data; or, if the custom data is audio data, determining an audio fusion interface in the application development project based on the audio data, and updating the configuration parameters of the audio fusion interface based on the audio data.
2. The method as described in claim 1, wherein determining the calling interface corresponding to the application script file in the resource database corresponding to the target program includes: Receive the interface usage instruction from the associated application script file, and determine the interface character identifier carried in the interface usage instruction; Based on the interface character identifier, select the calling interface corresponding to the application script file from the resource database corresponding to the target program.
3. The method of claim 1, further comprising: Receive fused data uploaded by the application user for the data fusion application, and update the configuration parameters of the calling interface according to the fused data; Based on the update results, obtain the target data fusion application associated with the application user.
4. A data processing method, applied to a user client, comprising: Collect media stream data from users participating in video conferences; The system receives a data processing request submitted by the participating user through a data fusion application, wherein the data processing request includes a data processing type and user identification information corresponding to the participating user, and the data fusion application is generated by the method described in any one of claims 1-3. The data to be merged and the corresponding data information to be merged are determined based on the data processing type and the user identification information, wherein the data to be merged includes user-uploaded data or data stored in the user's client. Based on the data to be merged, the data to be merged and the media stream data are merged to obtain the target media stream data corresponding to the participating user.
5. The method as described in claim 4, wherein, when the database corresponding to the user identification information contains data to be merged corresponding to the data processing type, determining the data to be merged and the data to be merged information corresponding to the data to be merged based on the data processing type includes: The data in the database corresponding to the user identification information is filtered according to the data processing type, and the data set corresponding to the data processing type is determined according to the filtering results; The data to be fused is selected from the data set according to the data information in the data processing request; Determine the data information to be fused corresponding to the data to be fused.
6. The method as described in claim 4, wherein, when the database corresponding to the user identification information does not contain data to be merged corresponding to the data processing type, determining the data to be merged and the data to be merged information corresponding to the data to be merged based on the data processing type includes: Send a data processing request to the server and receive network data corresponding to the user identification information returned by the server in response to the data processing request; The data to be merged is selected from the network data based on the data information in the data processing request; Determine the data information to be fused corresponding to the data to be fused.
7. The method as described in claim 4, wherein the data to be merged and the media stream data are merged based on the data to be merged information to obtain the target media stream data corresponding to the participating user, comprising: Select a preset data fusion strategy based on the data to be fused; The preset data fusion strategy is updated based on the data to be fused to obtain the data fusion strategy; The data to be fused and the media stream data are fused according to the data fusion strategy to obtain the target media stream data corresponding to the participating user.
8. The method as described in claim 7, wherein the data to be fused and the media stream data are fused according to a data fusion strategy to obtain the target media stream data corresponding to the participating user, comprising: When the data to be fused is image fusion data and the data fusion strategy is an image data fusion strategy, the media stream data is decomposed according to the image data fusion strategy to obtain the image data corresponding to the media stream data, the image information of the image data is determined, and the image fusion data is adjusted based on the image information. The image data and the adjusted image fusion data are converted into a target format, and the target format image data and the target format image fusion data are fused according to a preset fusion algorithm to obtain the target media stream data corresponding to the participating user. or, When the data to be fused is video fusion data and the data fusion strategy is a video data fusion strategy, the acquisition information of the media stream data is determined according to the video data fusion strategy. Based on the acquisition information, the video fusion data and the media stream data are decomposed to obtain the decomposed image fusion data corresponding to the video fusion data and the image data corresponding to the media stream data. The decomposed image fusion data and the image data are then fused to obtain the target media stream data corresponding to the participating user. or, When the data to be fused is audio fusion data and the data fusion strategy is an audio data fusion strategy, the audio fusion data is added to the media stream data according to the audio data fusion strategy to generate the target media stream data corresponding to the participating user.
9. The method of claim 8, wherein the decomposed image fusion data and the image data are fused to obtain the target media stream data corresponding to the participating user, comprising: The image information of the image data is determined, the decomposed image fusion data is adjusted based on the image information, the image data and the adjusted decomposed image fusion data are converted into a target format, and the image data in the target format and the decomposed image fusion data in the target format are fused according to a preset fusion algorithm to obtain the target media stream data corresponding to the participating user. or, The target object in the image data is determined, the target object is adjusted according to the decomposed image fusion data, and the target media stream data corresponding to the participating user is generated based on the adjusted image data.
10. The method of claim 4, further comprising: Receive the data upload request from the participating user; The target fusion data and the target fusion data information corresponding to the target fusion data are determined based on the data upload request. The target fusion data and the target fusion data information are uploaded to the network database.
11. A data processing method, applied to a user client, comprising: The system collects first media stream data associated with a first participating user in a video conference and receives second media stream data associated with a second participating user. The first media stream data includes first display material carrying a first user identifier, and the second media stream data includes second display material carrying a second user identifier. The first and second display materials are user-defined. A first video frame containing the first display material is generated based on the first media stream data, and a second video frame containing the second display material is generated based on the second media stream data. The first participating user performs image fusion in the first media stream data based on a data fusion application, and the second participating user performs image fusion in the second media stream data based on a data fusion application. The data fusion application is generated by the method described in any one of claims 1-3. The video conference screen containing the first video feed and the second video feed is displayed to the first participating user.
12. A computing device comprising a memory, a processor, and computer instructions stored in the memory and executable on the processor, wherein the processor, when executing the computer instructions, performs the steps of the method according to any one of claims 1-11.
13. A computer program product, characterized in that, Includes computer instructions that, when executed by a processor, implement the steps of the method according to any one of claims 1-11.
Citation Information
Patent Citations
Special effect adding method, device, video communication device and storage medium
CN109104586A
A video data processing method and a related device
CN109788359A
Application program development method and device and application program use method and device
CN110069247A
Hybrid application generation method and device
CN115640005A