Voice processing method and device, related equipment, storage medium and computer program product
By using location information to control the codec conversion of voice streams in satellite mobile communications terminals, the conflict between voice quality and system capacity in satellite mobile communications is solved, achieving high-quality calls and improving system capacity.
Patent Information
- Application Number
- CN202411514841.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-28
- Publication Date
- 2025-01-24
- Estimated Expiration
- 2044-10-28
AI Technical Summary
In satellite mobile communication, traditional voice encoding and decoding methods will lead to insufficient capacity of the call system and reduced voice quality.
The location information of the satellite mobile communication terminal is anchored to the new call media node, and the conversion between the low -code -rate voice compilation decoding and the universal voice compilation decoding is performed.
Without changing the existing communication terminal, improve the quality of call voice and increase the capacity of the communication system.
Smart Images

Figure CN119364295A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of data service technology, and in particular to a voice processing method, apparatus, related equipment, storage medium and computer program product. Background Art
[0002] In satellite mobile communication networking, due to limited satellite link resources, if traditional terrestrial mobile communication voice codecs are used, there will be a problem of insufficient call system capacity; if narrowband voice codecs are used, there will be a problem of reduced call voice quality due to excessive compression of the audio.
[0003] In response to the above-mentioned conflict between voice quality and system capacity in satellite mobile communications, the solution of the related technology is mainly to transform the satellite mobile communication terminals of both communicating parties (hereinafter referred to as the terminals of both communicating parties) to achieve the goal of reducing the communication bandwidth by using a low bit rate while minimizing the reduction of voice quality, thereby improving the system capacity of the communication. However, the solution of the related technology requires that the terminals of both communicating parties simultaneously support the new low bit rate voice codec, and the codec based on voice compression will always reduce the voice quality of the call. Summary of the invention
[0004] In order to solve the technical problems existing in the related technologies, the embodiments of the present application provide a speech processing method, apparatus, related equipment, storage medium and computer program product.
[0005] To achieve the above purpose, the technical solution of the embodiment of the present application is implemented as follows:
[0006] In a first aspect, an embodiment of the present application provides a voice processing method, which is applied to a first function, where the first function is at least used to process voice service data, and the method includes:
[0007] receiving a first request initiated by a second function through a third function; the first request is triggered by the second function based on first information, the first information including location information of a first terminal; the first request is used to request control of a call event between the first terminal and the second terminal; the second function represents a service application server, and the third function is at least used to process control plane data;
[0008] In response to the first request, the voice stream is anchored to a fourth function based on the location information of the first terminal, so as to convert the voice stream between the first codec and the second codec through the fourth function; the fourth function is at least used to process user plane data.
[0009] In a second aspect, an embodiment of the present application further provides another voice processing method, which is applied to a second function, wherein the second function represents a service application server, and the method includes:
[0010] Initiate a first request to the first function through the third function; the first request is triggered based on first information, the first information includes location information of the first terminal; the first request is used to request control of a call event between the first terminal and the second terminal; the first function is at least used to process voice service data, and the third function is at least used to process control plane data;
[0011] The location information of the first terminal is used by the first function to control the anchoring of the voice stream to the fourth function, so as to convert the voice stream between the first codec and the second codec through the fourth function; the fourth function is at least used to process user plane data.
[0012] In a third aspect, an embodiment of the present application provides another voice processing method, which is applied to a fourth function, wherein the fourth function is at least used to process user plane data, and the method includes:
[0013] Acquire a voice stream; the voice stream is controlled and anchored by a first function in response to a first request based on location information of the first terminal, the first function being at least used to process voice service data;
[0014] Performing conversion between a first codec and a second codec on the voice stream;
[0015] Among them, the first request is sent from the second function to the first function through the third function, the first request is triggered by the second function based on first information, the first information includes the location information of the first terminal; the first request is used to request control of a call event between the first terminal and the second terminal; the second function represents a business application server, and the third function is at least used to process control plane data.
[0016] In a fourth aspect, an embodiment of the present application provides a voice processing device, which is applied to a first function, wherein the first function is at least used to process voice service data, and the device includes:
[0017] a first receiving unit, configured to receive a first request initiated by a second function through a third function; the first request is triggered by the second function based on first information, the first information including location information of a first terminal; the first request is used to request control of a call event between the first terminal and the second terminal; the second function represents a service application server, and the third function is at least used to process control plane data;
[0018] A control unit is used to control, in response to the first request, anchoring the voice stream to a fourth function based on the location information of the first terminal, so as to convert the voice stream between the first codec and the second codec through the fourth function; the fourth function is at least used to process user plane data.
[0019] In a fifth aspect, an embodiment of the present application further provides another voice processing device, which is applied to a second function, wherein the second function represents a service application server, and the device includes:
[0020] a first sending unit, configured to initiate a first request to the first function through a third function; the first request is triggered based on first information, the first information including location information of the first terminal; the first request is used to request control of a call event between the first terminal and the second terminal; the first function is at least used to process voice service data, and the third function is at least used to process control plane data;
[0021] The location information of the first terminal is used by the first function to control the anchoring of the voice stream to the fourth function, so as to convert the voice stream between the first codec and the second codec through the fourth function; the fourth function is at least used to process user plane data.
[0022] In a sixth aspect, an embodiment of the present application provides another voice processing device, which is applied to the fourth function, and the fourth function is at least used to process user plane data, and the device includes:
[0023] A first acquisition unit, configured to acquire a voice stream; the voice stream is anchored by a first function in response to a first request and based on location information of the first terminal, the first function being configured to process voice service data at least;
[0024] A conversion unit, configured to convert the voice stream between the first codec and the second codec;
[0025] Among them, the first request is sent from the second function to the first function through the third function, the first request is triggered by the second function based on first information, the first information includes the location information of the first terminal; the first request is used to request control of a call event between the first terminal and the second terminal; the second function represents a business application server, and the third function is at least used to process control plane data.
[0026] In a seventh aspect, an embodiment of the present application provides a first function, including: a first processor and a first memory for storing a computer program that can be run on the first processor;
[0027] Among them, when the first processor is used to run the computer program, it executes the steps of the voice processing method on the first functional side described in the embodiment of the present application.
[0028] In an eighth aspect, an embodiment of the present application further provides a second function, including: a second processor and a second memory for storing a computer program that can be run on the second processor;
[0029] Among them, when the second processor is used to run the computer program, it executes the steps of the voice processing method on the second functional side described in the embodiment of the present application.
[0030] In a ninth aspect, an embodiment of the present application further provides a fourth function, including: a third processor and a third memory for storing a computer program that can be run on the third processor;
[0031] Among them, the third processor is used to execute the steps of the voice processing method of the fourth functional side described in the embodiment of the present application when running the computer program.
[0032] In the tenth aspect, the embodiments of the present application also provide a storage medium on which a computer program is stored. When the computer program is executed by a processor, it implements the steps of the speech processing method on the first functional side described in the embodiments of the present application, or implements the steps of the speech processing method on the second functional side described in the embodiments of the present application, or implements the steps of the speech processing method on the fourth functional side described in the embodiments of the present application.
[0033] In the eleventh aspect, the embodiments of the present application also provide a computer program product, including a computer program, which, when executed by a processor, implements the steps of the speech processing method on the first functional side described in the embodiments of the present application, or implements the steps of the speech processing method on the second functional side described in the embodiments of the present application, or implements the steps of the speech processing method on the fourth functional side described in the embodiments of the present application.
[0034] The voice processing method, apparatus, related equipment, storage medium and computer program product provided by the embodiments of the present application, wherein a first function receives a first request initiated by a second function through a third function; the first request is triggered by the second function based on first information, and the first information includes location information of a first terminal; the first request is used to request control of a call event between the first terminal and the second terminal; the second function represents a service application server, and the third function is at least used to process control plane data; in response to the first request, the voice stream is anchored to a fourth function based on the location information of the first terminal, so as to convert the voice stream between the first codec and the second codec through the fourth function; the fourth function is at least used to process user plane data. By adopting the voice processing method of the embodiment of the present application, the voice stream is controlled to be anchored to the new call media node (that is, the fourth function, which is at least used to process user plane data) through the cell location information (that is, the location information of the first terminal) of the satellite mobile communication terminal (that is, the first terminal) in the call signaling, so that the fourth function is used to convert the first codec and the second codec for the voice stream, that is, to convert the corresponding low-bit-rate voice codec to the terrestrial general voice codec, so as to achieve that without changing the existing terminals of the two communicating parties, the first terminal can use the low-bit-rate voice codec to communicate with the other end, thereby improving the call voice quality. BRIEF DESCRIPTION OF THE DRAWINGS
[0035] Figure 1 The flow chart of the speech processing method of the present application embodiment is as follows: Figure 1 ;
[0036] Figure 2 The flow chart of the speech processing method of the present application embodiment is as follows: Figure 2 ;
[0037] Figure 3 The flow chart of the speech processing method of the present application embodiment is as follows: Figure 3 ;
[0038] Figure 4 This is a schematic diagram of the structure of the transmitting end encoding device according to an embodiment of the present application;
[0039] Figure 5 A schematic diagram of the structure of a receiving end decoding device according to an embodiment of the present application;
[0040] Figure 6 The flow chart of the speech processing method of the present application embodiment is as follows: Figure 4 ;
[0041] Figure 7 The structure of the speech processing device of the present invention is shown in FIG. Figure 1 ;
[0042] Figure 8 The structure of the speech processing device of the present invention is shown in FIG. Figure 2 ;
[0043] Fig. 9 The structure of the speech processing device of the present invention is shown in FIG. Figure 3 ;
[0044] Fig.10 A schematic diagram of the hardware structure of the first function of an embodiment of the present application;
[0045] Fig.11 A schematic diagram of the hardware structure of the second function of an embodiment of the present application;
[0046] Fig.12 This is a schematic diagram of the hardware composition structure of the fourth function of an embodiment of the present application. DETAILED DESCRIPTION
[0047] The present application is further described in detail below in conjunction with the accompanying drawings and embodiments.
[0048] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as those commonly understood by those skilled in the art to which this application belongs. The terms used herein in the specification of this application are only for the purpose of describing specific embodiments and are not intended to limit this application.
[0049] At present, in order to solve the problem of conflict between voice quality and system capacity in satellite mobile communications, the relevant technical solutions are mainly through the transformation of the satellite mobile communication terminals of the communicating parties (referred to as the terminals of the communicating parties). Specifically, the voice feature codes of the terminals of the communicating parties are distributedly stored and distributedly processed respectively, or for the terminals of the communicating parties, the Lyra AI audio codec (an ultra-low bit rate audio codec based on voice compression) is used to achieve the goal of reducing the communication bandwidth by using a low bit rate while minimizing the voice quality, thereby improving the system capacity of the communication.
[0050] However, using the above-mentioned solution of the related technology requires that the terminals of both communicating parties support the new low-bitrate voice codec at the same time, and the codec based on voice compression will always reduce the call voice quality.
[0051] Based on this, an embodiment of the present application proposes a voice processing method. In various embodiments of the present application, the cell location information (i.e., the location information of the first terminal) of the satellite mobile communication terminal (i.e., the first terminal) in the call signaling is used to control the voice stream to be anchored to the new call media node (i.e., the fourth function, which is at least used to process user plane data), so that the fourth function is used to convert the first codec and the second codec for the voice stream, that is, to convert the corresponding low-bit-rate voice codec to the terrestrial general voice codec, so that the first terminal can use the low-bit-rate voice codec to communicate with the other end without changing the existing terminals of the two communicating parties, thereby improving the call voice quality.
[0052] The embodiment of the present application provides a voice processing method, which is applied to a first function. Figure 1 The flow chart of the speech processing method of the present application embodiment is as follows: Figure 1 ;like Figure 1 As shown, the method includes:
[0053] Step 101: Receive a first request initiated by a second function through a third function; the first request is triggered by the second function based on first information, and the first information includes location information of a first terminal.
[0054] In an embodiment of the present application, the first request is used to request control of a call event between the first terminal and the second terminal; the second function represents a service application server (AS). The first function is at least used to process voice service data, and exemplarily, the first function may be a Voice over Long Term Evolution (VoLTE) AS; the third function is at least used to process control plane data, and exemplarily, the third function may be a New Calling Platform (NCP), which may also be called a New Calling Service Control Platform.
[0055] In one embodiment, the VoLTE AS receives a first request initiated by the service AS through the NCP, that is, the first request is initiated by the service AS, first the service AS sends the first request to the NCP, and then forwards the first request to the VoLTE AS through the NCP, wherein the first request is used to request control of a call event between the first terminal and the second terminal.
[0056] Here, the first terminal represents a satellite mobile communication terminal, and the second terminal represents a terrestrial mobile communication terminal, wherein a voice call connection is established between the first terminal and the second terminal, that is, the first terminal triggers a call event through the first function, thereby establishing a voice call connection between the first terminal and the second terminal based on the call event.
[0057] In actual application, the first request is not randomly initiated by the second function, but is triggered conditionally. Specifically, the first request is triggered by the second function based on the first information. That is to say, the second function can trigger the sending of the first request based on the first information only after receiving the first information.
[0058] Based on this, in one embodiment, before receiving the first request initiated by the second function through the third function, the method also includes: sending the first information to the third function so that the third function sends the first information to the second function; wherein the first information represents a call event notification message.
[0059] Here, in one embodiment, sending the first information to the third function includes:
[0060] Determining whether second information is received; the second information represents a reply confirmation message sent by the second terminal, the second information is generated by the second terminal based on a second request initiated by the first terminal, and the second request represents a codec update request for the voice stream;
[0061] In the case where it is determined that the second information is received, the first information is sent to the third function.
[0062] Here, the first function triggers the sending of the first information to the third function only when it is determined that the second information is received, that is, the sending of a call event notification message to the third function. It should be noted that the second information is sent by the second terminal to the fifth function and forwarded to the first function through the fifth function. In the embodiment of the present application, the fifth function is at least used to process call session data. Exemplarily, the fifth function may be an interrogating / serving-call session control function (I / S-CSCF). The second information represents the reply confirmation message sent by the second terminal. Exemplarily, the second information may be 200OK. Specifically, the first terminal initiates a codec update request for the voice stream, that is, an Update request. After receiving the Update request, the fifth function forwards the Update request to the second terminal. At this time, after receiving the Update request, the second terminal generates the second information based on the Update request, that is, generates feedback information for the Update request. That is, after receiving the Update request, the second terminal generates a reply confirmation message for the Update request, and then sends the reply confirmation message to the first function through the fifth function, further triggering the first function to send a call event notification message to the third function.
[0063] In actual application, the first request is sent by the second function to the first function based on the triggering of the first information.
[0064] Based on this, in one embodiment, the receiving of the first request initiated by the second function through the third function includes: receiving the first request sent by the third function when the second function receives the first information; wherein the first request is sent to the third function by the second function triggered by the first information.
[0065] Step 102: In response to the first request, control anchoring the voice stream to a fourth function based on the location information of the first terminal, so as to convert the voice stream between the first codec and the second codec through the fourth function.
[0066] In the embodiment of the present application, the fourth function is at least used to process user plane data. Exemplarily, the fourth function may be a unified media processing function (UMF, Unified Media Function).
[0067] Here, since the first request is triggered by the second function based on the first information, and the first information includes the location information of the first terminal, after receiving the first request, the first function controls the call event between the first terminal and the second terminal based on the first request. Specifically, the first function controls the re-anchoring of the voice stream through the cell location information of the satellite mobile communication terminal, that is, the first terminal in the call signaling, that is, the location information of the first terminal, that is, the voice stream is anchored to the new call media node (that is, the fourth function), so as to convert the first codec and the second codec for the voice stream through the fourth function, that is, to convert the corresponding low-bit-rate voice codec to the terrestrial general voice codec, so as to achieve that without changing the existing terminals of the two communicating parties, the first terminal can use the low-bit-rate voice codec to communicate with the other end, thereby improving the call voice quality.
[0068] In an embodiment of the present application, the first codec corresponds to a first terminal, the first terminal represents a satellite mobile communication terminal, the second codec corresponds to a second terminal, the second terminal represents a terrestrial mobile communication terminal, wherein the first codec represents a low bit rate speech codec, and the second codec represents a terrestrial general speech codec.
[0069] It should be noted that, since the first terminal represents a satellite mobile communication terminal, the location information of the first terminal may be location information of the satellite mobile communication terminal, wherein the location information of the satellite mobile communication terminal may be referred to as satellite location information.
[0070] In actual application, the location information of the first terminal can be carried in the first field.
[0071] Based on this, in one embodiment, the method further includes: creating a first field in the first information; and adding the location information of the first terminal in the first field.
[0072] Here, when the first function (i.e., VoLTE AS) receives the second information (i.e., the reply confirmation message sent by the second terminal, exemplarily, the second information may be 200OK), VoLTE AS sends the first information (i.e., call event notification message) to the third function (i.e., NCP), and the call event notification message carries the location information of the satellite mobile communication terminal.
[0073] Specifically, the first function creates a first field in the first information. Exemplarily, the first field may be a scgi field. Specifically, the first field may be a scgi field set in the location type (Location Type), that is, the location information of the satellite mobile communication terminal is carried in the scgi field in the Location Type.
[0074] In actual application, after the first function controls the voice stream to be anchored to the fourth function based on the location information of the first terminal, the first function controls the fourth function to create media resources between the fourth function and the second terminal, and selects the corresponding voice codec.
[0075] Based on this, in one embodiment, after controlling, in response to the first request, anchoring the voice stream to the fourth function based on the location information of the first terminal, the method further includes:
[0076] Initiate a third request to the fourth function; the third request is used to request the fourth function to create a first media resource; the first media resource represents a media resource between the fourth function and the second terminal, the first media resource is used to determine the transmission of a first code stream between the fourth function and the second terminal, and the first code stream is associated with the second codec;
[0077] Receive third information sent by the fourth function; the third information represents a confirmation message for creating the first media resource.
[0078] Here, by utilizing the media resources (i.e., the first media resources) created between the fourth function and the second terminal, it can be determined that the voice stream transmitted between the fourth function and the second terminal is the first code stream, and the first code stream is associated with the second codec, that is, the voice stream transmitted between the fourth function and the second terminal is encoded and decoded using the terrestrial universal voice codec.
[0079] It should be noted that after the fourth function successfully creates the first media resource, a confirmation message will be generated for the event of successfully creating the first media resource, that is, the third information will be generated, and then the fourth function will send the third information to the first function to inform the first function that the first media resource has been successfully created. Exemplarily, the third information can be 200OK.
[0080] In actual application, after the fourth function successfully creates the first media resource, the first media resource may be updated to complete the conversion between the first codec and the second codec for the voice stream.
[0081] Based on this, in one embodiment, after receiving the third information sent by the fourth function, the method further includes:
[0082] Initiate a fourth request to the fourth function; the fourth request is used to request to update the first media resource to obtain a second media resource; the second media resource represents a media resource between the fourth function and the first terminal, the second media resource is used to determine the second code stream transmitted between the fourth function and the first terminal, and the second code stream is associated with the first codec;
[0083] Receive fourth information sent by the fourth function; the fourth information represents a confirmation message for updating the first media resource.
[0084] Here, after the first function controls the fourth function to create the first media resource between the fourth function and the second terminal, the fourth function can also be controlled to update the first media resource to obtain the second media resource. The second media resource represents the media resource between the fourth function and the first terminal. Then, using the second media resource, it can be determined that the voice stream transmitted between the fourth function and the first terminal is the second code stream, and the second code stream is associated with the first codec. That is to say, the voice stream transmitted between the fourth function and the first terminal is encoded and decoded using a low-bitrate voice codec. In this way, without changing the existing terminals of the two communicating parties, the first terminal can use the low-bitrate voice codec to communicate with the other end, thereby improving the voice quality of the call.
[0085] It should be noted that after the fourth function completes the update of the first media resource, a confirmation message will be generated for the event of completing the update of the first media resource, that is, the fourth information will be generated, and then the fourth function will send the fourth information to the first function to inform the first function that the update of the first media resource has been completed. Exemplarily, the fourth information can be 200OK.
[0086] The embodiment of the present application also provides another voice processing method, which is applied to the second function. Figure 2 The flow chart of the speech processing method of the present application embodiment is as follows: Figure 2 ;like Figure 2 As shown, the method includes:
[0087] Step 201: Initiate a first request to the first function through the third function; the first request is triggered based on first information, the first information includes location information of the first terminal, and the location information of the first terminal is used by the first function to control the anchoring of the voice stream to the fourth function, so as to convert the voice stream between the first codec and the second codec through the fourth function.
[0088] In an embodiment of the present application, the first request is used to request control of a call event between the first terminal and the second terminal; the first function is at least used to process voice service data, and exemplarily, the first function may be VoLTE AS; the second function represents the service AS; the third function is at least used to process control plane data, and exemplarily, the third function may be NCP; the fourth function is at least used to process user plane data, and exemplarily, the fourth function may be UMF.
[0089] Here, the first terminal represents a satellite mobile communication terminal, and the second terminal represents a terrestrial mobile communication terminal, wherein a voice call connection is established between the first terminal and the second terminal, that is, the first terminal triggers a call event through the first function, thereby establishing a voice call connection between the first terminal and the second terminal based on the call event.
[0090] In actual application, the first request is not randomly initiated by the second function, but is conditionally triggered. Specifically, the first request is triggered by the second function based on the first information, that is, the second function can trigger the sending of the first request based on the first information only after receiving the first information. Therefore, the second function can also receive the first information before sending the first request.
[0091] Based on this, in one embodiment, before initiating the first request to the first function through the third function, the method further includes: receiving the first information sent by the first function through the third function; wherein the first information represents a call event notification message.
[0092] In actual application, the first request is sent by the second function to the first function based on the triggering of the first information.
[0093] Based on this, in one embodiment, initiating a first request to a first function through a third function includes: determining whether the first information is received; and in the case where it is determined that the first information is received, triggering sending the first request to the third function based on the first information, so that the third function sends the first request to the first function.
[0094] Here, since the first request is triggered by the second function based on the first information, and the first information includes the location information of the first terminal, after receiving the first request, the first function controls the call event between the first terminal and the second terminal based on the first request. Specifically, the first function controls the re-anchoring of the voice stream through the cell location information of the satellite mobile communication terminal, that is, the first terminal in the call signaling, that is, the location information of the first terminal, that is, the voice stream is anchored to the new call media node (that is, the fourth function), so as to convert the first codec and the second codec for the voice stream through the fourth function, that is, to convert the corresponding low-bit-rate voice codec to the terrestrial general voice codec, so as to achieve that without changing the existing terminals of the two communicating parties, the first terminal can use the low-bit-rate voice codec to communicate with the other end, thereby improving the call voice quality.
[0095] In an embodiment of the present application, the first codec corresponds to a first terminal, the first terminal represents a satellite mobile communication terminal, the second codec corresponds to a second terminal, the second terminal represents a terrestrial mobile communication terminal, wherein the first codec represents a low bit rate speech codec, and the second codec represents a terrestrial general speech codec.
[0096] It should be noted that, since the first terminal represents a satellite mobile communication terminal, the location information of the first terminal may be location information of the satellite mobile communication terminal, wherein the location information of the satellite mobile communication terminal may be referred to as satellite location information.
[0097] The present application embodiment also provides another voice processing method, which is applied to the fourth function. Figure 3 The flow chart of the speech processing method of the present application embodiment is as follows: Figure 3 ;like Figure 3 As shown, the method includes:
[0098] Step 301: Acquire a voice stream.
[0099] In an embodiment of the present application, the voice stream is anchored by the first function in response to the first request based on the location information of the first terminal. The first function is at least used to process voice service data, and the first function can be VoLTE AS by way of example; the fourth function is at least used to process user plane data, and the fourth function can be UMF by way of example.
[0100] Here, the first request is sent from the second function to the first function via the third function, the first request is triggered by the second function based on first information, the first information includes the location information of the first terminal; the first request is used to request control of a call event between the first terminal and the second terminal.
[0101] In the embodiment of the present application, the second function represents the service AS, and the third function is at least used to process control plane data. Exemplarily, the third function can be NCP. The first terminal represents a satellite mobile communication terminal, and the second terminal represents a terrestrial mobile communication terminal, wherein a voice call connection is established between the first terminal and the second terminal, that is, the first terminal triggers a call event through the first function, thereby establishing a voice call connection between the first terminal and the second terminal based on the call event.
[0102] It should be noted that, since the first terminal represents a satellite mobile communication terminal, the location information of the first terminal may be location information of the satellite mobile communication terminal, wherein the location information of the satellite mobile communication terminal may be referred to as satellite location information.
[0103] In actual application, the location information of the first terminal can be carried in the first field, which is a field created by the first function in the first information. Exemplarily, the first field can be a scgi field. Specifically, the first field can be a scgi field set in Location Type, that is, the location information of the satellite mobile communication terminal is carried in the scgi field in Location Type.
[0104] Step 302: Convert the voice stream between the first codec and the second codec.
[0105] In an embodiment of the present application, the first codec corresponds to a first terminal, the first terminal represents a satellite mobile communication terminal, the second codec corresponds to a second terminal, the second terminal represents a terrestrial mobile communication terminal, wherein the first codec represents a low bit rate speech codec, and the second codec represents a terrestrial general speech codec.
[0106] In actual application, after the first function controls the voice stream to be anchored to the fourth function based on the location information of the first terminal, the first function controls the fourth function to create media resources (ie, the first media resources) between the fourth function and the second terminal, and selects the corresponding voice codec based on the first media resources.
[0107] Based on this, in one embodiment, the conversion between the first codec and the second codec for the voice stream includes: receiving a third request initiated by the first function; the third request is used to request the creation of a first media resource, and the first media resource represents the media resource between the fourth function and the second terminal; in response to the third request, the first media resource is created; based on the first media resource, it is determined that the first code stream is transmitted between the fourth function and the second terminal; the first code stream is associated with the second codec; based on the first media resource, the second codec is converted.
[0108] Here, by utilizing the media resources (i.e., the first media resources) created between the fourth function and the second terminal, it can be determined that the voice stream transmitted between the fourth function and the second terminal is the first code stream, and the first code stream is associated with the second codec, that is, the voice stream transmitted between the fourth function and the second terminal is encoded and decoded using the terrestrial universal voice codec.
[0109] In one embodiment, after creating the first media resource in response to the third request, the method further includes: sending third information to the first function; the third information represents a confirmation message for creating the first media resource.
[0110] Here, after the fourth function successfully creates the first media resource, a confirmation message will be generated for the event of successfully creating the first media resource, that is, the third information will be generated, and then the fourth function will send the third information to the first function to inform the first function that the first media resource has been successfully created. Exemplarily, the third information can be 200OK.
[0111] In actual application, after the fourth function successfully creates the first media resource, the first media resource may be updated to complete the conversion between the first codec and the second codec for the voice stream.
[0112] Based on this, in one embodiment, the conversion of the second codec based on the first media resource includes: receiving a fourth request initiated by the first function; the fourth request is used to request an update of the first media resource; in response to the fourth request, the first media resource is updated to obtain a second media resource; the second media resource represents the media resource between the fourth function and the first terminal; based on the second media resource, determining that a second code stream is transmitted between the fourth function and the first terminal; and the second code stream is associated with the first codec.
[0113] Here, after the first function controls the fourth function to create the first media resource between the fourth function and the second terminal, the fourth function can also be controlled to update the first media resource to obtain the second media resource. The second media resource represents the media resource between the fourth function and the first terminal. Then, using the second media resource, it can be determined that the voice stream transmitted between the fourth function and the first terminal is the second code stream, and the second code stream is associated with the first codec. That is to say, the voice stream transmitted between the fourth function and the first terminal is encoded and decoded using a low-bitrate voice codec. In this way, without changing the existing terminals of the two communicating parties, the first terminal can use the low-bitrate voice codec to communicate with the other end, thereby improving the voice quality of the call.
[0114] In one embodiment, after updating the first media resource in response to the fourth request to obtain the second media resource, the method further includes: sending fourth information to the first function; the fourth information represents a confirmation message for updating the first media resource.
[0115] Here, after the fourth function completes the update of the first media resource, a confirmation message will be generated for the event of completing the update of the first media resource, that is, the fourth information will be generated, and then the fourth function will send the fourth information to the first function to inform the first function that the update of the first media resource has been completed. Exemplarily, the fourth information can be 200OK.
[0116] In actual application, after receiving the call control result notification message sent by the first function (VoLTE AS) through the third function (NCP), the second function (service AS) initiates a fifth request to the NCP, and sends the fifth request to the fourth function (UMF) through the NCP, so that the UMF restores the sound characteristics of the first terminal. Among them, the call control result notification message includes the audio anchoring result, that is, the voice stream is anchored to the fourth function, specifically, the voice stream is anchored to the UMF.
[0117] Based on this, in one embodiment, the method further includes: receiving a fifth request initiated by the third function; the fifth request is used to request restoration of the sound characteristics of the first terminal; in response to the fifth request, restoring the sound characteristics of the first terminal to obtain the original sound characteristics.
[0118] In one embodiment, in response to the fifth request, restoring the sound characteristics of the first terminal to obtain the original sound characteristics, includes: in response to the fifth request, parsing the fifth request to obtain the voiceprint characteristics of the first terminal; based on the voiceprint characteristics of the first terminal, restoring the sound characteristics of the first terminal to obtain the original sound characteristics.
[0119] In the embodiment of the present application, the fifth request includes the voiceprint feature of the first terminal. Exemplarily, the voiceprint feature of the first terminal can be the voiceprint identification (ID) of the first terminal. The voice feature of the first terminal is a low-bitrate voice stream, which can also be called a low-bitrate encoding stream.
[0120] Here, before the sound feature of the first terminal is restored in response to the fifth request to obtain the original sound feature, the method further includes: using a transmitting end encoding device to obtain the sound feature of the first terminal, and sending the sound feature of the first terminal to a receiving end decoding device. In this way, the sound feature of the first terminal can be restored by using the receiving end decoding device with the fourth function to obtain the original sound feature.
[0121] Here, the transmitting end encoding device is the transmitting end encoding device of the fourth function, and the sound feature of the first terminal can be understood as the sound feature of the first terminal after encoding. For obtaining the sound feature of the first terminal by using the transmitting end encoding device, it can be to receive the original audio stream collected by the first terminal, extract the sound feature from the original audio stream, map the sound feature to the corresponding phoneme or other speech unit, encode the sound feature by phoneme or other speech unit, and obtain the encoded sound feature of the first terminal.
[0122] It should be noted that in the embodiment of the present application, the transmitting-end encoding device of the fourth function can extract sound features from the original audio stream by using Mel-Frequency Cepstral Coefficients (MFCC), Linear Prediction Cepstral Coefficients (LPCC), etc., but the embodiment of the present application does not limit this.
[0123] Here, after obtaining the encoded sound features of the first terminal, the transmitting-end encoding device of the fourth function sends the encoded sound features of the first terminal to the receiving-end decoding device, so that the receiving-end decoding device restores the sound features of the first terminal to obtain the original sound features.
[0124] Here, for the receiving-end decoding device to restore the sound characteristics of the first terminal to obtain the original sound characteristics, it can be to first obtain the voiceprint characteristics of the first terminal, fit the voiceprint characteristics of the first terminal to obtain the fitted voiceprint characteristics of the first terminal, and restore the sound characteristics of the first terminal based on the fitted voiceprint characteristics of the first terminal to obtain the original sound characteristics.
[0125] It should be noted that the voiceprint feature of the first terminal may be a system default voiceprint feature, specifically, a first terminal user voiceprint feature pre-loaded with phonemes or other speech units. After the receiving end decoding device obtains the original sound feature, the method further includes: sending the original sound feature to the terminal playback device or remote device.
[0126] By adopting the technical solution of the embodiment of the present application, the voice stream is controlled to be anchored to the new call media node (that is, the fourth function, which is at least used to process user plane data) through the cell location information (that is, the location information of the first terminal) of the satellite mobile communication terminal (that is, the first terminal) in the call signaling, so that the fourth function is used to convert the first codec and the second codec for the voice stream, that is, to convert the corresponding low-bit-rate voice codec to the terrestrial general voice codec, so that without changing the existing terminals of the two communicating parties, the first terminal can use the low-bit-rate voice codec to communicate with the other end, thereby improving the call voice quality.
[0127] The present application is described below in conjunction with application examples.
[0128] The solution using related technologies requires that the terminals of both parties in communication support the new low-bitrate voice codec at the same time, and the codec based on voice compression will always reduce the voice quality of the call. In order to solve this technical problem, this application proposes the following corresponding solutions:
[0129] 1. Dynamic network transcoding to achieve intercommunication with existing mobile terminals (corresponding to the aforementioned second terminal): Utilize the new call network and service platform to anchor the call audio stream for the satellite mobile communication terminal (corresponding to the aforementioned first terminal), and perform the corresponding conversion between the low-bitrate voice codec and the terrestrial general voice codec, so that the satellite mobile communication terminal can use the low-bitrate voice codec to communicate with the existing mobile communication terminal without changing the terminals of the existing communication parties, thereby improving the call voice quality.
[0130] 2. Dynamic voice fitting to achieve high-quality voice at low bit rates: By using the new call network and service platform, when the satellite mobile communication terminal converts the low-bit rate voice codec into the universal voice codec, the user's voiceprint features are used for dynamic fitting, so that the satellite mobile communication terminal can receive and send high-quality voice under the premise of using low-bit rate voice codec.
[0131] The present application proposes a method and system for low-bitrate voice calls in a space-ground integrated network (based on the integrated network of satellite communication network and ground communication network). The system controls the anchoring of voice streams to new call media nodes (such as UMF) through the cell location information of satellite mobile communication terminals in call signaling on existing new call network control nodes (such as NCP) and service control nodes (such as service AS), so as to subsequently convert and interoperate the low-bitrate voice codec of the satellite mobile communication terminal and the traditional ground universal voice codec.
[0132] Among them, the system defines the mechanism of low-bitrate speech encoding and decoding for satellite mobile communication terminals, as well as network control nodes in the network (such as session border controller (SBC, Session Border Controller)-C (SBC control plane), VoLTE AS) and media nodes (such as SBC-U (SBC user plane) and UMF); at the same time, under the control of the service control node, the network media node can use the voiceprint features subscribed by the user to achieve high-quality speech fitting for the low-bitrate speech coding and complete the conversion to traditional general speech codec.
[0133] Satellite mobile communication terminals and network control nodes / media nodes perform low-bitrate speech encoding and decoding, which is mainly completed by a transmitting end encoding device and a receiving end decoding device. Figure 4 Schematic diagram of the structure of the transmitting end encoding device of the embodiment of the present application. Figure 4As shown, the transmitting end encoding device mainly includes four modules: (1) an audio stream receiving module, which is used to receive the original audio stream collected from the satellite mobile communication terminal, or the audio stream decoded from the general speech codec; (2) a sound feature extraction module, which is used to extract sound features from the audio stream using MFCC, LPCC, etc.; (3) a speech unit extraction module, which is used to use a deep learning model such as a hidden Markov model (HMM) or a recurrent neural network (RNN) to use a large amount of annotated speech data to pre-train how to map sound features to corresponding phonemes or other speech units; (4) a low bit rate encoding and sending module, which is used to encode sound features using phonemes or other speech units, and send the encoded sound features (low bit rate encoding stream) to the remote end.
[0134] Figure 5 Schematic diagram of the structure of the receiving end decoding device of the embodiment of the present application. Figure 5 As shown, the receiving end decoding device mainly includes four modules: (1) a low bit rate coding stream receiving module, which is used to receive the low bit rate coding stream from the remote end; (2) a voiceprint feature fitting module, which restores the original sound features of the received low bit rate coding stream based on phonemes or other speech units and the pre-loaded user voiceprint features. Among them, the terminal side can combine the system default voiceprint features, and the network control node / media node can restore the sound features according to the user-ordered voiceprint features indicated by the service node; (3) a sound feature restoration module, which restores the original audio stream on the terminal side based on the sound features after fitting the voiceprint features, or re-encodes it into a universal voice codec on the network side; (4) an audio stream sending module, which sends the re-encoded audio stream to the terminal playback device or remote device.
[0135] The following takes the first function as VoLTE AS, the second function as service AS, the third function as NCP, the fourth function as UMF, the first terminal as user equipment (UE, User Equipment) A (UE A is a satellite mobile communication terminal), and the second terminal as UE B (UE B is a terrestrial mobile communication terminal) as an example to specifically describe the voice processing method of the present application. Figure 6 The flow chart of the speech processing method of the present application embodiment is as follows: Figure 4 This voice processing method is used to realize low-bitrate voice calls in the integrated network of the earth and sky, such as Figure 6 As shown, the business process of the voice processing method is as follows:
[0136] Step 1-6: UE A sends an INVITE request to SBC-C, wherein the INVITE request is sent in the form of Session Description Protocol (SDP) 1, and SDP1 carries the low-bitrate voice codec SAT_NB codec (corresponding to the aforementioned first codec); SBC-C obtains the user location information, i.e., the user location information of UE A (corresponding to the aforementioned location information of the first terminal), saves the user location information in utran_cell_id_3gpp, and supplements the terrestrial general voice codec (such as adaptive multi-rate (AMR) codec (corresponding to the aforementioned second codec)) in SDP1, and then forwards the INVITE request to the mobile communication terminal UE B at the other end.
[0137] Step 7-11: After receiving the INVITE request, UE B selects AMR codec as the preferred codec in the returned 183 message; SBC-C selects SAT_NB codec as the preferred codec in the 183 message forwarded to UE A.
[0138] Step 12-22: UE A initiates an Update request to SBC-C, where the Update request is sent in the form of SDP2, which carries the SAT_NB codec; SBC-C forwards the Update request to UE B and selects the AMR codec; after receiving the Update request, UE B returns a 200 OK message to the I / S-CSCF and a 180 message to UE A. SAT_NB codec voice streams are transmitted between UE A and SBC-U, and AMR codec voice streams are transmitted between SBC-U and UE B.
[0139] Steps 23-25: UE B replies with a 200OK message to the I / S-CSCF, which forwards the 200OK message to the VoLTE AS through the I / S-CSCF. The VoLTE AS sends a call event notification (ANSWER, corresponding to the first information mentioned above) to the NCP, and carries the satellite location information of UE A in the scgi field in LocationType (the original ecgi is the LTE location information, the ncgi is the NR location information, and the newly added scgi is used to indicate the satellite location information).
[0140] Steps 26-31: NCP initiates a call event control (ANCHOR, corresponding to the first request mentioned above) to VoLTE AS; VoLTE AS initiates a Re-Invite request to UE B, UE B updates SDP and prefers AMR codec, VoLTE AS controls UMF to create media resources between UMF and UE B (corresponding to the first media resources mentioned above), and selects AMR codec.
[0141] Steps 32-33: The VoLTE AS initiates an Update request to UE A, updates the SDP of the UMF and optimizes the SAT_NB codec.
[0142] Steps 34-41: UE A replies a 200OK message to the VoLTE AS, selects the SAT_NB codec in the SDP, and the VoLTE AS controls the UMF to update the media resources between the UMF and UE A (corresponding to the aforementioned second media resources), and selects the SAT_NB codec. After the audio anchoring is completed, the SAT_NB codec is used for the voice stream between UE A and the UMF, and the AMR codec is used for the voice stream between the UMF and UE B.
[0143] Steps 42-46: After receiving the call control result notification (including audio anchoring result) sent by VoLTE AS through NCP, the service AS initiates a voiceprint restoration transcoding request to NCP (corresponding to the fifth request mentioned above), and sends the voiceprint ID subscribed by UE A to UMF through NCP, so that UMF can complete the re-encoding from SAT_NB codec to AMR codec based on the voiceprint model by using the receiving-end decoding device, and complete the re-encoding from AMR codec to SAT_NB codec by using the sending-end encoding device.
[0144] The present application proposes a method for anchoring the voice stream to a new call media node (such as UMF) by using the cell location information of the satellite mobile communication terminal in the call signaling, and utilizing the new call network and service layer to control the voice flow. A transmitting end encoding device and a receiving end decoding device for low-bitrate voice calls are also proposed, which transmits low-bitrate voice codec in the satellite communication network, thereby saving communication bandwidth, while maintaining high-quality call voice through voiceprint feature fitting.
[0145] In order to implement the voice processing method on the first function side of the embodiment of the present application, the embodiment of the present application also provides a voice processing device, which is applied to the first function, and the first function is at least used to process voice service data. Figure 7 The structure of the speech processing device of the present invention is shown in FIG. Figure 1 ,like Figure 7 As shown, the device comprises:
[0146] The first receiving unit 71 is used to receive a first request initiated by the second function through the third function; the first request is triggered by the second function based on first information, and the first information includes location information of the first terminal; the first request is used to request control of a call event between the first terminal and the second terminal; the second function represents a service application server, and the third function is at least used to process control plane data;
[0147] A control unit 72 is used to control, in response to the first request, anchoring the voice stream to a fourth function based on the location information of the first terminal, so as to convert the voice stream between the first codec and the second codec through the fourth function; the fourth function is at least used to process user plane data.
[0148] In one embodiment, the device further includes: a second sending unit; wherein,
[0149] The second sending unit is configured to send the first information to the third function before the first receiving unit 71 receives the first request initiated by the second function through the third function, so that the third function sends the first information to the second function;
[0150] The first information represents a call event notification message.
[0151] In one embodiment, the second sending unit is specifically configured to:
[0152] Determining whether second information is received; the second information represents a reply confirmation message sent by the second terminal, the second information is generated by the second terminal based on a second request initiated by the first terminal, and the second request represents a codec update request for the voice stream;
[0153] In the case where it is determined that the second information is received, the first information is sent to the third function.
[0154] In one embodiment, the first receiving unit 71 is specifically configured to:
[0155] In a case where the second function receives the first information, receiving the first request sent by the third function;
[0156] The first request is triggered by the second function and sent to the third function based on the first information.
[0157] In one embodiment, the device further includes: a creation unit and an addition unit; wherein,
[0158] The creating unit is used to create a first field in the first information;
[0159] The adding unit is used to add the location information of the first terminal in the first field.
[0160] In one embodiment, the device further includes: a third sending unit and a second receiving unit; wherein,
[0161] The third sending unit is used to initiate a third request to the fourth function after the control unit 72 controls the anchoring of the voice stream to the fourth function based on the location information of the first terminal in response to the first request; the third request is used to request the fourth function to create a first media resource; the first media resource represents the media resource between the fourth function and the second terminal, the first media resource is used to determine the transmission of a first code stream between the fourth function and the second terminal, and the first code stream is associated with the second codec;
[0162] The second receiving unit is used to receive third information sent by the fourth function; the third information represents a confirmation message for creating the first media resource.
[0163] In one embodiment, the device further includes: a fourth sending unit and a third receiving unit; wherein,
[0164] The fourth sending unit is configured to initiate a fourth request to the fourth function after the second receiving unit receives the third information sent by the fourth function; the fourth request is used to request to update the first media resource to obtain a second media resource; the second media resource represents a media resource between the fourth function and the first terminal, the second media resource is used to determine the second code stream transmitted between the fourth function and the first terminal, and the second code stream is associated with the first codec;
[0165] The third receiving unit is used to receive fourth information sent by the fourth function; the fourth information represents a confirmation message for updating the first media resource.
[0166] In one embodiment, the first terminal represents a satellite mobile communication terminal, and the second terminal represents a terrestrial mobile communication terminal; wherein the first codec corresponds to the first terminal, and the second codec corresponds to the second terminal.
[0167] In actual application, the first receiving unit 71 can be implemented by a communication interface in the voice processing device; the control unit 72 can be implemented by a processor in the voice processing device.
[0168] In order to implement the voice processing method on the second function side of the embodiment of the present application, the embodiment of the present application also provides another voice processing device, which is applied to the second function, and the second function represents a business application server, Figure 8The structure of the speech processing device of the present invention is shown in FIG. Figure 2 ,like Figure 8 As shown, the device comprises:
[0169] A first sending unit 81 is configured to initiate a first request to the first function through a third function; the first request is triggered based on first information, the first information including location information of the first terminal; the first request is used to request control of a call event between the first terminal and the second terminal; the first function is at least used to process voice service data, and the third function is at least used to process control plane data;
[0170] The location information of the first terminal is used by the first function to control the anchoring of the voice stream to the fourth function, so as to convert the voice stream between the first codec and the second codec through the fourth function; the fourth function is at least used to process user plane data.
[0171] In one embodiment, the device further includes: a fourth receiving unit; wherein,
[0172] The fourth receiving unit is configured to receive the first information sent by the first function through the third function before the first sending unit 81 initiates the first request to the first function through the third function;
[0173] The first information represents a call event notification message.
[0174] In one embodiment, the first sending unit 81 is specifically configured to:
[0175] determining whether the first information is received;
[0176] In a case where it is determined that the first information is received, sending the first request to the third function is triggered based on the first information, so that the third function sends the first request to the first function.
[0177] In one embodiment, the first terminal represents a satellite mobile communication terminal, and the second terminal represents a terrestrial mobile communication terminal; wherein the first codec corresponds to the first terminal, and the second codec corresponds to the second terminal.
[0178] In actual application, the first sending unit 81 can be implemented by a communication interface in the voice processing device.
[0179] In order to implement the voice processing method on the fourth function side of the embodiment of the present application, the embodiment of the present application provides another voice processing device, which is applied to the fourth function, and the fourth function is at least used to process user plane data. Fig. 9 The structure of the speech processing device of the present invention is shown in FIG. Figure 3 ,like Fig. 9 As shown, the device comprises:
[0180] A first acquisition unit 91 is used to acquire a voice stream; the voice stream is controlled and anchored by a first function in response to a first request based on the location information of the first terminal, and the first function is at least used to process voice service data;
[0181] A conversion unit 92, configured to convert the voice stream between the first codec and the second codec;
[0182] Among them, the first request is sent from the second function to the first function through the third function, the first request is triggered by the second function based on first information, the first information includes the location information of the first terminal; the first request is used to request control of a call event between the first terminal and the second terminal; the second function represents a business application server, and the third function is at least used to process control plane data.
[0183] In one embodiment, the conversion unit 92 includes a first receiving subunit, a creating subunit, a first determining subunit and a converting subunit; wherein,
[0184] The first receiving subunit is configured to receive a third request initiated by the first function; the third request is used to request the creation of a first media resource, where the first media resource represents a media resource between the fourth function and the second terminal;
[0185] The creating subunit is configured to create the first media resource in response to the third request;
[0186] The first determining subunit is used to determine, based on the first media resource, that a first code stream is transmitted between the fourth function and the second terminal; the first code stream is associated with the second codec;
[0187] The conversion subunit is used to convert the second codec based on the first media resource.
[0188] In one embodiment, the device further includes: a first sending subunit; wherein,
[0189] The first sending subunit is used to send third information to the first function after the creating subunit creates the first media resource in response to the third request; the third information represents a confirmation message for creating the first media resource.
[0190] In one embodiment, the conversion subunit includes a second receiving subunit, an updating subunit, and a second determining subunit; wherein,
[0191] The second receiving subunit is configured to receive a fourth request initiated by the first function; the fourth request is configured to request an update of the first media resource;
[0192] The updating subunit is used to update the first media resource in response to the fourth request to obtain a second media resource; the second media resource represents a media resource between the fourth function and the first terminal;
[0193] The second determining subunit is used to determine, based on the second media resource, that a second code stream is transmitted between the fourth function and the first terminal; the second code stream is associated with the first codec.
[0194] In one embodiment, the device further includes: a second sending subunit; wherein,
[0195] The second sending subunit is used for sending fourth information to the first function after the updating subunit updates the first media resource in response to the fourth request and obtains the second media resource; the fourth information represents a confirmation message for updating the first media resource.
[0196] In one embodiment, the device further includes: a fifth receiving unit and a recovery unit; wherein,
[0197] The fifth receiving unit is configured to receive a fifth request initiated by the third function; the fifth request is configured to request restoration of the sound characteristics of the first terminal;
[0198] The restoring unit is used to restore the sound feature of the first terminal in response to the fifth request to obtain the original sound feature.
[0199] In one embodiment, the recovery unit is specifically used for:
[0200] In response to the fifth request, parsing the fifth request to obtain a voiceprint feature of the first terminal;
[0201] Based on the voiceprint feature of the first terminal, the voice feature of the first terminal is restored to obtain the original voice feature.
[0202] In one embodiment, the first terminal represents a satellite mobile communication terminal, and the second terminal represents a terrestrial mobile communication terminal; wherein the first codec corresponds to the first terminal, and the second codec corresponds to the second terminal.
[0203] In actual application, the first acquisition unit 91 can be implemented by a communication interface in the speech processing device; and the conversion unit 92 can be implemented by a processor in the speech processing device.
[0204] It should be noted that: the speech processing device provided in the above embodiment only uses the division of the above program modules as an example to illustrate when performing speech processing. In actual applications, the above processing can be assigned to different program modules as needed, that is, the internal structure of the device is divided into different program modules to complete all or part of the processing described above. In addition, the speech processing device provided in the above embodiment and the speech processing method embodiment belong to the same concept. The specific implementation process is detailed in the speech processing method embodiment, which will not be repeated here.
[0205] Based on the hardware implementation of the above program module, and in order to implement the voice processing method of the first functional side of the embodiment of the present application, the embodiment of the present application also provides a first function, Fig.10 This is a schematic diagram of the hardware structure of the first function of the embodiment of the present application, such as Fig.10 As shown, the first function 1000 includes:
[0206] The first communication interface 1001 is capable of exchanging information with other devices (such as the second function and the fourth function);
[0207] The first processor 1002 is connected to the first communication interface 1001 to realize information interaction with other devices (such as the second function and the fourth function), and is used to execute the voice processing method of the first function side provided above when running a computer program, and the computer program is stored in the first memory 1003.
[0208] It should be noted that the specific processing process of the first communication interface 1001 and the first processor 1002 can be understood by referring to the voice processing method of the first functional side mentioned above.
[0209] Of course, in actual application, the various components in the first function 1000 are coupled together through the first bus system 1004. It can be understood that the first bus system 1004 is used to realize the connection and communication between these components. In addition to the data bus, the first bus system 1004 also includes a power bus, a control bus and a status signal bus. However, for the sake of clarity, Fig.10 Various buses are labeled as a first bus system 1004 .
[0210] The first memory 1003 in the embodiment of the present application is used to store various types of data to support the operation of the first function 1000. Examples of such data include: any computer program used to operate on the first function 1000.
[0211] The speech processing method of the first functional side disclosed in the above embodiment of the present application can be applied to the first processor 1002, or implemented by the first processor 1002. The first processor 1002 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the speech processing method of the first functional side can be completed by the hardware integrated logic circuit or software instructions in the first processor 1002. The above-mentioned first processor 1002 may be a general-purpose processor, a digital signal processor (DSP, Digital Signal Processor), or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, etc. The first processor 1002 can implement or execute the speech processing methods, steps and logic block diagrams of each first functional side disclosed in the embodiment of the present application. The general-purpose processor may be a microprocessor or any conventional processor, etc. In combination with the steps of the speech processing method of the first functional side disclosed in the embodiment of the present application, it can be directly embodied as a hardware decoding processor to execute, or it can be executed by a combination of hardware and software modules in the decoding processor. The software module may be located in a storage medium, which is located in the first memory 1003. The first processor 1002 reads the information in the first memory 1003 and completes the steps of the voice processing method of the aforementioned first functional side in combination with its hardware.
[0212] In an exemplary embodiment, the first function 1000 can be implemented by one or more application-specific integrated circuits (ASIC), DSP, programmable logic device (PLD), complex programmable logic device (CPLD), field-programmable gate array (FPGA), general-purpose processor, controller, microcontroller (MCU), microprocessor, or other electronic components to execute the voice processing method on the aforementioned first function side.
[0213] Based on the hardware implementation of the above program module, and in order to implement the voice processing method of the second function side of the embodiment of the present application, the embodiment of the present application also provides a second function, Fig.11 This is a schematic diagram of the hardware structure of the second function of the embodiment of the present application, such as Fig.11 As shown, the second function 1100 includes:
[0214] The second communication interface 1101 is capable of exchanging information with other devices (such as the first function);
[0215] The second processor 1102 is connected to the second communication interface 1101 to realize information interaction with other devices (such as the first function), and is used to execute the voice processing method of the second function side provided above when running a computer program, and the computer program is stored in the second memory 1103.
[0216] It should be noted that the specific processing process of the second communication interface 1101 and the second processor 1102 can be understood by referring to the voice processing method of the second functional side mentioned above.
[0217] Of course, in actual application, the various components in the second function 1100 are coupled together through the second bus system 1104. It can be understood that the second bus system 1104 is used to realize the connection and communication between these components. In addition to the data bus, the second bus system 1104 also includes a power bus, a control bus and a status signal bus. However, for the sake of clarity, Fig.11 Various buses are labeled as a second bus system 1104 .
[0218] The second memory 1103 in the embodiment of the present application is used to store various types of data to support the operation of the second function 1100. Examples of such data include: any computer program used to operate on the second function 1100.
[0219] The voice processing method of the second functional side disclosed in the above embodiment of the present application can be applied to the second processor 1102, or implemented by the second processor 1102. The second processor 1102 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the voice processing method of the second functional side can be completed by the hardware integrated logic circuit or software instructions in the second processor 1102. The above-mentioned second processor 1102 can be a general-purpose processor, DSP, or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, etc. The second processor 1102 can implement or execute the voice processing methods, steps and logic block diagrams of each second functional side disclosed in the embodiment of the present application. The general processor can be a microprocessor or any conventional processor, etc. In combination with the steps of the voice processing method of the second functional side disclosed in the embodiment of the present application, it can be directly embodied as a hardware decoding processor to execute, or it can be executed by a combination of hardware and software modules in the decoding processor. The software module may be located in a storage medium, which is located in the second memory 1103. The second processor 1102 reads the information in the second memory 1103 and completes the steps of the voice processing method of the aforementioned second functional side in combination with its hardware.
[0220] In an exemplary embodiment, the second function 1100 can be implemented by one or more ASICs, DSPs, PLDs, CPLDs, FPGAs, general-purpose processors, controllers, MCUs, microprocessors, or other electronic components to execute the voice processing method on the aforementioned second function side.
[0221] Based on the hardware implementation of the above program module, and in order to implement the voice processing method of the fourth function side of the embodiment of the present application, the embodiment of the present application also provides a fourth function, Fig.12 This is a schematic diagram of the hardware structure of the fourth function of the embodiment of the present application, such as Fig.12 As shown, the fourth function 1200 includes:
[0222] The third communication interface 1201 is capable of exchanging information with other devices (such as the first function);
[0223] The third processor 1202 is connected to the third communication interface 1201 to realize information interaction with other devices (such as the first function), and is used to execute the voice processing method of the fourth function side provided above when running a computer program, and the computer program is stored in the third memory 1203.
[0224] It should be noted that the specific processing process of the third communication interface 1201 and the third processor 1202 can be understood by referring to the voice processing method of the fourth functional side mentioned above.
[0225] Of course, in actual application, the various components in the fourth function 1200 are coupled together through the third bus system 1204. It can be understood that the third bus system 1204 is used to realize the connection and communication between these components. In addition to the data bus, the third bus system 1204 also includes a power bus, a control bus and a status signal bus. However, for the sake of clarity, Fig.12 Various buses are labeled as a third bus system 1204.
[0226] The third memory 1203 in the embodiment of the present application is used to store various types of data to support the operation of the fourth function 1200. Examples of such data include: any computer program used to operate on the fourth function 1200.
[0227] The speech processing method of the fourth functional side disclosed in the above embodiment of the present application can be applied to the third processor 1202, or implemented by the third processor 1202. The third processor 1202 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the speech processing method of the fourth functional side can be completed by the hardware integrated logic circuit or software instructions in the third processor 1202. The third processor 1202 mentioned above can be a general-purpose processor, DSP, or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, etc. The third processor 1202 can implement or execute the speech processing methods, steps and logic block diagrams of each fourth functional side disclosed in the embodiment of the present application. A general-purpose processor can be a microprocessor or any conventional processor, etc. In combination with the steps of the speech processing method of the fourth functional side disclosed in the embodiment of the present application, it can be directly embodied as a hardware decoding processor to execute, or it can be executed by a combination of hardware and software modules in the decoding processor. The software module may be located in a storage medium, which is located in the third memory 1203. The third processor 1202 reads the information in the third memory 1203 and completes the steps of the voice processing method of the aforementioned fourth functional side in combination with its hardware.
[0228] In an exemplary embodiment, the fourth function 1200 can be implemented by one or more ASICs, DSPs, PLDs, CPLDs, FPGAs, general-purpose processors, controllers, MCUs, microprocessors, or other electronic components to execute the voice processing method of the aforementioned fourth function side.
[0229] It can be understood that the memory (including the first memory 1003, the second memory 1103 and the third memory 1203) of the embodiment of the present application can be a volatile memory or a non-volatile memory, and can also include both volatile and non-volatile memories. Among them, the non-volatile memory can be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), a magnetic random access memory (FRAM), a ferromagnetic random access memory, a flash memory, a magnetic surface memory, an optical disc, or a compact disc read-only memory (CD-ROM); the magnetic surface memory can be a disk memory or a tape memory. The volatile memory can be a random access memory (RAM), which is used as an external cache.By way of example but not limitation, many forms of RAM are available, such as static random access memory (SRAM), synchronous static random access memory (SSRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDRSDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM), direct memory bus random access memory (DRRAM). The memory (including the first memory 1003, the second memory 1103 and the third memory 1203) described in the embodiments of the present application is intended to include but is not limited to these and any other suitable types of memory.
[0230] In an exemplary embodiment, the embodiment of the present application further provides a storage medium, namely a computer storage medium, specifically a computer-readable storage medium, for example, including a first memory 1003 storing a computer program, the computer program can be executed by the first processor 1002 in the first function 1000 to complete the steps of the speech processing method on the first function side described in the embodiment of the present application, or including a second memory 1103 storing a computer program, the computer program can be executed by the second processor 1102 in the second function 1100 to complete the steps of the speech processing method on the second function side described in the embodiment of the present application, or including a third memory 1203 storing a computer program, the computer program can be executed by the third processor 1202 in the fourth function 1200 to complete the steps of the speech processing method on the fourth function side described in the embodiment of the present application. The computer-readable storage medium can be a memory such as FRAM, ROM, PROM, EPROM, EEPROM, Flash Memory, magnetic surface memory, optical disk, or CD-ROM.
[0231] In an exemplary embodiment, the embodiment of the present application also provides a computer program product, including a computer program, which can be executed by the first processor 1002 in the first function 1000 to complete the steps of the voice processing method on the first function side described in the aforementioned embodiment of the present application, or can be executed by the second processor 1102 in the second function 1100 to complete the steps of the voice processing method on the second function side described in the aforementioned embodiment of the present application, or can be executed by the third processor 1202 in the fourth function 1200 to complete the steps of the voice processing method on the fourth function side described in the aforementioned embodiment of the present application.
[0232] It should be noted that: "first", "second", "third", etc. are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence.
[0233] In addition, the technical solutions described in the embodiments of the present application can be combined arbitrarily without conflict.
[0234] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any person skilled in the art who is familiar with the present technical field can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.
Claims
1. A speech processing method, characterized in that: Applied to a first function, the first function is at least used to process voice service data, the method comprising: receiving a first request initiated by a second function through a third function; the first request is triggered by the second function based on first information, the first information including location information of a first terminal; the first request is used to request control of a call event between the first terminal and the second terminal; the second function represents a service application server, and the third function is at least used to process control plane data; In response to the first request, the voice stream is anchored to a fourth function based on the location information of the first terminal, so as to convert the voice stream between the first codec and the second codec through the fourth function; the fourth function is at least used to process user plane data.
2. The method according to claim 1, characterized in that Before receiving the first request initiated by the second function through the third function, the method further includes: sending the first information to the third function so that the third function sends the first information to the second function; The first information represents a call event notification message.
3. The method according to claim 2, characterized in that The sending the first information to the third function includes: Determining whether second information is received; the second information represents a reply confirmation message sent by the second terminal, the second information is generated by the second terminal based on a second request initiated by the first terminal, and the second request represents a codec update request for the voice stream; In the case where it is determined that the second information is received, the first information is sent to the third function.
4. The method according to claim 2, characterized in that: The receiving a first request initiated by the second function through the third function includes: In a case where the second function receives the first information, receiving the first request sent by the third function; The first request is triggered by the second function and sent to the third function based on the first information.
5. The method according to claim 1, characterized in that The method further comprises: creating a first field in the first information; The location information of the first terminal is added to the first field.
6. The method according to claim 1, characterized in that After controlling, in response to the first request, anchoring the voice stream to the fourth function based on the location information of the first terminal, the method further includes: Initiate a third request to the fourth function; the third request is used to request the fourth function to create a first media resource; the first media resource represents a media resource between the fourth function and the second terminal, the first media resource is used to determine the transmission of a first code stream between the fourth function and the second terminal, and the first code stream is associated with the second codec; Receive third information sent by the fourth function; the third information represents a confirmation message for creating the first media resource.
7. The method according to claim 6, characterized in that After receiving the third information sent by the fourth function, the method further includes: Initiate a fourth request to the fourth function; the fourth request is used to request to update the first media resource to obtain a second media resource; the second media resource represents a media resource between the fourth function and the first terminal, the second media resource is used to determine the second code stream transmitted between the fourth function and the first terminal, and the second code stream is associated with the first codec; Receive fourth information sent by the fourth function; the fourth information represents a confirmation message for updating the first media resource.
8. The method according to any one of claims 1 to 7, characterized in that: The first terminal represents a satellite mobile communication terminal, and the second terminal represents a terrestrial mobile communication terminal; The first codec corresponds to the first terminal, and the second codec corresponds to the second terminal.
9. A speech processing method, characterized in that: Applied to a second function, the second function representing a business application server, the method comprising: Initiate a first request to the first function through the third function; the first request is triggered based on first information, the first information includes location information of the first terminal; the first request is used to request control of a call event between the first terminal and the second terminal; the first function is at least used to process voice service data, and the third function is at least used to process control plane data; The location information of the first terminal is used by the first function to control the anchoring of the voice stream to the fourth function, so as to convert the voice stream between the first codec and the second codec through the fourth function; the fourth function is at least used to process user plane data.
10. The method according to claim 9, characterized in that Before initiating the first request to the first function through the third function, the method further includes: receiving the first information sent by the first function through the third function; The first information represents a call event notification message.
11. The method according to claim 9, characterized in that The initiating a first request to the first function through the third function includes: determining whether the first information is received; In a case where it is determined that the first information is received, sending the first request to the third function is triggered based on the first information, so that the third function sends the first request to the first function.
12. The method according to any one of claims 9 to 11, characterized in that: The first terminal represents a satellite mobile communication terminal, and the second terminal represents a terrestrial mobile communication terminal; The first codec corresponds to the first terminal, and the second codec corresponds to the second terminal.
13. A speech processing method, characterized in that: Applied to a fourth function, the fourth function being at least used for processing user plane data, the method comprising: Acquire a voice stream; the voice stream is controlled and anchored by a first function in response to a first request based on location information of the first terminal, the first function being at least used to process voice service data; Performing conversion between a first codec and a second codec on the voice stream; Among them, the first request is sent from the second function to the first function through the third function, the first request is triggered by the second function based on first information, the first information includes the location information of the first terminal; the first request is used to request control of a call event between the first terminal and the second terminal; the second function represents a business application server, and the third function is at least used to process control plane data.
14. The method according to claim 13, characterized in that The converting between the first codec and the second codec for the voice stream includes: receiving a third request initiated by the first function; the third request is used to request the creation of a first media resource, where the first media resource represents a media resource between the fourth function and the second terminal; In response to the third request, creating the first media resource; Based on the first media resource, determining that a first code stream is transmitted between the fourth function and the second terminal; the first code stream is associated with the second codec; Based on the first media resource, the second codec is converted.
15. The method according to claim 14, characterized in that After creating the first media resource in response to the third request, the method further includes: Sending third information to the first function; the third information represents a confirmation message for creating the first media resource.
16. The method according to claim 14, characterized in that The converting the second codec based on the first media resource includes: receiving a fourth request initiated by the first function; the fourth request is used to request an update of the first media resource; In response to the fourth request, the first media resource is updated to obtain a second media resource; the second media resource represents a media resource between the fourth function and the first terminal; Based on the second media resource, it is determined that a second code stream is transmitted between the fourth function and the first terminal; and the second code stream is associated with the first codec.
17. The method according to claim 16, characterized in that After updating the first media resource in response to the fourth request to obtain the second media resource, the method further includes: Sending fourth information to the first function; the fourth information represents a confirmation message for updating the first media resource.
18. The method according to claim 13, characterized in that The method further comprises: receiving a fifth request initiated by the third function; the fifth request is used to request restoration of the sound characteristics of the first terminal; In response to the fifth request, the sound characteristics of the first terminal are restored to obtain original sound characteristics.
19. The method according to claim 18, characterized in that The step of restoring the sound feature of the first terminal in response to the fifth request to obtain the original sound feature includes: In response to the fifth request, parsing the fifth request to obtain a voiceprint feature of the first terminal; Based on the voiceprint feature of the first terminal, the voice feature of the first terminal is restored to obtain the original voice feature.
20. The method according to any one of claims 13 to 19, characterized in that The first terminal represents a satellite mobile communication terminal, and the second terminal represents a terrestrial mobile communication terminal; The first codec corresponds to the first terminal, and the second codec corresponds to the second terminal.
21. A speech processing device, characterized in that: Applied to a first function, the first function is at least used to process voice service data, the device comprising: a first receiving unit, configured to receive a first request initiated by a second function through a third function; the first request is triggered by the second function based on first information, the first information including location information of a first terminal; the first request is used to request control of a call event between the first terminal and the second terminal; the second function represents a service application server, and the third function is at least used to process control plane data; A control unit is used to control, in response to the first request, anchoring the voice stream to a fourth function based on the location information of the first terminal, so as to convert the voice stream between the first codec and the second codec through the fourth function; the fourth function is at least used to process user plane data.
22. A speech processing device, characterized in that: Applied to a second function, the second function represents a business application server, and the device includes: a first sending unit, configured to initiate a first request to the first function through a third function; the first request is triggered based on first information, the first information including location information of the first terminal; the first request is used to request control of a call event between the first terminal and the second terminal; the first function is at least used to process voice service data, and the third function is at least used to process control plane data; The location information of the first terminal is used by the first function to control the anchoring of the voice stream to the fourth function, so as to convert the voice stream between the first codec and the second codec through the fourth function; the fourth function is at least used to process user plane data.
23. A speech processing device, characterized in that: Applied to a fourth function, the fourth function being at least used to process user plane data, the apparatus comprising: A first acquisition unit, configured to acquire a voice stream; the voice stream is anchored by a first function in response to a first request and based on location information of the first terminal, the first function being configured to process voice service data at least; A conversion unit, configured to convert the voice stream between the first codec and the second codec; Among them, the first request is sent from the second function to the first function through the third function, the first request is triggered by the second function based on first information, the first information includes the location information of the first terminal; the first request is used to request control of a call event between the first terminal and the second terminal; the second function represents a business application server, and the third function is at least used to process control plane data.
24. A first function, characterized in that include: a first processor and a first memory for storing a computer program executable on said first processor; Wherein, when the first processor is used to run the computer program, the steps of the method described in any one of claims 1 to 8 are executed.
25. A second function, characterized in that, include: a second processor and a second memory for storing a computer program executable on the second processor; Wherein, when the second processor is used to run the computer program, the steps of the method described in any one of claims 9 to 12 are executed.
26. A fourth function, characterized in that, include: a third processor and a third memory for storing a computer program executable on said third processor; Wherein, the third processor is used to execute the steps of the method described in any one of claims 13 to 20 when running the computer program.
27. A storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, it implements the steps of the method described in any one of claims 1 to 8, or implements the steps of the method described in any one of claims 9 to 12, or implements the steps of the method described in any one of claims 13 to 20.
28. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, it implements the steps of the method described in any one of claims 1 to 8, or implements the steps of the method described in any one of claims 9 to 12, or implements the steps of the method described in any one of claims 13 to 20.
Citation Information
Patent Citations
Converged communication system of satellite networks and ground network systems and dynamic acoustic code conversion method
CN103426431A
Voice coding method carrying position information
CN105761721A
Media stream distribution method and device, electronic equipment, medium and product
CN118400771A
Ground network in satellite communication system with nodes carrying speech at a high data rate
WO1997044918A1
Call processing method, apparatus and system
WO2023016172A1