Voice call method, device, electronic device, medium and program product

By encoding and decoding voice messages in SBC network elements, the problem of insufficient bandwidth in extreme scenarios is solved, real-time voice calls in environments such as high-orbit satellites are realized, and call quality and adaptability are improved.

CN118869666BActive Publication Date: 2025-01-03CHINA TELECOM CORP LTD +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411322367.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-09-20
Publication Date
2025-01-03
Estimated Expiration
2044-09-20

AI Technical Summary

Technical Problem

In extreme scenarios such as high-orbit satellites and underwater submarines, the lack of bandwidth of the communication network makes it difficult for the existing technology to achieve high-quality real-time voice calls.

Method used

The SBC network element is controlled by the session edge, and the first terminal is used to encode voice messages under low bandwidth conditions, and parse and re-encode the SBC network element to realize real-time transmission of voice messages, ensuring that the second one is in the case of insufficient bandwidth. Real-time voice calls from the terminal.

Benefits of technology

Real-time voice calls with other terminals on terminal devices with smaller bandwidth are realized, the quality and adaptability of voice calls are improved, and suitable for narrowband communication environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118869666B_ABST
    Figure CN118869666B_ABST
Patent Text Reader

Abstract

The present disclosure provides a voice call method, device, electronic device, medium and program product, which relates to the field of communication technology. The method includes: receiving a voice message; encoding the voice message at a first rate to obtain a first voice code; encapsulating an RTP data packet header on the first voice code to obtain a first encapsulated message; sending the first encapsulated message to an SBC network element so that the SBC network element parses the first encapsulated message, and encodes the parsed voice message at a second rate to obtain a second voice code, and sends the second voice code to a second terminal so that the second terminal decodes and plays the second voice code, and the first rate is less than the second rate. The present disclosure can realize a real-time voice call between the first terminal and the second terminal when the bandwidth is insufficient.
Need to check novelty before this filing date? Find Prior Art

Description

Background Art

[0002] With the development of communication technology, especially in the field of mobile communications, users have higher and higher requirements for voice call quality. In extreme scenarios such as high-orbit satellites and underwater submarines, one of the two terminals in a voice call is often unable to make a real-time voice call with the other terminal due to insufficient bandwidth due to bandwidth limitations.

[0003] How to achieve real-time voice calls when one party of the voice call has insufficient bandwidth is an urgent problem to be solved.

[0004] It should be noted that the information disclosed in the above background technology section is only used to enhance the understanding of the background of the present disclosure, and therefore may include information that does not constitute the prior art known to ordinary technicians in the field. Summary of the invention

[0005] The present disclosure provides a voice call method, device, electronic device, medium and program product, which at least to a certain extent realize real-time voice calls when one party has insufficient bandwidth.

[0006] Other features and advantages of the present disclosure will become apparent from the following detailed description, or may be learned in part by the practice of the present disclosure.

[0007] According to one aspect of the present disclosure, a voice call method is provided, which is applied to a first terminal, wherein the first terminal conducts a voice call with a second terminal through a session edge control SBC network element, and a bandwidth for the first terminal to communicate is smaller than a bandwidth for the second terminal to communicate; the method comprises: receiving a voice message; encoding the voice message at a first rate to obtain a first voice code; encapsulating a real-time transport protocol RTP data packet header on the first voice code to obtain a first encapsulated message; sending the first encapsulated message to the SBC network element so that the SBC network element parses the first encapsulated message, and encodes the parsed voice message at a second rate to obtain a second voice code, and sending the second voice code to the second terminal so that the second terminal decodes and plays the second voice code, wherein the first rate is smaller than the second rate.

[0008] According to another aspect of the present disclosure, a voice call method is provided, which is applied to a session edge control SBC network element, wherein a first terminal conducts a voice call with a second terminal through the SBC network element, and a bandwidth for the first terminal to communicate is smaller than a bandwidth for the second terminal to communicate; the method comprises: receiving a first encapsulated message sent by the first terminal, the first encapsulated message being obtained by the first terminal encapsulating a real-time transport protocol RTP data packet header on a first voice code, the first voice code being obtained by the first terminal encoding a received voice message at a first rate; parsing the first encapsulated message to obtain a voice message; encoding the voice message at a second rate to obtain a second voice code, the second rate being greater than the first rate; and sending the second voice code to the second terminal so that the second terminal decodes and plays the second voice code.

[0009] According to another aspect of the present disclosure, a voice call method is provided, which is applied to a session edge control SBC network element, wherein a second terminal conducts a voice call with a first terminal through the SBC network element, and a bandwidth for the second terminal to communicate is greater than a bandwidth for the first terminal to communicate; the method comprises: receiving a second encapsulated message sent by the second terminal, the second encapsulated message being obtained by the second terminal encapsulating a real-time transport protocol RTP data packet header on a third voice code, the third voice code being obtained by the second terminal encoding the received voice message at a second rate; parsing the second encapsulated message to obtain a voice message; encoding the voice message at a first rate to obtain a fourth voice code, the first rate being less than the second rate; and sending the fourth voice code to the first terminal so that the first terminal decodes and plays the fourth voice code.

[0010] According to another aspect of the present disclosure, a voice call device is provided, which is applied to a first terminal, and the first terminal conducts a voice call with a second terminal through a session edge control SBC network element, and the bandwidth for the first terminal to communicate is smaller than the bandwidth for the second terminal to communicate; the device includes: a first receiving module, used to receive a voice message; a first encoding module, used to encode the voice message at a first rate to obtain a first voice code; an encapsulation module, used to encapsulate a real-time transport protocol RTP data packet header on the first voice code to obtain a first encapsulated message; a first sending module, used to send the first encapsulated message to the SBC network element, so that the SBC network element parses the first encapsulated message, and encodes the parsed voice message at a second rate to obtain a second voice code, and sends the second voice code to the second terminal, so that the second terminal decodes and plays the second voice code, and the first rate is smaller than the second rate.

[0011] According to another aspect of the present disclosure, a voice call device is provided, which is applied to a session edge control SBC network element, wherein a first terminal conducts a voice call with a second terminal through the SBC network element, and a bandwidth for the first terminal to communicate is smaller than a bandwidth for the second terminal to communicate; the device comprises: a second receiving module, which is used to receive a first encapsulated message sent by the first terminal, wherein the first encapsulated message is obtained by the first terminal encapsulating a real-time transport protocol RTP data packet header on a first voice code, and the first voice code is obtained by the first terminal encoding the received voice message at a first rate; a first parsing module, which is used to parse the first encapsulated message to obtain a voice message; a second encoding module, which is used to encode the voice message at a second rate to obtain a second voice code, wherein the second rate is greater than the first rate; and a second sending module, which is used to send the second voice code to the second terminal, so that the second terminal decodes and plays the second voice code.

[0012] According to another aspect of the present disclosure, a voice call device is provided, which is applied to a session edge control SBC network element, and a second terminal conducts a voice call with a first terminal through the SBC network element, and a bandwidth for the second terminal to communicate is greater than a bandwidth for the first terminal to communicate; the device includes: a third receiving module, used to receive a second encapsulated message sent by the second terminal, the second encapsulated message is obtained by the second terminal encapsulating a real-time transport protocol RTP data packet header on a third voice code, and the third voice code is obtained by the second terminal encoding the received voice message at a second rate; a second parsing module, used to parse the second encapsulated message to obtain a voice message; a third encoding module, used to encode the voice message at a first rate to obtain a fourth voice code, the first rate is less than the second rate; a third sending module, used to send the fourth voice code to the first terminal, so that the first terminal decodes and plays the fourth voice code.

[0013] According to another aspect of the present disclosure, an electronic device is provided, comprising: a processor; and a memory for storing executable instructions of the processor; wherein the processor is configured to execute any of the above-mentioned voice call methods by executing the executable instructions.

[0014] According to another aspect of the present disclosure, a computer-readable storage medium is provided, on which a computer program is stored, and when the computer program is executed by a processor, any of the above-mentioned voice call methods is implemented.

[0015] According to another aspect of the present disclosure, a computer program product is provided, the computer program product comprising a computer program or computer instructions, the computer program or the computer instructions being loaded and executed by a processor so that a computer implements any of the above-mentioned voice call methods.

[0016] In the embodiment of the present disclosure, the first terminal makes a voice call with the second terminal through the SBC network element, the bandwidth for the first terminal to communicate is smaller than the bandwidth for the second terminal to communicate, the first terminal receives the voice message, and encodes the voice message at the first rate to obtain the first voice code; encapsulates the RTP data packet header on the first voice code to obtain the first encapsulation message; sends the first encapsulation message to the SBC network element so that the SBC network element parses the first encapsulation message, and encodes the parsed voice message at the second rate to obtain the second voice code, and sends the second voice code to the second terminal so that the second terminal decodes and plays the second voice code, and the first rate is smaller than the second rate. In the present disclosure, the first terminal with a smaller bandwidth uses the first rate to encode the first voice code, and parses the first voice code in the SBC network element, and re-encodes the second voice code at the second rate, and the second rate is greater than the first rate, thereby realizing a real-time voice call between the first terminal and the second terminal when the bandwidth is insufficient.

