Filtering parameter updating method and device, equipment, storage medium and product

By employing an event-driven RTP loopback mechanism and a lightweight affine projection algorithm in the intercom terminal, the cost of updating the filtering parameters of the echo cancellation component is reduced, achieving low-latency, high-real-time echo cancellation, which is suitable for low-cost, low-computing-power intercom terminals.

CN121645154APending Publication Date: 2026-03-10CHINA MOBILE M2M +1
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-12-04
Publication Date
2026-03-10

AI Technical Summary

Technical Problem

In existing technologies, the cost of updating the filtering parameters of echo cancellation components is high, the computational complexity is high, and they rely on hardware modifications, making it difficult to meet the real-time echo cancellation requirements of low-cost, low-computing-power walkie-talkie devices.

Method used

An event-driven RTP loopback mechanism is adopted, which triggers filter parameter updates by monitoring echo return loss and gain. Audio data is used for delay detection and parameter optimization, reducing hardware dependence and computational complexity. A lightweight affine projection algorithm is introduced to accelerate convergence.

Benefits of technology

It effectively reduces the parameter update cost of echo cancellation components, improves the real-time performance and robustness of echo cancellation, and is suitable for low-cost, low-computing-power intercom terminal equipment.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121645154A_ABST
    Figure CN121645154A_ABST
Patent Text Reader

Abstract

The invention discloses a filtering parameter updating method and device, equipment, a storage medium and a product. The method comprises the following steps: in response to a call instruction, obtaining an echo return loss gain and first audio input data of an echo cancellation component, the echo return loss gain being used for representing an offset capability of an intercom sending end to echoes; when the echo return loss gain is smaller than a gain threshold value, a first audio message is constructed based on the first audio input data, a loopback identifier and a timestamp, the loopback identifier is a target identifier, and the target identifier is used for the server to return the message to the talkback sending end; the first audio message is sent to a server, and the server sends the first audio message to a talkback sending end and a talkback receiving end; determining the transmission delay between the talkback sending end and the server according to the timestamp in the first audio message returned by the server; and updating a filtering parameter of the echo cancellation component based on the transmission time delay. Therefore, the parameter updating cost of the echo cancellation component can be effectively reduced.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application belongs to the technical field of wireless communication, and particularly relates to a filter parameter updating method and device, equipment, storage medium and product. BACKGROUND

[0002] The talkback terminal usually adopts half-duplex communication, in which mode, the call quality is affected by echo. In order to improve the call quality, the audio data in the call process usually needs to be subjected to echo cancellation operation.

[0003] Usually, an echo cancellation component is arranged in the talkback terminal to eliminate the echo in the call. However, in the related art, the updating of the filter parameter of the echo cancellation component is usually realized by returning a signal through a hardware interface or adding a data processing module, which has high hardware cost; and it also depends on a highly complex algorithm, which has high calculation cost.

[0004] It can be seen that in the related art, the updating of the filter parameter of the echo cancellation component has the problem of high cost. SUMMARY

[0005] The embodiments of the present application provide a filter parameter updating method and device, equipment, storage medium and product, which can effectively reduce the cost of parameter updating of the echo cancellation component.

[0006] In a first aspect, the embodiments of the present application provide a filter parameter updating method, applied to a talkback sending terminal, the talkback sending terminal at least comprising an echo cancellation component for eliminating echo in a call, the method comprising: in response to a call instruction, obtaining an echo return loss gain corresponding to the echo cancellation component and first audio input data, wherein the echo return loss gain is used to represent the cancellation ability of the talkback sending terminal to the echo, and the first audio input data is audio data sent by the talkback sending terminal to a talkback receiving terminal through a server; in the case that the echo return loss gain is less than a gain threshold, constructing a first audio message based on the first audio input data, a loopback identifier and a timestamp, wherein the identifier value of the loopback identifier is a target identifier, and the target identifier is used for the server to return a message to the talkback sending terminal; sending the first audio message to the server, so that the server sends the first audio message to the talkback sending terminal and the talkback receiving terminal; determining a transmission time delay between the talkback sending terminal and the server according to the timestamp in the first audio message returned by the server; and updating the filter parameter of the echo cancellation component based on the transmission time delay.

[0007] Secondly, embodiments of this application provide a filter parameter updating device applied to an intercom transmitter. The intercom transmitter includes at least an echo cancellation component for eliminating call echo. The device includes: a data acquisition module, configured to acquire, in response to a call command, the echo return loss gain corresponding to the echo cancellation component and first audio input data, wherein the echo return loss gain characterizes the intercom transmitter's ability to cancel echoes, and the first audio input data is audio data sent by the intercom transmitter to the intercom receiver via a server; and a message construction module, configured to update filter parameters when the echo return loss gain is less than a gain threshold. In this case, a first audio message is constructed based on the first audio input data, the loopback identifier, and the timestamp. The identifier value of the loopback identifier is the target identifier, which is used by the server to return a message to the intercom transmitter. The message sending module is used to send the first audio message to the server so that the server can send the first audio message to both the intercom transmitter and the intercom receiver. The delay determination module is used to determine the transmission delay between the intercom transmitter and the server based on the timestamp in the first audio message returned by the server. The parameter update module is used to update the filtering parameters of the echo cancellation component based on the transmission delay.

[0008] Thirdly, embodiments of this application provide an electronic device, which includes: a processor and a memory storing computer program instructions; the processor executes the computer program instructions to implement the method for updating the filtering parameters as described in the first aspect.

[0009] Fourthly, embodiments of this application provide a computer-readable storage medium storing computer program instructions that, when executed by a processor, implement the method for updating filter parameters as described in the first aspect.

[0010] Fifthly, embodiments of this application provide a computer program product in which instructions, when executed by a processor of an electronic device, cause the electronic device to perform the filtering parameter update method as described in the first aspect.

[0011] As can be seen from the above, in this embodiment, the echo cancellation component's filtering parameters are only updated when the echo return loss gain of the echo cancellation component at the intercom transmitter is low, thereby effectively reducing the average computational load and energy consumption, and lowering computational costs. Furthermore, in this embodiment, during the updating of filtering parameters, the communication protocol is extended using the first audio input data, loopback identifier, and timestamp, achieving loopback control at the software level. Delay detection and parameter updates can be completed directly using audio data, reducing hardware costs and adaptation difficulty.

[0012] Therefore, the solution provided in this application embodiment can effectively reduce the cost of updating the parameters of the echo cancellation component. Attached Figure Description

[0013] To more clearly illustrate the technical solutions of the embodiments of this application, the accompanying drawings used in the embodiments of this application will be briefly introduced below. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0014] Figure 1 This is a schematic diagram illustrating the principle of echo generation provided in one embodiment of this application; Figure 2 This is a schematic diagram of a system for implementing intercom terminal calls according to an embodiment of this application; Figure 3 This is a flowchart illustrating a method for updating filter parameters according to an embodiment of this application; Figure 4 This is a schematic diagram of the structure of a real-time transmission protocol provided in one embodiment of this application; Figure 5 This is a flowchart illustrating the interaction between the intercom transmitter, the intercom receiver, and the server according to one embodiment of this application. Figure 6 This is a schematic diagram of the structure of a filter parameter updating device provided in another embodiment of this application; Figure 7 This is a schematic diagram of the structure of an electronic device provided in another embodiment of this application. Detailed Implementation

