Method and apparatus for improving voice service quality
By introducing the PDCCH scheduling cache queue in the network side device of the 4/5G network, the decoding rate of the voice compilation is adjusted according to the length of the queue, and the resource congestion problem caused by insufficient pdcch resource scheduling has been solved, and the quality of voice quality is improved.
Patent Information
- Application Number
- PCT/CN2023/143025
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-07-24
- Filing Date
- 2023-12-29
- Publication Date
- 2025-01-30
AI Technical Summary
The prior art cannot effectively improve voice quality by adjusting the encoding and decoding rate of the EVS encoder in 4/5G networks, mainly due to insufficient PDCCH resource scheduling, which leads to resource congestion.
By introducing the PDCCH scheduling cache queue in the network -side device, the decoding rate of the voice compilation is adjusted according to the length of the queue to alleviate the problem of resource congestion. Specific methods include in response to the queue length of the receiving RTP packet to determine the PDCCH scheduling cache queue, determine the target voice compilation rate level based on the queue length, encode the data packet, and add the encoded voice code to the queue, and toward the queue. User device sending.
By adjusting the decoding rate of the voice compilation, the problem of resource congestion caused by insufficient PDCCH resource scheduling in the 4/5G network, to achieve the best perception of voice code decoding rate and voice definition, which improves the quality of voice.
Smart Images