[0017] It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS

[0018] The accompanying drawings herein are incorporated into the specification and constitute a part of the specification, illustrate embodiments consistent with the present disclosure, and together with the specification are used to explain the principles of the present disclosure. Obviously, the accompanying drawings described below are only some embodiments of the present disclosure, and for ordinary technicians in this field, other accompanying drawings can be obtained based on these accompanying drawings without creative work.

[0019] Figure 1 A schematic diagram showing a voice call system architecture according to an embodiment of the present disclosure.

[0020] Figure 2 A schematic diagram showing a voice call system architecture according to another embodiment of the present disclosure.

[0021] Figure 3 A flow chart of a voice call method in an embodiment of the present disclosure is shown.

[0022] Figure 4 A flow chart of a voice call method in another embodiment of the present disclosure is shown.

[0023] Figure 5 A flow chart of a voice call method in yet another embodiment of the present disclosure is shown.

[0024] Figure 6 A flow chart of a voice call method in another embodiment of the present disclosure is shown.

[0025] Figure 7 A flowchart of a voice call process in an embodiment of the present disclosure is shown.

[0026] Figure 8 A flow chart of a voice call in another embodiment of the present disclosure is shown.

[0027] Fig. 9 A schematic diagram of a voice communication device in an embodiment of the present disclosure is shown.

[0028] Fig.10 A schematic diagram of a voice communication device in another embodiment of the present disclosure is shown.

[0029] Fig.11 A schematic diagram of a voice communication device in another embodiment of the present disclosure is shown.

[0030] Fig.12 A structural block diagram of an electronic device in an embodiment of the present disclosure is shown.

[0031] Fig.13 A schematic diagram of a computer-readable storage medium provided in an embodiment of the present disclosure is shown. DETAILED DESCRIPTION

[0032] Example embodiments will now be described more fully with reference to the accompanying drawings. However, example embodiments can be implemented in a variety of forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided so that the disclosure will be more comprehensive and complete and to fully convey the concepts of the example embodiments to those skilled in the art. The described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.

[0033] In addition, the accompanying drawings are only schematic illustrations of the present disclosure and are not necessarily drawn to scale. The same reference numerals in the figures represent the same or similar parts, and their repeated description will be omitted. Some of the block diagrams shown in the accompanying drawings are functional entities and do not necessarily correspond to physically or logically independent entities. These functional entities can be implemented in software form, or implemented in one or more hardware modules or integrated circuits, or implemented in different networks and / or processor devices and / or microcontroller devices.

[0034] It should be understood that the various steps described in the method embodiments of the present disclosure may be performed in different orders and / or in parallel. In addition, the method embodiments may include additional steps and / or omit the steps shown. The scope of the present disclosure is not limited in this respect.

[0035] It should be noted that the concepts such as "first" and "second" mentioned in the present disclosure are only used to distinguish different devices, modules or units, and are not used to limit the order or interdependence of the functions performed by these devices, modules or units.

[0036] It should be noted that the modifications of "one" and "plurality" mentioned in the present disclosure are illustrative rather than restrictive, and those skilled in the art should understand that unless otherwise clearly indicated in the context, it should be understood as "one or more".

[0037] For ease of understanding, several terms involved in the present disclosure are first explained as follows.

[0038] IP (Internet Protocol) is the method or protocol by which information is transmitted from one computer to another on the network.

[0039] IMS (IP Multimedia Subsystem) is an IP multimedia system and a new form of multimedia service. It can meet the needs of current terminal customers for newer and more diversified multimedia services.

[0040] The SBC network element (Session Border Control) is an important network node in the IMS network element. It is located at the edge of the IMS network element and plays an important role in connecting terminal users to the IMS core network.

[0041] AMR (Adaptive Multi-Rate) is an audio codec.

[0042] Stock Universal Phone usually refers to ordinary mobile phones in existing inventory, rather than mobile phones specially customized for a certain market or customer group.

[0043] Narrowband usually refers to a relatively narrow frequency band range used to transmit signals or information with lower data rates.

[0044] A satellite communication module is an integrated device that can be built into a first terminal to enable communication between the first terminal and a satellite.

[0045] RTP (Real-time Transport Protocol) is a network protocol used to transmit multimedia data on the Internet.

[0046] Standard Codec usually refers to the audio and video codecs that are widely accepted and adopted. They are usually coding standards developed and maintained by standard-setting organizations such as the International Organization for Standardization (ISO), the International Telecommunication Union (ITU), and the International Electrotechnical Commission (IEC).

[0047] SSID (Service Set Identifier) ​​is the name used to identify a wireless local area network (Wi-Fi) network.

[0048] A MAC address (Media Access Control address) is a unique identifier for a network device such as a satellite gateway.

[0049] With the development of communication technology, in fields such as mobile communications, users have increasingly higher requirements for voice call quality.

[0050] The vocoders in related technologies often cannot meet the needs of high-quality voice transmission in low-rate scenarios, especially in bandwidth-constrained (such as narrowband) environments. In extreme scenarios such as high-orbit satellites and underwater submarines, the bandwidth of the communication network is usually less than 1 Kbps (kilobits per second), making it difficult for the audio codecs used in the communication network (such as G.711 (working bit rate of 64 Kbps) and AMR (working bit rate of 4.75Kbps~23.85Kbps)) to ensure high-quality voice calls at low bit rates.

[0051] Based on this, the present disclosure provides a voice call method, device, electronic device, medium and program product, which can be used to realize real-time voice call in narrowband conditions when voice passes through one of the two parties. For example, it is used in real-time, high-quality voice call services in extreme narrowband scenarios such as high-orbit satellites. For another example, it is used in voice call services for underwater acoustic communications in deep-sea exploration and scientific research. For another example, it is used in voice call services in emergency rescue scenarios. The embodiments of the present disclosure can also be applied to real-time voice calls in other narrowband conditions. In the embodiments of the present disclosure, a first terminal with a small bandwidth (such as narrowband) uses a first rate to encode to obtain a first voice code, and parses the first voice code in an SBC network element, and re-encodes it at a second rate to obtain a second voice code, and the second rate is greater than the first rate, thereby realizing a real-time voice call between the first terminal and the second terminal when the bandwidth is insufficient.

[0052] It should be pointed out that, in the absence of conflict, the embodiments of the present disclosure and the technical features therein may be combined with each other.

[0053] The specific implementation methods of the embodiments of the present disclosure are described in detail below in conjunction with the accompanying drawings. The following embodiments are applied in high-orbit satellite scenarios, and the present disclosure does not limit this.

[0054] Figure 1 A schematic diagram showing a voice call system architecture of an embodiment of the present disclosure is provided, and the system can apply the voice call method or voice call device in each embodiment of the present disclosure.

[0055] like Figure 1 As shown, the system architecture may include a first terminal 101, a satellite 102, a ground gateway 103, an SBC network element 104, an IMS network element 105 and a second terminal 106.

[0056] The first terminal 101, the satellite 102, the ground gateway 103 and the SBC network element 104 are connected to each other through a network, which may be a wired network or a wireless network. The second terminal 106 communicates with the SBC network element 104 through the IMS network element 105, thereby realizing a real-time voice call between the first terminal 101 and the second terminal 106.

[0057] The first terminal 101 and the second terminal 106 can be various electronic devices, including but not limited to smart phones, tablet computers, laptop computers, desktop computers, wearable devices, augmented reality devices, virtual reality devices, etc.

[0058] Exemplarily, the first terminal 101 may be a general mobile phone with a built-in satellite communication module, and the second terminal 106 may be a general mobile phone. The bandwidth for the first terminal 101 to communicate is smaller than the bandwidth for the second terminal to communicate. The first terminal 101 completes information interaction with the satellite 102 through the satellite communication module, and the satellite 102 forwards the information (such as the first packaged message) to the SBC network element 104. For example, the satellite 102 adopts a transparent forwarding mode to forward the information to the SBC network element 104 via the ground gateway 103. The SBC network element 104 can communicate with the satellite 102 through the ground gateway 103 and complete the voice codec conversion and signaling protocol conversion functions. The second terminal 106 receives the information (such as the second voice code) sent by the SBC network element 104 through the IMS network element 105, and decodes and plays it, thereby realizing a real-time voice call between the first terminal 101 and the second terminal 106.

[0059] It should be noted that the first terminal 101 encodes the received voice message at a first rate to obtain a first voice code, the SBC network element 104 decodes the first voice code, and re-encodes it at a second rate to obtain a second voice code, thereby realizing voice codec conversion, ensuring that when the bandwidth of the first terminal 101 is less than the bandwidth of the second terminal 106, real-time voice can be transmitted between the first terminal 101 and the second terminal 102.

[0060] Figure 2 A schematic diagram showing a voice call system architecture of another embodiment of the present disclosure is provided, and the system can apply the voice call method or voice call device in each embodiment of the present disclosure.

[0061] like Figure 2 As shown, the system architecture may include a first terminal 101 , a satellite 102 , a ground gateway 103 , an SBC network element 104 , an IMS network element 105 , a second terminal 106 and a satellite gateway 107 .

