Communication method and communication apparatus
Patent Information
- Application Number
- CN202510472263.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-15
- Publication Date
- 2026-10-23
AI Technical Summary
由于卫星距离地面远,数据传输速率慢,无法支持较高的编码速率,因此通话的语音质量较差
[0038]基于第五方面所描述的方法,第一终端可以使用第二模型进行语音通话,第二模型为基于AI的编码器模型,由于AI技术可以通过学习音频信号的特征,实现更高的压缩效率,有利于在编码速率较低的情况下提高语音信号质量。另一方面,该方法也可以使接收端和发送端在使用不同的编码器模型的情况下也能够进行语音通信,即第一终端使用第二模型,第二终端使用第三模型,避免了由于不同类型的语音编解码器带来的无法通信问题。
Smart Images

Figure CN122970075A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of communication technology, and in particular to communication methods and communication devices. Background Technology
[0002] Satellites offer extensive coverage, allowing users in remote areas to make voice calls via satellite using their mobile phones. Encoding rate is a crucial factor affecting the voice call experience; it refers to the amount of data an encoder processes or transmits per unit of time. Generally, a higher encoding rate results in better voice quality. However, due to the distance between satellites and the ground, data transmission rates are slow, hindering the support for high encoding rates and leading to poor voice quality. Therefore, improving voice call quality is a pressing technical challenge. Summary of the Invention
[0003] This application provides a communication method and a communication device, which are beneficial to improving the voice quality of calls.
[0004] In a first aspect, this application provides a communication method, which can be applied to a first terminal, or to a processor, module, chip, chip system, or functional module of the first terminal for implementing the method. The method includes: sending a call request, the call request instructing the first terminal to request a voice call with a second terminal, the call request including identifiers of M first models supported by the first terminal, the M first models being AI-based codec models, where M is a positive integer; receiving a call response, the call response including an identifier of a second model, the second model being one of the M first models, or the second model being an AI-based codec model other than the M first models; encoding a first voice signal based on the second model to obtain first voice data; and sending the first voice data.
[0005] Based on the method described in the first aspect, both the first terminal and the second terminal use the second model for voice calls. The second model is an AI-based encoder model. Since AI technology can learn the characteristics of audio signals to achieve higher compression efficiency, it is beneficial for improving voice signal quality even at low encoding rates. In addition, the AI-based encoder model can automatically adapt to different audio environments and application scenarios, improving robustness, reducing negative impacts such as background noise and reverberation, and enhancing the user experience. Furthermore, by indicating the corresponding model through identifiers without restricting specific model parameters, the parameter passing problem of the AI model is avoided, and the internal parameters of the AI model are not defined in standard protocols, reducing standardization complexity and saving signaling overhead.
[0006] In some possible implementations, the second terminal supports N of the M first models, where the second model is one of the N first models and N is a positive integer less than M.
[0007] In some possible implementations, the second model is the highest priority model among the N first models. The M first models include public and private models, with the private model having a higher priority than the public model.
[0008] In some possible implementations, the identifiers of the M first models included in the call request are ordered based on the priority of the M first models. This allows the second terminal to preferentially select the first model with higher performance, which is beneficial for improving the voice quality of the call between the first and second terminals.
[0009] In some possible implementations, the second model is one of M first models, and the call response is also used to request parameters of the second model. The method also includes sending the parameters of the second model.
[0010] In some possible implementations, the method further includes: sending a first registration request, the first registration request including first capability information, the first capability information being used to indicate that a first terminal supports a first model.
[0011] In some possible implementations, the call request also includes M version numbers of the first model.
[0012] In some possible implementations, the first terminal and the second terminal conduct voice calls via a non-terrestrial network.
[0013] In some possible implementations, the voice call between the first terminal and the second terminal is an IMS voice call based on high-orbit satellites.
[0014] Secondly, this application provides a communication method, which can be applied to a first terminal, or to a processor, module, chip, chip system, or functional module of the first terminal for implementing the method. The method includes: receiving a call request, the call request instructing the first terminal to request a voice call with a second terminal, the call request including identifiers of M first models supported by the first terminal, the M first models being AI-based codec models, and M being a positive integer; sending a call response, the call response including an identifier of a second model, the second model being one of the M first models, or the second model being an AI-based codec model other than the M first models; receiving first voice data, and decoding the first voice data based on the second model to obtain a second voice signal.
[0015] The beneficial effects of the second aspect can be found in the description of the first aspect, and will not be repeated here.
[0016] In some possible implementations, the second terminal supports N of the M first models, where the second model is one of the N first models and N is a positive integer less than M.
[0017] In some possible implementations, the second model is the highest priority model among the N first models. The M first models include public and private models, with the private model having a higher priority than the public model.
[0018] In some possible implementations, the identifiers of the M first models included in the call request are ordered based on the priority of the M first models.
[0019] In some possible implementations, the second model is one of M first models, and the call response is also used to request parameters of the second model. The method also includes sending the parameters of the second model.
[0020] In some possible implementations, the method further includes: sending a first registration request, the first registration request including first capability information, the first capability information being used to indicate that a first terminal supports a first model.
[0021] In some possible implementations, the call request also includes M version numbers of the first model.
[0022] In some possible implementations, the first terminal and the second terminal conduct voice calls via a non-terrestrial network.
[0023] In some possible implementations, the voice call between the first terminal and the second terminal is an IMS voice call based on high-orbit satellites.
[0024] Thirdly, this application provides a communication method that can be applied to a first network element, or a processor, module, chip, chip system, or functional module of the first network element for implementing the method. The method includes: sending a call request to a second terminal, the call request instructing a first terminal to request a voice call with the second terminal, the call request including identifiers of M first models supported by the first terminal, the first models being AI-based codec models, and M being a positive integer; receiving a first call response from the second terminal, the first call response being a response from the second terminal based on the call request, the first call response including an identifier of a third model, the third model being different from the first model; and sending a second call response to the first terminal, the second call response including an identifier of a second model, the second model being one of the M first models.
[0025] Based on the method described in the third aspect, the first terminal can use the second model for voice calls. The second model is an AI-based encoder model. Since AI technology can learn the characteristics of audio signals to achieve higher compression efficiency, it is beneficial to improve the quality of voice signals even at low encoding rates. On the other hand, this method also enables the receiving and transmitting ends to communicate voice even when using different encoder models. That is, the first terminal uses the second model, and the second terminal uses the third model, avoiding communication problems caused by different types of voice codecs.
[0026] In some possible implementations, the method further includes: sending first information to a third network element, the first information being used to instruct the first terminal to use the second model and the second terminal to use the third model.
[0027] In some possible implementations, the method further includes: sending second information to a third network element, the second information including the identifiers of M first models; and receiving third information from the third network element, the third information including the identifiers of the second models.
[0028] In some possible implementations, the method further includes: receiving first voice data from a first terminal; decoding the first voice data based on a second model to obtain a second voice signal; encoding the second voice signal based on a third model to obtain second voice data; and sending the second voice data.
[0029] In some possible implementations, the method further includes: receiving first registration information from a first terminal, wherein the first registration request includes first capability information, and the first capability information is used to indicate that the first terminal supports a first model.
[0030] In some possible implementations, the first call response is also used to indicate the encoding rate desired by the second terminal.
[0031] In some possible implementations, the first terminal and the second terminal conduct voice calls via a non-terrestrial network.
[0032] In some possible implementations, the voice call between the first terminal and the second terminal is an IMS voice call based on high-orbit satellites.
[0033] Fourthly, this application provides a communication method that can be applied to a third network element, or a processor, module, chip, chip system, or functional module of the third network element for implementing the method. The method includes: receiving first information, which instructs a first terminal to adopt a second model and a second terminal to adopt a third model, wherein the second model is an AI-based codec model, and the third model is unrelated to AI; receiving first voice data from the first terminal; decoding the first voice data based on the first model to obtain a second voice signal; encoding the second voice signal based on the second model to obtain second voice data; and sending the second voice data to the second terminal.
[0034] The beneficial effects of the fourth aspect can be found in the description of the third aspect, and will not be repeated here.
[0035] In some possible implementations, the first terminal and the second terminal conduct voice calls via a non-terrestrial network.
[0036] In some possible implementations, the voice call between the first terminal and the second terminal is an IMS voice call based on high-orbit satellites.
[0037] Fifthly, this application provides a communication method that can be applied to a second terminal, or to a processor, module, chip, chip system, or functional module on the second terminal for implementing the method. The method includes: receiving a call request, the call request instructing a first terminal to request a voice call with the second terminal, the call request including an identifier of a third model; sending a third call response, the third call response including identifiers of L first models supported by the second terminal, where L is a positive integer, the first models are AI-based codec models, and the third models are different from the first models; receiving fourth information from a second network element, the fourth information including an identifier of a second model, the second model being one of the L first models; and receiving second voice data, decoding the second voice data based on the second model to obtain a third voice signal.
[0038] Based on the method described in the fifth aspect, the first terminal can use the second model for voice calls. The second model is an AI-based encoder model. Since AI technology can learn the characteristics of audio signals to achieve higher compression efficiency, it is beneficial to improve the quality of voice signals even at low encoding rates. On the other hand, this method also enables the receiving and transmitting ends to conduct voice communication even when using different encoder models. That is, the first terminal uses the second model, and the second terminal uses the third model, avoiding communication problems caused by different types of voice codecs.
[0039] In some possible implementations, the method further includes: sending a second registration request to a second network element, the second registration request including second capability information, the second capability information indicating that the second terminal supports the first model.
[0040] In some possible implementations, the first terminal and the second terminal conduct voice calls via a non-terrestrial network.
[0041] In some possible implementations, the voice call between the first terminal and the second terminal is an IMS voice call based on high-orbit satellites.
[0042] Sixthly, this application provides a communication method that can be applied to a second network element, or a processor, module, chip, chip system, or functional module of the second network element for implementing the method. The method includes: sending a call request, the call request instructing a first terminal to request a voice call with a second terminal, the call request including an identifier of a third model, the third model being different from the first model; receiving a third call response, the third call response including identifiers of L first models supported by the second terminal, where L is a positive integer, and the first model is an AI-based codec model; and sending fourth information to the second terminal, the fourth information including an identifier of the second model, the second model being one of the L first models.
[0043] The beneficial effects of the sixth aspect can be found in the description of the fifth aspect, and will not be repeated here.
[0044] In some possible implementations, the method further includes sending a fifth message to a third network element, the fifth message being used to instruct the second terminal to adopt the second model and the first terminal to adopt the third model.
[0045] In some possible implementations, the method further includes: sending a sixth message to a third network element, the sixth message including the identifiers of L first models; and receiving a seventh message from the third network element, the seventh message including the identifiers of second models.
[0046] In some possible implementations, the method further includes: receiving first voice data from a first terminal; decoding the first voice data based on a third model to obtain a second voice signal; encoding the second voice signal based on a second model to obtain second voice data; and sending the second voice data.
[0047] In some possible implementations, the method further includes: receiving second registration information from a second terminal, the second registration request including second capability information, the second capability information being used to indicate that the second terminal supports the first model.
[0048] In some possible implementations, the call request is also used to indicate the encoding rate desired by the first terminal.
[0049] In some possible implementations, the first terminal and the second terminal conduct voice calls via a non-terrestrial network.
[0050] In some possible implementations, the voice call between the first terminal and the second terminal is an IMS voice call based on high-orbit satellites.
[0051] In a seventh aspect, embodiments of this application provide a communication apparatus for executing a method in any possible implementation of either the first or sixth aspect. The communication apparatus includes a module for executing a method in any possible implementation of either the first or sixth aspect.
[0052] Eighthly, embodiments of this application provide a communication device including a processing circuit for executing a method in any possible implementation of either the first or sixth aspect. The processing circuit executes a program, and when the program is executed, the method described in any possible implementation of either the first or sixth aspect is performed.
[0053] In one possible implementation, the communication device further includes a memory for storing the program.
[0054] In one possible implementation, the memory is located outside the aforementioned communication device.
[0055] In one possible implementation, the memory is located within the aforementioned communication device.
[0056] Furthermore, the processing circuitry and memory can be integrated into a single device; that is, the processing circuitry and memory can be combined. For example, the communication device can be a chip.
[0057] In one possible implementation, the communication device further includes a transceiver circuit for receiving information (or inputting information) or sending information (or outputting information).
[0058] Ninthly, embodiments of this application provide a communication device, which includes a processing circuit and a transceiver circuit. The processing circuit can be a logic circuit, and the transceiver circuit can be an interface circuit. The logic circuit and the interface are coupled. The interface circuit is used to input and / or output information, and the logic circuit is used to execute a method of any possible implementation of any of the first and sixth aspects.
[0059] In a tenth aspect, this application provides a communication system, including a first terminal and a second terminal, as well as one or more network elements, including a first network element, a second network element, and a third network element.
[0060] Eleventhly, embodiments of this application provide a computer-readable storage medium for storing a computer program that, when run on a computer, causes the method described in any possible implementation of either the first or sixth aspect to be executed.
[0061] In a twelfth aspect, embodiments of this application provide a computer program product that, when run on a computer, causes the method shown in any possible implementation of either the first or sixth aspect to be executed. Attached Figure Description
[0062] Figure 1 This is a schematic diagram of a network system architecture provided in an embodiment of this application;
[0063] Figure 2 This is a schematic diagram of an application framework for a communication system provided in an embodiment of this application;
[0064] Figures 3a-3c The satellite communication network architecture provided in the embodiments of this application;
[0065] Figure 4 This is a flowchart illustrating a communication method provided in an embodiment of this application;
[0066] Figure 5 This is a flowchart illustrating a communication method provided in an embodiment of this application;
[0067] Figure 6 This is a flowchart illustrating a communication method provided in an embodiment of this application;
[0068] Figure 7 This is a flowchart illustrating a communication method provided in an embodiment of this application;
[0069] Figure 8 This is a flowchart illustrating a communication method provided in an embodiment of this application;
[0070] Figure 9 This is a schematic diagram of the structure of a communication device provided in an embodiment of this application;
[0071] Figure 10 This is a schematic diagram of the structure of a communication device provided in an embodiment of this application;
[0072] Figure 11 This is a schematic diagram of the structure of a communication device provided in an embodiment of this application. Detailed Implementation
[0073] To facilitate understanding of the technical solution of this application, the application will be further described below with reference to the accompanying drawings.
[0074] The terms "first" and "second," etc., used in the specification, claims, and drawings of this application are used only to distinguish different objects and not to describe a specific order. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover a non-exclusive inclusion. For example, a process, method, system, product, or device that includes a series of steps or units is not limited to the listed steps or units, but may optionally include steps or units not listed, or may optionally include other steps or units inherent to these processes, methods, products, or devices.
[0075] The term "embodiment" as used herein means that a particular feature, structure, or characteristic described in connection with an embodiment may be included in at least one embodiment of this application. The appearance of this phrase in various places throughout the specification does not necessarily refer to the same embodiment, nor is it a separate or alternative embodiment mutually exclusive with other embodiments. It will be explicitly and implicitly understood by those skilled in the art that the embodiments described herein can be combined with other embodiments.
[0076] In this application, "at least one (item)" refers to one or more, "more than one" refers to two or more, "at least two (items)" refers to two or three or more, and "and / or" is used to describe the relationship between related objects, indicating that there can be three relationships. For example, "A and / or B" can mean: only A exists, only B exists, and both A and B exist simultaneously, where A and B can be singular or plural. "Or" indicates that there can be two relationships, such as only A exists and only B exists; when A and B are not mutually exclusive, it can also mean that there are three relationships, such as only A exists, only B exists, and both A and B exist simultaneously. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. "At least one (item) of the following" or similar expressions refer to any combination of these items. For example, at least one (item) of a, b, or c can mean: a, b, c, "a and b", "a and c", "b and c", or "a and b and c".
[0077] In this application, "send" and "receive" indicate the direction of signal transmission. For example, "send information to XX" can be understood as the destination of the information being XX, which can include direct transmission via the air interface or indirect transmission via the air interface from other units or modules. "Receive information from YY" can be understood as the source of the information being YY, which can include direct reception from YY via the air interface or indirect reception from YY via the air interface from other units or modules. "Send" can also be understood as the "output" of a chip interface, and "receive" can also be understood as the "input" of a chip interface. In other words, sending and receiving can occur between devices, such as between network devices and terminal devices, or within a device, such as between components, modules, chips, software modules, or hardware modules within the device via buses, traces, or interfaces.
[0078] In this application, "...when" and "if" both refer to the corresponding processing that will be carried out under certain objective circumstances, and are not limited to a specific time. They do not require a judgment action during implementation, nor do they imply any other limitations.
[0079] In the embodiments of this application, the terms "exemplary" or "for example" are used to indicate that something is an example, illustration, or description. Any embodiment or design that is described as "exemplary" or "for example" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design. Specifically, the use of terms such as "exemplary" or "for example" is intended to present the relevant concepts in a specific manner to facilitate understanding.
[0080] In this application, "instruction" may include: direct instruction, or indirect instruction, or explicit instruction, or implicit instruction.
[0081] In this application, "including" can include: direct inclusion, indirect inclusion, explicit inclusion, or implicit inclusion.
[0082] The prior art may change as the technical solutions evolve, and the technical solutions provided in this application are not limited to the prior art provided.
[0083] It should be noted that different embodiments or some steps (e.g., any one or more steps) in different embodiments of this application can be combined with each other to form new embodiments. It should also be noted that the scope of this application is not limited to including optional steps in a certain embodiment, mandatory steps in a certain embodiment, or both optional and mandatory steps in a certain embodiment.
[0084] It should be noted that, unless otherwise specified or in case of logical conflict, the terminology and / or descriptions between different embodiments are consistent and can be referenced in each other.
[0085] It should be noted that the order of the steps in the embodiments of this application is not limited by this application.
[0086] It should be noted that the order in which different conditions are judged in the embodiments of this application is not limited by this application.
[0087] It should be noted that the terms "after" and "time" in this application do not strictly limit the specific point in time.
[0088] It should be noted that the nouns and terms used in this application are merely examples and may be other names, which are not limited in this application.
[0089] The technical solutions of this application can be applied to various communication systems, such as: Long Term Evolution (LTE) systems, LTE Frequency Division Duplex (FDD) systems, LTE Time Division Duplex (TDD) systems, New Radio (NR), the 3rd Generation Partner Project (3GPP) service-based architecture (SBA) and other fifth-generation (5G) communication systems or future communication systems.
[0090] Please see Figure 1 , Figure 1 This is a schematic diagram of a network system architecture provided in an embodiment of this application. Figure 1 As shown, terminal devices can access a wireless network to obtain services from an external network (e.g., a data network (DN)) or communicate with other devices, such as other terminal devices. This wireless network includes a radio access network (RAN) and a core network (CN). The RAN (hereinafter referred to as RAN) is used to connect terminal devices to the wireless network, while the CN manages the terminal devices and provides a gateway for communication with the DN. The following sections will discuss... Figure 1 The terminal equipment, RAN, CN, and DN involved in the system architecture are described in detail.
[0091] I. Terminal Equipment
[0092] A terminal device is a device with wireless transceiver capabilities. It can communicate with RAN nodes. Terminal devices can also be referred to as user equipment (UE), access terminal, terminal, subscriber unit, user station, mobile station, remote station, remote terminal, mobile device, user terminal, user agent, or user device, etc. In one possible implementation, the terminal device can be deployed on land, including indoors or outdoors, handheld or vehicle-mounted; or it can be deployed on water, including ships; or it can be deployed in the air, such as on airplanes, balloons, or satellites. In another possible implementation, the terminal device can be a handheld device with wireless communication capabilities, vehicle-mounted device, wearable device, sensor, terminal in the Internet of Things, terminal in the Internet of Vehicles, drone, 5G network, or any form of terminal device in future networks, etc., and this application embodiment does not limit this. In another possible implementation, the terminal device can also be a virtual reality (VR) terminal device, an augmented reality (AR) terminal device, a wireless terminal in industrial control, a wireless terminal in autonomous driving, a wireless terminal in telemedicine, a wireless terminal in a smart grid, a wireless terminal in a smart city, or a wireless terminal in a smart home, etc. In this application embodiment, the terminal device will be uniformly referred to as a terminal.
[0093] In this application embodiment, the device for implementing the terminal's functions can be a terminal itself; it can also be a device capable of supporting the terminal in implementing those functions, such as a chip system. This device can be installed in the terminal or used in conjunction with the terminal. In this application embodiment, the chip system can be composed of chips, or it can include chips and other discrete devices. For ease of description, the technical solutions provided in this application embodiment will be described below using the example of a terminal as the device for implementing the terminal's functions.
[0094] 2. RAN
[0095] The RAN can include one or more RAN nodes (or access network devices, network equipment). The interface between the RAN node and the terminal device can be a Uu interface (or air interface). Of course, in communication evolved after 5G, the names of these interfaces can remain unchanged, or they can be replaced with other names; this application does not limit this.
[0096] RAN nodes are nodes or devices that connect terminal devices to a wireless network. Access network devices include, but are not limited to: next-generation node B (gNB), evolved node B (eNB), next-generation eNB (ng-eNB) in 5G communication systems, radio backhaul equipment, radio network controllers (RNC), node B (NB), home evolved node B (HeNB) or (home node B (HNB)), baseband unit (BBU), transmitting and receiving point (TRP), transmitting point (TP), mobile switching center, devices that perform base station functions in device-to-device (D2D), vehicle-to-everything (V2X), and machine-to-machine (M2M) communications, and may also include cloud radio access networks. Network equipment in centralized units (CUs) and distributed units (DUs) of a network (C-RAN) system, and in non-terrestrial network (NTN) communication systems, can be deployed on high-altitude platforms or satellites, etc., and this application does not specifically limit this. The RAN in this application can be a RAN for 5G or a future RAN, and this application does not limit it.
[0097] III. Core Network
[0098] The core network involved in this application embodiment can be an evolved packet core (EPC) of 4G core network, or a 5G core network (5GC), or a converged network architecture of EPC and 5GC, or a possible future core network form. The CN can include one or more network functions (NFs) (also referred to as CN devices or functional network elements).
[0099] The NF involved in this application embodiment may include a call session control function (CSCF), which is mainly responsible for handling session control and signaling management. CSCF can be divided into three types: proxy CSCF (P-CSCF), interrogating CSCF (I-CSCF), and serving CSCF (S-CSCF), each with its specific functions.
[0100] The P-CSCF is the first point of contact for a terminal accessing the Internet Protocol Multimedia Subsystem (IMS) network. It is responsible for receiving Session Initiation Protocol (SIP) registration requests from users and forwarding these requests to the corresponding S-CSCF. Simultaneously, the P-CSCF is also responsible for returning the S-CSCF's response to the user equipment. Furthermore, the P-CSCF performs several security functions, such as checking message integrity and protecting user privacy.
[0101] The I-CSCF is primarily responsible for handling query requests from other domains or networks. For example, when an external network wants to initiate a call to the IMS network, it determines the correct S-CSCF by querying the Home Subscriber Server (HSS). The I-CSCF may also participate in the routing process for roaming users.
[0102] S-CSCF (Service CSCF): The S-CSCF is the core of the IMS network, responsible for handling session control logic. It stores user business logic information and uses this information to determine how to process session requests. The S-CSCF also interacts with various application servers to support different value-added services. During user registration, the S-CSCF verifies the user's identity and allocates resources accordingly.
[0103] Optionally, the CN may also include one or more of the following NFs: User plane function (UPF), Network exposure function (NEF), Network function repository function (NRF), Policy control function (PCF), Unified data management (UDM), Authentication Server Function (AUSF), Access and mobility management function (AMF), Session management function (SMF), and Application function (AF). This application does not limit the network elements included in the core network.
[0104] It should be noted that the above-mentioned NF can also be called core network equipment, network element or functional network element. The network element described in this application embodiment may also have other names. This application embodiment does not limit the name of the network element.
[0105] It should also be noted that the functions implemented by the network elements described in this application can be independent or can be implemented by an integrated network element that implements the functions of multiple network elements described above. For example, one network element can implement the functions of the P-CSCF described above, and another network element can implement the functions of the I-CSCF described above, or an integrated network element can implement the functions of both the P-CSCF and the I-CSCF described above.
[0106] To support artificial intelligence (AI) technology in wireless networks, AI nodes may also be introduced into the network.
[0107] Optionally, the AI node can be deployed in one or more of the following locations within the communication system: RAN node, terminal equipment, or core network element, etc. Alternatively, the AI node can be deployed independently, for example, in a location other than any of the above-mentioned devices, such as in the host or cloud server of an over-the-top (OTT) system. The AI node can communicate with other devices in the communication system, which can be one or more of the following: RAN node, terminal equipment, or core network element, etc.
[0108] It is understood that this application does not limit the number of AI nodes. For example, when there are multiple AI nodes, they can be divided based on function, such as different AI nodes being responsible for different functions.
[0109] It can also be understood that AI nodes can be independent devices, or they can be integrated into the same device to achieve different functions. Alternatively, they can be network elements in hardware devices, software functions running on dedicated hardware, or virtualization functions instantiated on a platform (e.g., a cloud platform). This application does not limit the specific form of the aforementioned AI nodes.
[0110] AI nodes can be AI network elements or AI modules.
[0111] Figure 2 This is a schematic diagram of an application framework in a communication system. For example... Figure 2 As shown, network elements in a communication system are connected via interfaces (e.g., NG, Xn) or air interfaces. These network element nodes, such as core network elements, RAN nodes, terminals, or one or more devices in operations, administration, and maintenance (OAM), are equipped with one or more AI modules (for clarity, ...). Figure 2 (Only one is shown in the image). The RAN node can be a single node or multiple single nodes, for example, including CU and DU. The CU and / or DU can also be configured with one or more AI modules. Optionally, the CU can also be split into CU-CP and CU-UP. One or more AI models are configured in CU-CP and / or CU-UP.
[0112] The AI module is used to implement corresponding AI functions. AI modules deployed in different network elements can be the same or different. Depending on the parameter configuration, the AI module can implement different functions. The AI module model can be configured based on one or more of the following parameters: structural parameters (e.g., at least one of the following: number of neural network layers, neural network width, inter-layer connections, neuron weights, neuron activation function, or bias in the activation function), input parameters (e.g., type and / or dimension of input parameters), or output parameters (e.g., type and / or dimension of output parameters). The bias in the activation function can also be referred to as the neural network bias.
[0113] An AI module can have one or more models. A model can infer an output, which includes one or more parameters. The learning, training, or inference processes of different models can be deployed on different nodes or devices, or they can be deployed on the same node or device.
[0114] In some possible implementations, the scheme provided in this application can be applied to the field of satellite communication. The satellite has some or all of the functions of network equipment and can be called a satellite base station. It can provide wireless access services and schedule wireless resources for terminals accessing the network through the satellite base station. The satellite base station and the terminal communicate through the Universal Terrestrial Radio Access Network (UU) interface. The satellite base station and the core network can communicate through the Next Generation (NG) interface. The satellite base station and the core network can exchange non-access stratum (NAS) signaling of the core network and user service data through the NG interface. Optionally, the satellite equipment can be divided into transparent mode and regenerative mode according to its working mode. When the satellite operates in transparent mode, it has relay forwarding function. The gateway station has the function of a base station or part of the base station function; in this case, the gateway station can be regarded as a base station. Optionally, when the satellite operates in regenerative mode, it has data processing capabilities and has the function of a base station or part of the base station function; in this case, the satellite can be regarded as a base station.
[0115] Figures 3a-3c This describes the satellite communication network architecture applicable to the embodiments of this application. Terminals can access the network via an air interface (which can be of various types, such as a 5G air interface). The terminal accesses the wireless network via the air interface, obtains data network services through the wireless network, or communicates with other devices (such as other terminals) through the wireless network. The base station can be deployed on the ground and connected to a ground station that communicates with the satellite, such as... Figure 3a As shown. Alternatively, base stations can also be deployed on satellites, such as... Figure 3b As shown. Ground stations and base stations can be connected via wired or wireless means, and ground stations can communicate with the core network through base stations. Wireless links can exist between satellites. If a satellite only has transparent forwarding functionality (i.e., the corresponding base station is deployed on the ground), then only transparent forwarding is implemented between satellites. If the base station or some base station functions are deployed on the satellite, then signaling interaction and user data transmission between base stations can be completed between satellites, such as... Figure 3c As shown. Figures 3a-3c The ground station in the system is responsible for forwarding signaling and service data between the satellite base station and the core network. The air interface refers to the wireless link between the terminal and the base station, while the NG interface refers to the interface between the base station and the core network, primarily handling core network NAS signaling and user service data. It should be noted that in a 4G communication system... Figures 3a-3cThe Xn interface is replaced with the X2 interface, and the NG interface is replaced with the S1 interface.
[0116] Based on the above introduction, the technical background of the embodiments of this application will be described below. Encoding rate refers to the amount of data processed or transmitted by the encoder per unit time. Encoding rate is an important factor affecting the voice call experience. Generally, the higher the encoding rate, the better the voice quality of the call; the lower the encoding rate, the worse the voice quality of the call.
[0117] For satellite-based non-terrestrial networks, a unique characteristic is the long distance from ground terminals. For example, low Earth orbit (LEO) satellites can be hundreds of kilometers away, while geosynchronous orbit (GEO) satellites can reach tens of thousands of kilometers. GEO satellites can also be referred to as high-orbit satellites. The greater the transmission distance, the greater the energy attenuation of the electromagnetic signal. However, due to cost and power consumption considerations for the transmitting equipment on board the satellite, the total power of the transmitted signal is also limited. This results in a low signal-to-noise ratio for ground receiving equipment, and consequently, a lower information transmission rate, which cannot support high coding rates. Consequently, the voice quality of calls is poor. Therefore, improving the voice quality of calls is a pressing technical problem that needs to be solved.
[0118] To improve the voice quality of calls, embodiments of this application propose a communication method. For example... Figure 4 As shown, the communication method includes steps 401 to 405. Figure 4 The method shown can be applied to a first terminal and a second terminal. The first terminal can refer to the first terminal itself, or it can be a processor, module, chip, chip system, or functional module of the first terminal that implements the method. The second terminal can be the second terminal itself, or a processor, module, chip, chip system, or functional module of the second terminal that implements the method. Figure 4 Taking the execution entities as the first terminal and the second terminal as examples, the following is an introduction:
[0119] 401. The first terminal sends a call request, and the corresponding second terminal receives the call request. The call request is used to instruct the first terminal to request a voice call with the second terminal. The call request includes the identifiers of M first models supported by the first terminal. The first model is an AI-based codec model.
[0120] In this embodiment, the first terminal sends a call request to initiate a voice call with the second terminal. The call request includes the identifiers (IDs) of M first models supported by the first terminal, where M is a positive integer. The identifiers of the M first models refer to the identifier of each of the M first models. Optionally, the identifier of a first model is used to uniquely identify its corresponding first model among multiple first models. In some examples, the identifier can also be described as an index or number. The identifier of a certain first model can be any numerical value or symbol that can distinguish, mark, or locate the first model; this application does not limit this.
[0121] For example, the call request sent by the first terminal includes the following identifiers: {1, 2, 3}, indicating that the first terminal supports the first model identified as 1, the first model identified as 2, and the first model identified as 3.
[0122] The first model refers to an AI-based codec model. An AI-based codec model is a codec model that uses an AI model, or in other words, a codec model that incorporates an AI model. The AI-based codec model is a model obtained through training and learning on a large amount of speech data. The transmitting end can compress the speech signal into speech data using the AI-based codec model, and the receiving end can recover the speech signal from the speech data using the AI-based codec model. Because AI technology can learn the characteristics of audio signals to achieve higher compression efficiency, it improves the quality of the speech signal even at lower encoding rates. In addition, the AI-based codec model can automatically adapt to different audio environments and application scenarios, improving robustness, reducing negative impacts such as background noise and reverberation, and enhancing the user experience. Optionally, the AI-based codec model can also be called an AI codec model or a neural network codec model. For simplicity, this application will refer to the AI-based codec model as the first model.
[0123] Optionally, the M first models can be all the first models supported by the first terminal, or the M first models can be other first models besides the default model among all the first models supported by the first terminal, or the M first models can be some of the first models supported by the first terminal. The default model refers to a special model among the public models. When both the sending and receiving ends support AI-based codec models, if the receiving end does not support the M models, or if the receiving end decides not to select any of the M first models, the receiving and sending ends can use the default model for voice communication. Optionally, the default model can be agreed upon by the protocol, configured by the network, or agreed upon between the first and second terminals; this application embodiment does not limit this. The first models can be divided into public models and private models. For example, the M first models include public models and / or private models. A public model means that the model is open source, and all terminals can use the model from public channels. A private model is a model reported by various companies or manufacturers; this model is not publicly available, and only terminals belonging to the manufacturer that reported the private model or authorized terminals can use it.
[0124] In this application embodiment, the names of the public model, private model and default model are not limited. For example, the public model can also be called the public model, the private model can also be called the proprietary model, and the default model can also be called the preset model.
[0125] In some possible implementations, the first terminal and the second terminal conduct a voice call over a non-terrestrial network. This means that at least one of the first and second terminals is connected to a non-terrestrial network. Optionally, this voice call is an IMS voice call. More optionally, this voice call is a GEO-based IMS voice call. The first terminal can access the RAN node, the IMS network, and the RAN node on the second terminal side. For example, the IMS network includes P-CSCF and S-CSCF on the first terminal side, and P-CSCF and S-CSCF on the second terminal side.
[0126] For example, the first terminal sends a call request to the RAN node on the first terminal side; after receiving the call request, the RAN node on the first terminal side sends a call request to the P-CSCF on the first terminal side; after receiving the call request, the P-CSCF on the first terminal side sends a call request to the S-CSCF on the first terminal side; after receiving the call request, the S-CSCF on the first terminal side sends a call request to the S-CSCF on the second terminal side; after receiving the call request, the S-CSCF on the second terminal side sends a call request to the P-CSCF on the second terminal side; after receiving the call request, the P-CSCF on the second terminal side sends a call request to the RAN node on the second terminal side; after receiving the call request, the RAN node on the second terminal side sends a call request to the second terminal, and correspondingly, the second terminal receives the call request. Figure 4 For the sake of simplicity, the intermediate process has been omitted. The communication path between the first terminal and the second terminal will be described in the same way and will not be repeated here.
[0127] In some possible implementations, the identifiers of the M first models included in the call request are sorted based on their priorities. The first terminal can determine the priority of each of the M first models according to its own priority judgment rules, and the identifiers of the M first models included in the call request are arranged in that order. For example, a first model with a higher priority is sorted before a first model with a lower priority. Optionally, the M models include public models and private models, with the private model having a higher priority than the public model. Further optionally, the first public model has a higher priority than the second public model, where the second public model is the default model, and the first public model is any model other than the default model among the public models. Since the performance of the private model is higher than that of the public model, and the performance of the first public model among the public models is higher than that of the second public model, this method allows the second terminal to preferentially select the higher-performing first model, which is beneficial for improving the voice quality of the call between the first and second terminals. Besides the priority judgment rules described above, other priority judgment rules are possible, and this application embodiment does not limit them.
[0128] For example, the first terminal supports a first model with identifier 1 and identifier 2. The first model with identifier 1 is a public model, and the first model with identifier 2 is a private model. The private model has a higher priority than the public model. The first model with identifier 2 is sorted before the first model with identifier 1. At this time, the call request sent by the first terminal includes the following identifier sorting of the first terminal: {2, 1}.
[0129] In some possible implementations, the call request may also indicate the type of each of the M first models. For example, it may indicate that some of the M first models are public models, and / or that another portion of the models are private models. In this way, the second terminal can preferentially select the private model for voice calls, which helps improve voice quality. For example, as shown in Listing 1 below:
[0130] Table 1
[0131] First Model logo type Model A 1 Public Model Model B 2 Public Model Model C 3 Private Model Model D 4 Private Model
[0132] The call request sent by the first terminal may include identifier 1, identifier 2, identifier 3 and identifier 4, and the call request also indicates that model A corresponding to identifier 1 is a public model, model B corresponding to identifier 2 is a public model, model C corresponding to identifier 3 is a private model, and model D corresponding to identifier 3 is a private model.
[0133] In some possible implementations, the call request also includes M version numbers of the first model. The M version numbers refer to the version number of each first model. This ensures that the first and second terminals use the same codec model version number during voice calls, which helps to improve the accuracy of voice call quality. For example, as shown in List 2 below:
[0134] Table 2
[0135] First Model logo Version number Model A 1 3.1 Model B 2 2.0 Model C 3 1.0 Model D 4 1.1
[0136] The call request sent by the first terminal may include identifier 1, identifier 2, identifier 3 and identifier 4, and the call request also indicates that the version number of model A corresponding to identifier 1 is 3.1, the version number of model B corresponding to identifier 2 is 2.0, the version number of model C corresponding to identifier 3 is 1.0 and the version number of model D corresponding to identifier 4 is 1.1.
[0137] 402. The second terminal sends a call response, and the corresponding first terminal receives the call response. The call response includes the identifier of the second model. The second model is one of the M first models, or the second model is an AI-based codec model other than the M first models.
[0138] The call response is the second terminal's response based on the call request. The call response can be used to instruct the second terminal to accept a voice call with the first terminal. The call response includes an identifier for a second model, which determines the codec model used by the second terminal for the voice call. The following describes how the second terminal determines the second model:
[0139] Method 1: The second terminal supports N first models out of M first models, where the second model is one of the N first models, and N is a positive integer less than M. Optionally, the second model is the highest priority first model among the N first models.
[0140] In some implementations, the identifiers of the M first models included in the call request are sorted based on their priorities. The second terminal preferentially selects the model that appears first in the call request's identifier ranking among the N first models. That is, in the call request, the identifier of the second model is ranked before the identifiers of all other models among the N first models. In other words, the first terminal can sort the identifiers of the M first models according to its own priority rules, and the second terminal can directly select the first model with the highest priority based on the first terminal's ranking.
[0141] For example, the first terminal sends a call request in which the identifiers of the first model are arranged in the following order: {2, 3, 4, 1}. The second terminal supports the first model with identifier 3 and the first model with identifier 1. The first model with identifier 3 is ordered before the first model with identifier 1. The second terminal will select the first model with identifier 3 for voice calls, that is, determine the first model with identifier 3 as the second model.
[0142] Alternatively, in some implementations, the second terminal can determine the priority of each of the N first models according to its own priority rules, and select the first model with the highest priority from the N first models, that is, the second model is the model with the highest priority among the N first models. Optionally, the priority rule of the second terminal can be that the priority of private models is higher than the priority of public models. Further optionally, the priority of the first public model is higher than the priority of the second public model, the second public model is the default model, and the first public model is the model other than the default model among the public models. In some examples, when there are multiple first models with the highest priority among the N first models, the second terminal can randomly select one of the multiple first models with the highest priority as the second model, or the second terminal can select the first model with the highest priority in the call request according to the sorting of the identifiers of the multiple first models with the highest priority, or the second terminal can have other selection methods, which are not limited in this embodiment.
[0143] Method 2: The second model is one of M first models, and the call response also includes parameters for requesting the second model. After the first terminal receives the call response, it sends the parameters for the second model, and correspondingly, the second terminal receives the parameters for the second model. Using the parameters of the second model, the second terminal determines the second model. Optionally, Method 2 can be applied when the second terminal does not support the second model. Further optionally, "second model not supported" means that the second terminal does not have the parameters for the second model, or that the version number of the second model on the second terminal is lower than the version number of the second model on the first terminal.
[0144] In some implementations, the parameters of the second model can be one or more of the following: the model type of the neural network, the network structure, the activation function, or the regularization method. For example, the neural network type can be a convolutional neural network (CNN), a transformer, or a long short-term memory network (LSTM); the network structure can be the number of layers, the number of neurons per layer, etc.; the activation function can be ReLU, Sigmoid, LeakyReLU, GELU, etc.; and the regularization method can be Dropout, L1 / L2 regularization, batch normalization (BatchNorm), etc. The parameters of the second model can also include other parameters, which are not limited in this embodiment.
[0145] In Method 2, the second terminal may also determine the second model based on the priority rules described in Example 1, or the order of the first model identifiers in the call request, which will not be elaborated here.
[0146] Method 3: The second model is an AI-based codec model other than the M first models. Optionally, this second model is the default model. The definition of the default model can be found in the preceding description and will not be repeated here. Optionally, Method 3 can be applied when the second terminal does not support any of the M first models, or when the second terminal determines not to select any of the M first models as the second model.
[0147] Optionally, the second model does not support any of the M first models, which can have one or more of the following meanings: the second terminal does not have the parameters of any of the M first models; the version number of any of the M first models of the second terminal is lower than that of the first terminal; or, the hardware of the second terminal does not support any of the M first models; or, the second terminal is unable to run any of the M first models due to overload of the current central processing unit (CPU), insufficient memory, or other factors.
[0148] Optionally, the second terminal's decision not to select any one of the M first models as the second model means that the second terminal determines not to select any one of the M first models as the second model based on certain factors or conditions. For example, the factor or condition could be that the current network environment is not suitable for the second terminal to run any one of the M first models. Alternatively, the second terminal could be an existing terminal that has not undergone system updates and does not support the latest 3GPP standard protocols.
[0149] Optionally, in this method 3, the call response may not include the identifier of the second model. When the call response received by the first terminal does not include the identifier of the second model, it can be determined that the second terminal selects the default model for voice calls. This method helps to reduce overhead.
[0150] The following is a specific example of the method for determining the second model described above. The call request sent by the first terminal includes the following identifiers: {1, 2, 3}, where the first model identified by identifier 1 is a private model, the first models identified by identifiers 2 and 3 are public models, neither of the first models identified by identifiers 2 and 3 is a default model, and the first model identified by identifier 4 is the default model. When the first terminal and the second terminal belong to the same manufacturer, and the first model identified by identifier 1 is uploaded by that manufacturer, or when both the second terminal is authorized to use the first model identified by identifier 1, the second terminal can select the first model identified by identifier 1 for voice calls, i.e., determine the first model identified by identifier 1 as the second model. When the first terminal and the second terminal do not belong to the same manufacturer, and the second terminal is not authorized to use the first model identified by identifier 1, the second terminal will not be able to select the first model identified by identifier 1. If the second terminal supports first models identified by identifiers 2 and 3, the second terminal can randomly select one first model from the first models identified by identifiers 2 and 3 for voice calls, i.e., randomly determine one first model from the first models identified by identifiers 2 and 3 as the second model. When the second terminal does not support the first model identified as 1, 2 and 3, or when the first model identified as 1, 2 and 3 is not selected due to certain factors, the second terminal can select the default model for voice calls. The first model identified as 4 is the default model, that is, the second terminal determines the first model identified as 4 as the second model.
[0151] 403. The first terminal encodes the first speech signal based on the second model to obtain the first speech data.
[0152] 404. The first terminal sends the first voice data, and correspondingly, the second terminal receives the first voice data.
[0153] 405. The second terminal decodes the first speech data based on the second model to obtain the second speech signal.
[0154] In this process, the first speech signal is the initial speech signal. The first terminal encodes the first speech data using the second model and transmits it to the second terminal. The second terminal decodes the second speech signal using the second model. The higher the similarity between the second speech signal and the first speech signal, the better the speech quality.
[0155] In some possible implementations, the method further includes: a first terminal sending a first registration request to a first network element, the first registration request including first capability information, which indicates that the first terminal supports the first model. Optionally, the first network element is an S-CSCF on the first terminal side. Correspondingly, a second terminal sending a second registration request to a second network element, the second registration request including second capability information, which indicates that the second terminal supports the first model. Optionally, the second network element is an S-CSCF on the second terminal side. In this way, the IMS network can be aware that the first and second terminals support the first model.
[0156] Through the method described in the above embodiments, both the first terminal and the second terminal use a second model for voice calls. This second model is an AI-based encoder model. Since AI technology can learn the characteristics of audio signals to achieve higher compression efficiency, it is beneficial for improving voice signal quality even at low encoding rates. Furthermore, the AI-based encoder model can automatically adapt to different audio environments and application scenarios, improving robustness, reducing negative impacts such as background noise and reverberation, and enhancing the user experience. In addition, by indicating the corresponding model through an identifier without restricting specific model parameters, the parameter transmission problem of the AI model is avoided, and the internal parameters of the AI model are not defined in standard protocols, reducing the complexity of standardization and saving signaling overhead. On the other hand, it also ensures the flexibility of the model. For example, a public model can ensure interoperability between terminals from different manufacturers, while a private model can preserve the competitiveness of terminals from the same manufacturer.
[0157] To improve the voice quality of calls, embodiments of this application propose a communication method. For example... Figure 5 As shown, the communication method includes steps 501 to 509. Figure 5 The method shown can be applied to a first terminal, a second terminal, a first network element, and a second network element. The first terminal can refer to the first terminal itself, or it can be a processor, module, chip, chip system, or functional module of the first terminal implementing the method. The second terminal can be the second terminal itself, or a processor, module, chip, chip system, or functional module of the second terminal implementing the method. The first network element can refer to the first network element itself, or it can be a processor, module, chip, chip system, or functional module of the first network element implementing the method. The second network element can be the second network element itself, or a processor, module, chip, chip system, or functional module of the second network element implementing the method. Figure 5 Taking the execution entities as the first terminal, the second terminal, the first network element, and the second network element as an example, the following is an introduction:
[0158] 501. The first terminal sends a call request, and the corresponding second terminal receives the call request. The call request is used to instruct the first terminal to request a voice call with the second terminal. The call request includes the identifiers of M first models supported by the first terminal. The first model is an AI-based codec model.
[0159] The specific implementation of step 501 is the same as that of step 401 above, and can be found in the description of step 401 above, which will not be repeated here.
[0160] Optionally, the first terminal and the second terminal can conduct voice calls over a non-terrestrial network.
[0161] 502. The second terminal sends a first call response, and the corresponding first network element receives the first call response. The first call response includes the identifier of the third model, which is different from the first model.
[0162] In this embodiment, the second terminal does not support the first model, or the second terminal determines not to select the first model for voice calls, therefore the second terminal selects the third model for voice calls. Optionally, the second terminal not supporting the first model described here may mean that the hardware of the second terminal does not support the first model; or, the second terminal cannot run the first model due to current CPU overload, insufficient memory, or other factors. The second terminal determining not to select the first model for voice calls means that the second terminal determines not to select the first model for voice calls based on certain factors or conditions. For example, the factors or conditions may be that the second terminal is currently on a terrestrial network with good network quality, and the second terminal believes that it does not need to use the first model. Or, the second terminal is an existing terminal that has not undergone system updates and does not support the latest 3GPP standard protocol. The first call response is the response of the second terminal based on the call request, and the first call response can be used to instruct the second terminal to accept voice calls with the first terminal. The first call response includes an identifier of the third model. Optionally, the first call response is also used to indicate the coding rate desired by the second terminal. The third model is described below:
[0163] The third model differs from the first model in that it does not use an AI model. It can be referred to as a traditional codec model, a non-AI codec model, or a mathematical model. Unlike the first model, the encoding and decoding processes in the third model involve rigorous mathematical derivation. Each step of the derivation can be theoretically explained, and physically meaningful features can be extracted, such as linear prediction coefficients, adaptive codebooks, fixed codebook indices, and gains. Alternatively, the third model may use a partial AI model. For example, the encoding and decoding process might use a traditional codec model, while an AI model is used at the receiving end to predict and recover lost data packets. In contrast, the first model uses a complete AI model.
[0164] Optionally, the third model can be any of the following encoder models: adaptive multi-rate narrowband (AMR-NB), adaptive multi-rate wideband (AMR-WB), enhanced voice services (EVS), or immersive voice and audio services (IVAS).
[0165] In some possible implementations, the description of "the second terminal sends a first call response" in step 502 above can be replaced by "the second network element sends a first call response." In this scenario, the method further includes: the second terminal sending a fifth call response, and correspondingly, the second network element receiving the fifth call response from the second terminal. The fifth call response includes the coding rate desired by the second terminal. The second network element can determine a third model based on the coding rate desired by the second terminal, thereby sending a first call response to the first network element and an identifier of the third model to the second terminal to instruct the second terminal to conduct a voice call with the first terminal based on the third model. In some examples, the second network element is the S-CSCF on the second terminal side. Optionally, the fifth call response is also used to instruct the core network to complete the transcoding of the voice data. Transcoding refers to converting data encoded by one model into data encoded by another model. For example, converting voice data encoded by the first terminal using the second model into data encoded using the third model. In this application, the second network element can send the first call response before the second terminal sends the fifth call response. For example, the second network element determines that the second terminal does not support the first model based on the registration information of the second terminal. In this scenario, the second network element can send the first call request after receiving the call request. This application does not limit the timing of the second terminal sending the fifth call response.
[0166] 503. The first network element sends a second call response, and correspondingly, the first terminal receives the second call response. The second call response includes the identifier of the second model, which is one of the M first models.
[0167] In this embodiment, after receiving the first call response, the first network element determines that the second terminal is conducting a voice call based on the third model. The first network element can determine the second model from M first models. Optionally, the first network element can use the above-described... Figure 4 The method for determining the second model described in the corresponding embodiments will not be repeated here.
[0168] In some possible implementations, the method further includes: the first terminal sending a first registration request to the first network element, the first registration request being related to the above... Figure 4 The first registration request described in the corresponding embodiment is the same, and will not be repeated here.
[0169] 504. The first terminal encodes the first speech signal based on the second model to obtain the first speech data.
[0170] 505. The first terminal sends the first voice data, and correspondingly, the first network element receives the first voice data.
[0171] 506. The first network element decodes the first speech data based on the second model to obtain the second speech signal.
[0172] 507. The first network element encodes the second speech signal based on the third model to obtain the second speech data.
[0173] 508. The first network element sends the second voice data, and the corresponding second terminal receives the second voice data.
[0174] 509. The second terminal decodes the second speech data based on the third model to obtain the third speech signal.
[0175] In this process, the first speech signal is the initial speech signal. The first terminal encodes the first speech data using the second model and transmits it to the first network element. The first network element then performs transcoding, converting the first speech data encoded using the second model into second speech data encoded using the third model. The second terminal decodes the third speech signal using the third model. The higher the similarity between the third speech signal and the first speech signal, the better the speech quality.
[0176] In some possible implementations, the actions performed by the "first network element" in steps 505 to 508 can also be performed by the "second network element," meaning the transcoding is completed by the second network element. In other implementations, the transcoding can also be completed by a third network element; for details on how the transcoding can be completed by a third network element, please refer to [link to relevant documentation]. Figure 6The descriptions corresponding to the embodiments are not detailed here.
[0177] Using the method described in the above embodiments, the first terminal can use a second model for voice calls. The second model is an AI-based encoder model. Since AI technology can learn the characteristics of audio signals to achieve higher compression efficiency, it is beneficial to improve the quality of voice signals even at low encoding rates. On the other hand, this method also enables the receiving and sending ends to communicate voice even when using different encoder models, i.e., the first terminal uses the second model and the second terminal uses the third model, avoiding communication problems caused by different types of voice codecs.
[0178] To improve the voice quality of calls, embodiments of this application propose a communication method. For example... Figure 6 As shown, the communication method includes steps 601 to 610. Figure 6 The method shown can be applied to a first terminal, a second terminal, a first network element, a second network element, and a third network element. The first terminal can refer to the first terminal itself, or it can be a processor, module, chip, chip system, or functional module of the first terminal implementing the method. The second terminal can be the second terminal itself, or a processor, module, chip, chip system, or functional module of the second terminal implementing the method. The first network element can refer to the first network element itself, or it can be a processor, module, chip, chip system, or functional module of the first network element implementing the method. The second network element can be the second network element itself, or a processor, module, chip, chip system, or functional module of the second network element implementing the method. The third network element can be the third network element itself, or a processor, module, chip, chip system, or functional module of the second network element implementing the method. Figure 6 Taking the execution entities as the first terminal, second terminal, first network element, second network element, and third network element as an example, the following is an introduction:
[0179] 601. The first terminal sends a call request, and the corresponding second terminal receives the call request. The call request is used to instruct the first terminal to request a voice call with the second terminal. The call request includes the identifiers of M first models supported by the first terminal. The first model is an AI-based codec model.
[0180] 602. The second terminal sends a first call response, and the corresponding first network element receives the first call response. The first call response includes the identifier of the third model, which is different from the first model.
[0181] 603. The first network element sends a second call response, and correspondingly, the first terminal receives the second call response. The second call response includes the identifier of the second model, which is one of the M first models.
[0182] Steps 601 to 603 are the same as steps 501 to 503, and will not be described again here.
[0183] 604. The first network element sends the first information, and the corresponding third network element receives the first information. The first information is used to instruct the first terminal to use the second model and the second terminal to use the third model.
[0184] In this embodiment, the third network element is used for transcoding voice data. Through the first information, the third network element can determine the encoder models used by the first terminal and the second terminal, respectively, to facilitate the subsequent transcoding of the voice data from the first and second terminals. Transcoding refers to converting data encoded by one model into data encoded by another model. For example, converting voice data encoded by the first terminal using the second model into data encoded using the third model. Optionally, the first network element is a network element in the IMS network. Further optionally, the first network element can also be called AI-CSCF; this embodiment does not limit the name of the first network element. In some examples, the first information also indicates the desired coding rate of the second terminal.
[0185] In some possible implementations, the second model can be determined by either the first network element or the third network element. For example, the first network element sends second information to the third network element, and the third network element receives the second information, which includes identifiers of M first models. The third network element can determine the second model from the M first models it supports and send third information to the first network element. The first network element receives the third information from the third network element, which includes the identifier of the second model. Optionally, in this implementation, the first information in step 604 above may not be needed to instruct the first terminal to use the second model.
[0186] This application does not limit the order in which steps 604 and 603 are performed, or they may be performed simultaneously.
[0187] 605. The first terminal encodes the first speech signal based on the second model to obtain the first speech data.
[0188] 606. The first terminal sends the first voice data, and the corresponding third network element receives the first voice data.
[0189] 607. The third network element decodes the first speech data based on the second model to obtain the second speech signal.
[0190] 608. The third network element encodes the second speech signal based on the third model to obtain the second speech data.
[0191] 609. The third network element sends the second voice data, and the corresponding second terminal receives the second voice data.
[0192] 610. The second terminal decodes the second speech data based on the third model to obtain the third speech signal.
[0193] The specific implementation of steps 605 to 610 is similar to that of steps 504 to 509 above. The difference is that the transcoding steps in steps 504 to 509 are executed by the "first network element", while the steps in steps 605 to 610 are executed by the "third network element". The specific implementation will not be described in detail here.
[0194] Using the method described in the above embodiments, the first terminal can use a second model for voice calls. The second model is an AI-based encoder model. Since AI technology can learn the characteristics of audio signals to achieve higher compression efficiency, it is beneficial to improve the quality of voice signals even at low encoding rates. On the other hand, this method also enables the receiving and sending ends to communicate voice even when using different encoder models, i.e., the first terminal uses the second model and the second terminal uses the third model, avoiding communication problems caused by different types of voice codecs.
[0195] To improve the voice quality of calls, embodiments of this application propose a communication method. For example... Figure 7 As shown, the communication method includes steps 701 to 710. Figure 7 The method shown can be applied to a first terminal, a second terminal, a first network element, and a second network element. The first terminal can refer to the first terminal itself, or it can be a processor, module, chip, chip system, or functional module of the first terminal implementing the method. The second terminal can be the second terminal itself, or a processor, module, chip, chip system, or functional module of the second terminal implementing the method. The first network element can refer to the first network element itself, or it can be a processor, module, chip, chip system, or functional module of the first network element implementing the method. The second network element can be the second network element itself, or a processor, module, chip, chip system, or functional module of the second network element implementing the method. Figure 7 Taking the execution entities as the first terminal, the second terminal, the first network element, and the second network element as an example, the following is an introduction:
[0196] 701. The first terminal sends a call request, and the corresponding second terminal receives the call request. The call request is used to instruct the first terminal to request a voice call with the second terminal. The call request includes the identifier of the third model.
[0197] In this embodiment, the first terminal does not support the first model, or the first terminal determines not to select the first model for voice calls, and therefore selects the third model for voice calls. Optionally, the first terminal not supporting the first model as described here may mean that the hardware of the first terminal does not support the first model; or that the first terminal cannot run the first model due to current CPU overload, insufficient memory, or other factors. The first terminal determining not to select the first model for voice calls as described here means that the first terminal determines not to select the first model for voice calls based on certain factors or conditions. For example, the factor or condition may be that the first terminal is currently on a terrestrial network with good network quality, and there is no need to use the first model. Or, the first terminal is an existing terminal that has not undergone system updates and does not support the latest 3GPP standard protocol.
[0198] Optionally, the call request can also be used to indicate the encoding rate desired by the first terminal. The third model is similar to the one described above. Figure 5 The third model described in the corresponding embodiments is the same and will not be repeated here.
[0199] Optionally, the first terminal and the second terminal can conduct voice calls over a non-terrestrial network.
[0200] 702. The second terminal sends a third call response, and correspondingly, the second network element receives the third call response. The third call response includes the identifiers of L first models supported by the second terminal, where L is a positive integer and the first model is an AI-based codec model.
[0201] In this embodiment, the second terminal supports a first model, and the second terminal determines to use the first model for voice communication to improve voice quality. The first model is the same as the first model described above, and will not be repeated here.
[0202] In some possible implementations, the method further includes: the second terminal sending a second registration request to the second network element, the second registration request being related to the above... Figure 4 The second registration request described in the corresponding embodiment is the same and will not be repeated here.
[0203] 703. The second network element sends a fourth call response. Correspondingly, the first terminal receives the fourth call response, which instructs the second terminal to accept the voice call request from the first terminal.
[0204] In some possible implementations, "the call request includes the identifier of the third model" can be replaced by "the call request includes the identifiers of multiple candidate non-AI codec models." In this scenario, the second network element can determine the third model from the multiple candidate non-AI codec models, and the fourth call response includes the identifier of the third model. Optionally, the call request may also indicate multiple candidate coding rates expected by the first terminal. In this case, the fourth call response may also indicate one of the multiple candidate coding rates.
[0205] 704. The second network element sends the fourth information, and the corresponding second terminal receives the fourth information. The fourth information includes the identifier of the second model, which is one of the L first models.
[0206] In this embodiment, after receiving the third call response, the second network element determines that the second terminal is conducting a voice call based on the first model. The first network element can determine the second model from L first models. Optionally, the second network element can use the above-described... Figure 4 The method for determining the second method is described in the corresponding embodiments.
[0207] This application does not limit the order in which steps 704 and 703 are performed, or they may be performed simultaneously.
[0208] 705. The first terminal encodes the first speech signal based on the third model to obtain the first speech data.
[0209] 706. The first terminal sends the first voice data, and the corresponding second network element receives the first voice data.
[0210] 707. The second network element decodes the first speech data based on the third model to obtain the second speech signal.
[0211] 708. The second network element encodes the second speech signal based on the second model to obtain the second speech data.
[0212] 709. The second network element sends the second voice data, and correspondingly, the second terminal receives the second voice data.
[0213] 710. The second terminal decodes the second speech data based on the second model to obtain the third speech signal.
[0214] The first speech signal is the initial speech signal. The first terminal encodes the first speech data using the third model and transmits it to the second network element. The second network element performs transcoding, converting the first speech data encoded based on the third model into second speech data encoded based on the second model. The second terminal decodes the third speech signal using the second model. The higher the similarity between the third speech signal and the first speech signal, the better the speech quality.
[0215] In some possible implementations, the actions performed by the "second network element" in steps 706 to 709 can also be performed by the "first network element," meaning the transcoding is completed by the first network element. In other implementations, the transcoding can also be completed by a third network element; for details on how the transcoding can be completed by a third network element, please refer to [link to relevant documentation]. Figure 8 The descriptions corresponding to the embodiments are not detailed here.
[0216] Using the method described in the above embodiments, the second terminal can use a second model for voice calls. The second model is an AI-based encoder model. Since AI technology can learn the characteristics of audio signals to achieve higher compression efficiency, it is beneficial to improve the quality of voice signals even at low encoding rates. On the other hand, this method also enables the receiving and transmitting ends to communicate voice even when using different encoder models. That is, the second terminal uses the second model, and the first terminal uses the third model, avoiding communication problems caused by different types of voice codecs.
[0217] To improve the voice quality of calls, embodiments of this application propose a communication method. For example... Figure 8 As shown, the communication method includes steps 801 to 811. Figure 8 The method shown can be applied to a first terminal, a second terminal, a first network element, a second network element, and a third network element. The first terminal can refer to the first terminal itself, or it can be a processor, module, chip, chip system, or functional module of the first terminal implementing the method. The second terminal can be the second terminal itself, or a processor, module, chip, chip system, or functional module of the second terminal implementing the method. The first network element can refer to the first network element itself, or it can be a processor, module, chip, chip system, or functional module of the first network element implementing the method. The second network element can be the second network element itself, or a processor, module, chip, chip system, or functional module of the second network element implementing the method. The third network element can be the third network element itself, or a processor, module, chip, chip system, or functional module of the second network element implementing the method. Figure 8 Taking the execution entities as the first terminal, second terminal, first network element, second network element, and third network element as an example, the following is an introduction:
[0218] 801. The first terminal sends a call request, and the corresponding second terminal receives the call request. The call request is used to instruct the first terminal to request a voice call with the second terminal. The call request includes the identifier of the third model.
[0219] 802. The second terminal sends a third call response, and correspondingly, the second network element receives the third call response. The third call response includes the identifiers of L first models supported by the second terminal, where L is a positive integer and the first model is an AI-based codec model.
[0220] 803. The second network element sends a fourth call response. Correspondingly, the first terminal receives the fourth call response, which instructs the second terminal to accept the voice call request from the first terminal.
[0221] 804. The second network element sends the fourth information, and the corresponding second terminal receives the fourth information. The fourth information includes the identifier of the second model, which is one of the L first models.
[0222] Steps 801 to 804 are the same as steps 701 to 704, and will not be described again here.
[0223] 805. The second network element sends the fifth information, and the corresponding third network element receives the fifth information. The fifth information is used to instruct the second terminal to adopt the second model and the first terminal to adopt the third model.
[0224] In this embodiment, the third network element is used for transcoding voice data. Through the fifth information, the third network element can determine the encoder models used by the first terminal and the second terminal, respectively, to facilitate the subsequent transcoding of the voice data from the first and second terminals. Transcoding refers to converting data encoded by one model into data encoded by another model. For example, converting voice data encoded by the first terminal using the third model into data encoded using the second model. Optionally, the first network element is a network element in the IMS network. Further optionally, the first network element can also be called AI-CSCF; this embodiment does not limit the name of the first network element. In some examples, the first information also indicates the encoding rate desired by the second terminal.
[0225] In some possible implementations, the second model can be determined by either the second network element or the third network element. For example, the second network element sends sixth information to the third network element, and the third network element receives the sixth information, which includes the identifiers of L first models. The third network element can determine the second model from the L first models it supports and send seventh information to the second network element. The second network element receives the seventh information from the third network element, which includes the identifier of the second model. Optionally, in this implementation, the fifth information in step 805 above may not be necessary to instruct the first terminal to use the second model.
[0226] This application does not limit the order in which steps 803, 804 and 805 are performed, or they may be performed simultaneously.
[0227] 806. The first terminal encodes the first speech signal based on the third model to obtain the first speech data.
[0228] 807. The first terminal sends the first voice data, and the corresponding third network element receives the first voice data.
[0229] 808. The third network element decodes the first speech data based on the third model to obtain the second speech signal.
[0230] 809. The third network element encodes the second speech signal based on the second model to obtain the second speech data.
[0231] 810. The third network element sends the second voice data, and the corresponding second terminal receives the second voice data.
[0232] 811. The second terminal decodes the second speech data based on the second model to obtain the third speech signal.
[0233] The specific implementation of steps 806 to 811 is similar to that of steps 705 to 710 above. The difference is that in steps 705 to 710, the transcoding is performed by the "second network element", while in steps 806 to 811, the transcoding is performed by the "third network element". The specific implementation will not be described in detail here.
[0234] Using the method described in the above embodiments, the second terminal can use a second model for voice calls. The second model is an AI-based encoder model. Since AI technology can learn the characteristics of audio signals to achieve higher compression efficiency, it is beneficial to improve the quality of voice signals even at low encoding rates. On the other hand, this method also enables the receiving and transmitting ends to communicate voice even when using different encoder models. That is, the second terminal uses the second model, and the first terminal uses the third model, avoiding communication problems caused by different types of voice codecs.
[0235] The following describes the communication device provided in the embodiments of this application.
[0236] This application divides the communication device into functional modules according to the above-described method embodiments. For example, each function can be divided into its own functional modules, or two or more functions can be integrated into one processing module. The integrated modules can be implemented in hardware or as software functional modules. It should be noted that the module division in this application is illustrative and represents only one logical functional division; other division methods may be used in actual implementation. The following will combine... Figures 9 to 11 The communication device of the embodiments of this application is described in detail.
[0237] Figure 9 This is a schematic diagram of the structure of a communication device provided in an embodiment of this application, such as... Figure 9 As shown, the communication device includes a processing module 901 and a communication module 902. The communication module 902 can implement corresponding communication functions, and the processing module 901 is used to implement corresponding processing functions. For example, the communication module 902 can also be an interface, a communication interface, etc.
[0238] In this application, the communication device can be used to perform the actions performed by the first terminal in the above method embodiment. In this case, the first terminal can be the first terminal itself or a chip or functional module configurable within the first terminal. The communication module 902 is used to perform the transmit / receive related operations of the first terminal in the above method embodiment, and the processing module 901 is used to perform the processing related operations of the first terminal in the above method embodiment.
[0239] In some embodiments, the communication module 902 is configured to send a call request, which instructs the first terminal to request a voice call with the second terminal. The call request includes identifiers of M first models supported by the first terminal. The first model is an AI-based codec model, and M is a positive integer. The communication module 902 is also configured to receive a call response, which includes an identifier of a second model. The second model is one of the M first models, or the second model is a first model other than the M first models. The processing module 901 is configured to encode the first voice signal based on the second model to obtain first voice data. The communication module 902 is also configured to send the first voice data.
[0240] In this application, the communication device can be used to perform the actions performed by the second terminal in the above method embodiment. In this case, the second terminal can be the second terminal itself or a chip or functional module configurable within the second terminal. The communication module 902 is used to perform the transmit / receive related operations of the second terminal in the above method embodiment, and the processing module 901 is used to perform the processing related operations of the second terminal in the above method embodiment.
[0241] In some embodiments, the communication module 902 is configured to receive a call request, which instructs a first terminal to request a voice call with a second terminal. The call request includes identifiers of M first models supported by the first terminal. The first model is an AI-based codec model, and M is a positive integer. The communication module 902 is also configured to send a call response, which includes an identifier of a second model. The second model is one of the M first models, or the second model is a first model other than the M first models. The communication module 902 is also configured to receive first voice data. The processing module 901 is configured to decode the first voice data using the second model to obtain a second voice signal.
[0242] In some embodiments, the communication module 902 is configured to receive a call request, which instructs a first terminal to request a voice call with a second terminal, and the call request includes an identifier of a third model; the communication module 902 is also configured to send a third call response, which includes identifiers of L first models supported by the second terminal, where L is a positive integer, the first model is an AI-based codec model, and the third model is different from the first model; receive fourth information from a second network element, which includes an identifier of a second model, where the second model is one of the L first models; the communication module 902 is also configured to receive second voice data; and the processing module 901 is configured to decode the second voice data based on the second model to obtain a third voice signal.
[0243] In this application, the communication device can be used to perform the actions performed by the first network element in the above method embodiment. Here, the first network element can be the first network element itself or a chip or functional module configurable within the first network element. The communication module 902 is used to perform the transmit / receive related operations of the first network element in the above method embodiment, and the processing module 901 is used to perform the processing related operations of the first network element in the above method embodiment.
[0244] In some embodiments, the communication module 902 is configured to send a call request to a second terminal, the call request instructing a first terminal to request a voice call with the second terminal, the call request including identifiers of M first models supported by the first terminal, the first models being codec models based on artificial intelligence (AI), and M being a positive integer; the communication module 902 is further configured to receive a first call response from the second terminal, the first call response being a response from the second terminal based on the call request, the first call response including an identifier of a third model, the third model being different from the first model; the communication module 902 is further configured to send a second call response to the first terminal, the second call response including an identifier of a second model, the second model being one of the M first models.
[0245] In this application, the communication device can be used to perform the actions performed by the second network element in the above method embodiment. In this case, the second network element can be the second network element itself or a chip or functional module configurable within the second network element. The communication module 902 is used to perform the transmit / receive related operations of the second network element in the above method embodiment, and the processing module 901 is used to perform the processing related operations of the second network element in the above method embodiment.
[0246] In some embodiments, the communication module 902 is configured to send a call request, which instructs the first terminal to request a voice call with the second terminal. The call request includes an identifier of a third model, which is different from the first model. The communication module 902 is also configured to send a call request to receive a third call response, which includes identifiers of L first models supported by the second terminal, where L is a positive integer and the first model is an AI-based codec model. The communication module 902 is also configured to send a call request to send fourth information to the second terminal, which includes an identifier of the second model, which is one of the L first models.
[0247] In this application, the communication device can be used to perform the actions performed by the third network element in the above method embodiment. In this case, the third network element can be the third network element itself or a chip or functional module configurable within the third network element. The communication module 902 is used to perform the transmit / receive related operations of the third network element in the above method embodiment, and the processing module 901 is used to perform the processing related operations of the third network element in the above method embodiment.
[0248] In some embodiments, the communication module 902 is configured to receive first information, which instructs the first terminal to adopt a second model and the second terminal to adopt a third model. The second model is an AI-based codec model, and the third model is unrelated to AI. The communication module 902 is also configured to receive first voice data from the first terminal. The processing module 901 is configured to decode the first voice data based on the first model to obtain a second voice signal. The processing module 901 is also configured to encode the second voice signal based on the second model to obtain second voice data. The communication module 902 is configured to send the second voice data to the second terminal.
[0249] Optionally, in the above embodiments, the communication device may further include a storage module, which can be used to store instructions and / or data. The processing module 901 can read the instructions and / or data in the storage module so that the communication device can implement the aforementioned method embodiments.
[0250] The specific descriptions of the communication module and the processing module are merely examples. For the specific functions or execution steps of the communication module and the processing module, please refer to the above method embodiments, which will not be detailed here.
[0251] The communication device according to the embodiments of this application has been described above. The following describes the possible product forms of the communication device. Any device possessing the above-described... Figure 9 Any form of the communication device described herein falls within the protection scope of the embodiments of this application. The following description is merely illustrative and does not limit the product form of the communication device in the embodiments of this application to this.
[0252] In one possible implementation, Figure 9 In the communication device shown, the processing module 901 can be one or more processing circuits, and the communication module 902 can be a communication circuit, or the communication module 902 can also be a transmitting module and / or a receiving module. The transmitting module can be a transmitting circuit, and the receiving module can be a receiving circuit. The transmitting module and the receiving module are integrated into one device, such as a communication circuit. In the embodiments of this application, the processing circuit and the communication circuit can be coupled, etc. The connection method of the processing circuit and the communication circuit is not limited in the embodiments of this application. In the process of performing the above method, the process of sending information in the above method can be the process of the processing circuit outputting the above information. When outputting the above information, the processing circuit outputs the above information to the communication circuit so that the communication circuit can transmit (or output). After the above information is output by the processing circuit, it may need to undergo other processing before reaching the communication circuit. Similarly, the process of receiving information in the above method can be the process of the processing circuit receiving the input above information. When the processing circuit receives the input information, the communication circuit receives the above information and inputs it into the processing circuit. Furthermore, after the communication circuit receives the above information, the above information may need to undergo other processing before being input into the processing circuit.
[0253] Figure 10 This is a schematic diagram of the structure of a communication device provided in an embodiment of this application. Figure 10 As shown, the communication device 100 includes one or more processing circuits 1020 and communication circuits 1010.
[0254] In some embodiments of this application, the communication device can be used to perform the steps, methods, or functions performed by the first terminal described above, such as the processing circuit 1020 being used to perform... Figure 9 The functions or steps implemented by the processing module 901 shown can be executed by the communication circuit 1010, such as... Figure 9 The functions or steps implemented by the communication module 902 shown are illustrated. For detailed descriptions of the processing circuit 1020 and the communication circuit 1010, please refer to [link / reference needed]. Figure 9 Alternatively, the method embodiments shown above will not be described in detail here.
[0255] In other embodiments of this application, the communication device is used to perform the steps, methods, or functions performed by the second terminal described above. For example, the processing circuit 1020 can be used to perform, for example... Figure 9 The functions or steps implemented by the processing module 901 shown can be executed by the communication circuit 1010, such as... Figure 9 The functions or steps implemented by the communication module 902 shown are illustrated. For detailed descriptions of the processing circuit 1020 and the communication circuit 1010, please refer to [link / reference needed]. Figure 9 Alternatively, the method embodiments shown above will not be described in detail here.
[0256] For example, the processing circuitry may be one or more processors, or all or part of the circuitry within one or more processors. The communication circuitry may be a transceiver, an input / output circuit, or an interface circuit, etc.
[0257] For example, in Figure 10 In various implementations of the communication device shown, the communication circuitry may include a receiver for performing a receiving function (or operation) and a transmitter for performing a transmitting function (or operation). The communication circuitry is also used for communicating with other devices / communication devices via a transmission medium.
[0258] Optionally, the communication device 100 may further include one or more memories 1030 for storing program instructions and / or data. The memories 1030 are coupled to the processing circuitry 1020. The coupling in this embodiment is an indirect coupling or communication connection between communication devices, units, or modules, and can be electrical, mechanical, or other forms, used for information exchange between the communication devices, units, or modules. The processing circuitry 1020 may operate in conjunction with the memories 1030. The processing circuitry 1020 may execute the program instructions stored in the memories 1030. Optionally, at least one of the aforementioned memories may be included in the processing circuitry.
[0259] This application embodiment does not limit the specific connection medium between the communication circuit 1010, processing circuit 1020, and memory 1030. This application embodiment... Figure 10 The memory 1030, processing circuit 1020, and communication circuit 1010 are connected via a bus 1040. Figure 10 The connections between other components are shown in bold and are for illustrative purposes only, not as limiting information. The bus can be divided into address bus, data bus, control bus, etc. For ease of illustration, Figure 10 The bus is represented by a single thick line, but this does not mean that there is only one bus or one type of bus.
[0260] In the embodiments of this application, the processing circuit may be a general-purpose processing circuit, a digital signal processing circuit, an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc., and can implement or execute the various methods, steps, and logic block diagrams in the embodiments of this application. The general-purpose processing circuit may be a microprocessor circuit or any conventional processing circuit, etc. The steps of the methods in conjunction with the embodiments of this application can be directly manifested as the execution of the hardware processing circuit, or the execution of the steps by combining hardware and software modules in the processing circuit, etc.
[0261] In this application embodiment, the memory may include, but is not limited to, non-volatile memory such as hard disk drive (HDD) or solid-state drive (SSD), random access memory (RAM), erasable programmable read-only memory (EPROM), read-only memory (ROM), or compact disc read-only memory (CD-ROM), etc. Memory is any storage medium capable of carrying or storing program code in the form of instructions or data structures, and capable of being read and / or written by a computer (such as the communication device shown in this application), but is not limited to these. The memory in this application embodiment may also be a circuit or any other communication device capable of implementing storage functions, used to store program instructions and / or data.
[0262] For example, the processing circuit 1020 is mainly used to process communication protocols and communication data, control the entire communication device, execute software programs, and process the data of the software programs. The memory 1030 is mainly used to store software programs and data. The communication circuit 1010 may include a control circuit and an antenna. The control circuit is mainly used for converting baseband signals to radio frequency signals and processing radio frequency signals. The antenna is mainly used for transmitting and receiving radio frequency signals in the form of electromagnetic waves. Input / output communication devices, such as touch screens, displays, and keyboards, are mainly used to receive user input data and output data to the user.
[0263] When the communication device is powered on, the processing circuit 1020 can read the software program in the memory 1030, interpret and execute the instructions of the software program, and process the data of the software program. When data needs to be transmitted wirelessly, the processing circuit 1020 performs baseband processing on the data to be transmitted and outputs the baseband signal to the radio frequency (RF) circuit. The RF circuit then performs RF processing on the baseband signal and transmits the RF signal outward in the form of electromagnetic waves through the antenna. When data is sent to the communication device, the RF circuit receives the RF signal through the antenna, converts the RF signal into a baseband signal, and outputs the baseband signal to the processing circuit 1020. The processing circuit 1020 converts the baseband signal into data and processes the data.
[0264] In another implementation, the radio frequency circuit and antenna can be set up independently of the processing circuit that performs baseband processing. For example, in a distributed scenario, the radio frequency circuit and antenna can be arranged in a remote manner, independent of the communication device.
[0265] The communication device shown in the embodiments of this application may also have a higher... Figure 10Other components, etc., are not limited in this application embodiment. The methods performed by the processing circuit and communication circuit shown above are merely examples, and the specific steps performed by the processing circuit and communication circuit can be referred to the methods described above.
[0266] In another possible implementation Figure 9 In the communication device shown, the processing module 901 can be one or more logic circuits, and the communication module 902 can be an input / output interface, or a communication interface, or an interface circuit, or an interface, etc. Alternatively, the communication module 902 may also include a transmitting module and / or a receiving module. The transmitting module may include an output interface, and the receiving module may include an input interface. The transmitting module and the receiving module are integrated into one module, such as an input / output interface.
[0267] Figure 11 This is a schematic diagram of the structure of a communication device provided in an embodiment of this application. Figure 11 As shown, Figure 11 The communication device shown includes logic circuit 1101 and interface circuit 1102. That is, the processing module 901 can be implemented using logic circuit 1101, and the communication module 902 can be implemented using interface circuit 1102. The logic circuit 1101 can be a chip, processing circuit, integrated circuit, or system-on-chip (SoC) chip, etc., and the interface circuit 1102 can be a communication interface, input / output interface, pins, etc. For example, Figure 11 The communication device can be a chip, which includes logic circuit 1101 and interface circuit 1102.
[0268] In this embodiment, the logic circuit and the interface can also be coupled to each other. The specific connection method between the logic circuit and the interface is not limited in this embodiment. For example, the logic circuit 1101 can be used to perform... Figure 9 The interface circuit 1102 can be used to execute the functions or steps implemented by the processing module 901 shown. Figure 9 The communication module 902 shown illustrates the functions or steps implemented by this module. For detailed explanations of the logic circuit 1101 and interface circuit 1102, please refer to [link / reference needed]. Figure 9 Alternatively, the method embodiments shown above will not be described in detail here.
[0269] The communication device shown in the embodiments of this application can implement the method provided in the embodiments of this application in hardware form, or it can implement the method provided in the embodiments of this application in software form, etc., and the embodiments of this application do not limit it in this way.
[0270] This application also provides a communication system, which includes a first terminal and a second terminal, as well as one or more network elements, including a first network element, a second network element, and a third network element. The communication system can be used to execute the methods in any of the foregoing embodiments.
[0271] In addition, this application also provides a computer program for implementing the operations and / or processes performed by various communication devices in the method provided in this application.
[0272] This application also provides a computer-readable storage medium storing computer code that, when executed on a computer, causes the computer to perform the operations and / or processes performed by various communication devices in the methods provided in this application.
[0273] This application also provides a computer program product comprising computer code or a computer program that, when run on a computer, causes the operations and / or processes performed by various entities in the method provided in this application to be executed.
[0274] In the embodiments provided in this application, it should be understood that the disclosed systems, communication devices, and methods can be implemented in other ways. For example, the communication device embodiments described above are merely illustrative. For instance, the division of modules is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple modules or components may be combined or integrated into another system, or some features may be ignored or not executed. In addition, the mutual coupling or direct coupling or communication connection shown or discussed may be indirect coupling or communication connection through some interfaces, communication devices, or modules, or it may be an electrical, mechanical, or other form of connection.
[0275] The modules described as separate components may or may not be physically separate. The components shown as modules may or may not be physical modules; that is, they may be located in one place or distributed across multiple network modules. Some or all of the modules can be selected according to actual needs to achieve the technical effects of the solutions provided in the embodiments of this application.
[0276] Furthermore, the functional modules in the various embodiments of this application can be integrated into one processing module, or each module can exist physically separately, or two or more modules can be integrated into one module. The integrated modules described above can be implemented in hardware or as software functional modules.
[0277] If the integrated module is implemented as a software functional module and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a readable storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned readable storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0278] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
Claims
1. A communication method, characterized in that, The method includes: Send a call request, the call request being used to instruct the first terminal to request a voice call with the second terminal, the call request including the identifiers of M first models supported by the first terminal, the M first models being codec models based on artificial intelligence (AI), and M being a positive integer; Receive a call response, the call response including an identifier of a second model, the second model being one of the M first models, or the second model being an AI-based codec model other than the M first models; The first speech signal is encoded based on the second model to obtain the first speech data, and the first speech data is then sent.
2. The method according to claim 1, characterized in that, The second terminal supports N of the M first models, where the second model is one of the N first models, and N is a positive integer less than M.
3. The method according to claim 2, characterized in that, The second model is the model with the highest priority among the N first models. The M first models include public models and private models, and the priority of the private model is higher than that of the public model.
4. The method according to claim 3, characterized in that, The identifiers of the M first models included in the call request are sorted based on the priority of the M first models.
5. The method according to claim 1, characterized in that, The second model is one of the M first models, and the call response is further used to request parameters of the second model. The method also includes: Send the parameters of the second model.
6. The method according to any one of claims 1 to 5, characterized in that, The method further includes: Send a first registration request, the first registration request including first capability information, the first capability information being used to indicate that the first terminal supports a first model.
7. The method according to any one of claims 1 to 6, characterized in that, The call request also includes the version numbers of the M first models.
8. The method according to any one of claims 1 to 7, characterized in that, The first terminal and the second terminal conduct voice calls via a non-terrestrial network.
9. The method according to any one of claims 1 to 8, characterized in that, The voice call is an Internet Protocol Multimedia Subsystem (IPMS) voice call based on a high-orbit satellite.
10. A communication method, characterized in that, The method includes: Receive a call request, the call request being used to instruct the first terminal to request a voice call with the second terminal, the call request including the identifiers of M first models supported by the first terminal, the M first models being codec models based on artificial intelligence (AI), and M being a positive integer; Send a call response, the call response including an identifier of a second model, the second model being one of the M first models, or the second model being an AI-based codec model other than the M first models; Receive first voice data, and decode the first voice data based on the second model to obtain a second voice signal.
11. The method according to claim 10, characterized in that, The second terminal supports N of the M first models, where the second model is one of the N first models, and N is a positive integer less than M.
12. The method according to claim 11, characterized in that, The second model is the model with the highest priority among the N first models. The M first models include public models and private models, and the priority of the private model is higher than that of the public model.
13. The method according to claim 12, characterized in that, The identifiers of the M first models included in the call request are sorted based on the priority of the M first models.
14. The method according to claim 10, characterized in that, The second model is one of the M first models, and the call response is further used to request parameters of the second model. The method also includes: Receive the parameters of the second model.
15. The method according to any one of claims 10 to 14, characterized in that, The method further includes: Send a second registration request, the second registration request including second capability information, the second capability information being used to indicate that the second terminal supports the first model.
16. The method according to any one of claims 10 to 15, characterized in that, The call request also includes the version numbers of the M first models.
17. The method according to any one of claims 10 to 16, characterized in that, The first terminal and the second terminal conduct voice calls via a non-terrestrial network.
18. The method according to any one of claims 10 to 17, characterized in that, The voice call is an Internet Protocol Multimedia Subsystem (IPMS) voice call based on a high-orbit satellite.
19. A communication method, characterized in that, The method includes: Send a call request to the second terminal. The call request is used to instruct the first terminal to request a voice call with the second terminal. The call request includes the identifiers of M first models supported by the first terminal. The first model is a codec model based on artificial intelligence (AI), and M is a positive integer. Receive a first call response from the second terminal, the first call response being the response of the second terminal based on the call request, the first call response including an identifier of a third model, the third model being different from the first model; Send a second call response to the first terminal, the second call response including an identifier of a second model, the second model being one of the M first models.
20. The method according to claim 19, characterized in that, The method further includes: Send first information to a third network element, the first information being used to instruct the first terminal to use the second model and the second terminal to use the third model.
21. The method according to claim 19, characterized in that, The method further includes: Send second information to the third network element, the second information including the identifiers of the M first models; Receive third information from the third network element, the third information including the identifier of the second model.
22. The method according to claim 19, characterized in that, The method further includes: Receive first voice data from the first terminal; The second speech signal is obtained by decoding the first speech data based on the second model; The second speech signal is encoded based on the third model to obtain the second speech data; Send the second voice data.
23. The method according to any one of claims 19 to 22, characterized in that, The method further includes: The system receives first registration information from a first terminal, wherein the first registration request includes first capability information, which is used to indicate that the first terminal supports a first model.
24. The method according to any one of claims 19 to 23, characterized in that, The first call response also indicates the encoding rate desired by the second terminal.
25. The method according to any one of claims 19 to 24, characterized in that, The first terminal and the second terminal conduct voice calls via a non-terrestrial network.
26. The method according to any one of claims 19 to 25, characterized in that, The voice call is an Internet Protocol Multimedia Subsystem (IPMS) voice call based on a high-orbit satellite.
27. A communication device, characterized in that, The apparatus includes a module or unit for performing the method of any one of claims 1 to 9, or the apparatus includes a module or unit for performing the method of any one of claims 10 to 18, or the apparatus includes a module or unit for performing the method of any one of claims 19 to 26.
28. A communication device, characterized in that, The communication device includes at least one processor; wherein the at least one processor is configured to cause the communication device to perform the method of any one of claims 1 to 9, or, the at least one processor is configured to cause the communication device to perform the method of any one of claims 10 to 18, or, the at least one processor is configured to cause the communication device to perform the method of any one of claims 19 to 26.
29. A computer-readable storage medium, characterized in that, The storage medium stores a computer program or instructions, which, when executed, perform the method as described in any one of claims 1 to 9, or the method as described in any one of claims 10 to 18, or the method as described in any one of claims 19 to 26.