Figure CN2023143025_30012025_PF_FP_ABST
Abstract
Description
Method and device for improving voice service quality
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] This disclosure claims priority to Chinese Patent Application No. 202310913023.0 filed in China on July 24, 2023, the entire contents of which are incorporated herein by reference. Technical Field
[0003] The present disclosure relates to the field of communication technologies, and in particular to a method, device, and storage medium for improving voice service quality. Background Art
[0004] The Enhanced Voice Services (EVS) encoder boasts higher coding efficiency and improved interference immunity, making it widely used. The EVS encoder also features adaptive codec rate adjustment, allowing it to adjust the codec rate based on specific conditions to improve voice quality.
[0005] In the prior art, the encoding and decoding rate of the EVS encoder can be adjusted by judging the packet loss of the Real-time Transport Protocol (RTP) or the Signal to Interference plus Noise Ratio (SINR) of the wireless channel quality. However, the speech encoding and decoding rate of the EVS encoder is generally lower than 24.4kbps, which is less than 0.1% of the bandwidth capacity of the fourth generation / fifth generation (4 / 5G) cell. Therefore, adjusting the speech encoding and decoding rate in the 4 / 5G network based on the above judgment conditions cannot improve the voice quality in the 4 / 5G network.
[0006] Summary of the Invention
[0007] To overcome the problems existing in the related art, the present disclosure provides a method, apparatus, network-side device, and computer-readable storage medium for improving voice service quality.
[0008] According to a first aspect of an embodiment of the present disclosure, a method for improving voice service quality is provided, which is applied to a network-side device and includes:
[0009] In response to receiving the first RTP data packet, determining a queue length of the PDCCH scheduling buffer queue, wherein the PDCCH scheduling buffer queue includes data packets requiring allocation of PDSCH resources;
[0010] Determining a target speech codec rate level based on the queue length;
[0011] Encoding the first RTP data packet based on the target voice codec rate level to obtain a corresponding first voice code stream;
[0012] The first voice code stream is added to the PDCCH scheduling buffer queue, and the first voice code stream is sent to the user equipment UE based on the PDSCH channel allocation indication.
[0013] According to a second aspect of an embodiment of the present disclosure, there is provided an apparatus for improving voice service quality, which is applied to a network-side device. The apparatus includes an FPGA hardware controller module and a DSP voice codec module. The FPGA hardware controller module includes a scheduling module and a voice transmitter module. The scheduling module includes a cache scheduling module and a voice rate adjustment module. The DSP voice codec module includes a codec module, wherein:
[0014] The cache scheduling module is configured to determine a queue length of the PDCCH scheduling cache queue in response to receiving a first RTP data packet, wherein the PDCCH scheduling cache queue includes data packets that require allocation of PDSCH resources;
[0015] The speech rate adjustment module is used to determine a target speech codec rate level based on the queue length;
[0016] The codec module is configured to encode the first RTP data packet based on the target voice codec rate level to obtain a corresponding first voice code stream;
[0017] The voice transmitter module is configured to add the first voice code stream to the PDCCH scheduling buffer queue and send the first voice code stream to a user equipment UE based on a PDSCH channel allocation indication.
[0018] According to a third aspect of an embodiment of the present disclosure, a network-side device is provided, including:
[0019] processor;
[0020] a memory for storing processor-executable instructions;
[0021] The processor is configured to implement the method described in the first aspect above.
[0022] According to a fourth aspect of an embodiment of the present disclosure, a computer-readable storage medium is provided, wherein the computer storage medium stores computer-executable instructions; after the computer-executable instructions are executed by a processor, the method described in the first aspect can be implemented.
[0023] The technical solutions provided by the embodiments of the present disclosure may have the following beneficial effects:
[0024] The present disclosure proposes a method for improving voice service quality, the method comprising: in response to receiving a first RTP data packet, determining a queue length of a PDCCH scheduling cache queue, wherein the PDCCH scheduling cache queue includes data packets to which PDSCH resources need to be allocated, determining a target voice codec rate level based on the queue length, encoding the first RTP data packet based on the target voice codec rate level to obtain a corresponding first voice code stream, adding the first voice code to the PDCCH scheduling cache queue, and sending the first voice code stream to a user equipment (UE) based on a PDSCH channel allocation indication. Thus, the present disclosure alleviates the resource congestion problem caused by insufficient PDCCH resource scheduling in 4 / 5G networks by introducing a PDCCH scheduling cache queue and adjusting the voice codec rate according to the queue length of the PDCCH scheduling cache queue, thereby achieving optimal voice codec rate and voice clarity perception, and improving voice quality.
[0025] It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the disclosure. BRIEF DESCRIPTION OF THE DRAWINGS
[0026] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and, together with the description, serve to explain the principles of the present disclosure.
[0027] FIG1a is a flow chart illustrating a method for improving voice service quality according to some embodiments of the present disclosure;
[0028] FIG1b is a schematic diagram showing a PDCCH channel scheduling for sending voice data packets according to some embodiments of the present disclosure;
[0029] FIG2 is a flow chart illustrating a method for improving voice service quality according to some embodiments of the present disclosure;
[0030] FIG3 is a flow chart illustrating a method for improving voice service quality according to some embodiments of the present disclosure;
[0031] FIG4a is a flow chart illustrating a method for improving voice service quality according to some embodiments of the present disclosure;
[0032] FIG4 b is a schematic diagram illustrating a base station transmitting a TB block to a UE through a HARQ process according to some embodiments of the present disclosure;
[0033] FIG4c is a schematic diagram illustrating a signaling interaction process for jitter elimination of voice data packets according to some embodiments of the present disclosure;
[0034] FIG4 d is a schematic diagram illustrating adjusting resources used by a UE based on changes in packet loss rate over time according to some embodiments of the present disclosure;
[0035] FIG5 is a flow chart illustrating a method for improving voice service quality according to some embodiments of the present disclosure;
[0036] FIG6 is a schematic structural diagram of an apparatus for improving voice service quality according to some embodiments of the present disclosure;
[0037] FIG7 is a schematic structural diagram illustrating a method for improving voice service quality by implementing a device for improving voice service quality according to some embodiments of the present disclosure;
[0038] FIG8 is a schematic structural diagram illustrating a method for improving voice service quality implemented by an apparatus for improving voice service quality according to some embodiments of the present disclosure;
[0039] FIG9 is a block diagram illustrating a network-side device suitable for executing a method for improving voice service quality according to some embodiments of the present disclosure. DETAILED DESCRIPTION
[0040] Some embodiments of the present disclosure will be described in detail herein, examples of which are shown in the accompanying drawings. When the following description refers to the drawings, unless otherwise indicated, the same numbers in different drawings represent the same or similar elements. Various changes, modifications and equivalents of the methods, devices and / or systems described herein will become apparent after understanding the present disclosure. For example, the order of operations described herein is merely an example and is not limited to those orders set forth herein, but may be changed as becomes apparent after understanding the present disclosure, except for operations that must be performed in a specific order. In addition, for the sake of clarity and brevity, descriptions of features known in the art may be omitted.
[0041] The embodiments described in the following examples of the present disclosure do not represent all embodiments consistent with the present disclosure. Instead, they are merely examples of devices and methods consistent with some aspects of the present disclosure as detailed in the appended claims.
[0042] Among them, in the embodiment of the present disclosure, the voice encoding and decoding rate of the above-mentioned EVS encoder is generally lower than 24.4kbps, which is less than 0.1% of the bandwidth capacity of the 4 / 5G cell. It can be seen that the bearer bandwidth has little impact on the transmission of voice data in the 4 / 5G network. The main impact on voice data transmission in the 4 / 5G network is insufficient resource scheduling, that is, the inability to schedule the voice data to be transmitted in a timely manner, resulting in resource congestion and affecting voice quality. The present disclosure proposes a method for improving voice quality to effectively alleviate the impact of the above-mentioned resource scheduling on voice data transmission in the 4 / 5G network.
[0043] FIG1a is a flow chart illustrating a method for improving voice service quality according to some embodiments of the present disclosure. As shown in FIG1a , the method may include the following steps:
[0044] In step 101a, in response to receiving the first RTP data packet, the queue length of the physical downlink control channel (PDCCH) scheduling buffer queue is determined.
[0045] It should be noted that the executor of the above-mentioned method for improving voice service quality is a device for improving voice service quality. The device for improving voice service quality can be implemented by software and / or hardware. The device for improving voice service quality in this embodiment can be configured in a network side device.
[0046] In this example embodiment, the network side device may be a base station or other device, and this embodiment does not limit the network side device.
[0047] In an embodiment of the present disclosure, before determining the queue length of the PDCCH scheduling cache queue, a PDCCH scheduling cache queue can be constructed in a network side device, and data packets that need to be allocated physical downlink shared channel (PDSCH) resources can be added to the PDCCH scheduling cache queue to avoid resource congestion and data packet discard caused by insufficient PDCCH scheduling resources.
[0048] Specifically, in an embodiment of the present disclosure, FIG1b is a schematic diagram of a PDCCH channel scheduling method for sending voice data packets proposed in an embodiment of the present disclosure. As shown in FIG1b , receiving an RTP data packet can include segmenting the received RTP data packet through the Packet Data Convergence Protocol (PDCP) to obtain data segments P1, P2, ..., PK, and then packaging the multiple segmented data packets through the Media Access Control (MAC) layer to obtain data packets N1, N2, ..., NK. N1, N2, ..., NK are then added to a PDCCH scheduling buffer queue. Then, a network-side device performs PDSCH channel allocation based on the queue length of the current PDCCH scheduling buffer queue to enable user equipment (UE) to schedule and occupy radio resources.
[0049] In addition, in response to receiving the first RTP data packet, the queue length of the current PDCCH scheduling cache queue can be determined based on the radio resource control (RRC), so that the network side device can determine the current need for PDCCH scheduling resources based on the queue length of the PDCCH scheduling cache queue, so as to subsequently adjust the voice codec rate.
[0050] In step 102a, a target speech codec rate level is determined based on the queue length.
[0051] Among them, in the embodiment of the present disclosure, after determining the queue length of the PDCCH scheduling cache queue through the above steps, the network side device can determine the target voice coding rate level based on the queue length. Among them, when the queue length of the PDCCH scheduling cache queue is relatively long, it means that many data packets need PDCCH scheduling resources at this time, and the voice coding and decoding rate needs to be reduced to maintain voice continuity; when the queue length of the PDCCH scheduling cache queue is relatively short, it means that there are fewer data packets that need PDCCH scheduling resources at this time, and the voice coding and decoding rate can be increased at this time to ensure voice quality clarity.
[0052] Specifically, in an embodiment of the present disclosure, the method for determining a target speech codec rate level based on a queue length may include the following steps:
[0053] In step 1021a, it is determined whether the queue length exceeds a first threshold;
[0054] In the embodiment of the present disclosure, when transmitting voice data packets, the end-to-end delay of the voice data packets is t RTP The wireless TTI duration of the network side device should not exceed 100ms.R The transmission time of the voice data packet should be no less than 1ms. That is, the first threshold does not exceed 100.
[0055] In step 1022a, if the queue length exceeds the first threshold, the current voice codec rate level is lowered by one level to determine the target voice codec rate level;
[0056] In an embodiment of the present disclosure, if the queue length exceeds the first threshold, indicating that more PDCCH scheduling resources are required at this time, the current voice codec rate level needs to be lowered by one level, and the lowered level is determined as the target voice codec rate level, so as to avoid excessive voice data packet transmission delay due to the scheduling cache queue being too long, thereby affecting voice continuity.
[0057] In step 1023a, if the queue length is the second threshold, the current speech codec rate level is increased by one level to be determined as the target speech codec rate level.
[0058] In the embodiment of the present disclosure, the second threshold can be set as needed. For example, the second threshold is 0.
[0059] Among them, in the embodiment of the present disclosure, if the above-mentioned queue length is the second threshold, it means that PDCCH scheduling resources are not required at this time, then the current voice codec rate level needs to be increased by one level, and the increased level is determined as the target voice codec rate level, so as to ensure the clarity of voice quality.
[0060] Furthermore, in an embodiment of the present disclosure, if the queue length is not the second threshold and is less than or equal to the first threshold, it means that the current PDCCH scheduling resources can meet the PDCCH scheduling resources required for the data packets in the PDCCH scheduling cache queue. Based on this, the current voice codec rate level does not need to be adjusted, that is, the target voice codec rate level is the current voice codec rate level.
[0061] In step 103a, the first RTP data packet is encoded based on the target voice codec rate level to obtain a corresponding first voice code stream.
[0062] Among them, in the embodiment of the present disclosure, after obtaining the target voice codec rate level through the above steps, the above-mentioned first RTP data packet can be encoded based on the target voice codec rate level, so that the first RTP data packet is converted into a digital signal to obtain the corresponding first voice code stream.
[0063] In step 104a, the first voice code stream is added to the PDCCH scheduling buffer queue, and the first voice code stream is sent to the UE based on the PDSCH channel allocation indication.
[0064] Among them, in the embodiment of the present disclosure, after obtaining the first voice code stream corresponding to the first RTP data packet through the above steps, the first voice code stream can be added to the above-mentioned PDCCH scheduling cache queue, and the PDSCH channel allocation indication can be determined according to the current PDSCH channel resources, and then the first voice code stream can be sent to the corresponding UE based on the PDSCH channel allocation indication.
[0065] Furthermore, in the disclosed embodiments, before transmitting the first voice code stream to the user equipment (UE) based on the PDSCH channel allocation indication, a silence detection may be performed on the first RTP data packet to obtain a silence detection result. In response to the silence detection result of the first RTP data packet being non-silence, the first voice code stream is transmitted to the UE based on the PDSCH channel allocation indication. This will be described in detail in subsequent embodiments.
[0066] Furthermore, in the embodiment of the present disclosure, after the allocation of the current PDCCH scheduling cache queue is completed through the above steps, the PDCCH scheduling cache queue needs to be processed again after a preset delay period, wherein the preset delay period needs to be greater than 4×TTI to avoid the situation where the RTP data packet process after the voice codec rate adjustment has not arrived yet, and a new round of voice codec rate adjustment is performed, thereby avoiding a rapid decrease or increase in the voice codec rate, affecting the voice transmission quality.
[0067] It should be noted that in the embodiments of the present disclosure, by introducing a PDCCH scheduling cache queue in the network side device and adjusting the voice codec rate according to the queue length, the resource congestion problem caused by insufficient PDCCH resource scheduling in the 4 / 5G network can be alleviated, so that the voice codec rate and voice clarity perception can be optimized under specific load conditions, thereby improving the voice quality. Among them, the above-mentioned specific load conditions are excluding extreme load conditions. The extreme load conditions may include that the scheduling resources required by the current data packet are far greater than the schedulable resources or that the resource scheduling required by the current data packet is far less than the schedulable resources. That is, under the above-mentioned extreme load conditions, the current resource scheduling capacity has been exceeded or there is no need to adjust the voice codec rate, so that the voice codec rate cannot be adjusted by the above-mentioned method or there is no need to adjust the voice codec rate by the above-mentioned method.
[0068] Based on the above description, Figure 2 is a flow chart of a method for improving voice quality in an embodiment of the present disclosure, which includes: receiving a first RTP data packet; determining the queue length of the PDCCH scheduling cache queue; determining whether the queue length exceeds a first threshold; if the queue length exceeds the first threshold, lowering the current voice codec rate level by one level to determine it as the target voice codec rate level; if the queue length is 0, raising the current voice codec rate level by one level to determine it as the target voice codec rate level; otherwise, determining the current voice codec rate as the target voice codec rate level; encoding the first RTP data packet based on the target voice codec rate level to obtain a corresponding first voice code stream; adding the first voice code stream to the PDCCH scheduling cache queue, and sending the first voice code stream to the UE based on the PDSCH channel allocation indication.
[0069] In one or more embodiments of the present disclosure, in response to receiving a first RTP data packet, the queue length of a PDCCH scheduling cache queue is determined, wherein the PDCCH scheduling cache queue includes data packets that need to be allocated PDSCH resources, a target voice codec rate level is determined based on the queue length, the first RTP data packet is encoded based on the target voice codec rate level to obtain a corresponding first voice code stream, the first voice code is added to the PDCCH scheduling cache queue, and the first voice code stream is sent to the user equipment UE based on the PDSCH channel allocation indication. Therefore, the present disclosure alleviates the resource congestion problem caused by insufficient PDCCH resource scheduling in 4 / 5G networks by introducing a PDCCH scheduling cache queue and adjusting the voice codec rate according to the queue length of the PDCCH scheduling cache queue, thereby achieving the optimal voice codec rate and voice clarity perception, thereby improving voice quality.
[0070] FIG3 is a flow chart showing a method for improving voice service quality according to some embodiments of the present disclosure. As shown in FIG3 , the method may include the following steps:
[0071] In step 301, in response to receiving a first RTP data packet, a queue length of a PDCCH scheduling buffer queue is determined, wherein the PDCCH scheduling buffer queue includes data packets to which PDSCH resources need to be allocated.
[0072] In step 302, a target speech codec rate level is determined based on the queue length.
[0073] In step 303, the first RTP data packet is encoded based on the target voice codec rate level to obtain a corresponding first voice code stream.
[0074] In step 304, the first voice code stream is added to the PDCCH scheduling buffer queue.
[0075] For the relevant introduction of steps 301 to 304 , please refer to the detailed introduction in the above embodiment, and the embodiment of the present disclosure will not be described in detail here.
[0076] In step 305, silence detection is performed on the first RTP data packet to obtain a silence detection result.
[0077] Among them, in the embodiment of the present disclosure, in the EVS codec, when the hf-only field used to indicate the RTP packetization mode is 0 or not set, it means that the current EVS codec is Compact mode or Header-Full mode. Among them, the primary 2.8bps in Compact mode and the AMR-IO SID 1.75bps (silent frame) audio code stream in Header-full mode are completely consistent. At this time, the receiving end cannot distinguish whether it is a primary 2.8bps voice data packet in Compact mode or an AMR-IO SID 1.75bps silent frame in Header-full mode, which may cause EVS decoding errors. Based on this, in the embodiment of the present disclosure, before sending the voice data packet, a silence detection is performed on the voice data packet to obtain a silence detection result, and whether to send the voice data packet is determined based on the silence detection result, thereby avoiding the above-mentioned confusion of the encoded data in Compact mode and Header-full mode.
[0078] Specifically, in an embodiment of the present disclosure, a method for performing silence detection on a first RTP data packet to obtain a silence detection result may include the following steps:
[0079] In step 3051, it is determined whether the first RTP data packet is silent;
[0080] In step 3052, if the first RTP data packet is silent, the silence detection result is obtained as silent;
[0081] In step 3053, if the first RTP data packet is not silent, the silence detection result is obtained as non-silence.
[0082] In step 306, in response to the silence detection result of the first RTP data packet being non-silence, a first voice code stream is sent to the user equipment UE based on the PDSCH channel allocation indication.
[0083] In the embodiment of the present disclosure, when the silence detection result of the first RTP data packet is non-silence, it indicates that the first RTP data packet is not silent. At this time, the first voice code stream can be sent to the user equipment UE based on the PDSCH channel allocation indication.
[0084] Furthermore, in the disclosed embodiment, when the silence detection result of the first RTP data packet is silence, the first RTP data packet can be directly discarded and not sent. By discarding the voice data packet with the silence detection result being silence, invalid transmission is reduced, and the invalid occupation of the wireless channel is reduced.
[0085] In one or more embodiments of the present disclosure, in response to receiving a first RTP data packet, the queue length of a PDCCH scheduling cache queue is determined, wherein the PDCCH scheduling cache queue includes data packets that need to be allocated PDSCH resources, a target voice codec rate level is determined based on the queue length, the first RTP data packet is encoded based on the target voice codec rate level to obtain a corresponding first voice code stream, the first voice code is added to the PDCCH scheduling cache queue, and the first voice code stream is sent to the user equipment UE based on the PDSCH channel allocation indication. Therefore, the present disclosure alleviates the resource congestion problem caused by insufficient PDCCH resource scheduling in 4 / 5G networks by introducing a PDCCH scheduling cache queue and adjusting the voice codec rate according to the queue length of the PDCCH scheduling cache queue, thereby achieving the optimal voice codec rate and voice clarity perception, thereby improving voice quality.
[0086] FIG4a is a flow chart showing a method for improving voice service quality according to some embodiments of the present disclosure. As shown in FIG4a , the method may include the following steps:
[0087] In step 401a, in response to receiving the first RTP data packet, the queue length of the PDCCH scheduling buffer queue is determined.
[0088] In step 402a, a target speech codec rate level is determined based on the queue length.
[0089] In step 403a, the first RTP data packet is encoded based on the target voice codec rate level to obtain a corresponding first voice code stream.
[0090] In step 404a, the first voice code stream is added to the PDCCH scheduling buffer queue.
[0091] For the relevant introduction of steps 401a to 404a, please refer to the detailed introduction in the above embodiment, and the embodiment of the present disclosure will not be described in detail here.
[0092] In step 405a, the packet loss rate of the UE corresponding to the Hybrid Automatic Repeat reQuest (HARQ) is monitored over time, and the resources used by the UE are adjusted based on the packet loss rate over time.
[0093] In an embodiment of the present disclosure, after the first voice code stream is added to the PDCCH scheduling cache queue through the above steps, before the first voice code stream is sent to the UE based on the PDSCH channel allocation indication, it is necessary to monitor the change of the UE's current HARQ packet loss rate over time, and adjust the UE based on the change of the packet loss rate over time to avoid voice data packet jitter during subsequent transmission of voice data packets.
[0094] In the embodiment of the present disclosure, the voice transmission service adopts the TM transmission mode. When the voice data packet is lost or the retransmission of the erroneous data requires fast retransmission through the HARQ mechanism of the MAC layer, based on this, the UE side may experience voice data packet jitter. Specifically, Figure 4b is a schematic diagram of a base station transmitting a transport block (TB) block to the UE through the HARQ process provided by the embodiment of the present disclosure. As shown in Figure 4b, the base station transmits the TB#1 block to the UE through the HARQ#1 process and determines that the data transmission is successful based on the ACK feedback from the UE. The base station transmits the next TB#2 block through the HARQ#2 process. Based on the NACK feedback from the UE, the base station determines that the data transmission is unsuccessful, retransmits the TB#2 block through the HARQ#2 process, and determines that the data transmission is successful based on the ACK feedback from the UE. The base station transmits the next TB#3 block through the HARQ#3 process. Based on the TTI delay consumption of the TB block retransmission, the time for the downlink data packet 2 to reach the UE is 20ms+Δt, which is delayed by Δts. At this time, the HARQ retransmission uncertainty causes the UE to experience voice data packet jitter. Therefore, it is necessary to reduce the HARQ retransmission probability to avoid voice data packet jitter.
[0095] And, in the embodiment of the present disclosure, the HARQ retransmission of the above-mentioned MAC layer is related to the channel quality indication (CQI), the TB block modulation mode MCS and the data block size. Based on this, the HARQ packet loss can be counted to determine the current wireless channel quality, and the UE's use of resources can be adjusted according to the current wireless channel quality to reduce HARQ retransmission. Figure 4c is a schematic diagram of a voice data packet jitter elimination signaling interaction process proposed in the embodiment of the present disclosure. As shown in Figure 4c, the base station sends HARQ data to the UE, and the UE feeds back ACK / NACK to confirm the data packet. During the interaction between the base station and the UE, the NACK situation fed back by the UE is used to monitor the change of the UE's corresponding HARQ packet loss rate over time, and the UE's use of resources is adjusted through signaling interaction based on the change of the packet loss rate over time to reduce HARQ retransmission.
[0096] In the embodiment of the present disclosure, the packet loss rate can be calculated by receiving the NACK data sent by the UE in the MAC layer HARQ process and the total number of data packets sent by the base station.
[0097] Specifically, in an embodiment of the present disclosure, the method for monitoring the change over time of the packet loss rate corresponding to the HARQ of the UE and adjusting the resources used by the UE based on the change over time of the packet loss rate may include the following steps:
[0098] In step 4051a, if the packet loss rate satisfies a first adjustment condition, the UE's current uplink modulation and coding scheme (MCS) is adjusted to the MCS corresponding to the target MCS index number, where the MCS corresponding to the target MCS index number is smaller than the current uplink MCS. The first adjustment condition includes that the packet loss rate is greater than a third threshold and persists for a first preset time.
[0099] In an embodiment of the present disclosure, if the packet loss rate satisfies the first adjustment condition, that is, the packet loss rate is greater than the third threshold and lasts for the first preset time, packet loss exists but is not yet severe. Therefore, the current uplink MCS of the UE can be adjusted to the MCS corresponding to the target MCS index number, wherein the MCS corresponding to the target MCS index number is smaller than the current uplink MCS, so as to reduce the size of the TB transmission block, improve the anti-interference performance of the modulation coding, and thereby reduce the situation of packet loss and retransmission.
[0100] Furthermore, in the embodiment of the present disclosure, when the packet loss rate recovers to below the third threshold, the packet loss rate is reduced and there is no need to adjust the UE.
[0101] In step 4052a, if the packet loss rate meets a second adjustment condition, an intra-cell handover is initiated for the UE based on the physical resource block (PRB) resource usage of the current cell, where the second adjustment condition includes the packet loss rate being greater than a fourth threshold and lasting for a second preset time.
[0102] In the embodiment of the present disclosure, if the packet loss rate satisfies the second adjustment condition, that is, the packet loss rate is greater than the fourth threshold and lasts for the second preset time, then the adjustment in step 4051a is not effective in reducing the packet loss rate, and based on this, the PRB resources of the UE need to be adjusted. Specifically, the network-side device can trigger an inner-cell handover based on the PRB resource usage rate of the cell to which the UE currently belongs to reselect a PRB resource with better channel quality and allocate it to the UE, thereby avoiding the situation where voice performance is degraded due to interference from some PRB resources.
[0103] In step 4053a, if the packet loss rate meets the third adjustment condition, based on the channel quality of each cell within the network side device, inter-cell switching is initiated to the UE. The third adjustment condition includes that the packet loss rate is greater than the fourth threshold and lasts for a third preset time, and the third preset time is greater than the second preset time.
[0104] In the disclosed embodiment, if the packet loss rate satisfies the third adjustment condition, that is, the packet loss rate is greater than the fourth threshold and persists for a third preset time, where the third preset time is greater than the second preset time, then it is necessary to switch the cell to which the UE belongs to reduce the packet loss rate. Specifically, the network-side device may, based on the channel quality of each internal cell, initiate an inter-cell handover for the UE, switching the UE to a cell with better channel quality, thereby reducing the packet loss rate.
[0105] It should be noted that, in the embodiment of the present disclosure, based on a large number of experiments, it can be found that the third threshold can be 10%, the fourth threshold can be 20%, and the first preset time, the second preset time and the third preset time can be set as needed.
[0106] In addition, in the embodiment of the present disclosure, FIG4d is a schematic diagram of adjusting the UE's resource usage based on the change of the packet loss rate over time proposed in the embodiment of the present disclosure. As shown in FIG4d, when the packet loss rate R HARQ When the packet loss rate is greater than the third threshold and lasts for the first preset time t1, the packet loss rate meets the first adjustment condition and the MCS adjustment of the UE is started; after the adjustment is completed, when the packet loss rate drops below the third threshold, the adjustment of the UE is stopped; when the packet loss rate R HARQ When the packet loss rate R is greater than the third threshold and lasts for the first preset time t1, the packet loss rate meets the first adjustment condition and the MCS adjustment of the UE is started again; when the packet loss rate R HARQ When the packet loss rate R is greater than the fourth threshold and lasts for the second preset time t2, the packet loss rate meets the second adjustment condition, and an intra-cell handover is initiated to the UE to reselect a PRB resource with better channel quality and allocate it to the UE; when the packet loss rate R HARQ When the packet loss rate is greater than the fourth threshold and lasts for the third preset time t3, the packet loss rate meets the third adjustment condition, and an inter-cell handover is initiated to the UE to switch the UE to a cell with better channel quality.
[0107] Furthermore, in the embodiment of the present disclosure, based on the change of packet loss rate over time, the adjustment of UE resource usage is triggered, thereby reducing the transmission delay of data packets, thereby reducing the arrival delay jitter of voice data packets. Compared with the existing method of achieving voice anti-interference and jitter elimination by reducing the voice packet rate, the above method can avoid the decline in voice perception due to the decrease in voice packet rate, thereby ensuring that voice data packet jitter is avoided without reducing voice clarity.
[0108] In step 406a, a first voice code stream is sent to the UE based on the PDSCH channel allocation indication.
[0109] For the relevant introduction of step 406a, please refer to the detailed introduction in the above embodiment, and the embodiment of the present disclosure will not be described in detail here.
[0110] In one or more embodiments of the present disclosure, in response to receiving a first RTP data packet, the queue length of a PDCCH scheduling buffer queue is determined, wherein the PDCCH scheduling buffer queue includes data packets to which PDSCH resources need to be allocated, a target voice codec rate level is determined based on the queue length, the first RTP data packet is encoded based on the target voice codec rate level to obtain a corresponding first voice code stream, the first voice code stream is added to the PDCCH scheduling buffer queue, and the first voice code stream is sent to a user equipment (UE) based on a PDSCH channel allocation indication. Thus, the present disclosure alleviates the resource congestion problem caused by insufficient PDCCH resource scheduling in 4 / 5G networks by introducing a PDCCH scheduling buffer queue and adjusting the voice codec rate based on the queue length of the PDCCH scheduling buffer queue, thereby achieving optimal voice codec rate and voice clarity perception, thereby improving voice quality.
[0111] FIG5 is a flow chart illustrating a method for improving voice service quality according to some embodiments of the present disclosure. As shown in FIG5 , the method may include the following steps:
[0112] In step 501, in response to receiving a first RTP data packet, a queue length of a PDCCH scheduling buffer queue is determined.
[0113] In step 502, a target speech codec rate level is determined based on the queue length.
[0114] In step 503, the first RTP data packet is encoded based on the target voice codec rate level to obtain a corresponding first voice code stream.
[0115] In step 504, the first voice code stream is added to the PDCCH scheduling buffer queue, and the first voice code stream is sent to the UE based on the PDSCH channel allocation indication.
[0116] For the relevant introduction of steps 501 to 504, please refer to the detailed introduction in the above embodiment, and the embodiment of the present disclosure will not be described in detail here.
[0117] In step 505, a second voice code stream sent by the UE is received via a physical uplink shared channel (Physical Uplink Shared Channel, PUSCH).
[0118] Among them, in the embodiment of the present disclosure, before receiving the second voice code stream sent by the UE through the PUSCH, the packet loss rate of the HARQ corresponding to the UE can be monitored over time, and the UE's resource usage can be adjusted based on the change of the packet loss rate over time to avoid voice data packet jitter.
[0119] In step 506, the second voice code stream is decoded to obtain a corresponding first voice signal.
[0120] In step 507, frame loss detection is performed on the second voice code stream to obtain a corresponding frame loss detection result.
[0121] In the embodiment of the present disclosure, after the second voice code stream is obtained through the above steps, it is necessary to perform frame loss detection on the second voice code stream to determine whether there is frame loss or noise in the second voice code stream.
[0122] In the embodiment of the present disclosure, the method of performing frame loss detection on the second voice code stream to obtain a corresponding frame loss detection result may include the following steps:
[0123] In step 5071, it is detected whether the second voice code stream meets the first frame loss condition or the second frame loss condition, wherein the first frame loss condition is the presence of frame loss, and the second frame loss condition is that no voice frame is detected within a fourth preset time;
[0124] In the embodiment of the present disclosure, the fourth preset time can be set as needed. For example, the fourth preset time is 20ms.
[0125] In step 5072, if the second voice code stream meets the first frame loss condition or the second frame loss condition, the frame loss detection result of the second voice code stream is frame loss;
[0126] In step 5073, if the second voice code stream does not meet the first frame loss condition and the second frame loss condition, the frame loss detection result of the second voice code stream is no frame loss.
[0127] In step 508, if the frame loss detection result is frame loss, a second speech signal corresponding to comfort noise is generated, and a second RTP data packet is generated based on the second speech signal for transmission.
[0128] In the embodiment of the present disclosure, if the frame loss detection result is frame loss, silence restoration can be achieved by generating comfort noise, thereby improving the user's voice quality.
[0129] In step 509, if the frame loss detection result is no frame loss, a second RTP data packet is generated based on the first voice signal and sent.
[0130] In one or more embodiments of the present disclosure, in response to receiving a first RTP data packet, the queue length of a PDCCH scheduling cache queue is determined, wherein the PDCCH scheduling cache queue includes data packets that need to be allocated PDSCH resources, a target voice codec rate level is determined based on the queue length, the first RTP data packet is encoded based on the target voice codec rate level to obtain a corresponding first voice code stream, the first voice code is added to the PDCCH scheduling cache queue, and the first voice code stream is sent to the user equipment UE based on the PDSCH channel allocation indication. Therefore, the present disclosure alleviates the resource congestion problem caused by insufficient PDCCH resource scheduling in 4 / 5G networks by introducing a PDCCH scheduling cache queue and adjusting the voice codec rate according to the queue length of the PDCCH scheduling cache queue, thereby achieving the optimal voice codec rate and voice clarity perception, thereby improving voice quality.
[0131] Figure 6 is a structural diagram of a device for improving voice service quality according to some embodiments of the present disclosure. As shown in Figure 6, the device includes a field programmable gate array (FPGA) hardware controller module and a digital signal processing (DSP) voice codec module. The FPGA hardware controller module includes a scheduling module 601 and a voice transmitter module 603. The scheduling module includes a cache scheduling module 6011 and a voice rate adjustment module 6012. The DSP voice codec module includes a codec module 602.
[0132] a buffer scheduling module 6011 configured to determine, in response to receiving a first RTP data packet, a queue length of a PDCCH scheduling buffer queue, wherein the PDCCH scheduling buffer queue includes data packets to which PDSCH resources need to be allocated;
[0133] A speech rate adjustment module 6012 is configured to determine a target speech codec rate level based on the queue length;
[0134] The codec module 602 is configured to encode the first RTP data packet based on the target voice codec rate level to obtain a corresponding first voice code stream;
[0135] The voice transmitter module 603 is configured to add the first voice code stream to the PDCCH scheduling buffer queue, and send the first voice code stream to the user equipment UE based on the PDSCH channel allocation indication.
[0136] In one or more embodiments of the present disclosure, in response to receiving a first RTP data packet, the queue length of a PDCCH scheduling cache queue is determined, wherein the PDCCH scheduling cache queue includes data packets that need to be allocated PDSCH resources, a target voice codec rate level is determined based on the queue length, the first RTP data packet is encoded based on the target voice codec rate level to obtain a corresponding first voice code stream, the first voice code is added to the PDCCH scheduling cache queue, and the first voice code stream is sent to the user equipment UE based on the PDSCH channel allocation indication. Therefore, the present disclosure alleviates the resource congestion problem caused by insufficient PDCCH resource scheduling in 4 / 5G networks by introducing a PDCCH scheduling cache queue and adjusting the voice codec rate according to the queue length of the PDCCH scheduling cache queue, thereby achieving the optimal voice codec rate and voice clarity perception, thereby improving voice quality.
[0137] Optionally, in the embodiment of the present disclosure, the speech rate adjustment module 6012 is specifically configured to:
[0138] determining whether a queue length exceeds a first threshold;
[0139] If the queue length exceeds the first threshold, the current voice codec rate level is lowered by one level to be determined as the target voice codec rate level;
[0140] If the queue length is equal to the second threshold, the current voice codec rate level is increased by one level to be determined as the target voice codec rate level.
[0141] Optionally, in the embodiment of the present disclosure, the DSP voice codec module further includes a silence detection module 604.
[0142] A silence detection module 604 is configured to perform silence detection on the first RTP data packet to obtain a silence detection result;
[0143] The voice transmitter module 603 is further configured to send a first voice code stream to the UE based on the PDSCH channel allocation indication in response to the silence detection result of the first RTP data packet being non-silence.
[0144] Optionally, in one embodiment of the present disclosure, the silence detection module 604 is specifically configured to:
[0145] Determining whether the first RTP data packet is silent;
[0146] If the first RTP data packet is silent, the silence detection result is silent;
[0147] If the first RTP data packet is not silent, the silence detection result is non-silent.
[0148] Optionally, in one embodiment of the present disclosure, the FPGA hardware controller module further includes a packet loss monitoring module 605, wherein:
[0149] The packet loss monitoring module 605 is used to monitor the change of the packet loss rate of the HARQ corresponding to the UE over time, and adjust the resources used by the UE based on the change of the packet loss rate over time.
[0150] Optionally, in one embodiment of the present disclosure, the packet loss monitoring module 605 is specifically configured to:
[0151] If the packet loss rate meets the first adjustment condition, adjust the current uplink MCS of the UE to the MCS corresponding to the target MCS index number, wherein the MCS corresponding to the target MCS index number is smaller than the current uplink MCS, and the first adjustment condition includes that the packet loss rate is greater than the third threshold and less than the fourth threshold, and lasts for a first preset time;
[0152] If the packet loss rate meets a second adjustment condition, initiating an intra-cell handover to the UE based on the PRB resource usage of the current cell, the second adjustment condition including that the packet loss rate is greater than a fourth threshold and lasts for a second preset time;
[0153] If the packet loss rate meets the third adjustment condition, based on the channel quality of each cell within the network side device, inter-cell switching is initiated to the UE. The third adjustment condition includes that the packet loss rate is greater than the fourth threshold and lasts for a third preset time, and the third preset time is greater than the second preset time.
[0154] Optionally, in one embodiment of the present disclosure, the FPGA hardware controller module further includes a voice receiver module 606 and a frame loss detection module 607, and the DSP voice codec module further includes a comfort noise generation module 608, wherein:
[0155] The voice receiver module 606 is configured to receive a second voice code stream sent by the UE through the PUSCH;
[0156] The codec module 602 is further configured to decode the second voice code stream to obtain a corresponding first voice signal;
[0157] A frame loss detection module 607 is configured to perform frame loss detection on the second voice code stream and obtain a corresponding frame loss detection result;
[0158] The comfort noise generation module 608 is configured to generate a second voice signal corresponding to the comfort noise if the frame loss detection result is frame loss, and generate a second RTP data packet based on the second voice signal for transmission;
[0159] The codec module 603 generates a second RTP data packet based on the first voice signal and sends the second RTP data packet if the frame loss detection result is no frame loss.
[0160] Optionally, in one embodiment of the present disclosure, the frame loss detection module 607 is specifically configured to:
[0161] Detecting whether the second voice code stream meets a first frame loss condition or a second frame loss condition, wherein the first frame loss condition is that frame loss exists, and the second frame loss condition is that no voice frame is detected within a fourth preset time;
[0162] If the second voice code stream meets the first frame loss condition or the second frame loss condition, the frame loss detection result of the second voice code stream is frame loss;
[0163] If the second voice code stream does not meet the first frame loss condition and the second frame loss condition, the frame loss detection result of the second voice code stream is no frame loss.
[0164] Based on the above description, FIG7 is a schematic diagram showing an apparatus for improving voice service quality according to an embodiment of the present disclosure to implement the above method for improving voice service quality.
[0165] In step 701, in response to the buffer scheduling module receiving the first RTP data packet, the queue length of the PDCCH scheduling buffer queue is determined.
[0166] In step 702, the speech rate adjustment module determines a target speech codec rate level based on the queue length.
[0167] In step 703, the voice rate adjustment module sends the target voice codec rate level to the codec module, and the codec module encodes the first RTP data packet according to the target voice codec rate level to obtain a corresponding first voice code stream.
[0168] In step 704, the codec module transmits the first voice code stream to the voice transmitter module, and the voice transmitter module adds the first voice code stream to the PDCCH scheduling buffer queue.
[0169] In step 705, the packet loss monitoring module monitors the temporal variation of the packet loss rate of the HARQ corresponding to the UE, and adjusts the resources used by the UE based on the temporal variation of the packet loss rate.
[0170] In step 706, the silence detection module performs silence detection on the first RTP data packet to obtain a silence detection result, and transmits the silence detection result to the voice transmitter module.
[0171] In step 707, the voice transmitter module sends the first voice code stream to the UE based on the silence detection result and the PDSCH channel allocation indication sent by the scheduling module.
[0172] Based on the above description, FIG8 is a schematic diagram showing an apparatus for improving voice service quality according to an embodiment of the present disclosure to implement the above method for improving voice service quality.
[0173] In step 801, the voice receiver module receives a second voice code stream sent by the UE through the PUSCH receiving channel instruction sent by the scheduling module.
[0174] In step 802, the voice receiver module sends the second voice code stream to the encoder module and the frame loss detection module.
[0175] In step 803, the encoder module decodes the second voice code stream to obtain a corresponding first voice signal.
[0176] In step 804, the frame loss detection module performs frame loss detection on the second speech code stream, obtains a corresponding frame loss detection result, and sends the frame loss detection result to the comfort noise generation module.
[0177] In step 805, if the frame loss detection result is frame loss, the comfort noise generation module generates a second voice signal corresponding to the comfort noise, and generates a second RTP data packet based on the second voice signal for transmission.
[0178] In step 806, if the frame loss detection result is no frame loss, a second RTP data packet is generated based on the first voice signal and sent.
[0179] As shown in Figure 9, the network-side device 900 includes a computing unit 901, which can perform various appropriate actions and processes based on a computer program stored in a read-only memory (ROM) 902 or a computer program loaded from a storage unit 908 into a random access memory (RAM) 903. RAM 903 may also store various programs and data required for the operation of the network-side device 900. The computing unit 901, ROM 902, and RAM 903 are interconnected via a bus 904. An input / output (I / O) interface 905 is also connected to the bus 904.
[0180] Multiple components in the network-side device 900 are connected to the I / O interface 905, including an input unit 908, such as a keyboard and mouse; an output unit 907, such as various types of displays and speakers; a storage unit 908, such as a magnetic disk and optical disk; and a communication unit 909, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 909 allows the network-side device 900 to exchange information / data with other network-side devices via a computer network such as the Internet and / or various telecommunication networks.
[0181] The computing unit 901 can be any general-purpose and / or specialized processing component with processing and computing capabilities. Some examples of the computing unit 901 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various specialized artificial intelligence (AI) computing chips, various computing units that run machine learning model algorithms, a digital signal processor (DSP), and any appropriate processor, controller, microcontroller, etc. The computing unit 901 performs the various methods and processes described above, such as the multi-camera zoom control method. For example, in some embodiments, the multi-camera zoom control method can be implemented as a computer software program tangibly embodied in a machine-readable medium, such as the storage unit 908. In some embodiments, part or all of the computer program can be loaded and / or installed on the network-side device 900 via the ROM 902 and / or the communication unit 909. When the computer program is loaded into the RAM 903 and executed by the computing unit 901, one or more steps of the multi-camera zoom control method described above can be performed. Alternatively, in other embodiments, the computing unit 901 may be configured to execute the multi-camera zoom control method in any other appropriate manner (for example, by means of firmware).
[0182] Various embodiments of the systems and techniques described herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), system-on-chip systems (SOCs), programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments can include being implemented in one or more computer programs that can be executed and / or interpreted on a programmable system that includes at least one programmable processor, which can be a special-purpose or general-purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.
[0183] The program code for implementing the method of the present disclosure can be written in any combination of one or more programming languages. These program codes can be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable data processing device so that when the program code is executed by the processor or controller, the functions / operations specified in the flow chart and / or block diagram are implemented. The program code can be executed entirely on the machine, partially on the machine, as a stand-alone software package, partially on the machine and partially on a remote machine, or entirely on a remote machine or server.
[0184] In the context of the present disclosure, a machine-readable medium may be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, device, or network-side device. A machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or network-side device, or any suitable combination of the foregoing. More specific examples of machine-readable storage media may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage network-side device, a magnetic storage network-side device, or any suitable combination of the foregoing.
[0185] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device (e.g., a cathode ray tube (CRT) or a liquid crystal display (LCD) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user can provide input to the computer. Other types of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic input, voice input, or tactile input).
[0186] The systems and techniques described herein can be implemented in a computing system that includes back-end components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes front-end components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such back-end components, middleware components, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), the Internet, and a blockchain network.
[0187] A computer system may include a client and a server. The client and server are generally remote from each other and typically interact via a communication network. This client-server relationship is established by computer programs running on the respective computers, establishing a client-server relationship. The server may be a cloud server, also known as a cloud computing server or cloud host, a host product within the cloud computing service ecosystem that addresses the management difficulties and limited scalability of traditional physical hosts and VPS services ("Virtual Private Servers" or simply "VPS"). The server may also be a server in a distributed system or a server integrated with blockchain.
[0188] It should be understood that the various forms of the processes shown above can be used to reorder, add, or delete steps. For example, the steps described in this disclosure can be performed in parallel, sequentially, or in a different order, as long as the desired results of the technical solutions disclosed in this disclosure can be achieved. This is not a limitation herein.
[0189] It is understood that the embodiments described in the embodiments of the present disclosure may be implemented using hardware, software, firmware, middleware, microcode, or a combination thereof. For hardware implementation, modules, units, submodules, subunits, etc. may be implemented in one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field-programmable gate arrays (FPGAs), general-purpose processors, controllers, microcontrollers, microprocessors, other electronic units for performing the functions described in the present disclosure, or a combination thereof.
[0190] The above specific embodiments do not constitute a limitation on the scope of protection of this disclosure. Those skilled in the art will appreciate that various modifications, combinations, sub-combinations, and substitutions may be made based on design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this disclosure shall be included within the scope of protection of this disclosure.
Claims
1. A method for improving voice service quality, applied to a network side device, comprising: In response to receiving a first real-time transport protocol (RTP) data packet, determining a queue length of a physical downlink control channel (PDCCH) scheduling buffer queue, wherein the PDCCH scheduling buffer queue includes data packets to which PDSCH resources need to be allocated; Determining a target speech codec rate level based on the queue length; Encode the first RTP data packet based on the target voice codec rate level to obtain a corresponding first voice code stream; The first voice code is added to the PDCCH scheduling buffer queue, and the first voice code stream is sent to a user equipment UE based on a PDSCH channel allocation indication.
2. The method of claim 1, wherein: The determining a target speech coding rate level based on the queue length includes: Determining whether the queue length exceeds a first threshold; If the queue length exceeds the first threshold, the current voice codec rate level is lowered by one level to be determined as the target voice codec rate level; If the queue length is the second threshold, the current speech codec rate level is increased by one level to be determined as the target speech codec rate level.
3. The method of claim 1, wherein: The sending the first voice code stream to a user equipment UE based on the PDSCH channel allocation indication includes: Performing silence detection on the first RTP data packet to obtain a silence detection result; In response to the silence detection result of the first RTP data packet being non-silence, the first voice code stream is sent to a user equipment UE based on the PDSCH channel allocation indication.
4. The method of claim 3, wherein: The performing silence detection on the sub-data packets in the PDCCH scheduling buffer queue to obtain the silence detection result includes: Determining whether the first RTP data packet is silent; If the first RTP data packet is silent, the silence detection result is obtained as silent; If the first RTP data packet is not silent, the silence detection result is obtained as non-silent.
5. The method according to claim 1, further comprising: Monitor the packet loss rate of the UE corresponding to the hybrid automatic repeat request HARQ over time, and based on the packet loss rate The resources used by the UE are adjusted as the situation changes over time.
6. The method of claim 5, wherein: The adjusting the UE based on the change of the packet loss rate over time includes: If the packet loss rate satisfies a first adjustment condition, the current uplink modulation and coding strategy MCS of the UE is adjusted to the MCS corresponding to the target MCS index number, wherein the MCS corresponding to the target MCS index number is less than the current uplink MCS, and the first adjustment condition includes that the packet loss rate is greater than a third threshold and lasts for a first preset time; If the packet loss rate satisfies a second adjustment condition, initiating an intra-cell handover to the UE based on a physical resource block (PRB) resource usage rate of the current cell, the second adjustment condition including that the packet loss rate is greater than a fourth threshold and lasts for a second preset time; If the packet loss rate satisfies the third adjustment condition, based on the channel quality of each cell within the network side device, inter-cell switching is initiated to the UE, and the third adjustment condition includes that the packet loss rate is greater than a fourth threshold and lasts for a third preset time, and the third preset time is greater than the second preset time.
7. The method of claim 1, further comprising: Receiving a second voice code stream sent by the UE through the PUSCH; Decoding the second voice code stream to obtain a corresponding first voice signal; Performing frame loss detection on the second voice code stream to obtain a corresponding frame loss detection result; If the frame loss detection result is frame loss, generating a second voice signal corresponding to the comfort noise, and generating a second RTP data packet based on the second voice signal for sending; If the frame loss detection result is no frame loss, a second RTP data packet is generated based on the first voice signal and sent.
8. The method of claim 7, wherein: The performing frame loss detection on the second voice code stream to obtain a corresponding frame loss detection result includes: Detecting whether the second voice code stream satisfies a first frame loss condition or a second frame loss condition, wherein the first frame loss condition is that a frame loss exists, and the second frame loss condition is that no voice frame is detected within a fourth preset time; If the second voice code stream meets the first frame loss condition or the second frame loss condition, the frame loss detection result of the second voice code stream is frame loss; If the second voice code stream does not meet the first frame loss condition and the second frame loss condition, the frame loss detection result of the second voice code stream is no frame loss.
9. A device for improving voice service quality, applied to a network side device, the device comprising a field programmable gate array (FPGA) hardware controller module and a digital signal processing (DSP) voice codec module, the FPGA hardware controller module comprising a scheduling module and a voice transmitter module, the scheduling module comprising a cache scheduling module and a voice rate adjustment module, the DSP voice codec module comprising a codec module, wherein: The cache scheduling module is used to determine the queue length of the PDCCH scheduling cache queue in response to receiving the first RTP data packet, wherein the PDCCH scheduling cache queue includes data packets that need to be allocated PDSCH resources; The speech rate adjustment module is used to determine a target speech codec rate level based on the queue length; The codec module is used to encode the first RTP data packet based on the target voice codec rate level to obtain a corresponding first voice code stream; The voice transmitter module is used to add the first voice code stream to the PDCCH scheduling buffer queue, and send the first voice code stream to the user equipment UE based on the PDSCH channel allocation indication.
10. The device of claim 9, wherein: The speech rate adjustment module is specifically used for: Determining whether the queue length exceeds a first threshold; If the queue length exceeds the first threshold, the current voice codec rate level is lowered by one level to be determined as the target voice codec rate level; If the queue length is the second threshold, the current speech codec rate level is increased by one level to be determined as the target speech codec rate level.
11. The device of claim 9, wherein: The DSP voice codec module also includes a silence detection module, The silence detection module is used to perform silence detection on the first RTP data packet to obtain a silence detection result; The voice transmitter module is further configured to send the first voice code stream to a user equipment UE based on the PDSCH channel allocation indication in response to a silence detection result of the first RTP data packet being non-silence.
12. The device of claim 11, wherein: The silence detection module is specifically used for: Determining whether the first RTP data packet is silent; If the first RTP data packet is silent, the silence detection result is obtained as silent; If the first RTP data packet is not silent, the silence detection result is obtained as non-silent.
13. The device of claim 9, wherein: The FPGA hardware controller module also includes a packet loss monitoring module, wherein: The packet loss monitoring module is used to monitor the change of the packet loss rate of the UE corresponding to the hybrid automatic repeat request HARQ over time, and adjust the resource used by the UE based on the change of the packet loss rate over time.
14. The device of claim 13, wherein: The packet loss monitoring module is specifically used for: If the packet loss rate meets the first adjustment condition, the current uplink MCS of the UE is adjusted to the target MCS index. The MCS corresponding to the target MCS index number is less than the current uplink MCS, and the first adjustment condition includes that the packet loss rate is greater than a third threshold and less than a fourth threshold, and lasts for a first preset time; If the packet loss rate satisfies a second adjustment condition, initiating an intra-cell handover to the UE based on the PRB resource usage rate of the current cell, the second adjustment condition including that the packet loss rate is greater than a fourth threshold and lasts for a second preset time; If the packet loss rate satisfies the third adjustment condition, based on the channel quality of each cell within the network side device, inter-cell switching is initiated to the UE, and the third adjustment condition includes that the packet loss rate is greater than a fourth threshold and lasts for a third preset time, and the third preset time is greater than the second preset time.
15. The device of claim 9, wherein: The FPGA hardware controller module further includes a voice receiver module and a frame loss detection module, and the DSP voice codec module further includes a comfort noise generation module, wherein: The voice receiver module is used to receive the second voice code stream sent by the UE through a physical uplink shared channel PUSCH; The codec module is further used to decode the second voice code stream to obtain a corresponding first voice signal; The frame loss detection module is used to perform frame loss detection on the second voice code stream to obtain a corresponding frame loss detection result; The comfort noise generating module is used for generating a second voice signal corresponding to the comfort noise if the frame loss detection result is frame loss, and generating a second RTP data packet based on the second voice signal for transmission; The codec module generates a second RTP data packet based on the first voice signal and sends it if the frame loss detection result is no frame loss.
16. The device of claim 15, wherein: The frame loss detection module is specifically used for: Detecting whether the second voice code stream satisfies a first frame loss condition or a second frame loss condition, wherein the first frame loss condition is that a frame loss exists, and the second frame loss condition is that no voice frame is detected within a fourth preset time; If the second voice code stream meets the first frame loss condition or the second frame loss condition, the frame loss detection result of the second voice code stream is frame loss; If the second voice code stream does not meet the first frame loss condition and the second frame loss condition, the frame loss detection result of the second voice code stream is no frame loss.
17. A network side device, comprising: at least one processor; and a memory in communication with the at least one processor, wherein: The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the method according to any one of claims 1 to 8.
18. A computer-readable storage medium storing computer-executable instructions; after the computer-executable instructions are executed by a processor, the method according to any one of claims 1 to 8 can be implemented.
Citation Information
Patent Citations
Method and apparatus for adjusting audio coding rate
CN108432166A
Video transmission method, storage medium, robot and control system
CN109982080A
Voice coding rate adjustment method and device
CN110519005A
Method and system for adjusting voice adaptive parameter, and related device
WO2017045125A1
Method for determining coding rate of audio and video data, terminal, and storage medium
WO2018081937A1