[0062] Exemplarily, the first terminal 101 may be a general mobile phone without a built-in satellite communication module, and the second terminal 106 may be a general mobile phone. The bandwidth for the first terminal 101 to communicate is smaller than the bandwidth for the second terminal to communicate. The first terminal 101 completes information interaction with the satellite 102 through the satellite gateway 107, and the satellite 102 forwards the information (such as the first encapsulated message) to the SBC network element 104. For example, the satellite 102 adopts a transparent forwarding mode to forward the information to the SBC network element 104 via the ground gateway 103. The SBC network element 104 can communicate with the satellite 102 through the ground gateway 103 and complete the voice codec conversion and signaling protocol conversion functions. The second terminal 106 receives the information (such as the second voice code) sent by the SBC network element 104 through the IMS network element 105, and decodes and plays it, thereby realizing a real-time voice call between the first terminal 101 and the second terminal 106.

[0063] In the embodiment of the present disclosure, the universal first terminal 101 does not need to add a satellite communication module, and it exchanges information with the satellite 102 through the satellite gateway 107. The satellite gateway 107 can be deployed in scenes such as ships, high-speed railways, and cars. The first terminal 101 of the present disclosure can also realize satellite voice calls without installing a satellite communication module.

[0064] The above exemplary embodiment is that the first terminal 101 makes a call and the second terminal 106 receives the call. Figure 1 and Figure 2 The two system architectures can also realize that the second terminal 106 makes a call and the first terminal 101 receives the call.

[0065] The present exemplary implementation is described in detail below with reference to the accompanying drawings and embodiments.

[0066] Figure 3 A flow chart of a voice call method in an embodiment of the present disclosure is shown, which is applied to a first terminal. The first terminal conducts a voice call with a second terminal through a session edge control SBC network element. The bandwidth for communication with the first terminal is smaller than the bandwidth for communication with the second terminal. Figure 3 As shown, the voice call method provided in the embodiment of the present disclosure may include the following S301 to S304.

[0067] S301, receiving a voice message.

[0068] In the embodiment of the present disclosure, the voice message is the sound information collected by the first terminal, for example, the sound emitted by the voice caller, or the sound emitted by a machine (such as a smart speaker), but the embodiment of the present disclosure is not limited thereto.

[0069] In the embodiment of the present disclosure, the embodiment of the present disclosure does not limit how the first terminal receives the voice message. For example, a sound collector (such as a microphone) on the first terminal can receive the voice message sent by the voice caller.

[0070] S302: Encode the voice message at a first rate to obtain a first voice code.

[0071] In the embodiment of the present disclosure, the bandwidth provided for communication by the first terminal is smaller than the bandwidth provided for communication by the second terminal. In order to realize real-time voice calls between the first terminal and the second terminal, when the bandwidth is small, a smaller first rate is used to encode the voice message to ensure that the encoded first voice code is effectively transmitted, thereby providing conditions for realizing real-time voice calls.

[0072] Exemplarily, the bandwidth provided for communication by the first terminal is a narrowband, for example, the bandwidth provided for communication by the first terminal is less than 1 Kbps.

[0073] In the embodiment of the present disclosure, the first rate is a coding rate that enables the first terminal to perform coding when the bandwidth is insufficient. The first rate is a low rate, for example, the first rate is less than or equal to 1 Kbps.

[0074] It should be noted that in speech coding technology, the coding rate below 4.8Kbs is called low-rate speech coding technology. The embodiments of the present disclosure do not limit how to implement the first rate coding, for example, by installing a low-rate codec on the first terminal. For another example, a software codec based on artificial intelligence (AI) technology is installed on the first terminal for the encoding and decoding process of audio and video data (such as voice messages). AI soft codec can improve coding efficiency, reduce data transmission bandwidth requirements, and maintain good audio and video quality as much as possible.

[0075] S303, encapsulating a real-time transport protocol RTP data packet header on the first voice codec to obtain a first encapsulation message.

[0076] In the embodiment of the present disclosure, encapsulating the RTP data packet header on the first voice coding can provide support for real-time multimedia applications, thereby ensuring the real-time transmission of the first voice coding.

[0077] S304, sending a first encapsulated message to the SBC network element so that the SBC network element parses the first encapsulated message, and encodes the parsed voice message at a second rate to obtain a second voice code, and sends the second voice code to the second terminal so that the second terminal decodes and plays the second voice code, and the first rate is less than the second rate.

[0078] In the embodiment of the present disclosure, the second rate is a coding rate of a standard codec, for example, a coding rate of a standard speech codec such as G.711 and AMR.

[0079] In the disclosed embodiment, the SBC network element parses the first encapsulated message to parse out the voice message, and performs code rate conversion on the voice message to obtain the second voice code. In other words, the first voice code after the first rate coding is decoded and restored, and then re-encoded using the second rate coding (standard coding algorithm coding).

[0080] Exemplarily, a software codec and a standard codec are added to the SBC network element, and the software codec is used to decode the first voice codec. The standard codec is used to encode the voice message obtained after decoding according to the second rate, thereby converting the non-standard low-speed codec (first voice codec) into the standard codec (second voice codec), thereby realizing a real-time voice call between the second terminal and the first terminal.

[0081] In the embodiment of the present disclosure, a first terminal with a smaller bandwidth uses a first rate to encode to obtain a first voice code, and the first voice code is parsed in an SBC network element, and re-encoded at a second rate to obtain a second voice code, and the second rate is greater than the first rate, thereby realizing a real-time voice call between the first terminal and the second terminal when the bandwidth is insufficient.

[0082] The present disclosure is described below through several exemplary embodiments.

[0083] In an exemplary embodiment, the RTP data packet header may include a first terminal identifier and a first network identifier, the first terminal identifier is used to identify the second terminal, and the first network identifier is used to identify the SBC network element; wherein, sending a first encapsulated message to the SBC network element so that the SBC network element parses the first encapsulated message, and encodes the parsed voice message at a second rate to obtain a second voice code, and sending the second voice code to the second terminal so that the second terminal decodes and plays the second voice code, may include: sending the first encapsulated message to the SBC network element based on the first network identifier so that the SBC network element parses the first encapsulated message, and encodes the parsed voice message at the second rate to obtain a second voice code, and sending the second voice code to the second terminal using the first terminal identifier so that the second terminal decodes and plays the second voice code.

[0084] In the disclosed embodiment, the first terminal identifier may be an identifier that uniquely identifies the second terminal, such as a device ID (Identification) of the second terminal, a SIM (Subscriber Identity Module) card identifier, etc. For example, when the second terminal is a mobile phone, the first terminal identifier may be the mobile phone number of the second terminal.

[0085] Exemplarily, the SBC network element parses the first encapsulated message, and encodes the parsed voice message at the second rate to obtain the second voice code. After that, the SBC network element encapsulates the RTP data packet header, the RTP data packet header includes the first terminal identifier (the mobile phone number of the second terminal), and sends the second voice code of the encapsulated RTP data packet header to the IMS network element. The IMS network element obtains the actual address of the second terminal according to the first terminal identifier, and sends the second voice code to the second terminal according to the actual address of the second terminal. It should be noted that a mapping table of the correspondence between the first terminal identifier and the actual address can be configured on the IMS network element. According to the mapping table of the correspondence, the time address corresponding to the first terminal identifier can be queried, so that the second voice code is sent to the second terminal.

[0086] It should be noted that in order to reduce the amount of data transmission, the first terminal identifier can be located on the RTP data packet header of the first first encapsulation message sent by the first terminal to the SBC network element, which can ensure that the voice message is accurately transmitted from the first terminal to the second terminal while reducing the amount of data transmission.

[0087] In the disclosed embodiment, the first network identifier may be a network identifier address of the SBC network element, such as an IPv4 (Internet Protocol version 4, the fourth major version of the Internet Protocol) address, an IPv6 (Internet Protocol version 6, the sixth major version of the Internet Protocol) address, etc.

[0088] The disclosed embodiment configures a terminal identifier and a first network identifier in a data packet header, so as to accurately send a first encapsulated message to an SBC network element, convert a non-standard encoding (a first voice encoding) into a standard encoding (a second voice encoding), and accurately send the second voice encoding after the encoding conversion to a second terminal, thereby realizing a real-time voice call between the first terminal and the second terminal.

[0089] Furthermore, by performing low-rate encoding when bandwidth is insufficient, converting non-standard encoding into standard encoding in the SBC network element, and performing standard encoding and decoding when bandwidth is sufficient, effective real-time voice calls can be achieved.

[0090] In another exemplary embodiment, Figure 4 As shown, before receiving the voice message, the method provided by the embodiment of the present disclosure may further include the following S401 to S403.

[0091] S401, determine whether the first terminal has a built-in satellite communication module; if so, execute S402; if not, execute S403.

[0092] In the disclosed embodiment, the method for determining whether the first terminal has a built-in satellite communication module is not limited. For example, whether the first terminal has a built-in satellite communication module can be determined by whether there is a satellite positioning option in the setting interface of the first terminal. For another example, whether the first terminal has a built-in satellite communication module can be determined by detecting the factory settings of the first terminal.