[0015] The features and exemplary embodiments of various aspects of this application will be described in detail below. To make the objectives, technical solutions, and advantages of this application clearer, the application will be further described in detail below with reference to the accompanying drawings and specific embodiments. It should be understood that the specific embodiments described herein are intended only to explain this application and not to limit it. For those skilled in the art, this application can be implemented without some of these specific details. The following description of the embodiments is merely to provide a better understanding of this application by illustrating examples.

[0016] It should be noted that, in this document, relational terms such as "first" and "second" are used merely to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising..." does not exclude the presence of additional identical elements in the process, method, article, or apparatus that includes said element.

[0017] To facilitate understanding, before explaining the solution provided in this application, the background of the solution provided in this application will be explained first.

[0018] Intercom terminals typically use half-duplex communication, meaning that audio can only be transmitted in one direction at a time; one person speaks while the other listens. In this mode, the intercom terminal must minimize far-end echo; otherwise, when one party speaks, the other party will receive mixed audio from the front end, severely affecting the intercom quality.

[0019] For example, Figure 1 A schematic diagram illustrating the principle of echo generation is shown, such as... Figure 1 As shown, user 1 inputs an audio signal through microphone MIC1 of intercom terminal S1. This audio signal is transmitted to intercom terminal S2 via the network and played by speaker SPKER2 of intercom terminal S2. The audio played by speaker SPKER2 is simultaneously captured by microphone MIC2 of intercom terminal S2 and coupled with the voice signal of intercom terminal S2. The coupled audio is transmitted to intercom terminal S1 via the network and played by speaker SPKER1 of intercom terminal S1, forming an echo.

[0020] To improve call quality, echo cancellation is necessary. Common technologies for echo cancellation include deep neural networks and hardware interface feedback. Deep neural network-based echo cancellation methods estimate the echo through spectral feature extraction and model inference, requiring significant computing power, resulting in substantial latency and high cost. Hardware interface-based echo cancellation methods use audio signals transmitted from the remote end via an audio interface or DSP (Digital Signal Processing) as a reference to reduce latency; however, this method relies on additional hardware, increasing the hardware cost and adaptability of echo cancellation.

[0021] It is evident that existing echo cancellation technologies either have high computational and power consumption burdens, rely on hardware modifications, or have high latency, making it difficult to meet the real-time echo cancellation requirements of low-cost, low-computing-power walkie-talkie devices.

[0022] Alternatively, APA (Affine Projection Algorithm) can be used to achieve echo cancellation in related technologies. Specifically, the input signal is first acquired and processed to obtain relevant processing parameters. Then, the noise term of the APA algorithm is quantized based on these parameters to construct a quantization model, from which statistical quantities, including near-end signal energy and filter convergence, are derived. Next, these statistical quantities are substituted into a variable step-size factor, allowing the APA step-size parameter to adaptively adjust with the convergence state. Finally, an improved APA update formula is used to iterate the filter weights, thereby improving convergence speed and reducing steady-state error in real-time translation and long-distance echo scenarios.

[0023] In existing echo cancellation schemes, explicit modeling of the finite impulse response of the echo path and the filter impulse response is required, and the echo signal is generated by processing parameters. This type of modeling relies on accurate estimation of the physical echo path and requires additional handling of impulse response matching, increasing computational resource consumption and reducing resource utilization. Furthermore, existing technologies dynamically adjust the step size factor using statistics, but the calculation of these statistics relies on the Gaussian white noise assumption, increasing implementation complexity. For example, in non-Gaussian noise environments (such as sudden plosive sounds in speech signals), the statistical estimation may be distorted, causing the step size factor adjustment to fail, thus affecting convergence stability and steady-state performance. Moreover, existing technologies do not mention a dynamic update strategy for echo delay. In real-world scenarios, the relative positions of the microphone and speaker may drift due to user movement or environmental changes, and existing technologies only initialize with fixed processing parameters, failing to compensate for delay deviations in real time. This approach leads to a mismatch between the filter's input signal and the far-end reference signal, resulting in poor echo cancellation performance.

[0024] To address the problems of existing technologies, embodiments of this application provide a method, apparatus, device, storage medium, and product for updating filter parameters. The solution provided in this application employs an event-driven RTP (Real-time Transport Protocol) adaptive loopback mechanism to eliminate echo from intercom terminals, achieving low-latency, low-power, and high-real-time echo cancellation in half-duplex communication scenarios over public networks. Unlike existing technologies that rely on explicit impulse response modeling, complex statistical calculations, or hardware interface feedback, this application significantly reduces computational complexity and hardware dependence by designing a proprietary RTP protocol, introducing an event-driven adaptive loopback mechanism, and using dynamic latency updates based on ERLE (Echo Return Loss Enhancement). This makes echo cancellation more suitable for low-cost, low-computing-power intercom terminals.

[0025] Specifically, in this embodiment, an event-driven adaptive loopback triggering mechanism is adopted, using communication events such as voice right requests as the core trigger source. Delay detection and filter parameter updates are only performed when echo cancellation performance degradation is detected or initialization is required, avoiding continuous high-load computation and reducing power consumption and computing power. In this embodiment, a loopback identifier is extended to the PT (Payload Type) field of the standard RTP protocol to distinguish between ordinary audio packets and loopback detection packets, enabling precise control of loopback behavior at the transmission layer, reducing dependence on hardware interfaces, and improving the protocol's flexibility and portability. In this embodiment, by continuously monitoring the Echo Return Loss (ERLE) index, when ERLE is detected to be lower than a preset threshold, an RTP loopback packet is automatically triggered to perform a new round of delay detection and filter parameter updates, thereby responding to environmental changes or delay drift and maintaining the convergence and robustness of the echo cancellation model. Furthermore, in this embodiment, a lightweight optimization of the affine projection algorithm is implemented. A multi-frame input matrix and data reuse mechanism are adopted to accelerate the convergence speed of the adaptive filter and avoid modeling unobservable impulse responses, thereby reducing the implementation complexity and making it suitable for deployment in resource-constrained intercom terminals.

[0026] Therefore, compared with existing technologies that rely on unobservable parameters and require modeling using echo path impulse response and complex statistics, the solution provided in this application eliminates the dependence on impulse response, using only the acquireable far-end signal and microphone signal. Compared with existing technologies that always operate in a high-complexity mode, increasing computational and power consumption, the solution provided in this application triggers latency updates and APA re-estimation only when the echo suppression effect deteriorates, reducing the average computational load, through ERLE index event triggering. Compared with existing technologies that are mainly geared towards real-time translation and long-distance voice scenarios, the solution provided in this application is specifically optimized for half-duplex walkie-talkies, emphasizing low latency, low power consumption, and high real-time performance, better meeting the engineering needs of low-end communication equipment.

[0027] To achieve efficient and low-latency echo cancellation, this application embodiment uses an RTP loop-triggered mechanism driven by echo expectation events. This mechanism uses the discourse right request event as the core trigger source for echo model initialization and updating. By sending a private RTP packet with a loop-triggered identifier at a specific time, it achieves dynamic perception and model adaptation of echo path latency.

[0028] In some embodiments, Figure 2 A schematic diagram of a system for enabling intercom terminal communication is shown, such as... Figure 2 As shown, the system includes an intercom transmitter 20, an intercom receiver 21, and a server 22. The server 22 consists of a signaling gateway 221, an intercom platform 222, a media gateway 223, and a media service 224. The coordinated operation of these functional modules ensures efficient operation of the entire process, from requesting the right to speak to the initialization and updating of the echo cancellation model.

