Multimedia data playing method and device, computer device and storage medium
By establishing a communication channel between the main process and child processes, multimedia data can be played across processes, solving the problem of high memory usage in traditional methods and achieving more efficient multimedia data playback.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- TENCENT TECH (BEIJING) CO LTD
- Filing Date
- 2022-03-15
- Publication Date
- 2026-07-24
AI Technical Summary
Traditional multimedia data playback methods result in high memory usage within the application, easily reaching memory bottlenecks and causing problems such as stuttering.
By establishing a main service communication channel between the main process and child processes, and using the channel to create instructions and instance creation instructions, multimedia data can be played across processes, avoiding the creation of multiple playback instances in the main process, and using shared memory to transfer large amounts of data.
It enables cross-process playback of multimedia data, avoids the main process memory bottleneck, optimizes process memory, and improves playback efficiency and stability.
Smart Images

Figure CN116801053B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of multimedia technology, and in particular to a multimedia data playback method, apparatus, computer equipment, and storage medium. Background Technology
[0002] With the development of computer technology, multimedia data playback technology has emerged. This technology is primarily used to play multimedia data. Multimedia refers to the integration of multiple media, generally including text, sound, and images. For example, multimedia data can specifically refer to audio data. Or, for example, multimedia data can specifically refer to video data.
[0003] In traditional technologies, when implementing multimedia data playback within an application, a dynamic link library is provided for the application layer to use. In this way, the user interface logic of the application layer and the implementation of the multimedia data player layer are both in the same process.
[0004] However, in traditional methods, the user interface logic at the application layer consumes most of the memory, and the memory usage rate is very high when multiple playback instances are launched, which can easily cause the process to reach the memory bottleneck and cause stuttering. Summary of the Invention
[0005] Therefore, it is necessary to provide a multimedia data playback method, apparatus, computer device, computer-readable storage medium, and computer program product that can optimize process memory in response to the above-mentioned technical problems.
[0006] Firstly, this application provides a multimedia data playback method. The method includes:
[0007] When there is a child process created by the main process and a main service communication channel is established between the child process and the main process, when the main process responds to the playback request for the target multimedia data, it sends the channel creation instruction and instance creation instruction corresponding to the playback request to the child process based on the main service communication channel.
[0008] In the child process, a playback task communication channel is created between the child process and the main process based on the channel creation instruction, and a child process playback instance corresponding to the target multimedia data is created based on the instance creation instruction.
[0009] The child process is started to play the target multimedia data and responds to the main process's playback control of the target multimedia data through the playback task communication channel.
[0010] Secondly, this application also provides a multimedia data playback device. The device includes:
[0011] The first process module is used to send the channel creation instruction and instance creation instruction corresponding to the playback request to the child process when there is a child process created by the main process and a main service communication channel is established between the child process and the main process.
[0012] The second process module is used to create a playback task communication channel between the child process and the main process based on the channel creation instruction, and to create a child process playback instance corresponding to the target multimedia data based on the instance creation instruction.
[0013] The processing module is used to start a subprocess playback instance to play the target multimedia data, and respond to the main process's playback control of the target multimedia data through the playback task communication channel.
[0014] Thirdly, this application also provides a computer device. The computer device includes a memory and a processor, the memory storing a computer program, and the processor executing the computer program to perform the following steps:
[0015] When there is a child process created by the main process and a main service communication channel is established between the child process and the main process, when the main process responds to the playback request for the target multimedia data, it sends the channel creation instruction and instance creation instruction corresponding to the playback request to the child process based on the main service communication channel.
[0016] In the child process, a playback task communication channel is created between the child process and the main process based on the channel creation instruction, and a child process playback instance corresponding to the target multimedia data is created based on the instance creation instruction.
[0017] The child process is started to play the target multimedia data and responds to the main process's playback control of the target multimedia data through the playback task communication channel.
[0018] Fourthly, this application also provides a computer-readable storage medium. The computer-readable storage medium stores a computer program thereon, which, when executed by a processor, performs the following steps:
[0019] When there is a child process created by the main process and a main service communication channel is established between the child process and the main process, when the main process responds to the playback request for the target multimedia data, it sends the channel creation instruction and instance creation instruction corresponding to the playback request to the child process based on the main service communication channel.
[0020] In the child process, a playback task communication channel is created between the child process and the main process based on the channel creation instruction, and a child process playback instance corresponding to the target multimedia data is created based on the instance creation instruction.
[0021] The child process is started to play the target multimedia data and responds to the main process's playback control of the target multimedia data through the playback task communication channel.
[0022] Fifthly, this application also provides a computer program product. The computer program product includes a computer program that, when executed by a processor, performs the following steps:
[0023] When there is a child process created by the main process and a main service communication channel is established between the child process and the main process, when the main process responds to the playback request for the target multimedia data, it sends the channel creation instruction and instance creation instruction corresponding to the playback request to the child process based on the main service communication channel.
[0024] In the child process, a playback task communication channel is created between the child process and the main process based on the channel creation instruction, and a child process playback instance corresponding to the target multimedia data is created based on the instance creation instruction.
[0025] The child process is started to play the target multimedia data and responds to the main process's playback control of the target multimedia data through the playback task communication channel.
[0026] The aforementioned multimedia data playback method, apparatus, computer equipment, storage medium, and computer program product, when a child process created by the main process exists and a main service communication channel is established between the child process and the main process, in response to a playback request for target multimedia data, the main process sends a channel creation instruction and an instance creation instruction corresponding to the playback request to the child process based on the main service communication channel. In the child process, a playback task communication channel is created between the child process and the main process based on the channel creation instruction, and a child process playback instance corresponding to the target multimedia data is created based on the instance creation instruction. The child process playback instance is then started to play the target multimedia data, and the playback task communication channel is used to respond to the main process's playback control of the target multimedia data. This enables cross-process playback of target multimedia data, avoids the main process reaching a memory bottleneck, and optimizes process memory. Attached Figure Description
[0027] Figure 1 This is an application environment diagram of a multimedia data playback method in one embodiment;
[0028] Figure 2 This is a flowchart illustrating a multimedia data playback method in one embodiment;
[0029] Figure 3 This is a schematic diagram of processes in the Task Manager in one embodiment;
[0030] Figure 4 This is a schematic diagram illustrating the establishment of the main service communication channel and the main service communication function in one embodiment.
[0031] Figure 5 This is a schematic diagram illustrating, in one embodiment, the response of the main process to the playback control of multimedia data via the playback task communication channel;
[0032] Figure 6 This is a flowchart illustrating a multimedia data playback method in another embodiment;
[0033] Figure 7 This is a schematic diagram of a task manager in cross-process mode in one embodiment;
[0034] Figure 8 This is a flowchart illustrating a multimedia data playback method in yet another embodiment;
[0035] Figure 9 This is a structural block diagram of a multimedia data playback device in one embodiment;
[0036] Figure 10 This is an internal structural diagram of a computer device in one embodiment. Detailed Implementation
[0037] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.
[0038] The multimedia data playback method provided in this application embodiment can be applied to, for example... Figure 1 In the application environment shown, when a user needs to play target multimedia data within a terminal application, the user selects the target multimedia data for playback on the application's display interface. When a child process created by the main process of the application exists, and a main service communication channel is established between the child process and the main process, the terminal responds to the playback request for the target multimedia data in the main process of the application. Based on the main service communication channel, it sends the channel creation instruction and instance creation instruction corresponding to the playback request to the child process. In the child process, a playback task communication channel is created between the child process and the main process based on the channel creation instruction, and a child process playback instance corresponding to the target multimedia data is created based on the instance creation instruction. The child process playback instance is then started to play the target multimedia data, and the playback task communication channel is used to respond to the main process's playback control of the target multimedia data. The terminal can be, but is not limited to, various desktop computers, laptops, smartphones, tablets, IoT devices, portable wearable devices, and aircraft. IoT devices can include smart speakers, smart TVs, smart air conditioners, smart in-vehicle devices, etc. Portable wearable devices can include smartwatches, smart bracelets, head-mounted devices, etc.
[0039] In one embodiment, such as Figure 2 As shown, a multimedia data playback method is provided, which can be applied to... Figure 1 Taking the terminal in the example, the explanation includes the following steps:
[0040] Step 202: When there is a child process created by the main process and a main service communication channel is established between the child process and the main process, when the main process responds to the playback request for the target multimedia data, it sends the channel creation instruction and instance creation instruction corresponding to the playback request to the child process based on the main service communication channel.
[0041] In this context, a process is a single instance of a program running on a specific set of data in a computer. It is the basic unit for resource allocation and scheduling in a system and forms the foundation of the operating system structure. For example... Figure 3 As shown, in Windows, by opening Task Manager, you can see the number of processes (5) contained in the application (video application (32-bit)). Each process performs different tasks. The main process refers to the program's entry point. For example, the main process can specifically refer to the process where the application resides. Child processes refer to the processes that are created. For example, a child process can specifically refer to the process where the playback instance resides. The main service communication channel refers to the channel for inter-process communication between the main process and child processes. The main service communication is used to implement functions such as periodically checking the survival of child processes, log back, and creating / destroying playback instance communication services. Among them, periodically checking the survival of child processes can be achieved through heartbeat detection. The user spaces of each process are independent and cannot access each other, but they can exchange communication data by establishing a communication channel. For example, the main service communication channel can be established based on pipes, message queuing, semaphores, shared memory, and sockets.
[0042] A playback request refers to a user's request to select target multimedia data and play it using the application. For example, a playback request can be the user selecting target multimedia data in the application's display interface. A channel creation instruction is an instruction from the main process to instruct a child process to create a playback task communication channel between the child process and the main process. An instance creation instruction is an instruction from the main process to instruct a child process to create a child process playback instance corresponding to the target multimedia data.
[0043] Specifically, when a user needs to play target multimedia data, they initiate a playback request to the main process of the application within the terminal. Upon receiving the playback request, the main process determines the appropriate playback mode for the application. If the playback mode is cross-process playback, the main process further checks for the existence of a child process service—that is, whether a child process created by the main process exists and whether a main service communication channel exists between the child process and the main process. If a child process created by the main process exists and a main service communication channel exists between the child process and the main process, it indicates that a child process service exists. The terminal will then respond to the playback request for the target multimedia data in the main process, generating corresponding channel creation and instance creation instructions based on the playback request. These instructions are then sent to the child process via the main service communication channel.
[0044] Specifically, when there is no child process created by the main process and no main service communication channel is established between the child process and the main process, it indicates that the system is in cross-process playback mode and there is no child process service. The terminal will respond to the playback request for the target multimedia data in the main process, create a child process that matches the child process service, establish a main service communication channel with the child process, thereby initializing the child process service, creating a main process playback instance, and starting the main process playback instance to play the target multimedia data.
[0045] Furthermore, when the playback mode is main process playback mode, the main process responds to playback requests for the target multimedia data by directly creating a main process playback instance and starting it to play the target multimedia data. When determining whether a child process service exists, the main process queries the child process service flag that matches the existing child process service. It's important to note that the form of the child process service flag differs depending on whether the child process service exists. For example, a child process service flag of "1" indicates the existence of a child process service, while a flag of "0" indicates its absence.
[0046] Step 204: In the child process, a playback task communication channel is created between the child process and the main process based on the channel creation instruction, and a child process playback instance corresponding to the target multimedia data is created based on the instance creation instruction.
[0047] The playback task communication channel refers to the communication channel between the main process and child processes for playing target multimedia data. It is used for playback setting callbacks, playback status callbacks, and multimedia data callbacks. For example, playback settings can specifically refer to start, pause, fast forward, etc. A child process playback instance refers to an event corresponding to the target multimedia data that plays in the child process. Each event that plays the target multimedia data can be understood as a child process playback instance.
[0048] Specifically, after receiving the channel creation instruction and instance creation instruction through the main service communication channel, the child process will create a playback task communication channel with the main process based on the channel creation instruction, so as to communicate with the main process when playing target multimedia data and respond to the main process's playback control of the target multimedia data. At the same time, the child process will create a child process playback instance corresponding to the target multimedia data based on the instance creation instruction, so as to start the child process playback instance to play the target multimedia data.
[0049] Step 206: Start the child process playback instance to play the target multimedia data, and respond to the main process's playback control of the target multimedia data through the playback task communication channel.
[0050] Specifically, after successfully creating the child process playback instance and the playback task communication channel, the target multimedia data can be played by starting the child process playback instance. When the main process receives the playback settings for the target multimedia data and outputs the corresponding playback command to the child process through the playback task communication channel, the child process plays the target multimedia data based on the playback command. The playback settings and playback commands are matched. For example, when playback is set to pause, the playback command is to pause playback.
[0051] The aforementioned multimedia data playback method, when a child process created by the main process exists and a main service communication channel is established between the child process and the main process, responds to a playback request for the target multimedia data by sending a channel creation instruction and an instance creation instruction corresponding to the playback request to the child process based on the main service communication channel. In the child process, a playback task communication channel is created between the child process and the main process based on the channel creation instruction, and a child process playback instance corresponding to the target multimedia data is created based on the instance creation instruction. The child process playback instance is then started to play the target multimedia data, and the child process responds to the main process's playback control of the target multimedia data through the playback task communication channel. This enables cross-process playback of the target multimedia data, avoids the main process reaching a memory bottleneck, and optimizes process memory.
[0052] In one embodiment, the multimedia data playback method further includes:
[0053] In cross-process playback mode, when the first playback request for multimedia data is received, the main process responds to the first playback request for multimedia data by creating a child process that matches the child process service. The child process service is a service that implements cross-process playback through the child process.
[0054] Establish a main service communication channel with the child process, create a main process playback instance corresponding to the multimedia data, and start the main process playback instance to play the multimedia data.
[0055] The child process service is a service that enables cross-process playback through child processes, specifically, it plays multimedia data across the main process and the child process. Cross-process playback mode refers to the mode of playing multimedia data across the main process and child processes; that is, the playback instance for multimedia data occurs in the child process, not in the main process where the application resides. The main process playback instance refers to the event corresponding to the multimedia data that plays the multimedia data in the main process.
[0056] Specifically, in cross-process playback mode, when the first playback request for multimedia data is received, the terminal will respond to the first playback request for multimedia data in the main process, create a child process that matches the child process service, and establish a main service communication channel with the child process to initialize the child process service. At the same time, in order to speed up the loading speed, the main process will create a main process playback instance corresponding to the multimedia data and start the main process playback instance to play the multimedia data, so that the multimedia data can be played directly in the main process.
[0057] In this embodiment, in the cross-process playback mode, when the first playback request for multimedia data is received, the main process responds to the first playback request for multimedia data by creating a subprocess that matches the subprocess service and establishing a main service communication channel with the subprocess. This enables the initialization of the subprocess service. At the same time, by creating a main process playback instance corresponding to the multimedia data and starting the main process playback instance to play the multimedia data, the loading speed of the multimedia data can be accelerated.
[0058] In one embodiment, establishing a main service communication channel with the child process includes:
[0059] The main process creates a main communication server that matches the main service communication channel.
[0060] Establish a connection between the main communication server and the main communication client. The main communication client is a client created in a child process and matched with the main service communication channel.
[0061] In this context, the main communication server is the server-side component of the communication channel. For example, when inter-process communication uses pipe communication, the main communication server is the pipe server. The main communication client is the client-side component of the communication channel. Again, when inter-process communication uses pipe communication, the main communication client is the client-side component of the communication channel. It's important to note that communication is essentially a one-to-one exchange; one party sends a message, and the other party receives the message and performs a corresponding action. In this embodiment, it primarily refers to communication between the main process and the child process via the main communication server and the main communication client. The main communication server receives messages sent by the child process through the main communication client, and the main communication client receives messages sent by the main process through the main communication server.
[0062] Specifically, the terminal creates a main communication server in the main process that matches the main service communication channel, and establishes a connection between the main communication server and the main communication client through an interface. The interface used to establish this connection is a computer-provided interface that can be directly used during connection establishment. The main communication client is created in the child process and matches the main service communication channel. That is, while the main process creates the main communication server, the child process also creates a main communication client. After the main communication server and main communication client establish a connection, cross-process communication between the main process and the child process can be achieved. It should be noted that cross-process communication here means that when the main process wants to communicate with the child process, it only needs to send a message from the main communication server to the established main communication client. For example, if the child process generates a log message and sends it to the main process's main communication server through the main communication client, after receiving the log message, the main process will print the log to a designated location according to the business logic matching the log message, thus completing a log return.
[0063] For example, such as Figure 4 As shown, in cross-process playback mode, after creating a child process matching the child process service, the child process starts and creates a main communication client matching the main service communication channel. Simultaneously, the main process creates a main communication server matching the main service communication channel. After establishing a connection between the main communication server and the main communication client, the main service communication channel is established, enabling cross-process communication. The main service communication is used to periodically check the child process's liveness, log transmission, and create / destroy playback instance communication services. Periodically checking the child process's liveness can be achieved through heartbeat detection.
[0064] In this embodiment, by creating a main communication server that matches the main service communication channel in the main process and establishing a connection between the main communication server and the main communication client, cross-process communication between the main process and the child process can be realized.
[0065] In one embodiment, the multimedia data playback method further includes:
[0066] When the playback mode is in development mode, the main process responds to the playback request for the target multimedia data, establishes a main service communication channel that matches the development mode, creates a main process playback instance corresponding to the target multimedia data, and starts the main process playback instance to play the target multimedia data.
[0067] Because the development process requires tools to view data and memory, set breakpoints, and perform other operations, and can only be attached to one process at a time, it's difficult to quickly debug program issues during development. Therefore, a development mode was designed. Essentially, the development mode is identical to the cross-process playback mode without child process services, except that it doesn't start a child process. Using this development mode allows for faster problem detection and verification of whether specific communication data parsing is normal.
[0068] Specifically, when the playback mode is in development mode, it indicates that the application is in the development stage and there are no child process services. In this case, the terminal will respond to the playback request for the target multimedia data in the main process, establish a main service communication channel matching the development mode, create a main process playback instance corresponding to the target multimedia data, and start the main process playback instance to play the target multimedia data. The creation method used by the main process to establish the main service communication channel matching the development mode is similar to that used to establish a main service communication channel with a child process. The only difference is that no child process is started; that is, it is not necessary to actually create a child process. Only a development mode client matching the main service communication channel matching the development mode needs to be created. After the development mode client is created, a connection is established between the development mode client and the main communication server created by the main process that matches the main service communication channel matching the development mode. Debugging can then be performed in development mode. It should be noted that in development mode, to speed up the loading of the target multimedia data, a main process playback instance corresponding to the target multimedia data is also created and started to play the target multimedia data.
[0069] In one embodiment, in a child process, creating a playback task communication channel with the main process based on channel creation instructions includes:
[0070] In the child process, a playback client is created based on the channel creation command to match the communication channel of the playback task;
[0071] Establish a connection between the playback client and the playback server. The playback server is a server created in the main process and matched with the communication channel of the playback task.
[0072] In this context, a playback client refers to the client used for communication during multimedia data playback. For example, when inter-process communication uses pipe communication, the playback client refers to the client using pipe communication during multimedia data playback. Similarly, a playback server refers to the server used for communication during multimedia data playback.
[0073] Specifically, the terminal creates a playback client in a child process that matches the playback task communication channel based on the channel creation command. A connection is then established between the playback client and the playback server via an interface. The interface used to establish this connection is a computer-provided interface that can be directly used during connection establishment. The playback server is created in the main process and matches the playback task communication channel. That is, while the child process creates the playback client, the main process also creates a playback server. After the playback client and server establish a connection, cross-process communication between the main process and the child process for user playback actions can be achieved. It's important to note that this cross-process communication means that when the main process wants to communicate with the child process, it only needs to send a message from the playback server to the already connected playback client. For example, user playback actions can include user settings such as fast forward and pause.
[0074] In this embodiment, by creating a playback client that matches the playback task communication channel based on the channel creation instruction in a subprocess, and establishing a connection between the playback client and the playback server, the creation of the playback task communication channel can be realized.
[0075] In one embodiment, responding to the main process's playback control of multimedia data via the playback task communication channel includes:
[0076] When playback settings for target multimedia data are received, the main process outputs playback instructions that match the playback settings to the child process based on the playback task communication channel;
[0077] The child process plays the target multimedia data based on the playback command.
[0078] Specifically, after establishing a playback task communication channel, upon receiving the user's playback settings for the target multimedia data, the main process outputs playback instructions matching the playback settings to the child process via the playback task communication channel. This allows the child process to play the target multimedia data based on the playback instructions. It should be noted that, since a connection has been established between the playback server and the playback client, the main process outputting playback instructions matching the playback settings to the child process via the playback task communication channel primarily refers to the playback server outputting playback instructions matching the playback settings to the already connected playback client. Similarly, when the child process communicates with the main process via the playback task communication channel, it primarily outputs messages from the playback client to the already connected playback server.
[0079] For example, such as Figure 5 As shown, upon receiving user playback settings for target multimedia data, the main process outputs playback instructions matching the playback settings to the child process via the playback task communication channel on the playback server. This allows the child process to play the target multimedia data based on the playback instructions. Playback settings include, but are not limited to, user operations such as start, pause, stop, and volume adjustment during playback. Furthermore, the child process also responds to the main process's playback control requests via the playback task communication channel, including setting the playback address for the target multimedia data, player initialization parameters, setting advertising data, setting watermark data, and obtaining width and height information. Moreover, the child process can also perform callbacks via the playback task communication channel. These callbacks include, but are not limited to, player message callbacks (such as status information, errors, etc.), audio and video data callbacks, etc. Additionally, the child process can also send feedback on the execution results of asynchronous operations to the main process via the playback task communication channel.
[0080] In one embodiment, the multimedia data playback method further includes:
[0081] When a communication anomaly is detected, the main process sends an instance destruction command to the child process, so that the child process destroys the matching target child process playback instance according to the instance destruction command.
[0082] Communication anomalies refer to communication failures between the main process and its child processes. Specifically, a communication anomaly could refer to a failure in the main service communication between the main process and its child processes, or a failure in the playback task communication channel between the main process and its child processes. Communication anomalies can be detected by periodically checking the liveness of the child processes. A live child process indicates normal communication; a dead or abnormal child process indicates a communication failure. For example, child process liveness can be achieved through heartbeat detection. The heartbeat detection logic involves the server sending a message to the client every few seconds to inquire about its liveness. Upon receiving the message, the client immediately replies to the server indicating it is still alive. The server, upon receiving the message, marks the client as alive. If no reply is received, it continues to try several times. If there is still no response, it indicates the client is dead or abnormal. The server then performs the corresponding processing logic, essentially completing a simple communication and response cycle.
[0083] Specifically, if a child process encounters an exception, any instructions sent from the main process to the child process will fail. Therefore, the main process can detect this immediately. Upon detecting a communication exception, the main process sends an instance destruction command to the child process, causing the child process to destroy the matching target child process playback instance according to the command. It should be noted that the number of playback instances to be destroyed varies depending on the specific circumstances of the communication exception. If the communication exception is a sudden crash or freeze of the child process, all child process playback instances matching that child process must be destroyed. If the communication exception is a failure of communication through a single playback task's communication channel, only the target child process playback instance matching that playback task's communication channel needs to be destroyed.
[0084] In this embodiment, when a communication anomaly is detected, the main process sends an instance destruction command to the child process, which enables the child process to destroy the matching target child process playback instance according to the instance destruction command.
[0085] In one embodiment, such as Figure 6 As shown, taking multimedia data as video and the application as a video player as an example, a flowchart illustrates the multimedia data playback method of this application. The multimedia data playback method specifically includes the following steps:
[0086] When a user needs to play a video within the video player, the main process running the video player receives the playback request and begins playing a video. At this point, the main process queries the currently configured player operating mode. If the player's operating mode is main process mode, the main process responds to the video playback request, creates a local player instance (i.e., a local playback instance), and starts the local playback instance to play the video.
[0087] When the player operates in cross-process mode (i.e., cross-process playback mode) or cross-process development mode (i.e., development mode), the main process further checks whether a child process service exists. If the child process service exists, it means the child process exists (cross-process mode) and overall communication is normal. This means a child process created by the main process exists, and a main service communication channel is established between the child process and the main process. In this case, only the child process player (a child process playback instance) needs to be created, and starting the child process player will start video playback. Specifically, when the child process service exists, the main process responds to video playback requests. Based on the main service communication channel, it sends the channel creation command and instance creation command corresponding to the playback request to the child process. This allows the child process to create a playback task communication channel with the main process based on the channel creation command, and create a child process player corresponding to the video based on the instance creation command. The child process player is then started to play the video and responds to the main process's video playback control through the playback task communication channel. The playback task communication mainly completes the following tasks: specific playback settings (such as start, pause, fast forward, etc.), player status callbacks, and audio / video data callbacks, providing them to the application layer for use by other logic.
[0088] If the child process service does not exist, the main process needs to further determine whether the player's working mode is development mode. If it is development mode, the main service communication can be started directly. At this time, the main process will respond to the video playback request and establish a main service communication channel that matches the development mode. At the same time, in order to speed up the video loading speed, a local process player (main process playback instance) that matches the video will be created directly in the main process, and the local process player will be started to play the video.
[0089] If it's not in development mode, it means it's in cross-process mode and there's no child process service. A real child process needs to be created, and the main service communication needs to be started. In this case, the main process will respond to video playback requests, create a child process matching the child process service, establish a main service communication channel with the child process, and simultaneously, to speed up video loading, the main process will create a local player (main process playback instance) corresponding to the video and start the main process player to play the video. It's important to note that "no child process service" in cross-process mode can mean either the first playback request for the video is received in cross-process playback mode (i.e., the first time video playback occurs), or that the child process is abnormal and therefore doesn't exist. For example, a child process abnormality could mean that the child process doesn't exist due to user error.
[0090] The main service communication is the first communication established in cross-process mode / cross-process development mode, including functions such as heartbeat maintenance, log feedback, and creation / destruction of playback instance communication services. Both cross-process and cross-process development modes require the establishment of a matching main service communication. Taking cross-process mode as an example, when establishing a main service communication channel with the child process, a main communication server matching the main service communication channel needs to be created in the main process, and a main communication client matching the main service communication channel needs to be created in the child process. Once the main communication server and main communication client establish a connection, cross-process communication between the main process and the child process can be achieved. After the main communication server and main communication client establish a connection, basic communication is maintained through heartbeats. If an anomaly occurs, both parties will detect it and perform corresponding destruction operations, primarily referring to the destruction of the child process player (i.e., the child process playback instance).
[0091] It should be noted that the multimedia data playback method involved in this application allows multiple videos to be played simultaneously, with each video belonging to a playback instance. Each time a playback instance is started, a playback task communication is created. That is, if a user needs to play multiple videos simultaneously within the video player, when a child process service exists, the main process where the video player resides, upon receiving a playback request for a video, will respond to the playback requests for multiple videos. Based on the main service communication channel, it will send channel creation instructions and instance creation instructions corresponding to the playback requests for each video to the child processes. This allows the child processes to create playback task communication channels with the main process corresponding to each video's playback request based on the channel creation instructions corresponding to each video's playback request, and to create a child process player matching each video based on the instance creation instructions corresponding to each video's playback request. The matching child process player is then started to play each video, and the child process responds to the main process's playback control for each video through the playback task communication channels corresponding to each video's playback request.
[0092] Furthermore, the data used for inter-process communication via the main service communication channel and the playback task communication channel can undergo unified serialization / deserialization processing. Serialization essentially generates binary data from various data sets, and a custom serialization format can be used. Deserialization is the reverse operation of serialization. Moreover, since pointers cannot be directly passed, and serialization is unsuitable when the amount of data to be transmitted is large, this application uses shared memory to implement data transmission. For example, in the transmission of multimedia data, using shared memory can improve data transmission efficiency.
[0093] The multimedia data playback method provided in this application adopts a cross-process approach, using a main service communication channel plus a playback task communication channel created for each video (i.e., the main service communication channel only manages the creation / destruction of player instances, while the playback task communication channel manages the playback of each video). This avoids the situation where multiple playback instances are started simultaneously in the main process, causing excessive load on the main service communication channel, thus optimizing the main process memory. With the multimedia data playback method provided in this application, users start cross-process playback almost without any awareness; the only place where cross-process playback can be seen is in the Task Manager. Figure 7 As shown, in the process of the video application, in addition to the main process, there is an additional playback process (i.e., a child process).
[0094] In one embodiment, such as Figure 8 As shown in the flowchart, the multimedia data playback method of this application is illustrated. The multimedia data playback method specifically includes the following steps:
[0095] Step 802: In cross-process playback mode, when the first playback request for multimedia data is received, the main process responds to the first playback request for multimedia data by creating a child process that matches the child process service. The child process service is a service that implements cross-process playback through the child process.
[0096] Step 804: Create a main communication server in the main process that matches the main service communication channel;
[0097] Step 806: Establish a connection between the main communication server and the main communication client in the main process. The main communication client is a client created in the child process that matches the main service communication channel. Create a main process playback instance corresponding to the multimedia data and start the main process playback instance to play the multimedia data.
[0098] Step 808: When there is a child process created by the main process and a main service communication channel is established between the child process and the main process, when the main process responds to the playback request for the target multimedia data, it sends the channel creation instruction and instance creation instruction corresponding to the playback request to the child process based on the main service communication channel.
[0099] Step 810: In the child process, create a playback client that matches the communication channel of the playback task based on the channel creation instruction;
[0100] Step 812: Establish a connection between the playback client and the playback server in the child process. The playback server is a server created in the main process that matches the communication channel of the playback task, and a child process playback instance corresponding to the target multimedia data is created based on the instance creation instruction.
[0101] Step 814: Start the subprocess playback instance to play the target multimedia data;
[0102] Step 816: When playback settings for the target multimedia data are received, the main process outputs playback instructions that match the playback settings to the child process based on the playback task communication channel.
[0103] Step 818: The child process plays the target multimedia data based on the playback command;
[0104] Step 820: When a communication anomaly is detected, the main process sends an instance destruction instruction to the child process, so that the child process destroys the matching target child process playback instance according to the instance destruction instruction;
[0105] It should be understood that although the steps in the flowcharts of the embodiments described above are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the embodiments described above may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.
[0106] Based on the same inventive concept, this application also provides a multimedia data playback device for implementing the multimedia data playback method described above. The solution provided by this device is similar to the implementation described in the above method; therefore, the specific limitations in one or more multimedia data playback device embodiments provided below can be found in the limitations of the multimedia data playback method described above, and will not be repeated here.
[0107] In one embodiment, such as Figure 9 As shown, a multimedia data playback device is provided, including: a first process module 902, a second process module 904, and a processing module 906, wherein:
[0108] The first process module 902 is used to send the channel creation instruction and instance creation instruction corresponding to the playback request to the child process when there is a child process created by the main process and a main service communication channel is established between the child process and the main process.
[0109] The second process module 904 is used to create a playback task communication channel between the child process and the main process based on the channel creation instruction, and to create a child process playback instance corresponding to the target multimedia data based on the instance creation instruction.
[0110] The processing module 906 is used to start a subprocess playback instance to play the target multimedia data, and respond to the main process's playback control of the target multimedia data through the playback task communication channel.
[0111] The aforementioned multimedia data playback device, when a child process created by the main process exists and a main service communication channel is established between the child process and the main process, responds to a playback request for target multimedia data by sending a channel creation instruction and an instance creation instruction corresponding to the playback request to the child process based on the main service communication channel. The child process then creates a playback task communication channel with the main process based on the channel creation instruction and creates a child process playback instance corresponding to the target multimedia data based on the instance creation instruction. The child process playback instance is then started to play the target multimedia data, and the playback task communication channel is used to respond to the main process's playback control of the target multimedia data. This enables cross-process playback of target multimedia data, avoids the main process reaching a memory bottleneck, and optimizes process memory.
[0112] In one embodiment, the multimedia data playback device further includes a process creation module. In cross-process playback mode, when the first playback request for multimedia data is received, the process creation module creates a subprocess that matches the subprocess service in response to the first playback request for multimedia data in the main process. The subprocess service is a service that implements cross-process playback through the subprocess. The module establishes a main service communication channel with the subprocess and creates a main process playback instance corresponding to the multimedia data. The main process playback instance is then started to play the multimedia data.
[0113] In one embodiment, the process creation module is further configured to create a main communication server in the main process that matches the main service communication channel, and establish a connection between the main communication server and the main communication client. The main communication client is a client created in the child process that matches the main service communication channel.
[0114] In one embodiment, the multimedia data playback device further includes a development module, which is used to, when the playback mode is development mode, establish a main service communication channel matching the development mode in response to the playback request for the target multimedia data in the main process, create a main process playback instance corresponding to the target multimedia data, and start the main process playback instance to play the target multimedia data.
[0115] In one embodiment, the second process module is further configured to create a playback client that matches the playback task communication channel in a subprocess based on the channel creation instruction, and establish a connection between the playback client and the playback server, wherein the playback server is a server created in the main process that matches the playback task communication channel.
[0116] In one embodiment, the processing module is further configured to, when receiving playback settings for target multimedia data, have the main process output playback instructions matching the playback settings to the child process based on the playback task communication channel, and the child process then plays the target multimedia data based on the playback instructions.
[0117] In one embodiment, the processing module is further configured to send an instance destruction instruction to the child process when a communication anomaly is detected, so that the child process destroys the matching target child process playback instance according to the instance destruction instruction.
[0118] Each module in the aforementioned multimedia data playback device can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in or independent of the processor in a computer device, or stored in the memory of a computer device as software, so that the processor can call and execute the operations corresponding to each module.
[0119] In one embodiment, a computer device is provided, which may be a terminal, and its internal structure diagram may be as follows: Figure 10 As shown, the computer device includes a processor, memory, input / output interfaces, a communication interface, a display unit, and an input device. The processor, memory, and input / output interfaces are connected via a system bus, and the communication interface, display unit, and input device are also connected to the system bus via the input / output interfaces. The processor provides computing and control capabilities. The memory includes a non-volatile storage medium and internal memory. The non-volatile storage medium stores the operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs stored in the non-volatile storage medium. The input / output interfaces are used for exchanging information between the processor and external devices. The communication interface is used for wired or wireless communication with external terminals; wireless communication can be achieved through Wi-Fi, mobile cellular networks, NFC (Near Field Communication), or other technologies. When the computer program is executed by the processor, it implements a multimedia data playback method. The display unit of the computer device is used to form a visually visible image. It can be a display screen, a projection device, or a virtual reality imaging device. The display screen can be an LCD screen or an e-ink screen. The input device of the computer device can be a touch layer covering the display screen, or buttons, trackballs, or touchpads set on the casing of the computer device, or external keyboards, touchpads, or mice, etc.
[0120] Those skilled in the art will understand that Figure 10 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.
[0121] In one embodiment, a computer device is provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to perform the following steps:
[0122] When there is a child process created by the main process and a main service communication channel is established between the child process and the main process, when the main process responds to the playback request for the target multimedia data, it sends the channel creation instruction and instance creation instruction corresponding to the playback request to the child process based on the main service communication channel.
[0123] In the child process, a playback task communication channel is created between the child process and the main process based on the channel creation instruction, and a child process playback instance corresponding to the target multimedia data is created based on the instance creation instruction.
[0124] The child process is started to play the target multimedia data and responds to the main process's playback control of the target multimedia data through the playback task communication channel.
[0125] In one embodiment, when the processor executes the computer program, it further implements the following steps: In cross-process playback mode, when the first playback request for multimedia data is received, the main process responds to the first playback request for multimedia data, creates a child process that matches the child process service, the child process service is a service that implements cross-process playback through the child process, establishes a main service communication channel with the child process, creates a main process playback instance corresponding to the multimedia data, and starts the main process playback instance to play the multimedia data.
[0126] In one embodiment, when the processor executes the computer program, it further performs the following steps: creating a main communication server in the main process that matches the main service communication channel, and establishing a connection between the main communication server and the main communication client, wherein the main communication client is a client created in the child process that matches the main service communication channel.
[0127] In one embodiment, when the processor executes the computer program, it further implements the following steps: when the playback mode is development mode, in response to the playback request for the target multimedia data in the main process, a main service communication channel matching the development mode is established, and a main process playback instance corresponding to the target multimedia data is created, and the main process playback instance is started to play the target multimedia data.
[0128] In one embodiment, when the processor executes the computer program, it further performs the following steps: in a subprocess, a playback client matching the playback task communication channel is created based on a channel creation instruction; a connection is established between the playback client and the playback server, wherein the playback server is a server created in the main process that matches the playback task communication channel.
[0129] In one embodiment, when the processor executes the computer program, it further implements the following steps: when a playback setting for target multimedia data is received, the main process outputs a playback instruction matching the playback setting to the child process based on the playback task communication channel, and the child process plays the target multimedia data based on the playback instruction.
[0130] In one embodiment, when the processor executes the computer program, it also performs the following steps: when a communication anomaly is detected, the main process sends an instance destruction instruction to the child process, so that the child process destroys the matching target child process playback instance according to the instance destruction instruction.
[0131] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon, the computer program performing the following steps when executed by a processor:
[0132] When there is a child process created by the main process and a main service communication channel is established between the child process and the main process, when the main process responds to the playback request for the target multimedia data, it sends the channel creation instruction and instance creation instruction corresponding to the playback request to the child process based on the main service communication channel.
[0133] In the child process, a playback task communication channel is created between the child process and the main process based on the channel creation instruction, and a child process playback instance corresponding to the target multimedia data is created based on the instance creation instruction.
[0134] The child process is started to play the target multimedia data and responds to the main process's playback control of the target multimedia data through the playback task communication channel.
[0135] In one embodiment, when the computer program is executed by the processor, it further implements the following steps: In cross-process playback mode, when the first playback request for multimedia data is received, the main process responds to the first playback request for multimedia data, creates a child process that matches the child process service, the child process service is a service that implements cross-process playback through the child process, establishes a main service communication channel with the child process, creates a main process playback instance corresponding to the multimedia data, and starts the main process playback instance to play the multimedia data.
[0136] In one embodiment, when the computer program is executed by the processor, it further performs the following steps: creating a main communication server in the main process that matches the main service communication channel, and establishing a connection between the main communication server and the main communication client, wherein the main communication client is a client created in the child process that matches the main service communication channel.
[0137] In one embodiment, when the computer program is executed by the processor, it further performs the following steps: when the playback mode is development mode, in response to the playback request for the target multimedia data in the main process, a main service communication channel matching the development mode is established, and a main process playback instance corresponding to the target multimedia data is created, and the main process playback instance is started to play the target multimedia data.
[0138] In one embodiment, when the computer program is executed by the processor, it further performs the following steps: in a subprocess, a playback client matching the playback task communication channel is created based on a channel creation instruction, and a connection is established between the playback client and the playback server, wherein the playback server is a server created in the main process that matches the playback task communication channel.
[0139] In one embodiment, when the computer program is executed by the processor, it further implements the following steps: when a playback setting for the target multimedia data is received, the main process outputs a playback instruction matching the playback setting to the child process based on the playback task communication channel, and the child process plays the target multimedia data based on the playback instruction.
[0140] In one embodiment, when the computer program is executed by the processor, it further performs the following steps: when a communication anomaly is detected, the main process sends an instance destruction instruction to the child process, so that the child process destroys the matching target child process playback instance according to the instance destruction instruction.
[0141] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, performs the following steps:
[0142] When there is a child process created by the main process and a main service communication channel is established between the child process and the main process, when the main process responds to the playback request for the target multimedia data, it sends the channel creation instruction and instance creation instruction corresponding to the playback request to the child process based on the main service communication channel.
[0143] In the child process, a playback task communication channel is created between the child process and the main process based on the channel creation instruction, and a child process playback instance corresponding to the target multimedia data is created based on the instance creation instruction.
[0144] The child process is started to play the target multimedia data and responds to the main process's playback control of the target multimedia data through the playback task communication channel.
[0145] In one embodiment, when the computer program is executed by the processor, it further implements the following steps: In cross-process playback mode, when the first playback request for multimedia data is received, the main process responds to the first playback request for multimedia data, creates a child process that matches the child process service, the child process service is a service that implements cross-process playback through the child process, establishes a main service communication channel with the child process, creates a main process playback instance corresponding to the multimedia data, and starts the main process playback instance to play the multimedia data.
[0146] In one embodiment, when the computer program is executed by the processor, it further performs the following steps: creating a main communication server in the main process that matches the main service communication channel, and establishing a connection between the main communication server and the main communication client, wherein the main communication client is a client created in the child process that matches the main service communication channel.
[0147] In one embodiment, when the computer program is executed by the processor, it further performs the following steps: when the playback mode is development mode, in response to the playback request for the target multimedia data in the main process, a main service communication channel matching the development mode is established, and a main process playback instance corresponding to the target multimedia data is created, and the main process playback instance is started to play the target multimedia data.
[0148] In one embodiment, when the computer program is executed by the processor, it further performs the following steps: in a subprocess, a playback client matching the playback task communication channel is created based on a channel creation instruction, and a connection is established between the playback client and the playback server, wherein the playback server is a server created in the main process that matches the playback task communication channel.
[0149] In one embodiment, when the computer program is executed by the processor, it further implements the following steps: when a playback setting for the target multimedia data is received, the main process outputs a playback instruction matching the playback setting to the child process based on the playback task communication channel, and the child process plays the target multimedia data based on the playback instruction.
[0150] In one embodiment, when the computer program is executed by the processor, it further performs the following steps: when a communication anomaly is detected, the main process sends an instance destruction instruction to the child process, so that the child process destroys the matching target child process playback instance according to the instance destruction instruction.
[0151] It should be noted that the data involved in this application (including but not limited to data used for analysis, data stored, data displayed, etc.) are all data authorized by the user or fully authorized by all parties, and the collection, use and processing of the relevant data must comply with the relevant laws, regulations and standards of the relevant countries and regions.
[0152] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, etc., and are not limited to these.
[0153] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0154] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of this patent application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.
Claims
1. A multimedia data playback method, characterized in that, The method includes: In cross-process playback mode, when the first playback request for multimedia data is received, the main process responds to the first playback request for the multimedia data by creating a subprocess service that matches the subprocess service. The subprocess service is a service that implements cross-process playback through the subprocess. Establish a main service communication channel with the subprocess, create a main process playback instance corresponding to the multimedia data, and start the main process playback instance to play the multimedia data; When there is a child process created by the main process and a main service communication channel is established between the child process and the main process, when the main process responds to a playback request for target multimedia data, it sends a channel creation instruction and an instance creation instruction corresponding to the playback request to the child process based on the main service communication channel. In the subprocess, a playback task communication channel is created between the main process and the subprocess based on the channel creation instruction, and a subprocess playback instance corresponding to the target multimedia data is created based on the instance creation instruction. The subprocess playback instance is started to play the target multimedia data, and the playback task communication channel is used to respond to the main process's playback control of the target multimedia data.
2. The method according to claim 1, characterized in that, The establishment of the main service communication channel with the child process includes: The main process creates a main communication server that matches the main service communication channel. Establish a connection between the main communication server and the main communication client, wherein the main communication client is a client created in the subprocess and matched with the main service communication channel.
3. The method according to claim 1, characterized in that, The method further includes: When the playback mode is in development mode, the main process responds to the playback request for the target multimedia data, establishes a main service communication channel that matches the development mode, creates a main process playback instance corresponding to the target multimedia data, and starts the main process playback instance to play the target multimedia data.
4. The method according to claim 1, characterized in that, The step of creating a playback task communication channel between the subprocess and the main process based on the channel creation instruction includes: In the subprocess, a playback client matching the communication channel of the playback task is created based on the channel creation instruction; Establish a connection between the playback client and the playback server, wherein the playback server is a server created in the main process and matched with the communication channel of the playback task.
5. The method according to claim 1, characterized in that, The step of responding to the main process's playback control of the target multimedia data through the playback task communication channel includes: When a playback setting for the target multimedia data is received, the main process outputs a playback instruction matching the playback setting to the child process based on the playback task communication channel; The subprocess plays the target multimedia data based on the playback command.
6. The method according to claim 1, characterized in that, The method further includes: When a communication anomaly is detected, the main process sends an instance destruction instruction to the child process, so that the child process destroys the matching target child process playback instance according to the instance destruction instruction.
7. A multimedia data playback device, characterized in that, The device includes: The process creation module is used to, in cross-process playback mode, when the first playback request for multimedia data is received, create a subprocess that matches the subprocess service in the main process in response to the first playback request for the multimedia data. The subprocess service is a service that implements cross-process playback through the subprocess. The module establishes a main service communication channel with the subprocess, creates a main process playback instance corresponding to the multimedia data, and starts the main process playback instance to play the multimedia data. The first process module is used to send a channel creation instruction and an instance creation instruction corresponding to the playback request to the child process when there is a child process created by the main process and the child process and the main process have established a main service communication channel. The second process module is used to create a playback task communication channel between the subprocess and the main process based on the channel creation instruction, and to create a subprocess playback instance corresponding to the target multimedia data based on the instance creation instruction. The processing module is used to start the subprocess playback instance to play the target multimedia data, and respond to the main process's playback control of the target multimedia data through the playback task communication channel.
8. The apparatus according to claim 7, characterized in that, The process creation module is also used to create a main communication server in the main process that matches the main service communication channel; and to establish a connection between the main communication server and the main communication client, wherein the main communication client is a client created in the subprocess that matches the main service communication channel.
9. The apparatus according to claim 7, characterized in that, The device also includes a development module, which is used to establish a main service communication channel matching the development mode when the playback mode is development mode, and to create a main process playback instance corresponding to the target multimedia data and start the main process playback instance to play the target multimedia data when the main process responds to the playback request for the target multimedia data.
10. The apparatus according to claim 7, characterized in that, The second process module is further configured to, in the subprocess, create a playback client that matches the playback task communication channel based on the channel creation instruction; and establish a connection between the playback client and the playback server, wherein the playback server is a server created in the main process that matches the playback task communication channel.
11. The apparatus according to claim 7, characterized in that, The processing module is further configured to, when receiving playback settings for the target multimedia data, have the main process output a playback instruction matching the playback settings to the subprocess based on the playback task communication channel; and have the subprocess play the target multimedia data based on the playback instruction.
12. The apparatus according to claim 7, characterized in that, The processing module is also used to send an instance destruction instruction to the child process when a communication anomaly is detected, so that the child process destroys the matching target child process playback instance according to the instance destruction instruction.
13. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 6.
14. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 6.
15. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 6.
Citation Information
Patent Citations
Method for improving stability and extensibility of player program
CN102033780A