[0093] S402, when the first terminal accesses the satellite through the satellite communication module, configure the encoding speed of the first terminal to a first rate.

[0094] In the embodiment of the present disclosure, a low-speed codec is installed on the first terminal, and the low-speed codec is used to encode the voice message at a first rate to obtain a first voice code. Exemplarily, the low-speed codec may be a software codec with an encoding speed of 1 Kbps.

[0095] In the disclosed embodiment, when the first terminal is connected to the satellite through the satellite communication module, the encoding speed of the first terminal is configured to be the first rate. For example, when the first terminal is connected to the satellite, the software codec of the first terminal configures the encoding speed to be the first rate (such as the speed of non-standard codec).

[0096] Exemplarily, after determining that the first terminal has a built-in satellite communication module, determine whether the first terminal is directly connected to the satellite, if so, configure the encoding speed to a non-standard encoding and decoding speed. If not, configure the encoding speed to a standard encoding and decoding speed.

[0097] S403: When the first terminal is connected to a satellite gateway and accesses a satellite through the satellite gateway, a coding speed of the first terminal is configured as a first rate.

[0098] In the disclosed embodiment, if the first terminal does not have a built-in satellite communication module, it is determined whether the first terminal is connected to a satellite gateway. If the first terminal is connected to a satellite gateway and accesses a satellite through the satellite gateway, the encoding speed of the first terminal is configured as a non-standard encoding and decoding speed. If the first terminal is not connected to a satellite gateway, the encoding speed is configured as a standard encoding and decoding speed.

[0099] In the embodiment of the present disclosure, the first terminal without a built-in satellite communication module needs to negotiate the voice codec mode with the satellite gateway. Exemplarily, there is no need to change the communication protocol between the satellite gateway and the first terminal, and the identification information of the satellite gateway is used to represent the satellite gateway. The identification information may include one of a MAC address and a wireless network SSID name, but the embodiment of the present disclosure is not limited thereto. When the first terminal accesses any wireless network and identifies the identification information of the satellite gateway, the codec of the voice call is switched to the AI ​​soft codec.

[0100] It should be noted that the embodiment of the present disclosure is a voice call establishment process, that is, during the satellite voice call establishment process, it is necessary to negotiate the voice codec mode, that is, configure the codec speed.

[0101] The embodiments of the present disclosure can realize real-time voice calls between the first terminal and the second terminal via satellite in two ways. That is to say, satellite voice calls can be realized regardless of whether the first terminal has a built-in satellite communication module, thereby improving the adaptability of the present disclosure and providing solutions for more terminal devices to realize real-time voice calls.

[0102] Based on the same inventive concept, the embodiment of the present disclosure also provides a voice call method, as described in the following embodiment. Since the principle of solving the problem in the embodiment of the method is similar to that in the above embodiment of the method, the implementation of the embodiment of the method can refer to the implementation of the above embodiment of the method, and the repeated parts will not be repeated.

[0103] Figure 5 A flow chart of a voice communication method in another embodiment of the present disclosure is shown, which is applied to a session edge control SBC network element. A first terminal makes a voice call with a second terminal through the SBC network element. The bandwidth for communication of the first terminal is smaller than the bandwidth for communication of the second terminal. Figure 5As shown, the voice call method provided in the embodiment of the present disclosure may include the following S501 to S504.

[0104] S501, receiving a first encapsulated message sent by a first terminal, where the first encapsulated message is obtained by the first terminal encapsulating a real-time transport protocol RTP data packet header on a first voice codec, where the first voice codec is obtained by the first terminal encoding a received voice message at a first rate.

[0105] S502: parse the first packaged message to obtain a voice message.

[0106] In the disclosed embodiment, the SBC network element first decapsulates the first encapsulated message to obtain the first voice code, and then decodes the first voice code to obtain the voice message.

[0107] S503: Encode the voice message at a second rate to obtain a second voice code, where the second rate is greater than the first rate.

[0108] In the disclosed embodiment, since the bandwidth of the second terminal is sufficient, the second terminal can implement standard encoding and decoding, and the SBC network element converts non-standard encoding into standard encoding (such as the second voice encoding), which is conducive to realizing real-time voice calls between the first terminal and the second terminal.

[0109] S504: Send the second voice code to the second terminal, so that the second terminal decodes and plays the second voice code.

[0110] In the embodiment of the present disclosure, the second terminal decodes the second voice encoding using a standard codec, and plays the decoded voice through a player.

[0111] In the embodiment of the present disclosure, a first terminal with a smaller bandwidth uses a first rate to encode to obtain a first voice code, and the first voice code is parsed in an SBC network element, and re-encoded at a second rate to obtain a second voice code, and the second rate is greater than the first rate, thereby realizing a real-time voice call between the first terminal and the second terminal when the bandwidth is insufficient.

[0112] The present disclosure is described below through several exemplary embodiments.

[0113] In an exemplary embodiment, the RTP data packet header may include a first terminal identifier and a first network identifier, the first terminal identifier is used to identify the second terminal, and the first network identifier is used to identify the SBC network element; wherein, receiving a first encapsulated message sent by the first terminal includes: receiving a first encapsulated message sent by the first terminal using the first network identifier; wherein, sending the second voice code to the second terminal includes: sending the second voice code to the second terminal using the first terminal identifier, so that the second terminal decodes and plays the second voice code, and the first rate is less than the second rate.

[0114] The first terminal identifier and the first network identifier have been described in the above exemplary embodiments and will not be described again here.

[0115] Exemplarily, after receiving the first encapsulated message, the SBC network element may first determine whether the first encapsulated message is transmitted through the satellite and the ground gateway. If so, the first encapsulated message is parsed. It should be noted that the first encapsulated message can be determined by comparing the network identification address of the SBC network element to determine whether it comes from the satellite and the ground gateway. For example, the ground gateway connected to the satellite has the function of accessing the Internet, so it can be assigned a fixed IPv4 address and an IPv6 address, and a specific IP address (such as a marked IPv4 address) is used to determine whether the first encapsulated message is transmitted through the ground gateway.

[0116] The disclosed embodiment configures a terminal identifier and a first network identifier in an RTP data packet header, so as to accurately send a first encapsulated message to an SBC network element, convert a non-standard encoding (a first voice encoding) into a standard encoding (a second voice encoding), and accurately send the second voice encoding after the encoding conversion to a second terminal, thereby realizing a real-time voice call between the first terminal and the second terminal.

[0117] Furthermore, by performing low-rate encoding when bandwidth is insufficient, converting non-standard encoding into standard encoding in the SBC network element, and performing standard encoding and decoding when bandwidth is sufficient, effective real-time voice calls can be achieved.

[0118] In another exemplary embodiment, before receiving the voice message, the method also includes: determining whether the first terminal has a built-in satellite communication module; if so, when the first terminal accesses the satellite through the satellite communication module, configuring the encoding speed of the first terminal to the first rate; if not, when the first terminal is connected to a satellite gateway and accesses the satellite through the satellite gateway, configuring the encoding speed of the first terminal to the first rate.

[0119] Exemplarily, a low-rate codec is installed on the first terminal, and the low-rate codec is used to encode the received voice message at a first rate to obtain a first voice code.

[0120] The disclosed embodiment can enable a first terminal without a satellite communication module to complete a satellite voice call in an area without coverage of a ground mobile network.

[0121] The embodiments of the present disclosure can realize real-time voice calls between the first terminal and the second terminal via satellite in two ways. That is to say, satellite voice calls can be realized regardless of whether the first terminal has a built-in satellite communication module, thereby improving the adaptability of the present disclosure and providing solutions for more terminal devices to realize real-time voice calls.

[0122] Based on the same inventive concept, the embodiment of the present disclosure also provides a voice call method, as described in the following embodiment. Since the principle of solving the problem in the embodiment of the method is similar to that in the above embodiment of the method, the implementation of the embodiment of the method can refer to the implementation of the above embodiment of the method, and the repeated parts will not be repeated.

[0123] Figure 6 A flow chart of a voice call method in another embodiment of the present disclosure is shown. Applied to a session edge control SBC network element, a second terminal makes a voice call with a first terminal through the SBC network element, and a bandwidth for communication with the second terminal is greater than a bandwidth for communication with the first terminal, such as Figure 6 As shown, the voice call method provided in the embodiment of the present disclosure may include the following S601 to S604.

[0124] S601, receiving a second encapsulated message sent by a second terminal, the second encapsulated message is obtained by the second terminal encapsulating a real-time transport protocol RTP data packet header on a third voice coding, and the third voice coding is obtained by the second terminal encoding a received voice message at a second rate.

[0125] In the embodiment of the present disclosure, the second rate may be the encoding and decoding speed of the standard codec. It should be noted that the voice message in the embodiment of the present disclosure is different from S301. The voice message in the embodiment of the present disclosure is the sound collected by the second terminal. For example, the sound emitted by the voice caller of the second terminal.

[0126] S602: parse the second encapsulated message to obtain a voice message.