[0029] The functional modules mentioned above will be described in detail below.

[0030] In this embodiment, the intercom terminal includes an intercom transmitter and an intercom receiver. The intercom terminal includes an AEC (Acoustic Echo Cancellation) component, which is used to eliminate local call echoes. For example, the echo cancellation component in the intercom transmitter is used by the AEC component to eliminate echoes at the intercom transmitter. In this embodiment, at the intercom transmitter, after the user presses the PTT (Push-to-Talk) button, the intercom transmitter initiates a call request and sends an audio packet with a loopback identifier. It receives the loopback packet to update the AEC component, while the intercom receiver receives and processes the audio packet from the intercom transmitter.

[0031] In this embodiment, the signaling gateway is used to process signaling requests from the intercom terminal, such as requests for the right to speak, and forwards the signaling information to the intercom platform for further processing.

[0032] In this embodiment, the intercom platform, as the core control unit of the system, is used to manage the creation and maintenance of intercom relationships. In this embodiment, the intercom platform can receive signaling requests forwarded by the signaling gateway and coordinate with the media gateway and media services to establish intercom relationships.

[0033] In this embodiment, the media gateway is used for media service gateway access and distribution. The media service is used to process the actual media stream data, including but not limited to the forwarding of audio packets and loopback audio packets. In addition, the media gateway can also send the processed audio packets to the intercom receiver, and generate loopback audio packets for use by the AEC component of the intercom transmitter.

[0034] The following describes the interaction process between the various modules mentioned above.

[0035] First, after the user presses the PTT button on the intercom transmitter, the transmitter sends a request signal to request the right to speak. This request signal includes audio data. The request signal first passes through the AEC component of the transmitter to perform echo cancellation on the audio data. Then, the request signal is transmitted to the intercom platform via the signaling gateway, where the intercom platform manages and schedules the intercom session. Next, the intercom platform establishes the intercom relationship and sends the audio data to the media gateway. After further processing by the media gateway, the audio data (including loopback audio data) is forwarded to the media service. The media service distributes the processed audio data to the intercom receiver, where the AEC component performs echo cancellation on the received audio data to ensure clear call quality.

[0036] The following describes the method for updating filter parameters provided in the embodiments of this application, taking the intercom transmitter as the execution subject.

[0037] Figure 3 A flowchart illustrating a method for updating filter parameters according to an embodiment of this application is shown. Figure 3 As shown, the method includes the following steps S301 to S305: Step S301: In response to a call command, obtain the echo return loss gain corresponding to the echo cancellation component and the first audio input data.

[0038] In step S301, at the intercom transmitter, after the user presses the PTT button, the intercom transmitter generates a call command. At this time, the intercom transmitter obtains the echo return loss gain stored locally and the first audio input data collected by the audio acquisition component (e.g., microphone).

[0039] It should be noted that, in this embodiment, the echo return loss gain is used to characterize the echo cancellation capability of the intercom transmitter. In other words, the echo return loss gain measures the effectiveness of echo suppression and is a commonly used indicator in audio communication systems. A higher echo return loss gain indicates that the echo can be effectively canceled, while a lower gain indicates severe residual echo. That is, if the echo return loss gain is too low, it indicates that the echo cancellation component of the intercom transmitter has a weak echo cancellation capability, and the filtering parameters of the echo cancellation component need to be updated and optimized.

[0040] In addition, in this embodiment of the application, the first audio input data is the audio data sent from the intercom transmitter to the intercom receiver through the server. The first audio input data is the audio data collected by the audio acquisition component of the intercom transmitter. The first audio input data includes the voice audio emitted by the user holding the intercom transmitter, and may also include the audio data contained by the audio playback component (e.g., speaker) of the intercom transmitter. The audio data is the echo.

[0041] For example, after the user presses the PTT button on the intercom transmitter, the intercom transmitter sends a speech right request to the intercom platform via HTTP (Hypertext Transfer Protocol) to request session permission; at the same time, the intercom transmitter constructs and sends a special UDP (User Datagram Protocol) RTP loopback detection packet (PT sets and marks bit 5, i.e., lp=0) to the intercom platform for subsequent delay measurement and echo cancellation component initialization.

[0042] Step S302: When the echo return loss gain is less than the gain threshold, construct the first audio message based on the first audio input data, the loopback identifier, and the timestamp.

[0043] In step S302, the gain threshold of the echo return loss gain can be determined according to the terminal type corresponding to the intercom transmitter. In this embodiment, when the echo return loss gain is less than the gain threshold, the echo cancellation performance of the echo cancellation component is low, and the filtering parameters of the echo cancellation component need to be optimized; while when the echo return loss gain is greater than or equal to the gain threshold, the echo cancellation performance of the echo cancellation component is high, and the filtering parameters of the echo cancellation component do not need to be optimized.

[0044] In step S302, the first audio message is an RTP message, which includes a data field, a loopback identifier field, and a timestamp field, used to store the first audio input data, the loopback identifier, and the timestamp, respectively. The loopback identifier (lp) has a target identifier value, which is used by the server to return a message to the intercom sender. The timestamp records the time information of the first audio message at various nodes, such as the time the intercom sender transmits the first audio message, the time the intercom platform receives and transmits the first audio message, and the time the media service sends the first audio message to the intercom sender.

[0045] For example, during a conversation between the intercom transmitter and receiver, when the echo return loss gain of the transmitter falls below the gain threshold Q or the conditions for periodic parameter updates are met, the transmitter sends a new RTP packet. This RTP packet carries the actual voice content and is marked with an echo identifier lp=0 to indicate that it is a loopback packet. Upon recognizing this RTP packet, the intercom platform not only sends it back to the transmitter but also forwards it to all relevant receivers, enabling them to play the audio and collect the acoustic echo for more accurate filter parameter updates.

[0046] Step S303: Send the first audio message to the server so that the server sends the first audio message to the intercom sender and the intercom receiver.

[0047] For example, after receiving an RTP loopback packet, the intercom platform in the server identifies the loopback identifier lp=0 in the loopback packet. At this time, the intercom platform sends the RTP loopback packet back to the intercom transmitter as is, thus forming a closed loop path of "intercom transmitter → intercom platform → intercom transmitter". This process does not involve any intercom receiver and is only used to determine the round-trip delay between the intercom transmitter and the intercom platform.

[0048] Step S304: Determine the transmission delay between the intercom transmitter and the server based on the timestamp in the first audio message returned by the server.

[0049] In step S304, after receiving the first audio message returned by the server, the intercom transmitter can obtain the time information of the first audio message passing through each node from the timestamp field of the first audio message, so that the intercom transmitter can determine the transmission delay between the intercom transmitter and the server.

[0050] Step S305: Update the filtering parameters of the echo cancellation component based on the transmission delay.

[0051] In step S305, after receiving the loopback packet returned by the server (which may contain acoustic feedback after being played and collected by the receiving end, or only audio data forwarded by the intercom platform), the intercom transmitter combines the most recent M-frame reference signal and the error vector, and uses an improved affine projection algorithm to update the coefficients (i.e., filtering parameters) of the filter in the echo cancellation component, so as to realize online adaptive optimization of the filtering parameters of the echo cancellation component, thereby improving the convergence speed and steady-state performance while ensuring voice quality.

