Voice communication method and device, equipment and medium
By obtaining the communication parameters of the current and last voice call in the satellite mobile communication system, and dynamically determining the encoding rate in the random access process, the poor voice call quality caused by inappropriate encoding rate is solved, and clearer and more continuous voice is achieved call.
Patent Information
- Application Number
- CN202411606849.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-11
- Publication Date
- 2025-02-18
AI Technical Summary
In satellite mobile communication systems, the encoding rate selected during random access is inappropriate, resulting in poor voice calls, such as intermittent when the signal is weak, or poor sound quality.
By obtaining the current communication parameters of the electronic device and the communication parameters during the last voice call, combined with the random access process, the appropriate encoding rate is dynamically determined, and is used to encode the voice call data.
Maximize the clarity and continuity of voice calls and improve the quality of voice calls.
Smart Images

Figure CN119485514A_ABST
Abstract
Description
Technical Field
[0001] The present application belongs to the technical field of electronic equipment, and specifically relates to a voice call method, device, equipment and medium. Background Art
[0002] The satellite mobile communication system consists of a space segment, a ground segment and user terminals, and can provide voice calls and short message services to user terminals.
[0003] In the related art, when making a voice call, a random coding rate is usually selected from multiple coding rates in a random access process stage, and then the voice call is made based on the coding rate.
[0004] However, if the coding rate selected during the random access process is inappropriate, the voice call quality will be poor. For example, if the selected coding rate is large and the signal of the user terminal is weak, the voice call may be intermittent, affecting the voice call quality. For another example, if the selected coding rate is small, the sound quality of the voice call is poor, which will also affect the voice call quality. Summary of the invention
[0005] The purpose of the embodiments of the present application is to provide a voice call method, apparatus, device and medium, which can solve the problem of poor voice call quality.
[0006] In a first aspect, an embodiment of the present application provides a voice call method, including:
[0007] Acquire a first communication parameter and a second communication parameter of the electronic device, wherein the first communication parameter is a current communication parameter, and the second communication parameter is a communication parameter during a previous voice call;
[0008] Determine a first coding rate according to the first communication parameter and communication parameter thresholds corresponding to N coding rates, where N is a positive integer;
[0009] Determining a second coding rate according to the second communication parameter and the first coding rate;
[0010] Determining a third coding rate according to the second coding rate in combination with the random access process;
[0011] The voice call data is encoded using a third coding rate.
[0012] In a second aspect, an embodiment of the present application provides a voice communication device, including:
[0013] An acquisition module, used to acquire a first communication parameter and a second communication parameter of the electronic device, wherein the first communication parameter is a current communication parameter, and the second communication parameter is a communication parameter during a previous voice call;
[0014] A first determination module, configured to determine a first coding rate according to the first communication parameter and communication parameter thresholds corresponding to N coding rates, wherein N is a positive integer;
[0015] A second determining module, configured to determine a third coding rate according to the second communication parameter and the first coding rate;
[0016] A third determining module, configured to determine a third coding rate according to the second coding rate in combination with a random access process;
[0017] The encoding module is used to encode the voice call data using a third encoding rate.
[0018] In a third aspect, an embodiment of the present application provides an electronic device, comprising a processor and a memory, wherein the memory stores programs or instructions that can be run on the processor, and when the program or instructions are executed by the processor, the steps of the voice call method provided in the embodiment of the present application are implemented.
[0019] In a fourth aspect, an embodiment of the present application provides a readable storage medium, on which a program or instruction is stored. When the program or instruction is executed by a processor, the steps of the voice call method provided in the embodiment of the present application are implemented.
[0020] In a fifth aspect, an embodiment of the present application provides a chip, which includes a processor and a communication interface, wherein the communication interface is coupled to the processor, and the processor is used to run a program or instruction to implement the steps of the voice call method provided in the embodiment of the present application.
[0021] In a sixth aspect, an embodiment of the present application provides a computer program product, which is stored in a storage medium and is executed by at least one processor to implement the steps of the voice call method provided in an embodiment of the present application.
[0022] In an embodiment of the present application, the coding rate required to encode the voice call data is determined by combining the current communication parameters of the electronic device, the communication parameters of the previous voice call and the random access process. The voice call data is encoded using the determined coding rate, which can maximize the clarity of the voice call quality and the continuity of the voice call, and can improve the quality of the voice call. BRIEF DESCRIPTION OF THE DRAWINGS
[0023] Figure 1 It is a flowchart of a voice call method provided in an embodiment of the present application;
[0024] Figure 2 is a schematic diagram of a process for determining a first coding rate provided in an embodiment of the present application;
[0025] Figure 3is a schematic diagram of a process for determining a second coding rate provided in an embodiment of the present application;
[0026] Figure 4 is a schematic diagram of a process for determining a third coding rate provided in an embodiment of the present application;
[0027] Figure 5 is a structural diagram of a voice communication device provided in an embodiment of the present application;
[0028] Figure 6 is a schematic diagram of the structure of an electronic device provided in an embodiment of the present application;
[0029] Figure 7 It is a schematic diagram of the hardware structure of an electronic device implementing an embodiment of the present application. DETAILED DESCRIPTION
[0030] The following will be combined with the drawings in the embodiments of the present application to clearly describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are part of the embodiments of the present application, rather than all the embodiments. All other embodiments obtained by ordinary technicians in this field based on the embodiments in the present application belong to the scope of protection of this application.
[0031] The terms "first", "second", etc. in the specification and claims of the present application are used to distinguish similar objects, and are not used to describe a specific order or sequence. It should be understood that the terms used in this way are interchangeable where appropriate, so that the embodiments of the present application can be implemented in an order other than those illustrated or described herein, and the objects distinguished by "first", "second", etc. are generally of one type, and the number of objects is not limited. For example, the first object can be one or more. In addition, "and / or" in the specification and claims represents at least one of the connected objects, and the character " / " generally indicates that the objects associated with each other are in an "or" relationship.
[0032] The following, in conjunction with the accompanying drawings, describes in detail the voice call method, apparatus, device and medium provided in the embodiments of the present application through specific embodiments and their application scenarios.
[0033] Figure 1 : is a flowchart of a voice call method provided in an embodiment of the present application. The voice call method may include:
[0034] Step 101: Acquire a first communication parameter and a second communication parameter of an electronic device, wherein the first communication parameter is a current communication parameter, and the second communication parameter is a communication parameter during a previous voice call;
[0035] In some possible implementations of the embodiments of the present application, the communication parameters in step 101 include but are not limited to: received signal strength, signal-to-noise ratio, and bit error rate.
[0036] Step 102: Determine a first coding rate according to the first communication parameter and communication parameter thresholds corresponding to N coding rates, where N is a positive integer;
[0037] In some possible implementations of the embodiments of the present application, the N coding rates in step 102 may be coding rates provided by the satellite mobile communication system for the provided voice call service, and N is the number of coding rates provided by the satellite mobile communication system for the provided voice call service. The communication parameter threshold corresponding to each coding rate in the N coding rates may be obtained by testing an actual network.
[0038] In some possible implementations of the embodiments of the present application, step 102 may include: comparing the first communication parameter with the communication parameter threshold corresponding to each of the N coding rates to obtain a comparison result; and determining the first coding rate based on the comparison result.
[0039] In some possible implementations of the embodiments of the present application, determining the first coding rate according to the comparison result may include: when the current received signal strength is greater than or equal to the received signal strength threshold corresponding to the ith coding rate among the N coding rates and the current signal-to-noise ratio is greater than or equal to the signal-to-noise ratio threshold corresponding to the ith coding rate, and when the current received signal strength is less than the received signal strength threshold corresponding to the i+1th coding rate and the current signal-to-noise ratio is less than the signal-to-noise ratio threshold corresponding to the i+1th coding rate, using the ith coding rate as the first coding rate, wherein i is a positive integer less than N, and the i+1th coding rate is greater than the ith coding rate; when the current received signal strength is greater than or equal to the received signal strength threshold corresponding to the Nth coding rate and the current signal-to-noise ratio is greater than or equal to the signal-to-noise ratio threshold corresponding to the Nth coding rate, using the Nth coding rate as the first coding rate; when the current received signal strength is less than the received signal strength threshold corresponding to the first coding rate or the current signal-to-noise ratio is less than the signal-to-noise ratio threshold corresponding to the first coding rate, using the first coding rate as the first coding rate.
[0040] Exemplarily, the N coding rates include the 1st coding rate to the Nth coding rate, wherein the i+1th coding rate is greater than the i-th coding rate, i is a positive integer less than N, and the received signal strength threshold corresponding to the i-th coding rate is RSSI i , the signal-to-noise ratio threshold is SNR i , RSSI i+1 Greater than RSSI i , SNR i+1 Greater than SNR i .
[0041] Exemplarily, assuming that the current received signal strength is less than RSSI1, the first coding rate is used as the first coding rate.
[0042] As another example, assuming that the current signal-to-noise ratio is less than SNR1, the first coding rate is used as the first coding rate.
[0043] As another example, assuming that the current received signal strength is greater than RSSI5 and the current signal-to-noise ratio is greater than SNR5, and the current received signal strength is less than RSSI6 and the current signal-to-noise ratio is less than SNR6, the fifth coding rate is used as the first coding rate.
[0044] Assume that the current received signal strength is greater than RSSI N And the current signal-to-noise ratio is greater than SNR N , taking the Nth coding rate as the first coding rate.
[0045] The process of determining the first coding rate is as follows: Figure 2 As shown, Figure 2 : is a schematic diagram of a process for determining a first coding rate provided in an embodiment of the present application. The process for determining the first coding rate includes the following steps:
[0046] Step 201: Set n=N;
[0047] Step 202: Determine whether n is greater than 1, if yes, execute step 203, if no, execute step 205;
[0048] Step 203: Determine whether the current received signal strength is greater than RSSI n And whether the current signal-to-noise ratio is greater than SNR n If yes, go to step 205, if no, go to step 204;
[0049] Step 204: decrement n by 1 and continue to execute step 202;
[0050] Step 205: Determine the nth coding rate as the first coding rate.
[0051] In an embodiment of the present application, a first coding rate is determined based on a comparison result obtained by comparing the communication parameters of the current call with the communication parameter thresholds corresponding to each of the N coding rates. The first coding rate can be accurately determined, and then the coding rate required to encode the voice call data can be accurately determined. Encoding the voice call data based on the determined coding rate required to encode the voice call data can improve the voice call quality.
[0052] Step 103: Determine a second coding rate according to the second communication parameter and the first coding rate;
[0053] In some possible implementations of the embodiments of the present application, step 103 may include: when the second communication parameter and the first coding rate meet the first condition, using the first coding rate as the second coding rate; when the second communication parameter and the first coding rate do not meet the first condition, using the coding rate among the N coding rates that is less than the first coding rate and has the smallest absolute value of the difference with the first coding rate as the second coding rate;
[0054] The first condition includes at least one of the following:
[0055] The first bit error rate during the last voice call is less than or equal to the first threshold;
[0056] The current signal-to-noise ratio is greater than or equal to the first signal-to-noise ratio during the previous voice call;
[0057] The first bit error rate is greater than the first threshold, the current signal-to-noise ratio is less than the first signal-to-noise ratio, and the first coding rate is less than or equal to the coding rate during the previous voice call;
[0058] The first bit error rate is greater than the first threshold, the current signal-to-noise ratio is less than the first signal-to-noise ratio, the first coding rate is greater than the coding rate during the last voice call, and the first coding rate is the minimum coding rate among N coding rates.
[0059] In some possible implementations of the embodiments of the present application, the first threshold in the embodiments of the present application can be set according to actual needs.
[0060] The process of determining the second coding rate is as follows: Figure 3 As shown, Figure 3 : is a schematic diagram of a process for determining a second coding rate provided in an embodiment of the present application. The process for determining the second coding rate includes the following steps:
[0061] Step 301: Determine whether the first bit error rate during the last voice call is greater than the first threshold and whether the current signal-to-noise ratio is less than the first signal-to-noise ratio during the last voice call. If yes, execute step 302; if no, execute step 305;
[0062] Step 302: Determine whether the kth coding rate corresponding to the first coding rate is less than or equal to the coding rate during the last voice call, if yes, execute step 305, if no, execute step 303;
[0063] Step 303: Determine whether k is greater than 1, if yes, execute step 304, if no, execute step 305;
[0064] Step 304: decrement k by 1 and execute step 305;
[0065] Step 305: Use the kth coding rate as the second coding rate.
[0066] In an embodiment of the present application, when the first bit error rate during the last voice call is less than or equal to the first threshold, the first coding rate is used as the second coding rate, and then the coding rate required to encode the voice call data is determined based on the second coding rate. The voice call data is encoded based on the determined coding rate required to encode the voice call data, which ensures that the current voice call data also has a low bit error rate when being encoded, thereby improving the quality of the voice call.
[0067] In some possible implementations of the embodiments of the present application, the signal-to-noise ratio is a measure of the ratio of signal to noise in an electronic device or system. A higher signal-to-noise ratio means that the device is better able to distinguish between signal and noise, thereby providing clearer and more realistic audio or video quality.
[0068] In an embodiment of the present application, when the current signal-to-noise ratio is greater than or equal to the first signal-to-noise ratio of the previous voice call, by using the first coding rate as the second coding rate, encoding the voice call data based on the determined coding rate at which the voice call data needs to be encoded, it is possible to ensure that the current voice call quality is higher than the previous voice call quality.
[0069] In an embodiment of the present application, when the first bit error rate during the last voice call is greater than the first threshold, the current signal-to-noise ratio is less than the first signal-to-noise ratio, the first coding rate is less than or equal to the coding rate during the last voice call, or the first bit error rate during the last voice call is greater than the first threshold, the current signal-to-noise ratio is less than the first signal-to-noise ratio, the first coding rate is greater than the coding rate during the last voice call, and the first coding rate is the minimum coding rate among N coding rates, by using the first coding rate as the second coding rate, it is possible to avoid selecting the same coding rate as the last voice call when the current signal-to-noise ratio is low, resulting in a higher bit error rate, which affects the voice call quality.
[0070] Step 104: Determine a third coding rate according to the second coding rate in combination with a random access process;
[0071] In some possible implementations of the embodiments of the present application, step 104 may include: initiating a random access process based on the second coding rate; and determining a third coding rate according to an access result of initiating the random access process based on the second coding rate.
[0072] In some possible implementations of the embodiments of the present application, when a random access process is initiated based on the second coding rate, an uplink random message that the electronic device needs to transmit is generated according to the second coding rate, and then the uplink random message is transmitted to initiate the random access process.
[0073] In some possible implementations of the embodiments of the present application, a third coding rate is determined based on an access result of a random access process initiated based on a second coding rate, including: if the random access process based on the second coding rate is successful, using the second coding rate as the third coding rate.
[0074] Exemplarily, assuming that the second coding rate is the kth coding rate among the above-mentioned N coding rates, a random access process is initiated based on the kth coding rate, and when the random access process is successfully initiated based on the kth coding rate, the kth coding rate is used as the third coding rate.
[0075] In some possible implementations of the embodiments of the present application, determining the third coding rate based on the access result of initiating a random access process based on the second coding rate also includes: initiating a random access process based on a fourth coding rate among the N coding rates that is smaller than the second coding rate when the random access process based on the second coding rate is unsuccessful and the second coding rate is not the minimum coding rate among the N coding rates; and using the fourth coding rate as the third coding rate when the random access process based on the fourth coding rate is successful.
[0076] Exemplarily, it is assumed that the second coding rate is the kth coding rate among the above-mentioned N coding rates, where k is not 1; a random access process is initiated based on the kth coding rate, and when the random access process initiated based on the kth coding rate is unsuccessful, a random access process is initiated based on the k-1th coding rate, and when the random access process initiated based on the k-1th coding rate is successful, the k-1th coding rate is used as the third coding rate.
[0077] In some possible implementations of the embodiments of the present application, determining a third coding rate based on the access result of initiating a random access process based on the second coding rate also includes: in a case where random access based on a fourth coding rate is unsuccessful and the fourth coding rate is the minimum coding rate among the N coding rates, using the fourth coding rate as the third coding rate.
[0078] Exemplarily, it is assumed that the second coding rate is the first coding rate among the above-mentioned N coding rates, that is, the second coding rate is the smallest coding rate among the above-mentioned N coding rates; a random access process is initiated based on the first coding rate. When the random access process is initiated based on the first coding rate unsuccessfully, since the first coding rate is already the smallest coding rate among the N coding rates, the random access process can no longer be initiated based on a coding rate smaller than the first coding rate, and the first coding rate is used as the third coding rate.
[0079] The process of determining the third coding rate is as follows: Figure 4 As shown, Figure 4: is a schematic diagram of a process for determining a fourth coding rate provided in an embodiment of the present application. The process for determining the fourth coding rate includes the following steps:
[0080] Step 401: Determine that the second coding rate is the mth coding rate among N coding rates;
[0081] Step 402: Generate a random access uplink message based on the mth coding rate and initiate a random access process;
[0082] Step 403: Determine whether the random access process is successful, if yes, execute step 406, if no, execute step 404;
[0083] Step 404, determine whether m is greater than 1, if yes, execute step 405, if no, execute step 406;
[0084] Step 405: decrement m by 1 and continue to execute step 402;
[0085] Step 406: Determine the mth coding rate as the third coding rate.
[0086] In the embodiment of the present application, by determining the third coding rate in combination with the random access process, it can be ensured that the electronic device can encode the voice call data when the random access is successful, thereby ensuring the normal transmission of the voice call data.
[0087] Step 105: Encode the voice call data using a third coding rate.
[0088] For example, it is assumed that three coding rates are preset, the first coding rate is 0.8 kilobits per second (kbps), the second coding rate is 1.2kbps, and the third coding rate is 2.4kbps. The received signal strength threshold corresponding to 0.8kbps is -35 decibel milliwatts (dBm), and the signal-to-noise ratio threshold is 10 decibels (dB); the received signal strength threshold corresponding to 1.2kbps is -25dBm, and the signal-to-noise ratio threshold is 20dB; the received signal strength threshold corresponding to 2.4kbps is -15dBm, and the signal-to-noise ratio threshold is 30dB.
[0089] Assuming that the current received signal strength is -10dBm and the signal-to-noise ratio is 35dB, 2.4kbps is used as the first coding rate; assuming that the current received signal strength is -20dBm and the signal-to-noise ratio is 25dB, 1.2kbps is used as the first coding rate; assuming that the current received signal strength is -40dBm and the signal-to-noise ratio is 5dB, 0.8kbps is used as the first coding rate.
[0090] Assuming that the first coding rate is 2.4 kbps, the first threshold is 50%, and the bit error rate during the last voice call is 40%, 2.4 kbps is determined as the second coding rate.
[0091] Assuming that the first coding rate is 2.4 kbps, the current signal-to-noise ratio is 35 dB, and the signal-to-noise ratio during the last voice call was 30 dB, 2.4 kbps is determined as the second coding rate.
[0092] Assuming that the first coding rate is 2.4kbps, the first threshold is 50%, the bit error rate during the last voice call was 60%, the current signal-to-noise ratio is 35dB, the signal-to-noise ratio of the last voice call was 40dB, and the coding rate during the last voice call was 2.5kbps, then 2.4kbps is determined as the second coding rate.
[0093] Assuming that the first coding rate is 0.8kbps, the first threshold is 50%, the bit error rate during the last voice call was 60%, the current signal-to-noise ratio is 35dB, the signal-to-noise ratio of the last voice call was 40dB, and the coding rate during the last voice call was 0.5kbps, then 0.8kbps is determined as the second coding rate.
[0094] Assuming that the first coding rate is 2.4kbps, the first threshold is 50%, the bit error rate during the last voice call was 60%, the current signal-to-noise ratio is 35dB, the signal-to-noise ratio of the last voice call was 40dB, and the coding rate during the last voice call was 2kbps, 1.2kbps is determined as the second coding rate.
[0095] Assuming that the second coding rate is 2.4 kbps, based on the success of the 2.4 kbps random access process, 2.4 kbps is determined as the third coding rate.
[0096] Assuming that the second coding rate is 2.4kbps, a random access process is first initiated based on 2.4kbps, and when the random access process based on 2.4kbps is successful, 2.4kbps is determined as the third coding rate; when the random access process based on 2.4kbps is unsuccessful, a random access process is initiated based on 1.2kbps, and when the random access process based on 1.2kbps is successful, 1.2kbps is determined as the third coding rate; when the random access process based on 1.2kbps is unsuccessful, a random access process is initiated based on 0.8kbps, and when the random access process based on 0.8kbps is successful, 0.8kbps is determined as the third coding rate; when the random access process based on 1.2kbps is unsuccessful, a random access process is initiated based on 0.8kbps, and when the random access process based on 0.8kbps is unsuccessful, since 0.8kbps is the minimum coding rate among the pre-set coding rates, 0.8kbps is determined as the third coding rate.
[0097] After the third coding rate is determined, the voice call data is encoded using the third coding rate.
[0098] In an embodiment of the present application, the coding rate required to encode the voice call data is determined by combining the current communication parameters of the electronic device, the communication parameters of the previous voice call and the random access process. The voice call data is encoded using the determined coding rate, which can maximize the clarity of the voice call quality and the continuity of the voice call, and can improve the quality of the voice call.
[0099] The voice call method provided in the embodiment of the present application can be executed by a voice call device. In the embodiment of the present application, a voice call device executing the voice call method is taken as an example to illustrate the voice call device provided in the embodiment of the present application.
[0100] Figure 5 Schematic diagram of the structure of a voice communication device provided in an embodiment of the present application. The voice communication device 500 may include:
[0101] An acquisition module 501 is used to acquire a first communication parameter and a second communication parameter of an electronic device, wherein the first communication parameter is a current communication parameter, and the second communication parameter is a communication parameter during a previous voice call;
[0102] A first determination module 502, configured to determine a first coding rate according to the first communication parameter and communication parameter thresholds corresponding to N coding rates, wherein N is a positive integer;
[0103] A second determining module 503, configured to determine a second coding rate according to a second communication parameter and the first coding rate;
[0104] A third determination module 504 is used to determine a third coding rate according to the second coding rate in combination with a random access process;
[0105] The encoding module 505 is used to encode the voice call data using a third encoding rate.
[0106] In an embodiment of the present application, the coding rate required to encode the voice call data is determined by combining the current communication parameters of the electronic device, the communication parameters of the previous voice call and the random access process. The voice call data is encoded using the determined coding rate, which can maximize the clarity of the voice call quality and the continuity of the voice call, and can improve the quality of the voice call.
[0107] In some possible implementations of the embodiments of the present application, the first determining module includes:
[0108] A comparison submodule, used to compare the first communication parameter with the communication parameter threshold corresponding to each coding rate in the N coding rates to obtain a comparison result;
[0109] The first determination submodule is used to determine a first coding rate according to the comparison result.
[0110] In some possible implementations of the embodiments of the present application, the communication parameters include received signal strength and signal-to-noise ratio, and the first determination submodule is specifically used to:
[0111] When the current received signal strength is greater than or equal to the received signal strength threshold corresponding to the i-th coding rate among the N coding rates and the current signal-to-noise ratio is greater than or equal to the signal-to-noise ratio threshold corresponding to the i-th coding rate, and when the current received signal strength is less than the received signal strength threshold corresponding to the i+1-th coding rate and the current signal-to-noise ratio is less than the signal-to-noise ratio threshold corresponding to the i+1-th coding rate, the i-th coding rate is used as the first coding rate, wherein i is a positive integer less than N, and the i+1-th coding rate is greater than the i-th coding rate;
[0112] When the current received signal strength is greater than or equal to the received signal strength threshold corresponding to the Nth coding rate and the current signal-to-noise ratio is greater than or equal to the signal-to-noise ratio threshold corresponding to the Nth coding rate, use the Nth coding rate as the first coding rate;
[0113] When the current received signal strength is less than the received signal strength threshold corresponding to the first coding rate or the current signal-to-noise ratio is less than the signal-to-noise ratio threshold corresponding to the first coding rate, the first coding rate is used as the first coding rate.
[0114] In an embodiment of the present application, a first coding rate is determined based on a comparison result obtained by comparing the communication parameters of the current call with the communication parameter thresholds corresponding to each of the N coding rates. The first coding rate can be accurately determined, and then the coding rate required to encode the voice call data can be accurately determined. Encoding the voice call data based on the determined coding rate required to encode the voice call data can improve the voice call quality.
[0115] In some possible implementations of the embodiments of the present application, the communication parameters include a signal-to-noise ratio and a bit error rate; and the second determination module is specifically configured to:
[0116] When the second communication parameter and the first coding rate satisfy the first condition, using the first coding rate as the second coding rate;
[0117] When the second communication parameter and the first coding rate do not satisfy the first condition, the coding rate which is smaller than the first coding rate and has the smallest absolute value of the difference with the first coding rate among the N coding rates is used as the second coding rate;
[0118] The first condition includes at least one of the following:
[0119] The first bit error rate during the last voice call is less than the first threshold;
[0120] The current signal-to-noise ratio is greater than the first signal-to-noise ratio during the previous voice call;
[0121] The first bit error rate is greater than or equal to the first threshold, the current signal-to-noise ratio is less than or equal to the first signal-to-noise ratio, and the first coding rate is less than or equal to the coding rate during the previous voice call;
[0122] The first bit error rate is greater than or equal to the first threshold, the current signal-to-noise ratio is less than or equal to the first signal-to-noise ratio, the first coding rate is greater than the coding rate during the last voice call, and the first coding rate is the minimum coding rate among N coding rates.
[0123] In an embodiment of the present application, when the first bit error rate during the last voice call is less than or equal to the first threshold value, by using the first coding rate as the second coding rate, and then determining the coding rate required for encoding the voice call data based on the second coding rate, the voice call data is encoded based on the determined coding rate required for encoding the voice call data, so that it can be ensured that the current voice call data also has a low bit error rate when encoding, and the voice call quality can be improved; when the current signal-to-noise ratio is greater than or equal to the first signal-to-noise ratio during the last voice call, by using the first coding rate as the second coding rate, the voice call data is encoded based on the determined coding rate required for encoding the voice call data. Encoding can ensure that the quality of the current voice call is higher than that of the previous voice call; when the first bit error rate of the previous voice call is greater than the first threshold, the current signal-to-noise ratio is less than the first signal-to-noise ratio, the first coding rate is less than or equal to the coding rate of the previous voice call, or the first bit error rate of the previous voice call is greater than the first threshold, the current signal-to-noise ratio is less than the first signal-to-noise ratio, the first coding rate is greater than the coding rate of the previous voice call and the first coding rate is the minimum coding rate among N coding rates, by using the first coding rate as the second coding rate, it is possible to avoid selecting the same coding rate as the previous voice call when the current signal-to-noise ratio is low, resulting in a higher bit error rate and affecting the voice call quality.
[0124] In some possible implementations of the embodiments of the present application, the third determining module includes:
[0125] An access submodule, configured to initiate a random access process based on a second coding rate;
[0126] The fifth determination submodule is used to determine the third coding rate according to the access result of initiating the random access process based on the second coding rate.
[0127] In some possible implementations of the embodiments of the present application, the fifth determining submodule is specifically configured to:
[0128] If the random access procedure based on the second coding rate is successful, the second coding rate is used as the third coding rate.
[0129] In some possible implementations of the embodiments of the present application, the fifth determining submodule may also be used to:
[0130] In the case that the random access procedure based on the second coding rate is unsuccessful and the second coding rate is the minimum coding rate among the N coding rates, the second coding rate is used as the third coding rate.
[0131] In some possible implementations of the embodiments of the present application, the fifth determining submodule may also be used to:
[0132] In a case where the random access procedure based on the second coding rate is unsuccessful and the second coding rate is not the minimum coding rate among the N coding rates, initiating a random access procedure based on a fourth coding rate among the N coding rates that is smaller than the second coding rate;
[0133] In case the random access procedure based on the fourth coding rate succeeds, the fourth coding rate is used as the third coding rate.
[0134] In some possible implementations of the embodiments of the present application, the fifth determining submodule may also be used to:
[0135] In the case where random access based on the fourth coding rate is unsuccessful and the fourth coding rate is the minimum coding rate among the N coding rates, the fourth coding rate is used as the third coding rate.
[0136] In the embodiment of the present application, by determining the third coding rate in combination with the random access process, it can be ensured that the electronic device can encode the voice call data when the random access is successful, thereby ensuring the normal transmission of the voice call data.
[0137] The voice call device in the embodiment of the present application can be an electronic device or a component in the electronic device, such as an integrated circuit or a chip. The electronic device can be a terminal or other devices other than a terminal. Exemplarily, the electronic device can be a mobile phone, a tablet computer, a laptop computer, a PDA, a vehicle-mounted electronic device, a mobile Internet device (Mobile Internet Device, MID), an augmented reality (augmented reality, AR) / virtual reality (virtual reality, VR) device, a robot, a wearable device, an ultra-mobile personal computer (ultra-mobile personal computer, UMPC), a netbook or a personal digital assistant (personal digital assistant, PDA), etc. It can also be a server, a network attached storage (Network Attached Storage, NAS), a personal computer (personal computer, PC), a television (television, TV), a teller machine or a self-service machine, etc., which is not specifically limited in the embodiment of the present application.
[0138] The voice call device in the embodiment of the present application may be a device having an operating system. The operating system may be an Android operating system, an iOS operating system, or other possible operating systems, which are not specifically limited in the embodiment of the present application.
[0139] The voice communication device provided in the embodiment of the present application can achieve Figures 1 to 4To avoid repetition, the various processes implemented in the voice call method embodiment are not described here.
[0140] Alternatively, if Figure 6 As shown, an embodiment of the present application also provides an electronic device 600, including a processor 601 and a memory 602, wherein the memory 602 stores programs or instructions that can be executed on the processor 601, and when the program or instructions are executed by the processor 601, the various steps of the above-mentioned voice call method embodiment are implemented, and the same technical effect can be achieved. To avoid repetition, they are not described here.
[0141] Figure 7 A schematic diagram of the hardware structure of an electronic device implementing an embodiment of the present application.
[0142] The electronic device 700 includes but is not limited to: a radio frequency unit 701, a network module 702, an audio output unit 703, an input unit 704, a sensor 705, a display unit 706, a user input unit 707, an interface unit 708, a memory 709, and a processor 710.
[0143] Those skilled in the art will appreciate that the electronic device 700 may also include a power source (such as a battery) for supplying power to each component, and the power source may be logically connected to the processor 710 through a power management system, thereby implementing functions such as managing charging, discharging, and power consumption management through the power management system. Figure 7 The electronic device structure shown in the figure does not constitute a limitation on the electronic device. The electronic device may include more or fewer components than shown in the figure, or combine certain components, or arrange the components differently, which will not be described in detail here.
[0144] Among them, the processor 710 is used to: obtain a first communication parameter and a second communication parameter of the electronic device, wherein the first communication parameter is the current communication parameter and the second communication parameter is the communication parameter during the last voice call; determine the first coding rate according to the communication parameter thresholds corresponding to the first communication parameter and N coding rates, wherein N is a positive integer; determine the second coding rate according to the second communication parameter and the first coding rate; determine the third coding rate according to the second coding rate in combination with the random access process; and encode the voice call data using the third coding rate.
[0145] In an embodiment of the present application, the coding rate required to encode the voice call data is determined by combining the current communication parameters of the electronic device and the communication parameters of the previous voice call with a random access process, and the voice call data is encoded using the determined coding rate. The appropriate coding rate is dynamically determined to maximize the clarity of the voice call quality and the continuity of the voice call, thereby improving the quality of the voice call.
[0146] In some possible implementations of the embodiments of the present application, the processor 710 is specifically configured to:
[0147] The first communication parameter is compared with the communication parameter threshold corresponding to each coding rate of the N coding rates to obtain a comparison result; and the first coding rate is determined according to the comparison result.
[0148] In some possible implementations of the embodiments of the present application, the processor 710 is specifically configured to:
[0149] When the current received signal strength is greater than or equal to the received signal strength threshold corresponding to the i-th coding rate among the N coding rates and the current signal-to-noise ratio is greater than or equal to the signal-to-noise ratio threshold corresponding to the i-th coding rate, and when the current received signal strength is less than the received signal strength threshold corresponding to the i+1-th coding rate and the current signal-to-noise ratio is less than the signal-to-noise ratio threshold corresponding to the i+1-th coding rate, the i-th coding rate is used as the first coding rate, wherein i is a positive integer less than N, and the i+1-th coding rate is greater than the i-th coding rate;
[0150] When the current received signal strength is greater than or equal to the received signal strength threshold corresponding to the Nth coding rate and the current signal-to-noise ratio is greater than or equal to the signal-to-noise ratio threshold corresponding to the Nth coding rate, use the Nth coding rate as the first coding rate;
[0151] When the current received signal strength is less than the received signal strength threshold corresponding to the first coding rate or the current signal-to-noise ratio is less than the signal-to-noise ratio threshold corresponding to the first coding rate, the first coding rate is used as the first coding rate.
[0152] In an embodiment of the present application, a first coding rate is determined based on a comparison result obtained by comparing the communication parameters of the current call with the communication parameter thresholds corresponding to each of the N coding rates. The first coding rate can be accurately determined, and then the coding rate required to encode the voice call data can be accurately determined. Encoding the voice call data based on the determined coding rate required to encode the voice call data can improve the voice call quality.
[0153] In some possible implementations of the embodiments of the present application, the processor 710 is specifically configured to:
[0154] When the second communication parameter and the first coding rate satisfy the first condition, using the first coding rate as the second coding rate;
[0155] When the second communication parameter and the first coding rate do not satisfy the first condition, a coding rate among the N coding rates that is less than the first coding rate and has the smallest absolute value of the difference with the first coding rate is used as the second coding rate;
[0156] The first condition includes at least one of the following:
[0157] The first bit error rate during the last voice call is less than the first threshold;
[0158] The current signal-to-noise ratio is greater than the first signal-to-noise ratio during the previous voice call;
[0159] The first bit error rate is greater than or equal to the first threshold, the current signal-to-noise ratio is less than or equal to the first signal-to-noise ratio, and the first coding rate is less than or equal to the coding rate during the previous voice call;
[0160] The first bit error rate is greater than or equal to the first threshold, the current signal-to-noise ratio is less than or equal to the first signal-to-noise ratio, the first coding rate is greater than the coding rate during the last voice call, and the first coding rate is the minimum coding rate among N coding rates.
[0161] In an embodiment of the present application, when the first bit error rate during the last voice call is less than or equal to the first threshold value, by using the first coding rate as the second coding rate, and then determining the coding rate required for encoding the voice call data based on the second coding rate, the voice call data is encoded based on the determined coding rate required for encoding the voice call data, so that it can be ensured that the current voice call data also has a low bit error rate when encoding, and the voice call quality can be improved; when the current signal-to-noise ratio is greater than or equal to the first signal-to-noise ratio during the last voice call, by using the first coding rate as the second coding rate, the voice call data is encoded based on the determined coding rate required for encoding the voice call data. Encoding can ensure that the quality of the current voice call is higher than that of the previous voice call; when the first bit error rate of the previous voice call is greater than the first threshold, the current signal-to-noise ratio is less than the first signal-to-noise ratio, the first coding rate is less than or equal to the coding rate of the previous voice call, or the first bit error rate of the previous voice call is greater than the first threshold, the current signal-to-noise ratio is less than the first signal-to-noise ratio, the first coding rate is greater than the coding rate of the previous voice call and the first coding rate is the minimum coding rate among N coding rates, by using the first coding rate as the second coding rate, it is possible to avoid selecting the same coding rate as the previous voice call when the current signal-to-noise ratio is low, resulting in a higher bit error rate and affecting the voice call quality.
[0162] In some possible implementations of the embodiments of the present application, the processor 710 is specifically configured to:
[0163] Initiating a random access procedure based on a second coding rate;
[0164] A third coding rate is determined according to an access result of initiating a random access process based on the second coding rate.
[0165] In some possible implementations of the embodiments of the present application, the processor 710 is specifically configured to:
[0166] If the random access procedure based on the second coding rate is successful, the second coding rate is used as the third coding rate.
[0167] In some possible implementations of the embodiments of the present application, the processor 710 is specifically configured to:
[0168] In the case that the random access procedure based on the second coding rate is unsuccessful and the second coding rate is the minimum coding rate among the N coding rates, the second coding rate is used as the third coding rate.
[0169] In some possible implementations of the embodiments of the present application, the processor 710 is specifically configured to:
[0170] In a case where the random access procedure based on the second coding rate is unsuccessful and the second coding rate is not the minimum coding rate among the N coding rates, initiating a random access procedure based on a fourth coding rate among the N coding rates that is smaller than the second coding rate;
[0171] In case the random access procedure based on the fourth coding rate succeeds, the fourth coding rate is used as the third coding rate.
[0172] In some possible implementations of the embodiments of the present application, the processor 710 is specifically configured to:
[0173] In the case where random access based on the fourth coding rate is unsuccessful and the fourth coding rate is the minimum coding rate among the N coding rates, the fourth coding rate is used as the third coding rate.
[0174] In the embodiment of the present application, by determining the third coding rate in combination with the random access process, it can be ensured that the electronic device can encode the voice call data when the random access is successful, thereby ensuring the normal transmission of the voice call data.
[0175] It should be understood that in the embodiment of the present application, the input unit 704 may include a graphics processor (Graphics Processing Unit, GPU) 7041 and a microphone 7042, and the graphics processor 7041 processes the image data of the static picture or video obtained by the image capture device (such as a camera) in the video capture mode or the image capture mode. The display unit 706 may include a display panel 7061, and the display panel 7061 may be configured in the form of a liquid crystal display, an organic light emitting diode, etc. The user input unit 707 includes a touch panel 7071 and at least one of other input devices 7072. The touch panel 7071 is also called a touch screen. The touch panel 7071 may include two parts: a touch detection device and a touch controller. Other input devices 7072 may include, but are not limited to, a physical keyboard, function keys (such as volume control keys, switch keys, etc.), a trackball, a mouse, and a joystick, which will not be repeated here.
[0176] The memory 709 can be used to store software programs and various data. The memory 709 may mainly include a first storage area for storing programs or instructions and a second storage area for storing data, wherein the first storage area may store an operating system, an application program or instructions required for at least one function (such as a sound playback function, an image playback function, etc.), etc. In addition, the memory 709 may include a volatile memory or a non-volatile memory, or the memory 709 may include both volatile and non-volatile memories. Among them, the non-volatile memory may 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), or a flash memory. The volatile memory may be a random access memory (RAM), a static random access memory (SRAM), a dynamic random access memory (DRAM), a synchronous dynamic random access memory (SDRAM), a double data rate synchronous dynamic random access memory (DDRSDRAM), an enhanced synchronous dynamic random access memory (ESDRAM), a synchronous link dynamic random access memory (SLDRAM) and a direct memory bus random access memory (DRRAM). The memory 709 in the embodiment of the present application includes but is not limited to these and any other suitable types of memory.
[0177] The processor 710 may include one or more processing units; optionally, the processor 710 integrates an application processor and a modem processor, wherein the application processor mainly processes operations related to an operating system, a user interface, and application programs, and the modem processor mainly processes wireless communication signals, such as a baseband processor. It is understandable that the modem processor may not be integrated into the processor 710.
[0178] The embodiment of the present application also provides a readable storage medium, on which a program or instruction is stored. When the program or instruction is executed by the processor, the various processes of the voice call method embodiment provided in the embodiment of the present application are implemented, and the same technical effect can be achieved. To avoid repetition, it will not be repeated here.
[0179] The processor is a processor in the electronic device described in the above embodiment. The readable storage medium includes a computer-readable storage medium, and examples of computer-readable storage media include non-transitory computer-readable media, such as a computer read-only memory ROM, a random access memory RAM, a magnetic disk or an optical disk.
[0180] An embodiment of the present application also provides a chip, which includes a processor and a communication interface, wherein the communication interface is coupled to the processor, and the processor is used to run programs or instructions to implement the various processes of the voice call method embodiment provided in the embodiment of the present application, and can achieve the same technical effect. To avoid repetition, it will not be repeated here.
[0181] It should be understood that the chip mentioned in the embodiments of the present application can also be called a system-level chip, a system chip, a chip system or a system-on-chip chip, etc.
[0182] The embodiment of the present application also provides a computer program product, which is stored in a storage medium. The program product is executed by at least one processor to implement the various processes of the voice call method embodiment provided in the embodiment of the present application, and can achieve the same technical effect. To avoid repetition, it will not be repeated here.
[0183] It should be noted that, in this article, the terms "comprise", "include" or any other variant thereof are intended to cover non-exclusive inclusion, so that the process, method, article or device including a series of elements includes not only those elements, but also includes other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the sentence "comprise one..." do not exclude the presence of other identical elements in the process, method, article or device including the element. In addition, it should be pointed out that the scope of the methods and devices in the embodiments of the present application is not limited to performing functions in the order shown or discussed, and may also include performing functions in a substantially simultaneous manner or in reverse order according to the functions involved, for example, the described method may be performed in an order different from that described, and various steps may also be added, omitted, or combined. In addition, the features described with reference to certain examples may be combined in other examples.
[0184] Through the description of the above implementation methods, those skilled in the art can clearly understand that the above-mentioned embodiment methods can be implemented by means of software plus a necessary general hardware platform, and of course by hardware, but in many cases the former is a better implementation method. Based on such an understanding, the technical solution of the present application, or the part that contributes to the prior art, can be embodied in the form of a computer software product, which is stored in a storage medium (such as ROM / RAM, a disk, or an optical disk), and includes a number of instructions for a terminal (which can be a mobile phone, a computer, a server, or a network device, etc.) to execute the methods described in each embodiment of the present application.
[0185] The embodiments of the present application are described above in conjunction with the accompanying drawings, but the present application is not limited to the above-mentioned specific implementation methods. The above-mentioned specific implementation methods are merely illustrative and not restrictive. Under the guidance of the present application, ordinary technicians in this field can also make many forms without departing from the purpose of the present application and the scope of protection of the claims, all of which are within the protection of the present application.
Claims
1. A voice call method, characterized in that: The method comprises: Acquire a first communication parameter and a second communication parameter of the electronic device, wherein the first communication parameter is a current communication parameter, and the second communication parameter is a communication parameter during a previous voice call; Determine a first coding rate according to the first communication parameter and communication parameter thresholds corresponding to N coding rates, where N is a positive integer; Determining a second coding rate according to the second communication parameter and the first coding rate; Determine a third coding rate according to the second coding rate in combination with a random access process; The voice call data is encoded using the third encoding rate.
2. The method according to claim 1, characterized in that The determining the first coding rate according to the first communication parameter and the communication parameter thresholds respectively corresponding to the N coding rates includes: Compare the first communication parameter with the communication parameter threshold corresponding to each coding rate in the N coding rates to obtain a comparison result; The first coding rate is determined according to the comparison result.
3. The method according to claim 2, characterized in that The communication parameters include received signal strength and signal-to-noise ratio; The determining the first coding rate according to the comparison result includes: In a case where the current received signal strength is greater than or equal to the received signal strength threshold corresponding to the ith coding rate among the N coding rates and the current signal-to-noise ratio is greater than or equal to the signal-to-noise ratio threshold corresponding to the ith coding rate, and the current received signal strength is less than the received signal strength threshold corresponding to the i+1th coding rate and the current signal-to-noise ratio is less than the signal-to-noise ratio threshold corresponding to the i+1th coding rate, taking the ith coding rate as the first coding rate, wherein i is a positive integer less than N, and the i+1th coding rate is greater than the ith coding rate; When the current received signal strength is greater than or equal to the received signal strength threshold corresponding to the Nth coding rate and the current signal-to-noise ratio is greater than or equal to the signal-to-noise ratio threshold corresponding to the Nth coding rate, use the Nth coding rate as the first coding rate; When the current received signal strength is less than a received signal strength threshold corresponding to the first coding rate or the current signal-to-noise ratio is less than a signal-to-noise ratio threshold corresponding to the first coding rate, the first coding rate is used as the first coding rate.
4. The method according to claim 1, characterized in that: The communication parameters include signal-to-noise ratio and bit error rate; The determining the second coding rate according to the second communication parameter and the first coding rate includes: When the second communication parameter and the first coding rate satisfy a first condition, using the first coding rate as the second coding rate; When the second communication parameter and the first coding rate do not satisfy the first condition, taking a coding rate among the N coding rates that is less than the first coding rate and has the smallest absolute value of the difference with the first coding rate as the second coding rate; The first condition includes at least one of the following: The first bit error rate during the last voice call is less than the first threshold; The current signal-to-noise ratio is greater than the first signal-to-noise ratio during the previous voice call; The first bit error rate is greater than or equal to the first threshold, the current signal-to-noise ratio is less than or equal to the first signal-to-noise ratio, and the first coding rate is less than or equal to the coding rate during the last voice call; The first bit error rate is greater than or equal to the first threshold, the current signal-to-noise ratio is less than or equal to the first signal-to-noise ratio, the first coding rate is greater than the coding rate during the last voice call, and the first coding rate is the minimum coding rate among the N coding rates.
5. The method according to claim 1, characterized in that The determining, according to the second coding rate and in combination with a random access process, a third coding rate includes: Initiate a random access procedure based on the second coding rate; The third coding rate is determined according to an access result of initiating a random access process based on the second coding rate.
6. The method according to claim 5, characterized in that The determining the third coding rate according to an access result of initiating a random access process based on the second coding rate includes: In a case where a random access procedure based on the second coding rate is successful, the second coding rate is used as the third coding rate.
7. The method according to claim 5, characterized in that The determining the third coding rate according to an access result of initiating a random access process based on the second coding rate includes: In a case where a random access procedure based on the second coding rate is unsuccessful and the second coding rate is the minimum coding rate among the N coding rates, the second coding rate is used as the third coding rate.
8. The method according to claim 5, characterized in that The determining the third coding rate according to an access result of initiating a random access process based on the second coding rate includes: In a case where the random access procedure based on the second coding rate is unsuccessful and the second coding rate is not the minimum coding rate among the N coding rates, initiating a random access procedure based on a fourth coding rate among the N coding rates that is smaller than the second coding rate; In a case where a random access procedure based on the fourth coding rate is successful, the fourth coding rate is used as the third coding rate.
9. The method according to claim 8, characterized in that The determining the third coding rate according to the access result of initiating the random access process based on the second coding rate further includes: In a case where random access based on the fourth coding rate is unsuccessful and the fourth coding rate is the minimum coding rate among the N coding rates, the fourth coding rate is used as the third coding rate.
10. A voice communication device, characterized in that: The device comprises: An acquisition module, configured to acquire a first communication parameter and a second communication parameter of the electronic device, wherein the first communication parameter is a current communication parameter, and the second communication parameter is a communication parameter during a previous voice call; A first determining module, configured to determine a first coding rate according to the first communication parameter and communication parameter thresholds corresponding to N coding rates, respectively, where N is a positive integer; A second determining module, configured to determine a second coding rate according to the second communication parameter and the first coding rate; A third determining module, configured to determine a third coding rate according to the second coding rate in combination with a random access process; The encoding module is used to encode the voice call data using the third encoding rate.
11. An electronic device, characterized in that: The electronic device includes a processor and a memory, wherein the memory stores a program or instruction that can be run on the processor, and when the program or instruction is executed by the processor, the steps of the voice call method according to any one of claims 1 to 9 are implemented.
12. A readable storage medium, characterized in that: The readable storage medium stores a program or instruction, and when the program or instruction is executed by the processor, the steps of the voice call method according to any one of claims 1 to 9 are implemented.