[0127] Exemplarily, the SBC network element decapsulates the second encapsulated message to obtain a third voice code, and then decodes the third voice code using a standard codec on the SBC network element to obtain a voice message.

[0128] S603: Encode the voice message at a first rate to obtain a fourth voice code, wherein the first rate is lower than the second rate.

[0129] In the disclosed embodiment, the SBC network element encodes the voice message at the first rate, thereby obtaining a low-speed voice encoding (fourth voice encoding) at which the first terminal can implement a real-time voice call.

[0130] In the embodiments of the present disclosure, there is no limitation on the low-speed codec installed on the first terminal, as long as it is a codec that can achieve low-speed coding and decoding. For example, the low-speed codec is one of the self-developed vocoder, Codec2 and LPCNet, and the self-developed vocoder is a voice codec that can achieve low-speed encoding and decoding. For example, the encoding and decoding speed of the self-developed vocoder is less than 1 Kbps. The embodiments of the present disclosure do not limit how the self-developed vocoder is designed.

[0131] S604: Send the fourth voice code to the first terminal, so that the first terminal decodes and plays the fourth voice code.

[0132] The disclosed embodiment converts the third voice coding (standard coding) into the fourth voice coding (non-standard coding) in the SBC network element to adapt to the real-time satellite voice transmission of the first terminal when the bandwidth is insufficient, thereby ensuring the real-time voice call between the first terminal and the second terminal when the bandwidth is insufficient.

[0133] In an exemplary embodiment, the RTP data packet header may include a second terminal identifier, which is used to identify the first terminal; before receiving the second encapsulated message sent by the second terminal, the method may also include: obtaining registration information, the registration information including the terminal identifier of the terminal accessing the satellite and the network identifier corresponding to the terminal, the network identifier being used to indicate the SBC network element accessed by the terminal via the satellite; based on the terminal identifier and the second terminal identifier, determining whether the first terminal is accessed by the satellite; if so, obtaining the second network identifier corresponding to the first terminal so that the second terminal uses the second network identifier to send the second encapsulated message to the SBC network element; wherein, sending the fourth voice code to the first terminal so that the first terminal decodes and plays the fourth voice code may include: using the second terminal identifier to send the fourth voice code to the first terminal so that the first terminal decodes and plays the fourth voice code.

[0134] In the embodiment of the present disclosure, the embodiment of the present disclosure does not limit what the second terminal identifier is, for example, the second terminal identifier can be one of the IP address and port number of the first terminal. The second network identifier can be the network identifier address of the SBC network element, such as an IPv4 address, an IPv6 address, etc.

[0135] In the disclosed embodiment, when the first terminal switches to satellite access, it will send registration information to the IMS network element, and the IMS network element will update the SBC network element information (second network identifier) ​​to which the first terminal accesses. In other words, the registration information includes the terminal identifier of the terminal accessing the satellite and the network identifier corresponding to the terminal. It should be noted that the registration information on the IMS network element can have multiple terminal identifiers, and the terminals corresponding to these terminal identifiers are all terminals connected via satellite. The IMS network element searches for the same identifier among multiple terminal identifiers based on the second terminal identifier. If the same identifier exists, it means that the first terminal that is conducting a real-time voice call with the second terminal is a satellite access network, and obtains the second network identifier corresponding to the second terminal identifier, and implements a real-time voice call with the first terminal through the SBC network element.

[0136] In the disclosed embodiment, the IMS network element searches for an identical identifier among multiple terminal identifiers based on the second terminal identifier. If the identical identifier does not exist, it means that the first terminal having a real-time voice call with the second terminal has no access to the satellite and can only communicate with the first terminal through the IMS network.

[0137] The embodiment of the present disclosure first determines whether the first terminal is connected to the satellite. In the case of access to the satellite, the second terminal realizes a real-time voice call with the first terminal through the SBC network element. In addition, in the scenario of access to a broadband satellite, the present disclosure can call a software codec (such as an AI ultra-low-speed vocoder) on the first terminal to complete the voice call, thereby reducing the traffic resources consumed by the voice call and also reducing the tariff of the satellite voice call.

[0138] Due to insufficient communication bandwidth of the first terminal, real-time voice communication is performed using standard codecs, resulting in severe delays, and even inability to make voice calls. In the disclosed embodiment, the first terminal uses a low-speed codec or an ultra-low-speed codec to perform real-time voice encoding when bandwidth is insufficient. The SBC network element converts non-standard encoding into standard encoding, making it easier for the second terminal to decode the standard encoding, thereby achieving real-time voice calls between the first terminal and the second terminal. It should be noted that the bandwidth of the second terminal is larger, and standard codec encoding and decoding can be implemented. Real-time voice calls between the first terminal and the second terminal are achieved without increasing the design cost of the second terminal.

[0139] In addition, the SBC network element is responsible for the conversion between standard codec and non-standard codec, sharing the computing power and further improving the quality of real-time voice calls between the first terminal and the second terminal.

[0140] The present disclosure is further described below through four embodiments.

[0141] In one embodiment, the conversation process of the voice call is as follows: the first terminal makes a call, and the first terminal sends a voice message to the second terminal.

[0142] like Figure 7 As shown, the first terminal is a mobile phone that accesses the satellite. There are two ways for the first terminal to access the satellite. One is that the first terminal has a built-in satellite communication module and accesses the satellite through the satellite communication module. The other is that the first terminal accesses the satellite through a satellite gateway ( Figure 7 The dashed line connects the parts).

[0143] The first terminal collects the voice message, and based on the low-speed codec (such as the AI ​​soft codec), calls the computing unit (such as the processor) to encode the voice message (also known as soft coding) to obtain the first voice coding. It should be noted that the low-speed codec includes a low-speed encoder and a low-speed decoder. The vocoder model of the AI ​​soft codec can be stored in the storage unit and called when used. The encoding rate of the AI ​​soft codec is less than 1 Kbps.

[0144] The first terminal encapsulates the first voice codec into a media stream real-time transport protocol (RTP) data packet header through an encapsulation unit to obtain a first encapsulation message, and transmits it to the SBC network element via a satellite. The RTP data packet header contains the network identification address of the SBC (first network identification) and the address of the second terminal (first terminal identification). The first network identification includes but is not limited to an IPv4 address, an IPv6 address, etc. The first terminal identification includes but is not limited to the IP address, port number, etc. of the second terminal.

[0145] After receiving the first encapsulated message, the SBC network element determines whether the first encapsulated message is transmitted through the satellite and ground gateway. If so, the first encapsulated message is decapsulated by the decapsulation unit to obtain the first voice code, which is decoded by the low-speed decoder to obtain the voice message, and then encoded by the standard encoder to obtain the second voice code, thereby realizing the code rate conversion. In other words, the voice message encoded by the low-speed encoder is decoded and restored, and then re-encoded by the standard encoding algorithm. It should be noted that the method for determining whether the first encapsulated message comes from the satellite and ground gateway is to compare the first network identifier. Finally, the second terminal receives the second voice code through the IMS network routing forwarding, and decodes and plays it using the standard decoding algorithm. It should be noted that the SBC network element can encapsulate the second voice code before sending the second voice code to the second terminal. For example, the SBC network element encapsulates the RTP data packet header on the second voice code through the encapsulation unit, and then sends it to the second terminal after encapsulation. The second terminal decapsulates the second voice code by the decapsulation unit.

[0146] In another embodiment, the conversation process of the voice call is as follows: the first terminal makes a call, and the second terminal sends a voice message to the first terminal.

[0147] like Figure 8As shown, the first terminal is a mobile phone that accesses the satellite. There are two ways for the first terminal to access the satellite. One is that the first terminal has a built-in satellite communication module and accesses the satellite through the satellite communication module. The other is that the first terminal accesses the satellite through a satellite gateway ( Figure 8 The dashed line connects the parts).

[0148] After the second terminal collects the voice message, it encodes the voice message through a standard encoder to obtain a third voice code. In other words, the voice message is encoded using a standard algorithm to obtain the third voice code. An RTP data packet header is encapsulated on the third voice code to obtain a second encapsulated message. The RTP data packet header contains the identification information of the first terminal (the second terminal identification) for addressing within the satellite coverage area. The second terminal identification includes but is not limited to the IP address and port number of the first terminal.

[0149] The SBC network element receives the second encapsulated message through the IMS network routing forwarding, and decapsulates the second encapsulated message through the decapsulation unit to obtain the third voice code. The third voice code is then decoded through the standard decoder to obtain a voice message. The voice message is then encoded through the low-speed encoder to obtain a fourth voice code. The fourth voice code is sent to the first terminal so that the first terminal decodes and plays the fourth voice code through the low-speed decoder. It should be noted that the SBC network element can encapsulate the fourth voice code before sending the fourth voice code to the first terminal. For example, the SBC network element encapsulates the RTP data packet header on the fourth voice code through the encapsulation unit, and then sends it to the first terminal after encapsulation. The first terminal decapsulates the fourth voice code through the decapsulation unit to obtain the fourth voice code. The first terminal decodes the fourth voice code through the low-speed decoder to obtain the voice message and play it. Among them, the storage unit is used to store the data of the low-speed encoder (such as the encoding model), and the computing power unit provides the computing power of the decoding operation for the encoding.