[0052] Based on the scheme defined in steps S301 to S305 above, it can be understood that in this embodiment, the update of the filtering parameters of the echo cancellation component is triggered only when the echo return loss gain of the echo cancellation component at the intercom transmitter is small, thereby effectively reducing the average computational load and energy consumption, and reducing computational costs. Moreover, in this embodiment, during the process of updating the filtering parameters, the communication protocol is extended through the first audio input data, the loop closure identifier, and the timestamp, and loop closure control is implemented at the software level. Delay detection and parameter updates can be completed directly using audio data, reducing hardware costs and adaptation difficulties.

[0053] Therefore, the solution provided in this application embodiment can effectively reduce the cost of updating the parameters of the echo cancellation component.

[0054] The specific implementation process of the method provided in the embodiments of this application is described below.

[0055] In some embodiments, when the intercom transmitter is used for the first time or after power-on, the intercom transmitter needs to initialize the filtering parameters of the local echo cancellation component.

[0056] Specifically, after the intercom transmitter is powered on, it sends a call request to the server and obtains the timestamp from the loopback test message returned by the server. Then, based on the timestamp, it determines the initial transmission delay between the intercom transmitter and the server, and then performs parameter initialization processing on the echo cancellation component of the intercom transmitter based on the initial transmission delay.

[0057] In the above embodiments, the call request includes at least voice right request data and loopback test message. The voice right request data includes at least the terminal identifier of the intercom receiver, and the loopback detection message includes a loopback identifier with the identifier value of the target identifier.

[0058] For example, after the intercom transmitter powers on, it sends a loopback test message to the server. In this loopback test message, the loopback identifier is the target identifier, i.e., lp=0. After receiving the loopback test message, the server recognizes the loopback identifier as the target identifier and then returns the loopback test message to the intercom transmitter.

[0059] In this embodiment of the application, after receiving the loopback test message returned by the server, the intercom transmitter identifies the loopback identifier as the target identifier. At this time, the intercom transmitter calculates the round-trip delay based on the sending and receiving timestamps and derives the one-way transmission delay. It uses this transmission delay to align the far-end reference signal of the intercom receiver with the audio input signal of the local microphone, and completes the initialization of the improved affine projection filter (such as setting initial coefficients), providing a basis for subsequent real-time echo cancellation.

[0060] In some embodiments, during a call, the intercom transmitter detects the echo return loss gain of the local echo cancellation component. When the echo return loss gain of the echo cancellation component is small, the intercom transmitter constructs a first audio message based on the first audio input data, the loopback identifier, and the timestamp.

[0061] Specifically, the intercom transmitter sets the high-order region of the payload type in the real-time transmission protocol as the loopback identifier field and sets the identifier value of the loopback identifier field to the target identifier to obtain the first message configuration data. At the same time, it fills the data field of the real-time transmission protocol with the first audio input data to obtain the second message configuration data. In addition, the intercom transmitter also records the sampling time of the first audio input data in the timestamp field of the real-time transmission protocol to obtain the third message configuration data. Finally, the intercom transmitter constructs the first audio message based on the first message configuration data, the second message configuration data, and the third message configuration data.

[0062] In this application embodiment, the general format of the Real-Time Transport Protocol (RTP) is defined in the IETF RFC 3550 standard. It is a network protocol widely used for real-time multimedia data transmission such as audio and video. It is usually carried over UDP to meet the communication requirements of low latency and high real-time performance.

[0063] For example, Figure 4 The structure of the real-time transport protocol is shown, such as Figure 4 As shown, in the standard RTP protocol, the PT field is 7 bits, used to identify the encoding format used by the RTP payload. The intercom receiver selects the corresponding decoder to restore the data accordingly.

[0064] Table 1 In this application embodiment, a proprietary RTP protocol extension format is designed to address the echo problem of intercom terminals in half-duplex communication scenarios, so as to support the intercom terminal to accurately control the loopback behavior at the data transmission layer.

[0065] To ensure broad compatibility and efficiency of the protocol, in this embodiment, a loopback control function is implemented while maintaining the standard RTP protocol structure.

[0066] It should be noted that the RTP protocol is widely used in real-time audio and video communication systems. The vast majority of terminal devices, middleware (such as session initiation protocol servers and media gateways), and network transmission equipment parse, forward, and process data based on the standard RTP header format. Therefore, any non-standard modifications to the RTP header structure (such as introducing custom extension headers or redefining the semantics of existing fields) may introduce compatibility risks. Some older devices may not recognize the extension content, leading to packets being ignored or dropped; when traversing NAT (Network Address Translation) or firewalls, changes in packet length may cause transmission anomalies; furthermore, the RTP Header Extension mechanism adds at least 4 bytes of overhead (one-byte format), which will significantly increase network load and affect transmission efficiency in low-bandwidth scenarios (such as narrowband intercom systems).

[0067] Furthermore, encapsulating private control information at the application layer requires additional packing and unpacking logic, increasing the CPU processing burden and hindering the long-term stable operation of resource-constrained walkie-talkies. In this embodiment, a lightweight, low-overhead optimization strategy is adopted: fully utilizing existing RTP protocol fields and semantically extending the payload type (PT) field without altering the protocol structure.

[0068] To enhance the concealment and robustness of the loopback identifier and prevent it from being misinterpreted as routine control information or debugging traces, the physical location of the flag bit was carefully considered in the design. Placing the loopback identifier in the least significant bit (bit 0 or bit 1) of the PT field could easily lead to misidentification. These low-order bits may be used for parity checks, padding indicators, or temporary debugging markers in some protocol implementations, and are more likely to attract attention and suspicion during network packet capture analysis, thereby reducing the system's anti-interference capability and security.

[0069] In this embodiment, the loopback flag is placed in the high-order region of the PT field, which is a byte region where the byte weight is greater than the weight threshold. Specifically, the loopback flag (lp) is set to the second high-order bit of the PT field (bit 5, corresponding to mask 0x5F), defined as the loopback flag (lp). This bit is located in the high-order region of the byte, far from common low-order control uses, and is usually considered part of the payload type in conventional RTP traffic analysis. It is not easily noticed by intermediate devices or monitoring tools, thus possessing strong concealment.

[0070] Specifically, for the audio encoding formats commonly supported by current intercom systems, such as those shown in Figure 2, OPUS audio encoding format (PT=111) and AMR (Adaptive Multi-Rate) audio encoding format (PT=112), by changing the original PT value by an offset of 32 (i.e., setting bit 5), this range conforms to the legal definition of dynamic PT in RFC 3551, and will not exceed the valid range, ensuring protocol compliance. For example, the original PT=111 (OPUS) becomes 79 after the PT&0x5F operation, which is still within the PT range. The receiving end can determine the loopback requirement through the PT. This process does not require additional fields or expansions, achieving simplicity and efficiency; only the original PT value needs to be restored before processing.

[0071] Specifically, if lp=0, it means that the RTP data packet needs to be looped back (i.e., it should be forwarded back to the source terminal by the server). If lp=1, it means that the RTP data packet does not require a loopback.

[0072] Table 2 In some embodiments, after constructing the first audio message, the intercom transmitter can send the first audio message to the server. Upon receiving the first audio message, the server detects that the loopback identifier lp=0 in the first audio message. At this point, the server returns the first audio message to the intercom transmitter. In this scenario, the intercom transmitter determines the transmission delay between itself and the server based on the timestamp in the first audio message returned by the server.

[0073] Specifically, the intercom transmitter obtains the timestamp of the first audio message from the timestamp field of the first audio message returned by the server, and obtains the data reception time of the first audio message received by the intercom transmitter based on the local clock data of the intercom transmitter; then, it determines the data transmission time based on the timestamp and the unit clock corresponding to the real-time transmission protocol; finally, the time difference between the data reception time and the data transmission time is determined as the transmission delay.

