Information transmission method and apparatus, related device, storage medium and computer program product
By dividing the frames of the digital human and adaptively sending local blocks, the real-time and stability issues caused by terminal capabilities and network fluctuations were resolved, achieving stable transmission of digital human services and improving user experience.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-08-01
- Publication Date
- 2026-04-02
AI Technical Summary
Given the limitations of terminal capabilities and network fluctuations, existing technologies cannot effectively guarantee the real-time performance, stability, and user experience of digital human services.
The network platform divides each frame of the digital human into multiple local blocks and sends relevant information about these local blocks to the terminal. The terminal then reports the number of local blocks it supports. Based on the terminal's capabilities and the quality of the transmission network, the network platform adaptively sends some or all of the local blocks to achieve partial or complete content transmission of the digital human.
Despite limitations in terminal capabilities and poor network quality, the real-time performance, stability, and user experience of the digital human service were ensured, enabling partial or overall presentation of the digital human.
Smart Images

Figure CN2025112260_02042026_PF_FP_ABST
Abstract
Description
Information transmission method and apparatus, related device, storage medium, and computer program product
[0001] Cross-reference of Related Applications
[0002] This application is based on and claims priority to Chinese Patent Application No. 202411117257.5, filed on August 14, 2024, the entire contents of which are incorporated herein by reference. TECHNICAL FIELD
[0003] The present application relates to the technical field of digital human, and in particular to an information transmission method and apparatus, related device, storage medium, and computer program product. BACKGROUND
[0004] Digital human technology can be applied to various scenarios online and offline, such as live broadcast, shopping guide, video customer service, online identity verification, business consultation, employee training, etc. Through digital human technology, any one or more (which can also be understood as text content and / or voice content) of text content and voice content based on screen display can be endowed with a vivid character image. For enterprises, digital human helps enterprises reduce service and content production costs, improve marketing efficiency, and at the same time bring better experience to users. Some current robot scenarios of text dialogue and voice dialogue can be replaced by digital human in the future.
[0005] However, in some specific scenarios, the related technology may not be able to effectively guarantee the real-time performance, stability and user experience of digital human services. SUMMARY
[0006] To solve the problems of the related art, the embodiments of the present application provide an information transmission method and apparatus, related device, storage medium, and computer program product.
[0007] The technical solutions of the embodiments of the present application are implemented as follows:
[0008] The embodiments of the present application provide an information transmission method applied to a terminal, comprising:
[0009] receiving first information sent by a network platform, the first information containing related information of a plurality of first blocks, the plurality of first blocks being obtained by dividing a first frame of a digital human;
[0010] sending second information to the network platform, the second information being used to indicate a number of first blocks that the terminal can receive, the second information being associated with a capability of the terminal;
[0011] receive one or more first blocks sent by the network platform, the one or more first blocks being sent by the network platform based on one or more of the second information and third information, the third information characterizing a transmission network quality between the terminal and the network platform.
[0012] In the above solution, the first information includes one or more of the following:
[0013] a spatial position relationship between the plurality of first blocks;
[0014] a time position relationship between the plurality of first blocks;
[0015] fourth information of each first block, the fourth information characterizing an importance of the corresponding first block;
[0016] fifth information of each first block, the fifth information being used to drive the corresponding first block;
[0017] an identifier of each first block.
[0018] In the above solution, the receiving the one or more first blocks sent by the network platform includes:
[0019] receiving the one or more first blocks sent by the network platform and the fifth information of each first block, the fifth information being used to drive the corresponding first block, the one or more first blocks and the fifth information of each first block being sent by the network platform based on an importance of the plurality of first blocks in descending order.
[0020] In the above solution, the method further includes:
[0021] for each received first block, sending, to the network platform, the third information associated with the corresponding first block, the third information including one or more of the following:
[0022] a receiving time delay of the corresponding first block;
[0023] sixth information, the sixth information characterizing whether there is a packet loss of the corresponding first block;
[0024] a packet loss rate of the corresponding first block.
[0025] In the above solution, when the third information includes the packet loss rate of the corresponding first block, the method further includes:
[0026] when the packet loss rate of the corresponding first block is greater than a first threshold, receiving the corresponding first block repeatedly sent by the network platform.
[0027] Embodiments of the present application also provide an information transmission method applied to a network platform, including:
[0028] sending first information to a terminal, the first information containing correlation information of a plurality of first blocks, the plurality of first blocks being obtained by dividing a first frame of a digital human;
[0029] receiving second information sent by the terminal, the second information being used to indicate a number of first blocks capable of being received by the terminal, the second information being associated with a capability of the terminal;
[0030] sending one or more first blocks to the terminal based on one or more of the second information and third information, the third information representing a transmission network quality between the terminal and the network platform.
[0031] In the above scheme, the first information contains one or more of the following:
[0032] spatial position relationships between the plurality of first blocks;
[0033] temporal position relationships between the plurality of first blocks;
[0034] fourth information of each first block, the fourth information representing an importance of the corresponding first block;
[0035] fifth information of each first block, the fifth information being used to drive the corresponding first block;
[0036] an identifier of each first block.
[0037] In the above scheme, the sending one or more first blocks to the terminal based on one or more of the second information and third information includes:
[0038] sending the one or more first blocks and the fifth information of each first block to the terminal based on an ordering of the plurality of first blocks from high to low in terms of importance, the fifth information being used to drive the corresponding first block; wherein,
[0039] stopping sending the first blocks to the terminal in a case where one or more of a first condition and a second condition are met, the meeting the first condition including that a number of first blocks sent by the network platform is equal to a number of first blocks indicated by the second information, and the meeting the second condition including that the third information represents that a transmission network between the terminal and the network platform is experiencing jitter.
[0040] In the above scheme, the method further includes:
[0041] for each first block sent, receiving the third information associated with the corresponding first block and sent by the terminal, the third information containing one or more of the following:
[0042] a receiving time delay of the corresponding first block;
[0043] a sixth information, the sixth information representing whether the corresponding first block has packet loss;
[0044] a packet loss rate of the corresponding first block.
[0045] In the above solution, when the third information comprises the packet loss rate of the corresponding first block, the method further comprises:
[0046] repeatedly sending the corresponding first block to the terminal when the packet loss rate of the corresponding first block is greater than a first threshold.
[0047] In the above solution, the method further comprises one or more of the following:
[0048] independently storing each of the plurality of first blocks;
[0049] independently storing fifth information of each of the plurality of first blocks, the fifth information being used to drive the corresponding first block;
[0050] independently storing the first information.
[0051] Embodiments of the present application also provide an information transmission device, comprising:
[0052] a first receiving unit configured to receive first information sent by a network platform, the first information comprising related information of a plurality of first blocks, the plurality of first blocks being obtained by dividing a first frame of a digital person;
[0053] a first sending unit configured to send second information to the network platform, the second information being used to indicate a number of first blocks that can be received by a terminal, the second information being associated with a capability of the terminal;
[0054] a second receiving unit configured to receive one or more first blocks sent by the network platform, the one or more first blocks being sent by the network platform based on one or more of the second information and third information, the third information representing a transmission network quality between the terminal and the network platform.
[0055] Embodiments of the present application also provide an information transmission device, comprising:
[0056] a third sending unit configured to send first information to a terminal, the first information comprising related information of a plurality of first blocks, the plurality of first blocks being obtained by dividing a first frame of a digital person;
[0057] a third receiving unit configured to receive second information sent by the terminal, the second information being used to indicate a number of first blocks that can be received by the terminal, the second information being associated with a capability of the terminal;
[0058] a fourth sending unit, configured to send one or more first blocks to the terminal based on one or more of the second information and third information, the third information representing a transmission network quality between the terminal and the network platform.
[0059] Embodiments of the present application further provide a terminal, comprising a first communication interface and a first processor, wherein
[0060] the first communication interface is configured to:
[0061] receive first information sent by a network platform, the first information containing relevant information of a plurality of first blocks, the plurality of first blocks being obtained by dividing a first frame of a digital person;
[0062] send second information to the network platform, the second information being used to indicate a number of first blocks that the terminal can receive, the second information being associated with a capability of the terminal;
[0063] receive one or more first blocks sent by the network platform, the one or more first blocks being sent by the network platform based on one or more of the second information and third information, the third information representing a transmission network quality between the terminal and the network platform.
[0064] Embodiments of the present application further provide a network platform, comprising a second communication interface and a second processor, wherein
[0065] the second communication interface is configured to:
[0066] send first information to a terminal, the first information containing relevant information of a plurality of first blocks, the plurality of first blocks being obtained by dividing a first frame of a digital person;
[0067] receive second information sent by the terminal, the second information being used to indicate a number of first blocks that the terminal can receive, the second information being associated with a capability of the terminal;
[0068] send one or more first blocks to the terminal based on one or more of the second information and third information, the third information representing a transmission network quality between the terminal and the network platform.
[0069] Embodiments of the present application further provide a terminal, comprising a first processor and a first memory for storing a computer program capable of running on the processor,
[0070] wherein the first processor is configured to execute steps of any method on the terminal side when the computer program is run.
[0071] The embodiment of the present application further provides a network platform, comprising a second processor and a second memory for storing a computer program capable of running on the processor,
[0072] The second processor is configured to run the computer program to perform the steps of any of the methods of the network platform.
[0073] The embodiment of the present application further provides a storage medium having a computer program stored thereon, wherein the computer program is executed by a processor to implement the steps of any of the methods of the terminal side or the steps of any of the methods of the network platform.
[0074] The embodiment of the present application further provides a computer program product comprising a computer program, wherein the computer program is executed by a processor to implement the steps of any of the methods of the terminal side or the steps of any of the methods of the network platform.
[0075] The information transmission method, apparatus, related device, storage medium and computer program product provided by the embodiment of the present application, the terminal receives the first information sent by the network platform, the first information contains the related information of a plurality of first blocks, the plurality of first blocks are obtained by dividing a first frame of a digital human; the second information is sent to the network platform, the second information is used to indicate the number of first blocks that the terminal can receive, the second information is associated with the capability of the terminal; one or more first blocks sent by the network platform are received, the one or more first blocks are sent by the network platform based on one or more of the second information and third information, the third information represents the transmission network quality between the terminal and the network platform. The scheme provided by the embodiment of the present application, the network platform divides each frame (i.e. the first frame) of the digital human to obtain a plurality of local blocks (i.e. the first block), and sends the related information (i.e. the first information) of the plurality of local blocks to the terminal, the terminal feeds back the number of local blocks supported by itself (i.e. the number of local blocks that the terminal can receive) to the network platform, and the network platform sends one or more local blocks to the terminal based on one or more of the capability of the terminal (i.e. the number of local blocks that the terminal can receive) and the transmission network quality between the terminal and the network platform, that is, sends part or all of the local blocks; in this way, part or all of the local blocks of each frame of the digital human can be adapted to one or more of the terminal capability and the transmission network quality, in other words, part or all of the content of the digital human can be transmitted under one or more of the limited terminal capability and the poor transmission network quality (i.e. the transmission network jitter), thereby the real-time performance, stability and user experience of the digital human service can be effectively guaranteed; at the same time, one or more of the terminal and the network platform can realize the local or overall representation of each frame of the digital human based on part or all of the local blocks of each frame of the digital human, that is, the local or overall presentation of the digital human can be realized. BRIEF DESCRIPTION OF DRAWINGS
[0076] Fig. 1 is a flow diagram of an information transmission method according to an embodiment of the present application;
[0077] Fig. 2 is a flow diagram of another information transmission method according to an embodiment of the present application;
[0078] Fig. 3 is a schematic diagram of a digital human representation and transmission system according to an embodiment of the present application;
[0079] Fig. 4 is a schematic diagram of a local block partitioning of a digital human according to an embodiment of the present application;
[0080] Fig. 5 is a schematic diagram of an information transmission device according to an embodiment of the present application;
[0081] Fig. 6 is a schematic diagram of another information transmission device according to an embodiment of the present application;
[0082] Fig. 7 is a schematic diagram of a terminal according to an embodiment of the present application;
[0083] Fig. 8 is a schematic diagram of a network platform according to an embodiment of the present application;
[0084] Fig. 9 is a schematic diagram of an information transmission system according to an embodiment of the present application. DETAILED DESCRIPTION
[0085] The present application will be further described in detail below with reference to the accompanying drawings and embodiments.
[0086] In general, during the transmission of a digital human (i.e., during the transmission of data related to a digital human), network problems are key factors affecting the performance of the digital human and the user experience. Common network problems can include bandwidth limitations, network delays, data packet loss, and network congestion, etc. Among them, insufficient bandwidth can cause the digital human to present increased lag and delay, thereby affecting the real-time interaction between the terminal and the network platform; network delay can increase the reaction time of the digital human, thereby reducing the smoothness of the interaction between the terminal and the network platform; data packet loss can cause the video and audio of the digital human to be out of sync, thereby affecting the user experience; and network congestion can cause the data transmission speed of the digital human to decrease, thereby affecting the continuity and consistency of the digital human.
[0087] Meanwhile, the digital person may not only face network problems during transmission, but also may encounter terminal adaptation problems. For example, due to the diverse types of devices used by users, such as smartphones, tablets, personal computers, etc., these devices may have differences in processing power, display effects, and network connections, etc., which makes it difficult to unify the transmission and display effects of the digital person. Among them, the display effect difference of the digital person may affect the user experience, for example, high-resolution and high-frame-rate videos can be displayed smoothly on high-performance devices, but may appear stuttering and delay on low-performance devices. In addition, the screen size and resolution of different devices may also affect the visual effect of the digital person, resulting in unclear or proportionally distorted display of the digital person on some devices.
[0088] As can be seen from the above description, network fluctuations and terminal capability problems are problems that need to be focused on and solved in digital person applications, which may directly affect the real-time performance, stability and user experience of digital person services.
[0089] In related technologies, in order to improve the user experience of digital person services, a multi-view video can be generated based on multiple real perspectives and multiple intermediate perspective images at multiple time points, and the multi-view video is compressed and encoded for transmission to the client, so that the multi-view video is matched to a pre-set virtual three-dimensional (3D) space scene model on the client, providing content for a dynamic digital person image to display target clothing in a virtual 3D space scene, and providing an interactive effect for simulating continuous perspective switching. Alternatively, based on a digital person terminal, indication information from a digital person display device can be received; a sending real-time rate is determined based on the indication information; wherein the sending real-time rate is the ratio of the time length from production to sending data to the time length of the data itself; and digital person audio and video data is sent based on the sending real-time rate.
[0090] However, the above scheme may have the following problems:
[0091] Problem 1, the scheme of adjusting the sending real-time rate based on the terminal, although it considers the influence of the terminal display refresh rate, by adjusting the sending rate on the network side to match the terminal, but it does not consider the terminal display resolution, terminal computing power and other terminal capability requirements, and cannot adapt to network fluctuation scenarios;
[0092] Problem 2, the scheme based on multi-view generation, although it provides an interactive effect for connecting perspective switching, but it cannot adapt to network fluctuation scenarios, and does not consider terminal capability requirements;
[0093] Problem 3, the above scheme focuses on the presentation of the digital person, and does not consider the interaction information guarantee of the terminal and the network platform; when the network fluctuates, not only may it affect the digital person playback, but also may cause the terminal and the network platform interaction to fail, thereby causing the digital person service to be unable to develop.
[0094] In conclusion, in the related art, in some specific scenarios, such as in one or more cases of terminal capability limitation and network fluctuation, how to guarantee the interaction between the terminal and the network platform, that is, how to effectively guarantee the real-time performance, stability and user experience of the digital human service, is a problem to be solved at present.
[0095] Based on this, in various embodiments of the present application, the network platform divides each frame of the digital human to obtain a plurality of local blocks, and sends related information of the plurality of local blocks to the terminal. The terminal feeds back to the network platform the number of local blocks supported by the terminal (i.e., the number of local blocks that the terminal can receive). The network platform sends one or more (one or more can also be understood as at least one) local blocks to the terminal based on one or more of the terminal's capability (i.e., the number of local blocks that the terminal can receive) and the transmission network quality between the terminal and the network platform (one or more can also be understood as at least one). That is, some or all of the local blocks are sent. In this way, the transmission of some or all of the local blocks of each frame of the digital human can adapt to one or more of the terminal capability and the transmission network quality. In other words, the transmission of some or all of the content of the digital human can be realized in one or more (one or more can also be understood as at least one) of the cases of terminal capability limitation and poor transmission network quality (i.e., transmission network jitter, which can also be understood as network fluctuation), thereby effectively guaranteeing the real-time performance, stability and user experience of the digital human service. At the same time, one or more of the terminal and the network platform can realize the local or overall representation of each frame of the digital human based on some or all of the local blocks of each frame of the digital human, that is, the local or overall presentation of the digital human can be realized.
[0096] Specifically, the embodiments of the present application provide an information transmission method applied to a terminal, as shown in FIG. 1, the method comprises:
[0097] Step 101: receiving first information sent by a network platform, wherein the first information comprises related information of a plurality of first blocks, and the plurality of first blocks are obtained by dividing a first frame of a digital human;
[0098] Step 102: sending second information to the network platform, wherein the second information is used to indicate the number of first blocks that the terminal can receive, and the second information is associated with the capability of the terminal;
[0099] Step 103: receiving one or more first blocks sent by the network platform, wherein the one or more first blocks are sent by the network platform based on one or more of the second information and third information, and the third information represents the transmission network quality between the terminal and the network platform.
[0100] In actual application, the terminal can specifically include a digital human terminal, such as a smart phone, a tablet computer, a personal computer, etc. In addition, the terminal can also be referred to as a user equipment (UE) and can also be referred to as a user. It can be understood that the embodiments of the present application do not limit the specific type and name of the terminal as long as the function is realized.
[0101] In actual application, the network platform can also be referred to as a network node, etc. In addition, the network platform can specifically include a cloud platform, an edge platform, etc. The cloud platform can also be referred to as a digital human platform, a cloud node, etc. The edge platform can also be referred to as a digital human edge platform, an edge node, etc. It can be understood that the embodiments of the present application do not limit the specific name and type of the network platform as long as the function is realized.
[0102] In actual application, the first frame can be understood as any frame of the digital human or can be understood as each frame of the digital human. In addition, the first frame can also be referred to as a video frame, etc. The embodiments of the present application do not limit the specific name of the first frame as long as the function is realized.
[0103] In actual application, the network platform can divide the first frame to obtain the plurality of first blocks, that is, to obtain at least two first blocks. It can be understood that the plurality of first blocks can constitute a complete first frame. In addition, the first block can also be referred to as a local block, etc. The embodiments of the present application do not limit the specific name of the first block as long as the function is realized. Here, the specific way in which the network platform divides the first frame to obtain the plurality of first blocks can also be set as needed, and the embodiments of the present application do not limit this. Illustratively, the network platform can divide the first frame in a two-dimensional (2D) space or a 3D space to obtain the plurality of first blocks, and at the same time, the network platform can adopt a four-split screen, a nine-square grid, a pyramid, or other arbitrary shape division manner to divide the first frame.
[0104] In actual application, after the network platform divides the first frame to obtain the plurality of first blocks, the network platform can generate the related information of the plurality of first blocks, that is, can determine the first information.
[0105] The first information can include one or more of the following (that is, the first information can include at least one of the following):
[0106] The spatial position relationship between the plurality of first blocks;
[0107] The temporal position relationship between the plurality of first blocks;
[0108] The fourth information of each first block, the fourth information representing the importance of the corresponding first block;
[0109] fifth information of each first block, the fifth information being used for driving the corresponding first block;
[0110] an identity (such as an ID, etc.) of each first block.
[0111] In actual applications, the spatial position relationship can include coordinate information of each first block, such as 2D coordinates, 3D coordinates, etc. of at least one specific end point (i.e. one or more specific end points) of each first block. In addition, the spatial position relationship can also include shape information of each first block, such as one or more of length, width, height values (i.e. at least one of length, width, height values) of each first block. It can be understood that according to the spatial position relationship between the plurality of first blocks, one or more of the terminal and the network platform can combine the plurality of first blocks to obtain the first frame. In addition, the specific form of the spatial position relationship can be associated with the specific way in which the network platform divides the first frame; for example, when the network platform divides the first frame in a 2D space using a nine-square grid manner, nine first blocks can be obtained, and the spatial position relationship between the nine first blocks can specifically include the coordinates of the upper left corner end point of each first block on the X axis and the length and width of each first block; when the network platform divides the first frame in a 3D space using a four-split screen manner, eight first blocks can be obtained, and the spatial position relationship between the eight first blocks can specifically include the coordinates of the upper left corner end point of each first block on the X axis and the length, width and height of each first block.
[0112] In actual applications, the temporal position relationship between the plurality of first blocks can include frame information corresponding to each first block, such as an identity (such as an ID, etc.) of the first frame. It can be understood that according to the temporal position relationship between the plurality of first blocks, one or more of the terminal and the network platform can determine which frame of the digital person each first block belongs to, i.e. determine the first frame corresponding to each first block.
[0113] In actual application, in the process of determining the first information by the network platform, the network platform can encode the plurality of first blocks, i.e., determine the identity of each first block, and can establish the correlation among the identity of each first block, the spatial position relationship among the plurality of first blocks, and the temporal position relationship among the plurality of first blocks, so that the spatial position relationship and the temporal position relationship among the plurality of first blocks can be represented by the identity of each first block; for example, one or more of the terminal and the network platform can determine the spatial position relationship and the temporal position relationship among the plurality of first blocks according to the arrangement order of the identity of each first block in the plurality of first blocks. In addition, the specific manner in which the network platform encodes the plurality of first blocks can be set as needed, and the embodiments of the present application do not limit this. For example, after the network platform divides the first frame to obtain the plurality of first blocks, the network platform can encode the plurality of first blocks by using zigzag scanning encoding or undirected graph encoding, to obtain the identity of each first block, such as determining that the encoding of the five first blocks is 1 to 5.
[0114] In actual application, the specific form of the fourth information can be set as needed, and the embodiments of the present application do not limit this. For example, the importance of the corresponding first block can be represented by an integer in a specific range, and the larger the integer, the higher the importance of the corresponding first block, and the smaller the integer, the lower the importance of the corresponding first block; for example, for five first blocks, the importance can be determined to be 100, 90, 80, 60, and 50 from high to low. In addition, the importance of each first block can be manually set according to experience, business scenarios, and the like, or set by the network platform using a specific algorithm, for example, the importance of the first block for presenting the head of the digital human can be higher than that of the first block for presenting the feet of the digital human; for example, for the business scenario of teaching users to play the piano, the importance of the first block for presenting the hands of the digital human can be the highest.
[0115] In actual application, the fifth information can also be referred to as driving information, driving data, and the like, and the specific name of the fifth information is not limited in the embodiments of the present application, as long as the function thereof is realized. It can be understood that, by using the fifth information of each first block, one or more of the terminal and the network platform can independently drive the corresponding first block, i.e., realize independent representation of the first block, i.e., independently present the first block.
[0116] In actual application, the first information can also be understood as an encoding data structure of the plurality of first blocks. The network platform can store the first information independently, i.e., the network platform can store the first information as an independent file, and the specific format of the file can be set as needed, which is not limited by the embodiments of the present application. In addition, the network platform can store each first block in the plurality of first blocks independently, i.e., the network platform can store each first block as an independent file, and the specific format of the file can be set as needed, which is not limited by the embodiments of the present application. The network platform can also store the fifth information of each first block in the plurality of first blocks independently, i.e., the network platform can store the fifth information of each first block as an independent file, and the specific format of the file can be set as needed, which is not limited by the embodiments of the present application.
[0117] In actual application, the network platform can send the first information in real time, i.e., the network platform can send the first information of each first frame (i.e., each frame of the digital human) to the terminal separately. Alternatively, the network platform can send the first information periodically (which can also be understood as sending the first information in batches), i.e., the network platform can send the first information corresponding to a plurality of first frames (i.e., a plurality of frames of the digital human) in a specific time range to the terminal at a time.
[0118] In actual application, the association of the second information with the capability of the terminal means that the terminal can determine the number of first blocks that can be received based on its own capability, i.e., determine the number of first blocks that can be supported by the terminal, and the specific algorithm corresponding to this process can be pre-set on the terminal as needed, which is not limited by the embodiments of the present application. The capability of the terminal can include computing capability (which can also be understood as computing power or processing capability), storage capability, communication capability, etc., and can also include screen size, resolution, frame rate, etc. display effect (i.e., display capability).
[0119] In actual application, the one or more first blocks means at least one first block, and the plurality of first blocks means at least two first blocks. The terminal receiving one or more first blocks sent by the network platform can be understood as the terminal receiving part or all of the plurality of first blocks obtained by the network platform dividing the first frame. When the terminal receives part of the first blocks, the terminal can realize the local representation of the first frame based on the part of the first blocks, i.e., can realize the local presentation of the digital human; when the terminal receives all the first blocks, the terminal can realize the overall representation of the first frame based on all the first blocks, i.e., can realize the overall presentation of the digital human.
[0120] In actual application, the network platform can send the one or more first blocks to the terminal based on one or more of the second information and the third information, and when sending each first block to the terminal, the network platform can further send fifth information of each first block to the terminal.
[0121] Based on this, in some optional embodiments, the receiving of the one or more first blocks sent by the network platform can include:
[0122] The receiving of the one or more first blocks sent by the network platform and the fifth information of each first block can be based on the network platform sending the one or more first blocks and the fifth information of each first block based on the importance of the plurality of first blocks in descending order.
[0123] In actual application, the network platform can send the one or more first blocks and the fifth information of each first block to the terminal based on the importance of the plurality of first blocks in descending order; wherein, in the case of satisfying one or more of a first condition and a second condition, the network platform can stop sending the first blocks to the terminal, the satisfying of the first condition includes that the number of the first blocks sent by the network platform is equal to the number of the first blocks indicated by the second information, and the satisfying of the second condition includes that the third information represents that jitter occurs in the transmission network between the terminal and the network platform.
[0124] Here, it can be understood that the network platform needs to determine whether the current digital human transmission satisfies the first condition and the second condition before sending each first block.
[0125] Wherein, the process of the network platform determining whether the current digital human transmission satisfies the first condition can also be understood as a process of determining whether the current frame of digital human content transmission is completed according to the number of supportable first blocks fed back by the terminal (i.e. the second information); in other words, when the number of the first blocks sent by the network platform is equal to the number of the first blocks indicated by the second information, the network platform can determine that the current frame of digital human content transmission is completed, and can stop sending the first blocks to the terminal. The network platform stopping sending the first blocks to the terminal means stopping sending the first blocks of the current first frame to the terminal, i.e. after the network platform stops sending the first blocks to the terminal, it can start sending the next frame, i.e. sending one or more of the first information and the first blocks of the next first frame to the terminal.
[0126] The process that the network platform judges whether the current digital human transmission meets the second condition can also be understood as a process that judges whether the transmission network between the terminal and the network platform is jittered. The jitter of the transmission network can also be understood as network fluctuation, which can be caused by factors such as bandwidth limitation, network delay, packet loss, network congestion, etc. The network platform can determine whether the transmission network is jittered based on some specific known information of itself; or, in order to further guarantee the real-time performance of the digital human service, the terminal can send the third information associated with the corresponding first block to the network platform after receiving each first block, such as the receiving delay, whether there is packet loss, packet loss rate, etc.
[0127] Based on this, in some optional embodiments, the method can further include:
[0128] For each received first block, the third information associated with the corresponding first block is sent to the network platform, and the third information includes one or more of the following (i.e., includes at least one of the following):
[0129] The receiving delay of the corresponding first block;
[0130] The sixth information, which represents whether the corresponding first block has packet loss;
[0131] The packet loss rate of the corresponding first block.
[0132] In actual application, when the third information includes the receiving delay of the corresponding first block, in the process that the network platform judges whether the current digital human transmission meets the second condition, the network platform can judge whether the cumulative delay of the current first frame transmission is too large based on the receiving delay of each first block of the current first frame, such as comparing the cumulative delay with the delay corresponding to the digital human frame rate set or calculated in advance; or, the network platform can compare the receiving delay of the corresponding first block with the average sending delay of the first block set or calculated in advance. When the cumulative delay or the receiving delay of the corresponding first block is greater than a corresponding specific threshold (which can be denoted as a second threshold, and the specific size of the second threshold can be set as needed), the network platform can determine that the second condition is met, stop sending the first block to the terminal, i.e., stop sending the first block of the current first frame to the terminal, and can start sending the first information, one or more of the first blocks of the next first frame to the terminal.
[0133] In actual application, considering that the number of the first blocks indicated by the second information is necessarily greater than 0, in order to improve the transmission efficiency of the digital person, the network platform can directly start to send the first block with the highest importance and the fifth information of the first block to the terminal before receiving the second information, at the same time or before or after sending the first information to the terminal.
[0134] In actual application, in the case that the third information contains the packet loss rate of the corresponding first block, when the packet loss rate of the corresponding first block is greater than a preset specific threshold (which can be denoted as the first threshold in the subsequent description), the network platform can repeatedly send the corresponding first block to the terminal.
[0135] Based on this, in some optional embodiments, in the case that the third information contains the packet loss rate of the corresponding first block, the method can further include:
[0136] When the packet loss rate of the corresponding first block is greater than the first threshold, receiving the corresponding first block repeatedly sent by the network platform.
[0137] In actual application, the specific size of the first threshold can be pre-set as needed, and the embodiments of the present application do not limit this.
[0138] Correspondingly, the embodiments of the present application also provide an information transmission method applied to a network platform, as shown in FIG. 2, the method includes:
[0139] Step 201: sending first information to a terminal, the first information containing the related information of a plurality of first blocks, the plurality of first blocks being obtained by dividing a first frame of a digital person;
[0140] Step 202: receiving second information sent by the terminal, the second information being used to indicate the number of the first blocks that can be received by the terminal, the second information being associated with the capability of the terminal;
[0141] Step 203: based on one or more of the second information and third information, sending one or more first blocks to the terminal, the third information representing the transmission network quality between the terminal and the network platform.
[0142] In some optional embodiments, the sending one or more first blocks to the terminal based on one or more of the second information and third information can include:
[0143] Based on the sorting of the importance of the plurality of first blocks from high to low, sending the one or more first blocks and the fifth information of each first block to the terminal, the fifth information being used to drive the corresponding first block; wherein,
[0144] stop sending the first blocks to the terminal in case one or more of a first condition and a second condition are met, the first condition being met comprising a number of first blocks sent by the network platform being equal to a number of first blocks indicated by the second information, the second condition being met comprising the third information characterizing a jitter of a transmission network between the terminal and the network platform.
[0145] In some optional embodiments, the method can further comprise:
[0146] for each first block sent, receiving the third information associated with the corresponding first block sent by the terminal, the third information comprising one or more of:
[0147] a reception delay of the corresponding first block;
[0148] a sixth information characterizing whether there is a packet loss of the corresponding first block;
[0149] a packet loss rate of the corresponding first block.
[0150] In some optional embodiments, in case the third information comprises the packet loss rate of the corresponding first block, the method can further comprise:
[0151] repeatedly sending the corresponding first block to the terminal when the packet loss rate of the corresponding first block is greater than a first threshold.
[0152] In some optional embodiments, the method can further comprise one or more of:
[0153] independently storing each first block of the plurality of first blocks;
[0154] independently storing a fifth information of each first block of the plurality of first blocks, the fifth information being used to drive the corresponding first block;
[0155] independently storing the first information.
[0156] Here, it is to be noted that the specific processing procedure of the network platform has been described in the foregoing, and will not be repeated here.
[0157] The information transmission method provided in the embodiments of the present application comprises the following steps: a terminal receives first information sent by a network platform, wherein the first information comprises relevant information of a plurality of first blocks, and the plurality of first blocks are obtained by dividing a first frame of a digital human; the terminal sends second information to the network platform, wherein the second information is used to indicate the number of first blocks that the terminal can receive, and the second information is associated with the capability of the terminal; and the terminal receives one or more first blocks sent by the network platform based on one or more of the second information and third information, wherein the third information represents the transmission network quality between the terminal and the network platform. The scheme provided in the embodiments of the present application comprises the following steps: the network platform divides each frame (i.e., the first frame) of a digital human to obtain a plurality of local blocks (i.e., the first blocks), and sends relevant information (i.e., the first information) of the plurality of local blocks to a terminal; the terminal feeds back the number of local blocks (i.e., the number of local blocks that the terminal can receive) supported by the terminal to the network platform; and the network platform sends one or more local blocks (i.e., sends part or all of the local blocks) to the terminal based on one or more of the capability of the terminal (i.e., the number of local blocks that the terminal can receive) and the transmission network quality between the terminal and the network platform. In this way, the transmission of part or all of the local blocks of each frame of the digital human can adapt to one or more of the capability of the terminal and the transmission network quality, in other words, the transmission of part or all of the content of the digital human can be realized in one or more of the following cases: the capability of the terminal is limited, and the transmission network quality is poor (i.e., the transmission network is jittered, which can also be understood as network fluctuation), thereby effectively guaranteeing the real-time performance, stability and user experience of the digital human service. Meanwhile, one or more of the terminal and the network platform can realize the local or overall representation of each frame of the digital human based on part or all of the local blocks of each frame of the digital human, i.e., the local or overall presentation of the digital human can be realized.
[0158] In addition, since the transmission of part or all of the local blocks of each frame of the digital human can adapt to one or more of the capability of the terminal and the transmission network quality, the scheme provided in the embodiments of the present application can adapt to terminals with different capabilities and networks in different conditions, and can realize flexible transmission of the digital human between the network platform and the terminal.
[0159] The present application will be further described in detail in conjunction with application examples.
[0160] The present application provides a digital human representation and transmission system supporting local and overall representation, as shown in FIG. 3. The system can comprise the following modules: digital human local block division, local block encoding, local block file generation, transmission information interaction discrimination, encoding and local block transmission, information feedback, etc.
[0161] Based on the above system, the present application further provides a digital human representation method, comprising the following steps:
[0162] Step 1: The digital human local block division module in the digital human cloud platform / edge platform (i.e. the above network platform) divides the digital human into multiple local blocks (i.e. the above first blocks), and sets the importance of the local blocks;
[0163] Here, the division can be performed in 2D space or 3D space, and can adopt a division manner of four-screen, nine-grid, pyramid or any other shape;
[0164] Step 2: The local block encoding module in the digital human cloud platform / edge platform encodes the local blocks;
[0165] Here, the encoding (i.e. the identification of the above first blocks) can represent the spatial and temporal position relationship between the local blocks, and the encoding manner can include zigzag scanning encoding or undirected graph encoding and the like;
[0166] Step 3: The local block file generation module in the digital human cloud platform / edge platform independently stores the digital human content of the local blocks;
[0167] Step 4: The local block file generation module in the digital human cloud platform / edge platform independently stores the driving information (i.e. the above fifth information) corresponding to the digital human of the local blocks;
[0168] Step 5: The encoding and local block transmission module in the digital human cloud platform / edge platform generates an encoding data structure (i.e. the above first information);
[0169] Here, the encoding data structure can include the encoding order (i.e. the arrangement order of the identification of each of the above first blocks), and the importance (i.e. the above fourth information) and driving information (i.e. the above fifth information) of the corresponding local blocks; in addition, the encoding and local block transmission module can independently store the encoding data structure.
[0170] In actual application, steps 2, 3 and 4 in the digital human representation method provided by the present application example can have no execution relationship.
[0171] Based on the above system, the present application example further provides a digital human transmission method, comprising the following steps:
[0172] Step 1: The encoding and local block transmission module in the digital human cloud platform / edge platform reads the digital human encoding data structure (i.e. the above first information), and sends the digital human encoding data structure to the terminal;
[0173] Step 2: According to the importance of the local blocks, the encoding and local block transmission module sends the digital human local blocks with the highest importance and the corresponding driving information to the terminal;
[0174] Step 3: After receiving the digital human encoding data structure, the terminal feeds back the number of local blocks that the terminal can support to the transmission information interaction judgment module in the digital human cloud platform / edge platform according to the terminal's own capability, that is, feeds back the second information mentioned above;
[0175] Step 4: After receiving the digital human local block, the terminal feeds back the receiving delay, whether the local block has packet loss, and the packet loss rate and other information to the transmission information interaction judgment module, that is, feeds back the third information mentioned above;
[0176] Step 5: The transmission information interaction judgment module determines whether to continue sending local blocks according to the terminal feedback delay, packet loss and other information (i.e., the third information mentioned above);
[0177] Here, if the delay is too large (such as comparing the cumulative delay of the local block with the delay corresponding to the digital human frame rate, or comparing the current local block delay with the average sending delay of the local block), the encoding and local block transmission module stops sending the current frame of digital human content, jumps to the next frame of content, that is, sends the encoding data structure (i.e., the first information mentioned above) of the next frame and one or more local blocks; if the packet loss is too large (the digital human cloud platform / edge platform can set the threshold value as needed), the encoding and local block transmission module repeatedly sends the current digital human local block;
[0178] Step 6: The transmission information interaction judgment module determines whether the current frame of digital human content has been sent according to the number of local blocks that the terminal can support (i.e., the second information mentioned above).
[0179] In actual application, steps 4, 5, and 6 in the digital human transmission method provided by the present application example can be executed after each digital human local block transmission, and steps 5 and 6 can be executed in parallel.
[0180] The digital human representation method provided by the present application example will be described in detail below in combination with one frame of digital human shown in FIG. 4. The method can include:
[0181] Step 1: As shown in FIG. 4, one frame of digital human (i.e., the first frame mentioned above) is divided into five local blocks (i.e., the first block mentioned above), and the importance (i.e., the fourth information mentioned above) set for the local blocks is 100, 90, 80, 60, and 50 in turn, obtaining five rectangular local blocks;
[0182] Step 2: Encode the local blocks;
[0183] Wherein, the encoding of the 5 local blocks (i.e. the identification of the first block mentioned above) can be 1 to 5, and the encoding order can represent the spatial and temporal position relationship between the local blocks; the spatial position relationship can include the top-left corner coordinates of the local block, such as (0, 0, 250, 100), and can also include the length and width values of the local block; for a 3D image, the spatial position relationship can include the 3D coordinates of the top-left corner and the length, width and height values of the local block; in addition, the encoding can adopt a zigzag scanning manner, i.e. encoding from top to bottom and from left to right;
[0184] Step 3: independently store the digital human content of the local block;
[0185] Wherein, the 5 local blocks of the digital human can be stored as 5 digital human files respectively, and there can be no special requirements for the file format;
[0186] Step 4: independently store the driving information (i.e. the fifth information mentioned above) corresponding to the local block of the digital human;
[0187] Wherein, the driving information of the 5 local blocks of the digital human can be stored as 5 digital human driving files respectively, and there can be no special requirements for the file format;
[0188] Step 5: generate an encoding data structure (i.e. the first information mentioned above);
[0189] Here, the digital human cloud platform / edge platform can write the digital human local block 1 "1, (0, 0, 250, 100), 100" to the digital human local block 5 "5, (0, 250, 250, 250), 50" into the encoding data structure, and store the encoding data structure as an independent file, and there can be no special requirements for the file format.
[0190] The digital human transmission method provided by the present application example will be described in detail below in combination with a frame of digital human shown in FIG. 4, which can include:
[0191] Step 1: the digital human cloud platform / edge platform reads the digital human encoding data structure (i.e. the first information mentioned above), i.e. reads the digital human local block 1 "1, (0, 0, 250, 100), 100" to the digital human local block 5 "5, (0, 250, 250, 250), 50", and sends the encoding data structure to the terminal;
[0192] Step 2: according to the importance of the local block, the digital human cloud platform / edge platform sends the digital human local block with the highest importance to the terminal, i.e. sends the digital human local block 1 "1, (0, 0, 250, 100), 100", and the corresponding driving information (i.e. the fifth information mentioned above);
[0193] Step 3: After receiving the digital human encoding data structure, the terminal feeds back the number of local blocks that the terminal can support to the digital human cloud platform / edge platform according to the terminal's own capability (i.e., the second information described above);
[0194] Here, it is assumed that the terminal screen size is limited and can only receive 1 to 4 local blocks, i.e., the number of digital human local blocks that the terminal can support is 4;
[0195] Step 4: After receiving the digital human local block 1, the terminal feeds back the receiving delay, whether the local block has packet loss, and the packet loss rate, etc. information (i.e., the third information described above) to the platform;
[0196] Here, it is assumed that the transmission network quality of the local block 1 is good, with a delay of 5 milliseconds (ms) and no packet loss;
[0197] Step 5: The digital human cloud platform / edge platform receives the feedback of the number of receivable local blocks 4 from the terminal;
[0198] Step 6: The digital human cloud platform / edge platform receives the feedback of the delay and packet loss rate of the local block 1 from the terminal, judges whether 4 local blocks have been sent currently; if not, continue to send the local block; at the same time, it is assumed that the delay of the local block 1 is 5 ms, the average local block delay is 5 ms, the delay of the data block to be sent is expected to be 5 ms, which is less than the remaining delay margin 35 ms corresponding to the digital human frame rate 25; at the same time, it is judged that the packet loss of the local block 1 is 0, which is less than the threshold (i.e., the first threshold described above); then the second local block is continued to be sent;
[0199] Step 7: After receiving the digital human local block 2, the terminal feeds back the receiving delay, whether the local block has packet loss, and the packet loss rate, etc. information (i.e., the third information described above) to the platform;
[0200] Here, it is assumed that the transmission network of the local block 2 occurs jitter, with a delay of 7 ms and a packet loss of 60%;
[0201] Step 8: The digital human cloud platform / edge platform receives the feedback of the delay and packet loss rate of the local block 2 from the terminal, judges whether 4 local blocks have been sent currently; if not, continue to send the local block; at the same time, it is assumed that the delay of the local block 2 is 7 ms, the cumulative delay is 12 ms, the average local block delay is 6 ms, the delay of the data block to be sent is expected to be 6 ms, which is less than the remaining delay margin 28 ms corresponding to the digital human frame rate 25; at the same time, it is judged that the packet loss of the local block 2 is 60%, which is greater than the threshold (i.e., the first threshold described above), indicating that the current local block 2 has a problem in playing on the terminal, and the second local block is repeatedly sent;
[0202] Step 9: After receiving the digital human local block 2 again, the terminal feeds back the receiving delay, whether the local block has packet loss, and the packet loss rate, etc. information (i.e., the third information described above) to the platform;
[0203] Here, it is assumed that the delay of the locally-block 2 received again is 10 ms, and the packet loss is 3%;
[0204] Step 10: The digital human cloud platform / edge platform receives the delay and packet loss rate of the retransmitted locally-block 2 fed back by the terminal, judges whether 4 locally-blocks have been sent currently, if not, continues to send the locally-blocks; at the same time, it is assumed that the delay of the retransmitted locally-block 2 is 10 ms, the cumulative delay is 22 ms, the average locally-block delay is about 7 ms, the delay of the data block to be sent is expected to be 7 ms, which is less than the remaining delay margin 18 ms corresponding to the digital human frame rate 25; at the same time, it is judged that the packet loss of the retransmitted locally-block 2 is 3%, which is less than the threshold (i.e. the first threshold described above), so the third locally-block is continued to be sent.
[0205] Step 11: After receiving the digital human locally-block 3, the terminal feeds back to the platform the receiving delay, whether the locally-block has packet loss, and the packet loss rate and other information (i.e. the third information described above);
[0206] Here, it is assumed that the delay of the locally-block 3 received is 15 ms, and the packet loss is 5%;
[0207] Step 12: The digital human cloud platform / edge platform receives the delay and packet loss rate of the locally-block 3 fed back by the terminal, judges whether 4 locally-blocks have been sent currently, if not, continues to send the locally-blocks; at the same time, it is assumed that the delay of the locally-block 3 is 15 ms, the cumulative delay is 37 ms, the average locally-block delay is 9 ms, the delay of the data block to be sent is expected to be 9 ms, which is greater than the remaining delay margin 3 ms corresponding to the digital human frame rate 25, so the current frame is stopped to be sent, and the next frame of the digital human is adjusted, that is, one or more items in the encoding data structure and the locally-block of the next frame are sent.
[0208] The scheme provided by the application example can independently represent and transmit each key part of the digital human model, and can independently represent and transmit the digital human driving information, so that the flexible transmission of the digital human between the digital human cloud platform / edge platform and the terminal can be realized, and different conditions of the network and different capabilities of the terminal can be adapted, that is, the digital human content transmission can be realized in the case that the network fluctuates or the terminal is limited, and the real-time performance, stability and user experience of the digital human service can be effectively ensured.
[0209] In order to realize the method of the terminal side of the embodiment of the application, the embodiment of the application further provides an information transmission device arranged on a terminal, as shown in FIG. 5, which comprises:
[0210] The first receiving unit 501 is configured to receive the first information sent by the network platform, wherein the first information contains the related information of a plurality of first blocks, and the plurality of first blocks are obtained by dividing a first frame of a digital human;
[0211] The first sending unit 502 is configured to send second information to the network platform, the second information being used to indicate a number of first blocks capable of being received by the terminal, the second information being associated with the capability of the terminal.
[0212] The second receiving unit 503 is configured to receive one or more first blocks sent by the network platform, the one or more first blocks being sent by the network platform based on one or more of the second information and third information, the third information representing a transmission network quality between the terminal and the network platform.
[0213] In some optional embodiments, the second receiving unit 503 is further configured to receive the one or more first blocks and fifth information of each first block sent by the network platform, the fifth information being used to drive the corresponding first block, the one or more first blocks and the fifth information of each first block being sent by the network platform based on an order of importance of the plurality of first blocks from high to low.
[0214] In some optional embodiments, as shown in FIG. 5, the apparatus can further include:
[0215] The second sending unit 504 is configured to, for each received first block, send, to the network platform, the third information associated with the corresponding first block, the third information including one or more of the following:
[0216] a receiving time delay of the corresponding first block;
[0217] sixth information representing whether there is a packet loss of the corresponding first block;
[0218] a packet loss rate of the corresponding first block.
[0219] In some optional embodiments, when the third information includes the packet loss rate of the corresponding first block, the second receiving unit 503 is further configured to, when the packet loss rate of the corresponding first block is greater than a first threshold, receive the corresponding first block repeatedly sent by the network platform.
[0220] The functions of the first receiving unit 501, the first sending unit 502, the second receiving unit 503 and the second sending unit 504 are equivalent to those of the transmission information feedback module in the above application examples.
[0221] In actual applications, the first receiving unit 501, the first sending unit 502, the second receiving unit 503 and the second sending unit 504 can be implemented by a communication interface in an information transmission apparatus.
[0222] To implement the method of the network platform side of the embodiments of the present application, the embodiments of the present application further provide an information transmission device arranged on a network platform, as shown in FIG. 6, the device comprises:
[0223] a third sending unit 601 configured to send first information to a terminal, the first information containing relevant information of a plurality of first blocks, the plurality of first blocks being obtained by dividing a first frame of a digital human;
[0224] a third receiving unit 602 configured to receive second information sent by the terminal, the second information being used to indicate a number of first blocks that can be received by the terminal, the second information being associated with a capability of the terminal;
[0225] a fourth sending unit 603 configured to send one or more first blocks to the terminal based on one or more of the second information and third information, the third information representing a transmission network quality between the terminal and the network platform.
[0226] In some optional embodiments, the fourth sending unit 603 is further configured to send the one or more first blocks and fifth information of each first block to the terminal based on an order from high to low of importance degrees of the plurality of first blocks, the fifth information being used to drive the corresponding first block; wherein,
[0227] In a case where one or more of a first condition and a second condition are met, the fourth sending unit 603 is further configured to stop sending the first blocks to the terminal, the first condition being met including that a number of first blocks sent by the network platform is equal to the number of first blocks indicated by the second information, and the second condition being met including that the third information represents that a transmission network between the terminal and the network platform is jittered.
[0228] In some optional embodiments, as shown in FIG. 6, the device can further comprise:
[0229] a fourth receiving unit 604 configured to receive, for each first block sent, the third information associated with the corresponding first block and sent by the terminal, the third information containing one or more of the following:
[0230] a receiving time delay of the corresponding first block;
[0231] sixth information representing whether the corresponding first block has packet loss;
[0232] a packet loss rate of the corresponding first block.
[0233] In some optional embodiments, when the third information comprises the packet loss rate of the corresponding first block, the fourth sending unit 603 is further configured to repeatedly send the corresponding first block to the terminal when the packet loss rate of the corresponding first block is greater than a first threshold.
[0234] In some optional embodiments, as shown in FIG. 6, the apparatus can further include:
[0235] The storage unit 605 is configured to perform one or more of the following operations:
[0236] independently storing each of the first blocks;
[0237] independently storing fifth information of each of the first blocks, the fifth information being used to drive the corresponding first block;
[0238] independently storing the first information.
[0239] The functions of the third sending unit 601, the third receiving unit 602, the fourth sending unit 603 and the fourth receiving unit 604 are equivalent to part of the functions of the encoding and partial block transmission module in the above application examples; the function of the storage unit 605 is equivalent to part of the functions of the partial block encoding module, the partial block file generation module and the encoding and partial block transmission module in the above application examples.
[0240] In actual applications, the third sending unit 601, the third receiving unit 602, the fourth sending unit 603 and the fourth receiving unit 604 can be implemented by a communication interface in an information transmission apparatus; and the storage unit 605 can be implemented by a processor in the information transmission apparatus.
[0241] It should be noted that: the information transmission apparatus provided by the above embodiments in information transmission, only the above-mentioned each program module is divided and taken as an example, in actual application, can according to the need of the above-mentioned processing allocation by different program modules (such as the transmission information feedback module in the above application example, for example, the partial block encoding module, the partial block file generation module, the encoding and partial block transmission module in the above application example) is divided into different program modules, to complete all or part of the processing described above. In addition, the information transmission apparatus and the information transmission method provided by the above embodiments belong to the same concept, and the specific implementation process is shown in the method embodiments, which will not be repeated here.
[0242] Based on the hardware implementation of the above program modules, and in order to realize the method of the terminal side in the present application embodiment, the present application embodiment further provides a terminal, as shown in FIG. 7, the terminal 700 includes:
[0243] The first communication interface 701 is capable of interacting with one or more of a network platform, other terminals, and the like.
[0244] The first processor 702 is connected to the first communication interface 701 to realize information interaction with one or more of a network platform, other terminals, and the like, and is configured to execute a computer program to implement the method provided by one or more of the technical solutions on the terminal side.
[0245] The first memory 703 stores the computer program.
[0246] Specifically, the first communication interface 701 is configured to:
[0247] receive first information sent by a network platform, wherein the first information contains relevant information of a plurality of first blocks, and the plurality of first blocks are obtained by dividing a first frame of a digital person;
[0248] send second information to the network platform, wherein the second information is used to indicate the number of first blocks that the terminal 700 can receive, and the second information is associated with the capability of the terminal 700;
[0249] receive one or more first blocks sent by the network platform, wherein the one or more first blocks are sent by the network platform based on one or more of the second information and third information, and the third information represents the transmission network quality between the terminal 700 and the network platform.
[0250] In some optional embodiments, the first communication interface 701 is further configured to receive the one or more first blocks and fifth information of each first block sent by the network platform, wherein the fifth information is used to drive the corresponding first block, and the one or more first blocks and the fifth information of each first block are sent by the network platform based on the descending order of the importance of the plurality of first blocks.
[0251] In some optional embodiments, the first communication interface 701 is further configured to send, to the network platform, the third information associated with the corresponding first block for each received first block, wherein the third information contains one or more of the following:
[0252] the receiving delay of the corresponding first block;
[0253] sixth information representing whether there is packet loss in the corresponding first block;
[0254] the packet loss rate of the corresponding first block.
[0255] In some optional embodiments, when the third information comprises the packet loss rate of the corresponding first block, the first communication interface 701 is further configured to receive the corresponding first block repeatedly sent by the network platform when the packet loss rate of the corresponding first block is greater than a first threshold.
[0256] It should be noted that the specific processing process of the first communication interface 701 can be understood with reference to the above method, which will not be repeated here.
[0257] Of course, in actual application, various components in the terminal 700 are coupled together through the bus system 704. It can be understood that the bus system 704 is used to realize the connection communication between the components. In addition to the data bus, the bus system 704 also includes a power bus, a control bus and a status signal bus. However, for the purpose of clear illustration, various buses are marked as the bus system 704 in FIG. 7.
[0258] The first memory 703 in the embodiment of the present application is used to store various types of data to support the operation of the terminal 700. Examples of these data include: any computer programs used for operation on the terminal 700.
[0259] The method disclosed by the above embodiments of the present application can be applied to the first processor 702 or implemented by the first processor 702. The first processor 702 can be an integrated circuit chip with signal processing capability. In the implementation process, each step of the above method can be completed by the integrated logic circuit of hardware or the instruction in the form of software in the first processor 702. The first processor 702 can be a general-purpose processor, a digital signal processor (DSP), or other programmable logic device, discrete gate or transistor logic device, discrete hardware component, etc. The first processor 702 can implement or execute the disclosed methods, steps and logic block diagrams in the embodiments of the present application. The general-purpose processor can be a microprocessor or any conventional processor, etc. In combination with the steps of the method disclosed in the embodiments of the present application, the hardware decoding processor can be directly embodied to execute the above steps, or the combination of hardware and software modules in the decoding processor can be executed. The software module can be located in the storage medium, which is located in the first memory 703, and the first processor 702 reads the information in the first memory 703, and combines the hardware to complete the steps of the above method.
[0260] In exemplary embodiments, the terminal 700 can be implemented by one or more Application Specific Integrated Circuits (ASICs), DSPs, Programmable Logic Devices (PLDs), Complex Programmable Logic Devices (CPLDs), Field-Programmable Gate Arrays (FPGAs), general-purpose processors, controllers, microcontrollers (MCUs), microprocessors (Microprocessors), or other electronic elements for executing the foregoing methods.
[0261] Based on the hardware implementation of the foregoing program modules, and in order to implement the method of the network platform side of the embodiments of the present application, the embodiments of the present application further provide a network platform, as shown in FIG. 8, the network platform 800 comprises:
[0262] a second communication interface 801 capable of interacting with one or more of the terminal, other network platforms;
[0263] a second processor 802 connected with the second communication interface 801 to realize information interaction with one or more of the terminal, other network platforms, and configured to run a computer program to execute the method provided by one or more technical solutions of the network platform side;
[0264] a second memory 803, wherein the computer program is stored in the second memory 803.
[0265] Specifically, the second communication interface 801 is configured to:
[0266] send first information to the terminal, wherein the first information contains the related information of a plurality of first blocks, and the plurality of first blocks are obtained by dividing a first frame of a digital human;
[0267] receive second information sent by the terminal, wherein the second information is used to indicate the number of first blocks that can be received by the terminal, and the second information is associated with the capability of the terminal;
[0268] based on one or more of the second information and third information, send one or more first blocks to the terminal, wherein the third information represents the transmission network quality between the terminal and the network platform 800.
[0269] In some optional embodiments, the second communication interface 801 is further configured to send, to the terminal, the one or more first blocks and fifth information of each first block based on the ordering of the importance of the plurality of first blocks from high to low, the fifth information being used to drive the corresponding first block.
[0270] In the case where one or more of the first condition and the second condition are met, the second communication interface 801 is further configured to stop sending the first block to the terminal, the meeting of the first condition comprising that the number of the first blocks sent by the network platform 800 is equal to the number of the first blocks indicated by the second information, and the meeting of the second condition comprising that the third information represents that the transmission network between the terminal and the network platform 800 is jittered.
[0271] In some optional embodiments, the second communication interface 801 is further configured to, for each first block sent, receive the third information associated with the corresponding first block sent by the terminal, the third information comprising one or more of the following:
[0272] the receiving time delay of the corresponding first block;
[0273] the sixth information representing whether there is packet loss of the corresponding first block;
[0274] the packet loss rate of the corresponding first block.
[0275] In some optional embodiments, in the case where the third information comprises the packet loss rate of the corresponding first block, the second communication interface 801 is further configured to repeatedly send the corresponding first block to the terminal when the packet loss rate of the corresponding first block is greater than a first threshold.
[0276] In some optional embodiments, the second processor 802 can be configured to perform one or more of the following:
[0277] independently storing each first block of the plurality of first blocks in the second memory 803;
[0278] independently storing the fifth information of each first block of the plurality of first blocks in the second memory 803, the fifth information being used to drive the corresponding first block;
[0279] independently storing the first information in the second memory 803.
[0280] It should be noted that the specific processing process of the second communication interface 801 and the second processor 802 can be understood with reference to the above method, which will not be described here.
[0281] Of course, in actual applications, various components in the network platform 800 are coupled together through the bus system 804. It can be understood that the bus system 804 is used to realize the connection communication between the components. The bus system 804 includes not only a data bus, but also a power supply bus, a control bus, and a status signal bus. However, for the purpose of clear illustration, various buses are marked as the bus system 804 in FIG. 8.
[0282] The second memory 803 in the embodiment of the present application is used to store various types of data to support the operation of the network platform 800. Examples of the data include any computer programs used for operation on the network platform 800.
[0283] The method disclosed in the above embodiment of the present application can be applied to or implemented by the second processor 802. The second processor 802 can be an integrated circuit chip with a signal processing capability. In the implementation process, each step of the above method can be completed by the integrated logic circuit of hardware or the instruction in the form of software in the second processor 802. The second processor 802 can be a general-purpose processor, a DSP, or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The second processor 802 can realize or execute the disclosed methods, steps, and logic block diagrams in the embodiments of the present application. The general-purpose processor can be a microprocessor or any conventional processor, etc. In combination with the steps of the method disclosed in the embodiments of the present application, the hardware decoding processor can be directly embodied to execute the completion, or the hardware and software modules in the decoding processor are combined to execute the completion. The software module can be located in the storage medium, which is located in the second memory 803. The second processor 802 reads the information in the second memory 803 and combines the hardware to complete the steps of the above method.
[0284] In the exemplary embodiments, the network platform 800 can be implemented by one or more ASICs, DSPs, PLDs, CPLDs, FPGAs, general-purpose processors, controllers, MCUs, microprocessors, or other electronic elements, for executing the above method.
[0285] It can be understood that the memory (the first memory 703 and the second memory 803) of the embodiments of the present application can be a volatile memory or a non-volatile memory, and can also include both volatile and non-volatile memories. The non-volatile memory can be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), a ferromagnetic random access memory (FRAM), a flash memory, a magnetic surface memory, an optical disc, or a compact disc read-only memory (CD-ROM). The magnetic surface memory can be a disk memory or a tape memory. The volatile memory can be a random access memory (RAM) used as an external cache. By way of example but not limitation, many forms of RAM can be used, such as static random access memory (SRAM), synchronous static random access memory (SSRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM), and direct rambus random access memory (DRRAM).The memory described in the embodiments of the present application is intended to include, but not limited to, these and any other suitable types of memory.
[0286] To implement the method provided by the embodiments of the present application, the embodiments of the present application further provide an information transmission system, as shown in FIG. 9, which comprises a terminal 901 and a network platform 902.
[0287] Here, it should be noted that the specific processing procedures of the terminal 901 and the network platform 902 have been described in detail above, and will not be described here.
[0288] In exemplary embodiments, the embodiments of the present application further provide a storage medium, i.e., a computer storage medium, specifically a computer readable storage medium, such as a first memory 703 storing a computer program, which can be executed by the first processor 702 of the terminal 700 to complete the steps of any method described above on the terminal side. For example, a second memory 803 storing a computer program, which can be executed by the second processor 802 of the network platform 800 to complete the steps of any method described above on the network platform side. The computer readable storage medium can be FRAM, ROM, PROM, EPROM, EEPROM, Flash Memory, magnetic surface memory, optical disc, or CD-ROM, etc.
[0289] In exemplary embodiments, the embodiments of the present application further provide a computer program product comprising a computer program, which can be executed by the first processor 702 of the terminal 700 to complete the steps of any method described above on the terminal side; or the computer program can be executed by the second processor 802 of the network platform 800 to complete the steps of any method described above on the network platform side.
[0290] It should be noted that "first", "second", etc. are used to distinguish similar objects, and do not necessarily describe a specific order or sequence.
[0291] In addition, the technical solutions described in the embodiments of the present application can be combined arbitrarily without conflict.
[0292] The above is only a preferred embodiment of the present application, and is not intended to limit the protection scope of the present application.
Claims
1. A method for information transmission, applied to a terminal, comprising: receiving first information sent by a network platform, the first information containing information related to a plurality of first blocks, the plurality of first blocks being obtained by dividing a first frame of a digital human; sending second information to the network platform, the second information being used to indicate a number of first blocks that the terminal can receive, the second information being associated with a capability of the terminal; receiving one or more first blocks sent by the network platform, the one or more first blocks being sent by the network platform based on one or more of the second information and third information, the third information representing a quality of a transmission network between the terminal and the network platform.
2. The method of claim 1, wherein, The first information contains one or more of: spatial position relationships between the plurality of first blocks; temporal position relationships between the plurality of first blocks; fourth information of each first block, the fourth information representing an importance of the corresponding first block; fifth information of each first block, the fifth information being used to drive the corresponding first block; an identifier of each first block.
3. The method of claim 1, wherein, The receiving the one or more first blocks sent by the network platform comprises: receiving the one or more first blocks and the fifth information of each first block sent by the network platform, the fifth information being used to drive the corresponding first block, the one or more first blocks and the fifth information of each first block being sent by the network platform based on an order from high to low of the importance of the plurality of first blocks.
4. The method of claim 3, wherein, The method further comprises: for each received first block, sending, to the network platform, the third information associated with the corresponding first block, the third information containing one or more of: a receiving delay of the corresponding first block; sixth information representing whether there is a packet loss of the corresponding first block; a packet loss rate of the corresponding first block.
5. The method of claim 4, wherein, In a case where the third information contains the packet loss rate of the corresponding first block, the method further comprises: when the packet loss rate of the corresponding first block is greater than a first threshold, receiving the corresponding first block repeatedly sent by the network platform.
6. A method for information transmission, applied to a network platform, comprising: sending first information to a terminal, the first information containing information related to a plurality of first blocks, the plurality of first blocks being obtained by dividing a first frame of a digital human; receiving second information sent by the terminal, the second information being used to indicate a number of first blocks that the terminal can receive, the second information being associated with a capability of the terminal; sending one or more first blocks to the terminal based on one or more of the second information and third information, the third information representing a quality of a transmission network between the terminal and the network platform.
7. The method of claim 6, wherein, The first information contains one or more of: spatial position relationships between the plurality of first blocks; temporal position relationships between the plurality of first blocks; fourth information of each first block, the fourth information representing an importance of the corresponding first block; fifth information of each first block, the fifth information being used to drive the corresponding first block; an identifier of each first block.
8. The method of claim 6, wherein, The sending of the one or more first blocks to the terminal based on one or more of the second information, third information, includes: The sending of the one or more first blocks and fifth information of each first block to the terminal based on an order of importance of the plurality of first blocks from high to low, the fifth information being used to drive the corresponding first block; wherein, In the case where one or more of a first condition, a second condition is met, the sending of the first block to the terminal is stopped, the meeting of the first condition including the number of first blocks sent by the network platform being equal to the number of first blocks indicated by the second information, the meeting of the second condition including the third information representing that the transmission network between the terminal and the network platform is experiencing jitter.
9. The method of claim 8, wherein, The method further includes: For each first block sent, the receiving of the third information associated with the corresponding first block sent by the terminal, the third information including one or more of: The receiving time delay of the corresponding first block; Sixth information representing whether the corresponding first block has packet loss; The packet loss rate of the corresponding first block.
10. The method of claim 9, wherein, In the case where the third information includes the packet loss rate of the corresponding first block, the method further includes: When the packet loss rate of the corresponding first block is greater than a first threshold, the repeated sending of the corresponding first block to the terminal.
11. The method according to any one of claims 6 to 10, wherein, The method further includes one or more of: The independent storage of each first block in the plurality of first blocks; The independent storage of the fifth information of each first block in the plurality of first blocks, the fifth information being used to drive the corresponding first block; The independent storage of the first information.
12. An information transmission apparatus, comprising: A first receiving unit configured to receive first information sent by a network platform, the first information including relevant information of a plurality of first blocks, the plurality of first blocks being obtained by dividing a first frame of a digital human; A first sending unit configured to send second information to the network platform, the second information being used to indicate the number of first blocks that can be received by a terminal, the second information being associated with the capability of the terminal; A second receiving unit configured to receive one or more first blocks sent by the network platform, the one or more first blocks being sent by the network platform based on one or more of the second information, third information, the third information representing the quality of a transmission network between the terminal and the network platform.
13. An information transmission apparatus, comprising: A third sending unit configured to send first information to a terminal, the first information including relevant information of a plurality of first blocks, the plurality of first blocks being obtained by dividing a first frame of a digital human; A third receiving unit configured to receive second information sent by the terminal, the second information being used to indicate the number of first blocks that can be received by the terminal, the second information being associated with the capability of the terminal; A fourth sending unit configured to send one or more first blocks to the terminal based on one or more of the second information, third information, the third information representing the quality of a transmission network between the terminal and a network platform.
14. A terminal comprising: A first communication interface and a first processor; wherein, The first communication interface is configured to: receive first information sent by a network platform, the first information containing information related to a plurality of first blocks, the plurality of first blocks being obtained by dividing a first frame of a digital human; send second information to the network platform, the second information being used to indicate a number of first blocks that the terminal can receive, the second information being associated with a capability of the terminal; receive one or more first blocks sent by the network platform based on one or more of the second information and third information, the third information representing a transmission network quality between the terminal and the network platform.
15. A network platform comprising: a second communication interface and a second processor; wherein the second communication interface is configured to: send first information to a terminal, the first information containing information related to a plurality of first blocks, the plurality of first blocks being obtained by dividing a first frame of a digital human; receive second information sent by the terminal, the second information being used to indicate a number of first blocks that the terminal can receive, the second information being associated with a capability of the terminal; send one or more first blocks to the terminal based on one or more of the second information and third information, the third information representing a transmission network quality between the terminal and the network platform.
16. A terminal comprising: a first processor and a first memory for storing a computer program capable of running on the processor, wherein the first processor is configured to execute the steps of the method according to any one of claims 1 to 5 when running the computer program.
17. A network platform comprising: a second processor and a second memory for storing a computer program capable of running on the processor, wherein the second processor is configured to execute the steps of the method according to any one of claims 6 to 11 when running the computer program.
18. A storage medium having a computer program stored thereon, the computer program being executed by a processor to implement the steps of the method according to any one of claims 1 to 5, or to implement the steps of the method according to any one of claims 6 to 11.
19. A computer program product comprising a computer program, the computer program being executed by a processor to implement the steps of the method according to any one of claims 1 to 5, or to implement the steps of the method according to any one of claims 6 to 11.