[0150] The fourth voice code or the fourth voice code encapsulated with the RTP data packet header reaches the first terminal through the ground signal gateway, satellite, and satellite gateway (if any). The first terminal parses the fourth voice code through the decapsulation unit, and decodes the original voice message through the low-speed decoder for playback.

[0151] In yet another embodiment, the conversation process of the voice call is as follows: the second terminal makes a call, and the second terminal sends a voice message to the first terminal.

[0152] The present disclosure embodiment is different from the above Figure 8 The similarities of the session flow in the embodiment are not repeated here, and the difference lies in determining whether the first terminal is connected to the satellite.

[0153] After the second terminal collects the voice message, it encodes the voice message through a standard encoder to obtain a third voice code. The RTP data packet header is encapsulated on the third voice code to obtain a second encapsulated message, and then the second encapsulated message is sent to the IMS network element. Subsequently, the IMS network element will determine whether it is accessed via satellite based on the second terminal identifier included in the RTP data packet header. If so, the second encapsulated message will be forwarded to the SBC network element. Otherwise, the subsequent voice call session process will remain consistent with the traditional IMS network. It should be noted that when the first terminal switches to satellite access, it will send registration information to the IMS network element, and the IMS network element will update the SBC network element information (second network identifier) ​​to which the first terminal is connected. The SBC network element receives the second encapsulated message, and the subsequent processing flow is the same as Figure 8 The process in remains the same and will not be repeated here.

[0154] In yet another embodiment, the conversation process of the voice call is as follows: the second terminal makes a call, and the first terminal sends a voice message to the second terminal.

[0155] The first terminal connected (directly or indirectly) to the satellite sends a voice message, and the second terminal connected to the ground base station receives the voice message. The process is similar to Figure 7 Keep it consistent and don't repeat it here.

[0156] It should be noted that, by using the present disclosure to conduct a real-time voice call, the computing resource consumption of the first terminal and the second terminal is 131.98 GFLOPS (Giga Floating-point Operations Per Second). While the real-time voice call meets the quality requirements, the amount of computing resources consumed is small.

[0157] In the disclosed embodiment, by deploying an AI soft codec model and a satellite communication module on the first terminal, and combining the linkage interaction between the SBC network element and the IMS network element, the network bandwidth resource consumption of the voice call service can be reduced while ensuring the voice quality, thereby further reducing the cost of users using satellite voice calls.

[0158] The present disclosure provides a method for providing narrowband voice communication in extreme scenarios such as high-orbit satellites and underwater submarines, solving the challenge of limited bandwidth in communication networks. This is of key significance for real-time, high-quality voice calls in narrowband communication networks.

[0159] Based on the same inventive concept, the present disclosure also provides a voice call device, as described in the following embodiments. Since the principle of solving the problem in the device embodiment is similar to that in the above method embodiment, the implementation of the device embodiment can refer to the implementation of the above method embodiment, and the repeated parts will not be repeated.

[0160] Fig. 9 A schematic diagram of a voice call device in an embodiment of the present disclosure is shown, which is applied to a first terminal. The first terminal conducts a voice call with a second terminal through a session edge control SBC network element. The bandwidth for communication of the first terminal is smaller than the bandwidth for communication of the second terminal. Fig. 9 As shown, the voice call device includes: a first receiving module 901, a first encoding module 902, an encapsulation module 903 and a first sending module 904. The first receiving module 901 can be used to receive a voice message; the first encoding module 902 can be used to encode the voice message at a first rate to obtain a first voice code; the encapsulation module 903 can be used to encapsulate a real-time transport protocol RTP data packet header on the first voice code to obtain a first encapsulation message; the first sending module 904 can be used to send the first encapsulation message to the SBC network element, so that the SBC network element parses the first encapsulation message, encodes the parsed voice message at a second rate to obtain a second voice code, and sends the second voice code to the second terminal, so that the second terminal decodes and plays the second voice code, and the first rate is less than the second rate.

[0161] In one embodiment, the RTP data packet header includes a first terminal identifier and a first network identifier, the first terminal identifier is used to identify the second terminal, and the first network identifier is used to identify the SBC network element; the first sending module 904 can also be used to send the first encapsulated message to the SBC network element based on the first network identifier, so that the SBC network element parses the first encapsulated message, and encodes the parsed voice message at a second rate to obtain a second voice code, and uses the first terminal identifier to send the second voice code to the second terminal, so that the second terminal decodes and plays the second voice code.

[0162] In one embodiment, before receiving a voice message, the first receiving module 901 can also be used to determine whether the first terminal has a built-in satellite communication module; if so, when the first terminal accesses the satellite through the satellite communication module, the encoding speed of the first terminal is configured to the first rate; if not, when the first terminal is connected to a satellite gateway and accesses the satellite through the satellite gateway, the encoding speed of the first terminal is configured to the first rate.

[0163] In one embodiment, a low-rate codec is installed on the first terminal, and the low-rate codec is used to encode the voice message at a first rate to obtain a first voice code.

[0164] The voice call device disclosed in the embodiment of the present disclosure uses a first rate to encode at a first terminal with a smaller bandwidth to obtain a first voice code, parses the first voice code at an SBC network element, and re-encodes at a second rate to obtain a second voice code, wherein the second rate is greater than the first rate, thereby realizing a real-time voice call between the first terminal and the second terminal when the bandwidth is insufficient.

[0165] Based on the same inventive concept, the present disclosure also provides a voice call device, as described in the following embodiments. Since the principle of solving the problem in the device embodiment is similar to that in the above method embodiment, the implementation of the device embodiment can refer to the implementation of the above method embodiment, and the repeated parts will not be repeated.

[0166] Fig.10 A schematic diagram of a voice call device in another embodiment of the present disclosure is shown, which is applied to a session edge control SBC network element, and a first terminal makes a voice call with a second terminal through the SBC network element, and the bandwidth for the first terminal to communicate is smaller than the bandwidth for the second terminal to communicate. Fig.10 As shown, the device includes: a second receiving module 1001, a first parsing module 1002, a second encoding module 1003 and a second sending module 1004.

[0167] The second receiving module 1001 can be used to receive a first encapsulated message sent by the first terminal, the first encapsulated message is obtained by the first terminal encapsulating a real-time transport protocol RTP data packet header on a first voice code, and the first voice code is obtained by the first terminal encoding the received voice message at a first rate; the first parsing module 1002 can be used to parse the first encapsulated message to obtain a voice message; the second encoding module 1003 can be used to encode the voice message at a second rate to obtain a second voice code, and the second rate is greater than the first rate; the second sending module 1004 can be used to send the second voice code to the second terminal, so that the second terminal decodes and plays the second voice code.

[0168] In one embodiment, the RTP data packet header includes a first terminal identifier and a first network identifier, the first terminal identifier is used to identify the second terminal, and the first network identifier is used to identify the SBC network element; the second receiving module 1001 can also be used to receive a first encapsulated message sent by the first terminal using the first network identifier; the second sending module 1004 can also be used to send the second voice code to the second terminal using the first terminal identifier, so that the second terminal decodes and plays the second voice code, and the first rate is less than the second rate.

[0169] In one embodiment, before receiving a voice message, the second receiving module 1001 can also be used to determine whether the first terminal has a built-in satellite communication module; if so, when the first terminal accesses the satellite through the satellite communication module, the encoding speed of the first terminal is configured to the first rate; if not, when the first terminal is connected to a satellite gateway and accesses the satellite through the satellite gateway, the encoding speed of the first terminal is configured to the first rate.

[0170] In one embodiment, a low-rate codec is installed on the first terminal, and the low-rate codec is used to encode the received voice message at a first rate to obtain a first voice code.

[0171] The voice call device disclosed in the embodiment of the present disclosure uses a first rate to encode at a first terminal with a smaller bandwidth to obtain a first voice code, parses the first voice code at an SBC network element, and re-encodes at a second rate to obtain a second voice code, wherein the second rate is greater than the first rate, thereby realizing a real-time voice call between the first terminal and the second terminal when the bandwidth is insufficient.

[0172] Based on the same inventive concept, the present disclosure also provides a voice call device, as described in the following embodiments. Since the principle of solving the problem in the device embodiment is similar to that in the above method embodiment, the implementation of the device embodiment can refer to the implementation of the above method embodiment, and the repeated parts will not be repeated.

[0173] Fig.11 A schematic diagram of a voice call device in another embodiment of the present disclosure is shown. Applied to a session edge control SBC network element, a second terminal conducts a voice call with a first terminal through the SBC network element, and a bandwidth for communication of the second terminal is greater than a bandwidth for communication of the first terminal; Fig.11 As shown, the device may include: a third receiving module 1101, a second parsing module 1102, a third encoding module 1103 and a third sending module 1104. The third receiving module 1101 may be used to receive a second encapsulated message sent by the second terminal, the second encapsulated message is obtained by the second terminal encapsulating a real-time transport protocol RTP data packet header on a third voice code, and the third voice code is obtained by the second terminal encoding the received voice message at a second rate; the second parsing module 1102 may be used to parse the second encapsulated message to obtain a voice message; the third encoding module 1103 may be used to encode the voice message at a first rate to obtain a fourth voice code, the first rate being less than the second rate; the third sending module 1104 may be used to send the fourth voice code to the first terminal, so that the first terminal decodes and plays the fourth voice code.