[0074] For example, the timestamp in the RTP protocol reflects the sampling time, and the unit depends on the media clock. It's important to note that this timestamp is a relative time for the current SSRC session; that is, latency cannot be calculated using absolute time. The Jitter algorithm in IETF RFC 3550 is defined as a smooth estimate of the packet arrival interval variation by the intercom receiver. The difference between the arrival time and the RTP timestamp is calculated as follows: The unit is milliseconds (ms). As shown in formula (1): (1) In formula (1), For transmission delay; The data reception time is a monotonically increasing time. This refers to the Timestamp field in the current SSRC session packet; For RTP clock units, and for OPUS encoding, For AMR encoding, .

[0075] In some embodiments, after determining the transmission delay, the intercom transmitter can update the filtering parameters of the echo cancellation component based on the transmission delay.

[0076] Specifically, the intercom transmitter first acquires the current filtering parameters of the echo cancellation component, audio input data at multiple times, and the desired output audio data. Then, based on the audio input data at multiple times and the transmission delay, it constructs multiple delayed audio input data. Next, based on the product of the multiple delayed audio input data and the current filtering parameters, it obtains the estimated output audio data at multiple times. Finally, based on the desired output audio data and the estimated output audio data, iteratively updates the current filtering parameters of the echo cancellation component to obtain the target filtering parameters.

[0077] In the above embodiments, the audio input data at multiple moments includes the audio input data at the current moment and the audio input data at multiple historical moments prior to the current moment.

[0078] The following example illustrates this point.

[0079] In a real-time intercom half-duplex communication system, the audio data sent by the intercom receiver to the intercom transmitter during the last call is played through the speaker of the intercom transmitter and then picked up by the microphone of the intercom transmitter, forming an acoustic echo path that severely interferes with the voice quality of the local user. To effectively suppress such echoes, this embodiment of the application employs an adaptive filtering method based on an affine projection algorithm and introduces echo attenuation as a core performance evaluation index.