[0174] In one embodiment, the RTP data packet header includes a second terminal identifier, and the second terminal identifier is used to identify the first terminal; before receiving the second encapsulation message sent by the second terminal, the third receiving module 1101 can also be used to obtain registration information, and the registration information includes the terminal identifier of the terminal accessing the satellite and the network identifier corresponding to the terminal, and the network identifier is used to indicate the SBC network element accessed by the terminal via the satellite; based on the terminal identifier and the second terminal identifier, it is determined whether the first terminal is accessed by the satellite; if so, the second network identifier corresponding to the first terminal is obtained, so that the second terminal uses the second network identifier to send the second encapsulation message to the SBC network element; the third sending module 1104 can also be used to use the second terminal identifier to send the fourth voice code to the first terminal, so that the first terminal decodes and plays the fourth voice code.

[0175] The voice call device disclosed in the embodiment of the present disclosure determines whether the first terminal is connected to the satellite. When the first terminal is connected to the satellite, the second terminal realizes a real-time voice call with the first terminal through the SBC network element. In addition, in the scenario of accessing a broadband satellite, the present disclosure can call a software codec (such as an AI ultra-low-speed vocoder) on the first terminal to complete the voice call, thereby reducing the traffic resources consumed by the voice call and reducing the satellite voice call charges.

[0176] Those skilled in the art will appreciate that various aspects of the present disclosure may be implemented as systems, methods or program products. Therefore, various aspects of the present disclosure may be specifically implemented in the following forms, namely: complete hardware implementation, complete software implementation (including firmware, microcode, etc.), or a combination of hardware and software, which may be collectively referred to herein as "circuits", "modules" or "systems".

[0177] Refer to the following Fig.12 1200 according to this embodiment of the present disclosure is described. Fig.12 The electronic device 1200 shown is merely an example and should not bring any limitation to the functions and scope of use of the embodiments of the present disclosure.

[0178] like Fig.12 As shown, the electronic device 1200 is in the form of a general computing device. The components of the electronic device 1200 may include but are not limited to: at least one processing unit 1210, at least one storage unit 1220, and a bus 1230 connecting different system components (including the storage unit 1220 and the processing unit 1210).

[0179] The storage unit stores program codes, which can be executed by the processing unit 1210, so that the processing unit 1210 executes the steps described in the above “exemplary method” section of this specification according to various exemplary embodiments of the present disclosure.

[0180] The storage unit 1220 may include a readable medium in the form of a volatile storage unit, such as a random access storage unit (RAM) 12201 and / or a cache storage unit 12202 , and may further include a read-only storage unit (ROM) 12203 .

[0181] The storage unit 1220 may also include a program / utility 12204 having a set (at least one) of program modules 12205, such program modules 12205 including but not limited to: an operating system, one or more application programs, other program modules, and program data, each of which or some combination may include an implementation of a network environment.

[0182] Bus 1230 may represent one or more of several types of bus structures, including a memory unit bus or memory unit controller, a peripheral bus, an accelerated graphics port, a processing unit, or a local bus using any of a variety of bus architectures.

[0183] The electronic device 1200 may also communicate with one or more external devices 1240 (e.g., keyboards, pointing devices, Bluetooth devices, etc.), may also communicate with one or more devices that enable a user to interact with the electronic device 1200, and / or may communicate with any device that enables the electronic device 1200 to communicate with one or more other computing devices (e.g., routers, modems, etc.). Such communication may be performed via an input / output (I / O) interface 1250. In addition, the electronic device 1200 may also communicate with one or more networks (e.g., local area networks (LANs), wide area networks (WANs), and / or public networks, such as the Internet) via a network adapter 1260. As shown, the network adapter 1260 communicates with other modules of the electronic device 1200 via a bus 1230. It should be understood that, although not shown in the figure, other hardware and / or software modules may be used in conjunction with the electronic device 1200, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems, etc.

[0184] Through the description of the above implementation, it is easy for those skilled in the art to understand that the example implementation described here can be implemented by software, or by software combined with necessary hardware. Therefore, the technical solution according to the implementation of the present disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, a USB flash drive, a mobile hard disk, etc.) or on a network, and includes a number of instructions to enable a computing device (which can be a personal computer, a server, a terminal device, or a network device, etc.) to execute the method according to the implementation of the present disclosure.

[0185] In the disclosed exemplary embodiments, a computer-readable storage medium is also provided, which may be a readable signal medium or a readable storage medium. Fig.13 A schematic diagram of a computer-readable storage medium in an embodiment of the present disclosure is shown. Fig.13 As shown, the computer-readable storage medium 1300 stores a program product capable of implementing the above method of the present disclosure.

[0186] In some possible implementations, various aspects of the present disclosure may also be implemented in the form of a program product, which includes program code. When the program product is run on a terminal device, the program code is used to enable the terminal device to execute the steps of various exemplary implementations of the present disclosure described in the above "Specific Implementation Methods" section of this specification.

[0187] More specific examples of computer-readable storage media in the present disclosure may include, but are not limited to, an electrical connection having one or more conductors, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0188] In the present disclosure, a computer readable storage medium may include a data signal propagated in baseband or as part of a carrier wave, wherein a readable program code is carried. Such propagated data signals may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. A readable signal medium may also be any readable medium other than a readable storage medium, which may send, propagate, or transmit a program for use by or in conjunction with an instruction execution system, apparatus, or device.

[0189] Alternatively, the program code contained on the computer-readable storage medium may be transmitted using any appropriate medium, including but not limited to wireless, wired, optical cable, RF, etc., or any suitable combination of the foregoing.

[0190] In specific implementation, the program code for performing the operation of the present disclosure may be written in any combination of one or more programming languages, including object-oriented programming languages ​​such as Java, C++, etc., and conventional procedural programming languages ​​such as "C" language or similar programming languages. The program code may be executed entirely on the user computing device, partially on the user device, as an independent software package, partially on the user computing device and partially on a remote computing device, or entirely on a remote computing device or server. In the case of a remote computing device, the remote computing device may be connected to the user computing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computing device (e.g., using an Internet service provider to connect through the Internet).

[0191] The embodiments of the present disclosure provide a computer program product or a computer program, which includes computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device executes the voice call method provided in various optional ways in any embodiment of the present disclosure.

[0192] In addition, although the steps of the method in the present disclosure are described in a specific order in the drawings, this does not require or imply that the steps must be performed in this specific order, or that all the steps shown must be performed to achieve the desired results. Additionally or alternatively, some steps may be omitted, multiple steps may be combined into one step, and / or one step may be decomposed into multiple steps, etc.

[0193] Through the description of the above implementation modes, it is easy for those skilled in the art to understand that the example implementation modes described here can be implemented by software, or by software combined with necessary hardware. Therefore, the technical solution according to the implementation mode of the present disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, a USB flash drive, a mobile hard disk, etc.) or on a network, and includes several instructions to enable a computing device (which can be a personal computer, a server, a mobile terminal, or a network device, etc.) to execute the method according to the implementation mode of the present disclosure.

[0194] Those skilled in the art will readily appreciate other embodiments of the present disclosure after considering the specification and practicing the invention disclosed herein. The present disclosure is intended to cover any variations, uses or adaptations of the present disclosure, which follow the general principles of the present disclosure and include common knowledge or customary technical means in the art that are not disclosed in the present disclosure. The description and examples are to be regarded as exemplary only, and the true scope of the present disclosure is indicated by the appended claims.

Claims

1. A voice call method, characterized in that: Applied to a first terminal, the first terminal conducts a voice call with a second terminal through a session edge control SBC network element, and a bandwidth provided for communication by the first terminal is smaller than a bandwidth provided for communication by the second terminal; The method comprises: Receive voice messages; Encoding the voice message at a first rate to obtain a first voice code, where the first voice code is a non-standard code; Encapsulating a real-time transport protocol RTP data packet header on the first voice coding to obtain a first encapsulation message; sending the first encapsulated message to the SBC network element so that the SBC network element parses the first encapsulated message, encodes the parsed voice message at a second rate to obtain a second voice code, and sends the second voice code to the second terminal so that the second terminal decodes and plays the second voice code, the first rate is less than the second rate, and the second voice code is a standard code; the second terminal communicates with the SBC network element through the IMS network element; Among them, a software codec and a standard codec are newly added on the SBC network element. The software codec is used to decode the first voice code; the standard codec is used to encode the voice message obtained after decoding at a second rate to convert the non-standard code into the standard code.