[0080] Let the remote voice signal (i.e., the audio data sent from the receiver to the transmitter during the last call) be... The signal collected by the microphone at the intercom transmitter is .in, Includes the echo component generated after the distant speech signal is attenuated through the echo path and the local human voice. The following section describes filtering and fitting of the delay-aligned far-end speech signal. First, the aforementioned delay initialization steps are performed, assuming a known transmission delay. (Right now Then, assume that the echo received by the microphone is approximately the original signal. (Ignoring additional attenuation), we can obtain formula (2): (2) It should be noted that in formula (2), the echo and local speech are not separated; the formula is only used for the adaptive filter to estimate the entire speech. The far-end speech signal in the model treats the remainder as a residual, thus eliminating the need for unobservable modeling of the physical echo path impulse response and relying entirely on signals aligned to known delays.

[0081] Specifically, when inputting audio input data into the echo cancellation matrix, past data signals can be reused to improve the convergence speed of the adaptive filtering algorithm, i.e., data reuse. A data vector set is constructed using audio input data from the past P time steps and the desired output audio data. The weights are updated by minimizing the sum of prediction errors over these P time steps. This is based on the initialization delay. The reference input vector for the APA algorithm is constructed as shown in formula (3): (3) In formula (3), The order of the filter in the echo cancellation component indicates the past... The delay signal at each sampling point. By collecting reference vectors from the past P frames using a multi-frame input matrix, the multi-frame input matrix can be obtained. As shown in formula (4): (4) In formula (4), the matrix Each column corresponds to a frame of delayed-aligned input vector, used for parallel updates of the APA algorithm. The value of can improve convergence speed, especially when the input signal is strongly correlated (such as speech), as the filter utilizes both current and past data in a single update. The input of frames improves the convergence speed for strongly correlated speech signals.

[0082] In this embodiment, the filter coefficient vector of the filter in the echo cancellation component can be represented by formula (5): (5) In formula (5), the filter coefficient vector .

[0083] At any moment The filter output estimate can be expressed by formula (6): (6) In formula (6), This is the output estimate for the filter.

[0084] In some embodiments, during the process of updating the filter parameters, the intercom transmitter acquires the error between the estimated output audio data and the corresponding expected output audio data at multiple times to obtain the prediction error; if the prediction error is greater than or equal to the error threshold, the adjustment amount of the filter parameters is determined based on the audio input data at multiple times and the prediction error; the current filter parameters are updated using the adjustment amount, and the updated filter parameters are used as the current filter parameters of the echo cancellation component; the process returns to constructing multiple delayed audio input data based on the audio input data at multiple times and the transmission delay until the prediction error is less than the error threshold and / or the number of iterations is greater than the number of iterations threshold, and the updated filter parameters are used as the target filter parameters.

[0085] For example, the prediction error mentioned above can be determined by formula (7): (7) In formula (7), The prediction error is the difference between the actual microphone signal and the estimated output. Ideally, The delayed echo component should be fitted, while the prediction error... It mainly includes local voice and residual echo.

[0086] In some embodiments, the intercom transmitter further determines the echo return loss gain corresponding to the echo cancellation component.

[0087] Specifically, the intercom transmitter acquires the second audio input data received by the intercom transmitter under multiple historical call commands, as well as the third audio input data obtained after the second audio input data is filtered by the echo cancellation component; audio error data is obtained based on the difference between the second audio input data and the third audio input data; and echo return loss gain is obtained based on the ratio between the signal power of the second audio input data and the signal power of the third audio input data.

[0088] It should be noted that, in this embodiment, echo return loss gain is introduced as a performance indicator to measure the echo cancellation effect. Echo return loss gain is expressed in decibels (dB) and reflects the instantaneous suppression capability of the echo cancellation system. In this embodiment, echo return loss gain... It can be defined as the ratio of the input signal power to the residual error signal power, as shown in formula (8): (8) In formula (8), It is the microphone input (including echo signal); It is the output error of the adaptive filter; This indicates a sliding window estimation. The larger the value, the more effectively the echo has been eliminated.

[0089] In this embodiment of the application, when monitoring Below the preset threshold At that time, that is ( Typically set to 6dB), the intercom transmitter determines that the echo cancellation component can no longer adequately track the time-varying acoustic echo path, possibly due to environmental changes or initial delay estimation offset. At this time, the event-driven mechanism is triggered, and the RTP loopback detection process is started. By sending a dedicated loopback packet with a loopback identifier (lp=0) to the intercom transmitter, the round-trip delay is accurately measured and the actual propagation delay of the acoustic echo path is re-estimated, as shown in formula (9): (9) In formula (9), This refers to the actual transmission delay.

[0090] This loopback mechanism is implemented at the application layer, does not affect normal voice data transmission, and is activated only on demand when performance degradation is detected, featuring low overhead and high robustness.

[0091] In some embodiments, before constructing the first audio message based on the first audio input data, loopback identifier, and timestamp, the first audio input data is subjected to echo filtering processing by an echo cancellation component; after the first audio message is sent to the server, a second audio message returned by the intercom receiver through the server is received; the second audio message is parsed to obtain the audio output data returned by the intercom receiver; the audio output data is subjected to echo cancellation processing by the echo cancellation component, and the echo-cancelled audio output data is played by the audio playback component of the intercom transmitter.

[0092] In this embodiment, both the intercom transmitter and receiver are equipped with echo cancellation components. Before transmitting audio data, the intercom transmitter performs echo cancellation through its echo cancellation component before transmitting the data to the intercom receiver. After receiving the audio data, the intercom receiver performs echo cancellation again through its echo cancellation component to improve call quality.

[0093] In some embodiments, Figure 5 The flowchart illustrating the interaction between the intercom transmitter, the intercom receiver, and the server is shown, as follows: Figure 5 As shown, the interaction process includes the following steps S501 to S514: First, the user presses the PTT button on the intercom transmitter, and the intercom transmitter performs asynchronous triggering of two actions; Step S501: The intercom transmitter sends an RTP loopback packet to the server via UDP, wherein PT=x and lp=0 in the RTP loopback packet; Step S502: The server queries the intercom relationship; if no intercom relationship is found, an intercom relationship is created between the intercom sender and the intercom receiver. Step S503: The server returns an RTP loopback packet to the intercom transmitter. Step S504: The intercom transmitter calculates the transmission delay and initializes the filtering parameters in the echo cancellation component.

[0094] Secondly, during a normal conversation between the intercom transmitter and receiver, the intercom transmitter sends audio data to the intercom receiver through the server.

[0095] Step S505: The intercom transmitter detects the echo return loss gain; Step S506: When the echo return loss gain is less than the gain threshold, send an update RTP loopback packet to the server, with lp=0 in the RTP loopback packet; Step S507: If the server detects lp=0 in the RTP loopback packet, it will return an RTP loopback packet to the intercom sender. Step S508: The intercom transmitter calculates the transmission delay and updates the filtering parameters of the echo cancellation component; Step S509: The intercom transmitter performs echo cancellation on the RTP audio packet and sends it to the intercom receiver. Step S510: The intercom transmitter sends the echo-cancelled RTP audio packet to the intercom receiver via the server. Step S511: The intercom receiver receives the RTP audio packet, performs recycling and deletion again, and then plays the audio data. Step S512: After the call ends, the intercom transmitter releases the right to speak; Step S513: The server releases resources; In step S514, the server returns 200 OK to the intercom transmitter.

[0096] At this point, the call process on the intercom terminal has ended.

[0097] Through the scheme described in steps S501 to S514, loopback measurement is triggered only when the echo evaluation index is below the threshold Q during an intercom call. This avoids the waste of bandwidth and computing resources caused by periodic full calibration, reducing system load and terminal power consumption. By dynamically modifying the PT (Payload Type) field of the RTP packet to temporarily switch to a loopback audio packet, acoustic path retesting can be completed without interrupting voice transmission, ensuring call continuity while optimizing the AEC model and maintaining the echo cancellation effect. The speaking end leads the AEC model update decision, while the intercom platform is only responsible for transmitting the loopback packet and maintaining the intercom relationship. This reduces the signal processing burden of the intercom platform and fully leverages the real-time perception advantages of the terminal side.

[0098] This concludes the introduction of the methods provided in the embodiments of this application.

[0099] As can be seen from the above, the solution provided in this application fully considers the limitations of low-end intercom terminals in terms of computing power, power consumption, and hardware cost. Through event-driven mechanisms and protocol extensions, it achieves lightweight echo cancellation control. Compared with existing solutions that rely on complex modeling or additional hardware, this application has significant technical advantages in terms of adaptability, real-time performance, and resource utilization.

[0100] Specifically, in this embodiment, the APA input vector is directly constructed using the far-end signal aligned with known delays, without the need for explicit estimation of the impulse response. This method transforms echo path modeling into a signal alignment problem, relying solely on observable signals (far-end input and microphone signal) to complete filter updates. Compared to traditional methods, this application extends the proprietary RTP protocol to implement loopback control at the software layer, directly utilizing existing audio streams to complete delay detection and model updates, significantly reducing hardware costs and adaptation difficulties. It avoids the computational overhead caused by impulse response truncation and matching, making it particularly suitable for resource-constrained engineering implementations.

[0101] Furthermore, in this embodiment, echo return loss gain (ERLE) is introduced as a performance metric, and the echo delay is dynamically adjusted by continuously monitoring the ERLE value. When the ERLE falls below a threshold, delay re-estimation is triggered to ensure that the filter input signal is always aligned with the far-end reference signal. This mechanism effectively addresses the delay drift problem and improves system robustness. Moreover, this scheme only triggers updates when performance degrades, effectively reducing average computational load and energy consumption, making it suitable for deployment on low-end devices.

[0102] Furthermore, in this embodiment, a recursive engineering implementation scheme is adopted, which only requires maintaining the sliding window buffer of the far-end input signal and directly calculating the filter output and error signal, without the need for data transfer between modules. For example, the filter update process depends entirely on the input matrix of the current frame and the past M frames, avoiding the additional overhead of modular processing in the prior art.

[0103] This application embodiment also provides a filter parameter updating device, applied to a walkie-talkie transmitter, the walkie-talkie transmitter including at least an echo cancellation component for eliminating call echo, such as... Figure 6 As shown, the device 600 includes: a data acquisition module 601, a message construction module 602, a message sending module 603, a delay determination module 604, and a parameter update module 605.

[0104] The data acquisition module 601 is used to respond to the call command and acquire the echo return loss gain corresponding to the echo cancellation component and the first audio input data. The echo return loss gain is used to characterize the ability of the intercom transmitter to cancel echoes, and the first audio input data is the audio data sent by the intercom transmitter to the intercom receiver through the server. The message construction module 602 is used to construct a first audio message based on the first audio input data, the loopback identifier, and the timestamp when the echo return loss gain is less than the gain threshold. The identifier value of the loopback identifier is the target identifier, which is used by the server to return a message to the intercom sender. The message sending module 603 is used to send the first audio message to the server so that the server can send the first audio message to the intercom sending end and the intercom receiving end; The delay determination module 604 is used to determine the transmission delay between the intercom transmitter and the server based on the timestamp in the first audio message returned by the server. The parameter update module 605 is used to update the filtering parameters of the echo cancellation component based on the transmission delay.

[0105] In some embodiments, the message construction module is specifically used to set the high-order region of the payload type in the real-time transport protocol as the loopback identifier field, wherein the high-order region is a byte region with a byte weight greater than the weight threshold; set the identifier value of the loopback identifier field to the target identifier to obtain the first message configuration data; fill the first audio input data into the data field of the real-time transport protocol to obtain the second message configuration data; record the sampling time of the first audio input data in the timestamp field of the real-time transport protocol to obtain the third message configuration data; and construct the first audio message based on the first message configuration data, the second message configuration data, and the third message configuration data.

[0106] In some embodiments, the delay determination module is specifically used to obtain the timestamp of the first audio message from the timestamp field of the first audio message returned by the server; obtain the data reception time of the intercom transmitter receiving the first audio message according to the local clock data of the intercom transmitter; determine the data transmission time according to the timestamp and the unit clock corresponding to the real-time transmission protocol; and determine the time difference between the data reception time and the data transmission time as the transmission delay.

[0107] In some embodiments, the parameter update module includes: a first acquisition module, a data construction module, a data estimation module, and an iteration module. The first acquisition module is used to acquire the current filtering parameters of the echo cancellation component, audio input data at multiple times, and desired output audio data. The audio input data at multiple times includes the audio input data at the current time and audio input data at multiple historical times prior to the current time. The data construction module is used to construct multiple delayed audio input data based on the audio input data at multiple times and the transmission delay. The data estimation module is used to obtain estimated output audio data at multiple times based on the product of the multiple delayed audio input data and the current filtering parameters. The iteration module is used to iteratively update the current filtering parameters of the echo cancellation component based on the desired output audio data and the estimated output audio data to obtain target filtering parameters.

[0108] In some embodiments, the iteration module is specifically used to obtain the error between the estimated output audio data at multiple time points and the corresponding expected output audio data to obtain the prediction error; if the prediction error is greater than or equal to the error threshold, the adjustment amount of the filtering parameters is determined based on the audio input data at multiple time points and the prediction error; the current filtering parameters are updated using the adjustment amount, and the updated filtering parameters are used as the current filtering parameters of the echo cancellation component; the module returns to constructing multiple delayed audio input data based on the audio input data at multiple time points and the transmission delay, until the prediction error is less than the error threshold and / or the number of iterations is greater than the number of iterations threshold, and the updated filtering parameters are used as the target filtering parameters.

[0109] In some embodiments, the data acquisition module is specifically used to acquire second audio input data received by the intercom transmitter under multiple historical call commands, and third audio input data obtained by filtering the second audio input data by the echo cancellation component; to obtain audio error data based on the difference between the second audio input data and the third audio input data; and to obtain echo return loss gain based on the ratio between the signal power of the second audio input data and the signal power of the third audio input data.

[0110] In some embodiments, the filtering parameter updating device further includes a first filtering module and a second filtering module. The first filtering module is used to perform echo filtering on the first audio input data using an echo cancellation component before constructing the first audio message based on the first audio input data, loopback identifier, and timestamp. The second filtering module is used to receive a second audio message returned by the intercom receiver from the server after the first audio message is sent to the server; parse the second audio message to obtain audio output data returned by the intercom receiver; perform echo cancellation on the audio output data using the echo cancellation component; and play the echo-cancelled audio output data through the audio playback component of the intercom transmitter.

[0111] In some embodiments, the filter parameter updating device further includes: an initial delay determination module, used to send a call request to the server after the intercom transmitter is powered on, wherein the call request includes at least voice right application data and a loopback test message, the voice right application data includes at least the terminal identifier of the intercom receiver, and the loopback detection message includes a loopback identifier with an identifier value of the target identifier. Obtain the timestamp from the loopback test message returned by the server; determine the initial transmission delay between the intercom transmitter and the server based on the timestamp; and initialize the parameters of the echo cancellation component of the intercom transmitter based on the initial transmission delay.

[0112] The filter parameter updating device provided in this application embodiment can implement the various processes implemented in the foregoing method embodiment, and will not be described again here to avoid repetition.

[0113] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the above-described division of functional units and modules is merely an example. In practical applications, the above functions can be assigned to different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiments can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit. Furthermore, the specific names of the functional units and modules are only for easy differentiation and are not intended to limit the scope of protection of this application. The specific working process of the units and modules in the above system can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here.

[0114] Figure 7 A schematic diagram of the hardware structure of the electronic device provided in an embodiment of this application is shown.

[0115] The electronic device may include a processor 701 and a memory 702 storing computer program instructions.

[0116] Specifically, the processor 701 may include a central processing unit (CPU), an application-specific integrated circuit (ASIC), or one or more integrated circuits that can be configured to implement the embodiments of this application.

[0117] Memory 702 may include mass storage for data or instructions. For example, and not limitingly, memory 702 may include a hard disk drive (HDD), floppy disk drive, flash memory, optical disk, magneto-optical disk, magnetic tape, or Universal Serial Bus (USB) drive, or a combination of two or more of these. Where appropriate, memory 702 may include removable or non-removable (or fixed) media. Where appropriate, memory 702 may be internal or external to the integrated gateway disaster recovery device. In a particular embodiment, memory 702 is non-volatile solid-state memory.

[0118] Memory may include read-only memory (ROM), random access memory (RAM), disk storage media devices, optical storage media devices, flash memory devices, and electrical, optical, or other physical / tangible memory storage devices. Therefore, typically, memory includes one or more tangible (non-transitory) computer-readable storage media (e.g., memory devices) encoded with software including computer-executable instructions, and when the software is executed (e.g., by one or more processors), it is operable to perform the operations described with reference to the methods according to one aspect of this disclosure.

[0119] The processor 701 reads and executes computer program instructions stored in the memory 702 to implement any of the filtering parameter update methods in the above embodiments.

[0120] In one example, the electronic device may also include a communication interface 703 and a bus 710. For example, Figure 7 As shown, the processor 701, memory 702, and communication interface 703 are connected through bus 710 and complete communication with each other.

[0121] The communication interface 703 is mainly used to realize communication between various modules, devices, units and / or equipment in the embodiments of this application.

[0122] Bus 710 includes hardware, software, or both, that couples components of an electronic device together. For example, and not limitingly, the bus may include an Accelerated Graphics Port (AGP) or other graphics bus, an Enhanced Industry Standard Architecture (EISA) bus, a Front Side Bus (FSB), HyperTransport (HT) interconnect, an Industry Standard Architecture (ISA) bus, an Infinite Bandwidth Interconnect, a Low Pin Count (LPC) bus, a memory bus, a Microchannel Architecture (MCA) bus, a Peripheral Component Interconnect (PCI) bus, a PCI-Express (PCI-X) bus, a Serial Advanced Technology Attachment (SATA) bus, a Video Electronics Standards Association Local (VLB) bus, or other suitable buses, or combinations of two or more of these. Where appropriate, bus 710 may include one or more buses. Although specific buses are described and illustrated in embodiments of this application, this application contemplates any suitable bus or interconnect.

[0123] Furthermore, in conjunction with the filter parameter update methods in the above embodiments, this application embodiment can provide a computer-readable storage medium for implementation. This computer-readable storage medium stores computer program instructions; when executed by a processor, these computer program instructions implement any of the filter parameter update methods in the above embodiments.

[0124] Furthermore, in conjunction with the filter parameter update method in the above embodiments, this application embodiment can provide a computer program product for implementation. When the instructions in this computer program product are executed by the processor of an electronic device, the electronic device performs the filter parameter update method as described in any of the above embodiments.

[0125] It should be clarified that this application is not limited to the specific configurations and processes described above and shown in the figures. For the sake of brevity, detailed descriptions of known methods are omitted here. In the above embodiments, several specific steps are described and shown as examples. However, the method process of this application is not limited to the specific steps described and shown. Those skilled in the art can make various changes, modifications, and additions, or change the order of steps, after understanding the spirit of this application.

[0126] The functional modules shown in the above-described block diagram can be implemented as hardware, software, firmware, or a combination thereof. When implemented in hardware, they can be, for example, electronic circuits, application-specific integrated circuits (ASICs), appropriate firmware, plug-ins, function cards, etc. When implemented in software, the elements of this application are programs or code segments used to perform the required tasks. Programs or code segments can be stored on a machine-readable medium or transmitted over a transmission medium or communication link via data signals carried on a carrier wave. "Machine-readable medium" can include any medium capable of storing or transmitting information. Examples of machine-readable media include electronic circuits, semiconductor memory devices, ROM, flash memory, erasable ROM (EROM), floppy disks, CD-ROMs, optical disks, hard disks, fiber optic media, radio frequency (RF) links, etc. Code segments can be downloaded via computer networks such as the Internet, intranets, etc.

[0127] It should also be noted that the exemplary embodiments mentioned in this application describe methods or systems based on a series of steps or apparatus. However, this application is not limited to the order of the above steps; that is, the steps can be performed in the order mentioned in the embodiments, or in a different order, or several steps can be performed simultaneously.

[0128] The aspects of this disclosure have been described above with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this disclosure. It should be understood that each block in the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that these instructions, executable via the processor of the computer or other programmable data processing apparatus, enable the implementation of the functions / actions specified in one or more blocks of the flowchart illustrations and / or block diagrams. Such a processor can be, but is not limited to, a general-purpose processor, a special-purpose processor, a special application processor, or a field-programmable logic circuit. It is also understood that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can also be implemented by special-purpose hardware performing the specified functions or actions, or can be implemented by a combination of special-purpose hardware and computer instructions.

[0129] The above description is merely a specific implementation of this application. Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, modules, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here. It should be understood that the protection scope of this application is not limited thereto. Any person skilled in the art can easily conceive of various equivalent modifications or substitutions within the technical scope disclosed in this application, and these modifications or substitutions should all be covered within the protection scope of this application.

Claims

1. A method for updating a filter parameter, characterized by, The method is applied to a talkback sending end, and the talkback sending end at least comprises an echo cancellation component for canceling talkback echo, and the method comprises the following steps: In response to a talkback instruction, an echo return loss gain corresponding to the echo cancellation component and first audio input data are obtained, wherein the echo return loss gain is used to represent the canceling capability of the talkback sending end to echo, and the first audio input data is audio data sent by the talkback sending end to a talkback receiving end through a server; In a case where the echo return loss gain is less than a gain threshold, a first audio message is constructed based on the first audio input data, a loopback identifier and a timestamp, wherein an identifier value of the loopback identifier is a target identifier, and the target identifier is used for the server to return a message to the talkback sending end; The first audio message is sent to the server, so that the server sends the first audio message to the talkback sending end and the talkback receiving end; A transmission time delay between the talkback sending end and the server is determined according to a timestamp in the first audio message returned by the server; Filter parameters of the echo cancellation component are updated based on the transmission time delay.

2. The method of claim 1, wherein, The first audio message is constructed based on the first audio input data, the loopback identifier and the timestamp, and the method comprises the following steps: A high-bit area of a load type in a real-time transport protocol is set as a loopback identifier field, wherein the high-bit area is a byte area with a byte weight greater than a weight threshold; An identifier value of the loopback identifier field is set as the target identifier to obtain first message configuration data; The first audio input data is filled into a data field of the real-time transport protocol to obtain second message configuration data; A sampling time of the first audio input data is recorded in a timestamp field of the real-time transport protocol to obtain third message configuration data; The first audio message is constructed based on the first message configuration data, the second message configuration data and the third message configuration data.

3. The method of claim 1, wherein, The transmission time delay between the talkback sending end and the server is determined according to the timestamp in the first audio message returned by the server, and the method comprises the following steps: The timestamp of the first audio message is obtained from the timestamp field in the first audio message returned by the server; Data receiving time of the talkback sending end receiving the first audio message is obtained according to clock data of the talkback sending end locally; Data sending time is determined according to the timestamp and a unit clock corresponding to the real-time transport protocol; The transmission time delay is determined as a time difference between the data receiving time and the data sending time.

4. The method of claim 1, wherein, The filter parameters of the echo cancellation component are updated based on the transmission time delay, and the method comprises the following steps: Current filter parameters of the echo cancellation component, audio input data at multiple time points and expected output audio data are obtained, wherein the audio input data at the multiple time points comprise audio input data at a current time point and audio input data at multiple historical time points before the current time point; Multiple delayed audio input data are constructed based on the audio input data at the multiple time points and the transmission time delay; based on the product of the multiple delayed audio input data and the current filtering parameter, obtain estimated output audio data at multiple time points; based on the expected output audio data and the estimated output audio data, iteratively update the current filtering parameter of the echo cancellation component to obtain a target filtering parameter.

5. The method of claim 4, wherein, The method further comprises: obtain the error between the estimated output audio data at the multiple time points and the corresponding expected output audio data to obtain a prediction error; in the case that the prediction error is greater than or equal to an error threshold, determine an adjustment amount of the filtering parameter according to the audio input data at the multiple time points and the prediction error; update the current filtering parameter using the adjustment amount, and use the updated filtering parameter as the current filtering parameter of the echo cancellation component; return to the step of constructing multiple delayed audio input data based on the audio input data at the multiple time points and the transmission delay until the prediction error is less than the error threshold, and / or the iteration number is greater than an iteration number threshold, and use the updated filtering parameter as the target filtering parameter.

6. The method according to any one of claims 1 to 5, characterized in that, The method further comprises: obtain the echo return loss gain corresponding to the echo cancellation component, comprising: obtain second audio input data received by the talkback sending end under multiple historical call instructions and third audio input data obtained by filtering the second audio input data by the echo cancellation component; obtain audio error data according to the difference between the second audio input data and the third audio input data; 7. The method according to any one of claims 1 to 5, characterized in that, obtain the echo return loss gain according to the ratio between the signal power of the second audio input data and the signal power of the third audio input data. The method further comprises: perform echo filtering processing on the first audio input data by the echo cancellation component; after sending the first audio message to the server, the method further comprises:

8. The method according to any one of claims 1 to 5, characterized in that, receive a second audio message returned by the talkback receiving end through the server; analyze the second audio message to obtain audio output data returned by the talkback receiving end; perform echo cancellation processing on the audio output data by the echo cancellation component, and play the echo-canceled audio output data through the audio playing component of the talkback sending end. The method further comprises: after the talkback sending end is powered on, send a call request to the server, wherein the call request at least includes speech right application data and a loopback test message, the speech right application data at least includes a terminal identifier of the talkback receiving end, and the loopback detection message includes a loopback identifier with the target identifier as the identifier value; obtain the timestamp from the loopback test message returned by the server; determine the initial transmission delay between the talkback sending end and the server based on the timestamp; Parameter initialization processing is performed on an echo cancellation component of the talkback sending end based on the initial transmission delay.

9. An apparatus for updating a filter parameter, characterized by The device is applied to a talkback sending end, and the talkback sending end at least comprises an echo cancellation component for canceling call echo, and the device comprises: A data acquisition module is configured to acquire echo return loss gain corresponding to the echo cancellation component and first audio input data in response to a call instruction, wherein the echo return loss gain is used to represent the canceling capability of the talkback sending end to echo, and the first audio input data is audio data sent by the talkback sending end to a talkback receiving end through a server. A packet construction module is configured to construct a first audio packet based on the first audio input data, a loopback identifier and a timestamp in a case where the echo return loss gain is less than a gain threshold, wherein an identifier value of the loopback identifier is a target identifier, and the target identifier is used for the server to return a packet to the talkback sending end. A packet sending module is configured to send the first audio packet to the server, so that the server sends the first audio packet to the talkback sending end and the talkback receiving end. A delay determination module is configured to determine a transmission delay between the talkback sending end and the server according to the timestamp in the first audio packet returned by the server. A parameter updating module is configured to update a filter parameter of the echo cancellation component based on the transmission delay.

10. An electronic device, comprising: The electronic device comprises a processor and a memory storing computer program instructions; The processor implements the filter parameter updating method in any one of claims 1-8 when executing the computer program instructions.

11. A computer readable storage medium, characterized in that, The computer readable storage medium stores computer program instructions, and the computer program instructions are executed by the processor to implement the filter parameter updating method in any one of claims 1-8.