2. The method according to claim 1, characterized in that The RTP data packet header includes a first terminal identifier and a first network identifier, the first terminal identifier is used to identify the second terminal, and the first network identifier is used to identify the SBC network element; The method includes sending the first encapsulation message to the SBC network element so that the SBC network element parses the first encapsulation message, encodes the parsed voice message at a second rate, obtains a second voice code, and sends the second voice code to the second terminal so that the second terminal decodes and plays the second voice code, including: The first encapsulated message is sent to the SBC network element based on the first network identifier, so that the SBC network element parses the first encapsulated message and encodes the parsed voice message at a second rate to obtain a second voice code, and the second voice code is sent to the second terminal using the first terminal identifier, so that the second terminal decodes and plays the second voice code.

3. The method according to claim 1, characterized in that Before receiving the voice message, the method further includes: Determining whether the first terminal has a built-in satellite communication module; If yes, when the first terminal accesses the satellite through the satellite communication module, configuring the encoding speed of the first terminal to be the first rate; If not, when the first terminal is connected to a satellite gateway and accesses a satellite through the satellite gateway, the encoding speed of the first terminal is configured to be a first rate.

4. The method according to any one of claims 1 to 3, characterized in that A low-rate codec is installed on the first terminal, and the low-rate codec is used to encode the voice message at a first rate to obtain a first voice code.

5. A voice call method, characterized in that: Applied to a session edge control SBC network element, a first terminal conducts a voice call with a second terminal through the SBC network element, and a bandwidth for communication of the first terminal is smaller than a bandwidth for communication of the second terminal; The method comprises: receiving a first encapsulated message sent by the first terminal, where the first encapsulated message is obtained by the first terminal encapsulating a real-time transport protocol RTP data packet header on a first voice codec, where the first voice codec is obtained by the first terminal encoding a received voice message at a first rate, where the first voice codec is a non-standard codec; Parsing the first packaged message to obtain a voice message; Encoding the voice message at a second rate to obtain a second voice code, wherein the second rate is greater than the first rate, and the second voice code is a standard code; sending the second voice code to the second terminal so that the second terminal decodes and plays the second voice code; the second terminal communicates with the SBC network element through the IMS network element; Among them, a software codec and a standard codec are newly added on the SBC network element. The software codec is used to decode the first voice code; the standard codec is used to encode the voice message obtained after decoding at a second rate to convert the non-standard code into the standard code.

6. The method according to claim 5, characterized in that The RTP data packet header includes a first terminal identifier and a first network identifier, the first terminal identifier is used to identify the second terminal, and the first network identifier is used to identify the SBC network element; Receiving a first encapsulated message sent by the first terminal includes: Receiving a first encapsulation message sent by the first terminal using the first network identifier; The step of sending the second speech code to the second terminal includes: The second voice code is sent to the second terminal using the first terminal identifier, so that the second terminal decodes and plays the second voice code, and the first rate is lower than the second rate.

7. The method according to claim 5, characterized in that Before receiving the voice message, the method further includes: Determining whether the first terminal has a built-in satellite communication module; If yes, when the first terminal accesses the satellite through the satellite communication module, configuring the encoding speed of the first terminal to be the first rate; If not, when the first terminal is connected to a satellite gateway and accesses a satellite through the satellite gateway, the encoding speed of the first terminal is configured to be a first rate.

8. The method according to any one of claims 5 to 7, characterized in that A low-rate codec is installed on the first terminal, and the low-rate codec is used to encode the received voice message at a first rate to obtain a first voice code.

9. A voice call method, characterized in that: Applied to a session edge control SBC network element, a second terminal conducts a voice call with a first terminal through the SBC network element, and a bandwidth for communication of the second terminal is greater than a bandwidth for communication of the first terminal; The method comprises: receiving a second encapsulated message sent by the second terminal, where the second encapsulated message is obtained by encapsulating a real-time transport protocol RTP data packet header on a third voice codec by the second terminal, where the third voice codec is obtained by encoding the received voice message at a second rate by the second terminal, and the third voice codec is a standard codec; the second terminal communicates with the SBC network element through an IMS network element; Parsing the second encapsulated message to obtain a voice message; Encoding the voice message at a first rate to obtain a fourth voice code, wherein the first rate is less than the second rate, and the fourth voice code is a non-standard code; Sending the fourth voice code to the first terminal so that the first terminal decodes and plays the fourth voice code; Among them, a software codec and a standard codec are newly added on the SBC network element. The software codec is used to decode the third voice coding; the standard codec is used to encode the voice message obtained after decoding at the first rate to convert the standard coding into the non-standard coding.

10. The method according to claim 9, characterized in that The RTP data packet header includes a second terminal identifier, where the second terminal identifier is used to identify the first terminal; Before receiving the second encapsulation message sent by the second terminal, the method further includes: Acquire registration information, where the registration information includes a terminal identifier of a terminal accessing a satellite and a network identifier corresponding to the terminal, where the network identifier is used to indicate an SBC network element accessed by the terminal via a satellite; Based on the terminal identifier and the second terminal identifier, determining whether the first terminal is connected to a satellite; If so, obtaining a second network identifier corresponding to the first terminal, so that the second terminal uses the second network identifier to send the second encapsulation message to the SBC network element; The sending of the fourth voice code to the first terminal so that the first terminal decodes and plays the fourth voice code includes: The fourth voice code is sent to the first terminal by using the second terminal identifier, so that the first terminal decodes and plays the fourth voice code.

11. A voice communication device, characterized in that: Applied to a first terminal, the first terminal conducts a voice call with a second terminal through a session edge control SBC network element, and a bandwidth provided for communication by the first terminal is smaller than a bandwidth provided for communication by the second terminal; The device comprises: A first receiving module, used for receiving a voice message; A first encoding module, configured to encode the voice message at a first rate to obtain a first voice code, wherein the first voice code is a non-standard code; An encapsulation module, used for encapsulating a real-time transport protocol RTP data packet header on the first voice coding to obtain a first encapsulation message; A first sending module is used to send the first encapsulated message to the SBC network element, so that the SBC network element parses the first encapsulated message, encodes the parsed voice message at a second rate, obtains a second voice code, and sends the second voice code to the second terminal, so that the second terminal decodes and plays the second voice code, the first rate is less than the second rate, and the second voice code is a standard code; the second terminal communicates with the SBC network element through the IMS network element; Among them, a software codec and a standard codec are newly added on the SBC network element. The software codec is used to decode the first voice code; the standard codec is used to encode the voice message obtained after decoding at a second rate to convert the non-standard code into the standard code.

12. A voice communication device, characterized in that: Applied to a session edge control SBC network element, a first terminal conducts a voice call with a second terminal through the SBC network element, and a bandwidth for communication of the first terminal is smaller than a bandwidth for communication of the second terminal; The device comprises: A second receiving module is used to receive a first encapsulated message sent by the first terminal, the first encapsulated message is obtained by the first terminal encapsulating a real-time transport protocol RTP data packet header on a first voice codec, the first voice codec is obtained by the first terminal encoding a received voice message at a first rate, and the first voice codec is a non-standard codec; A first parsing module, used to parse the first packaged message to obtain a voice message; A second encoding module, used for encoding the voice message at a second rate to obtain a second voice code, wherein the second rate is greater than the first rate, and the second voice code is a standard code; A second sending module is used to send the second voice code to the second terminal, so that the second terminal decodes and plays the second voice code; the second terminal communicates with the SBC network element through the IMS network element; Among them, a software codec and a standard codec are newly added on the SBC network element. The software codec is used to decode the first voice code; the standard codec is used to encode the voice message obtained after decoding at a second rate to convert the non-standard code into the standard code.

13. A voice communication device, characterized in that: Applied to a session edge control SBC network element, a second terminal conducts a voice call with a first terminal through the SBC network element, and a bandwidth for communication of the second terminal is greater than a bandwidth for communication of the first terminal; The device comprises: a third receiving module, configured to receive a second encapsulated message sent by the second terminal, the second encapsulated message being obtained by the second terminal encapsulating a real-time transport protocol RTP data packet header on a third voice coding, the third voice coding being obtained by the second terminal encoding the received voice message at a second rate, the third voice coding being a standard coding; the second terminal communicating with the SBC network element through the IMS network element; A second parsing module, used for parsing the second encapsulated message to obtain a voice message; A third encoding module, configured to encode the voice message at a first rate to obtain a fourth voice code, wherein the first rate is less than the second rate, and the fourth voice code is a non-standard code; A third sending module, used for sending the fourth voice code to the first terminal, so that the first terminal decodes and plays the fourth voice code; Among them, a software codec and a standard codec are newly added on the SBC network element. The software codec is used to decode the third voice coding; the standard codec is used to encode the voice message obtained after decoding at the first rate to convert the standard coding into the non-standard coding.

14. An electronic device, characterized in that: include: processor; as well as A memory, configured to store executable instructions of the processor; Wherein, the processor is configured to execute the voice call method described in any one of claims 1-10 by executing the executable instructions.

15. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the voice call method according to any one of claims 1 to 10 is implemented.

16. A computer program product, comprising a computer program or computer instructions, characterized in that: The computer program or the computer instruction is loaded and executed by a processor so that the computer implements the voice call method as described in any one of claims 1-10.

Citation Information

Patent Citations

  • Voice communication method, apparatus and device, and computer storage medium

    CN118353880A

  • Communication method and device, computer readable storage medium and computer program product

    CN118474086A