An audio howling suppression method and device based on an intelligent algorithm and a medium
By using intelligent algorithms to divide the audio system into frequency bands and calculate intervals, and combining frequency, gain and quality factor for composite calculations, a frequency response array is established to mark and eliminate feedback points. This solves the problem of audio quality loss and system performance degradation caused by feedback in existing technologies, and achieves precise feedback suppression and improved system adaptability.
Patent Information
- Application Number
- CN202511376914.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-09-25
- Publication Date
- 2026-02-03
- Estimated Expiration
- 2045-09-25
AI Technical Summary
Existing audio systems struggle to accurately locate and effectively suppress feedback, leading to compromised audio quality and reduced system performance. Furthermore, they lack dynamic adjustment capabilities, making them unable to adapt to complex audio environments and real-time scene changes.
By using an intelligent algorithm, audio data is acquired and synchronized to the feedback item view model. The calculation interval is divided according to frequency bands, and composite calculations are performed by combining audio frequency, gain, and quality factor to establish a frequency response array. Potential feedback points are marked, and feedback points are eliminated through frequency shifting options to ensure audio quality and system performance.
It achieves accurate identification and effective suppression of feedback, avoids misjudgment and missed judgment, protects audio quality, improves the flexibility and adaptability of the system, and adapts to the needs of different audio systems.
Smart Images

Figure CN120853603B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of audio processing technology, and in particular to an audio feedback suppression method, device, and medium based on intelligent algorithms. Background Technology
[0002] In common audio applications such as conference sound reinforcement, stage audio, and live streaming, audio systems are prone to feedback. This occurs when a microphone picks up sound from a speaker, amplifies it, and then outputs it again. This can lead to the continuous superposition and amplification of specific frequency audio signals within the system, resulting in a sharp, piercing, and continuous sound, often accompanied by an abnormal surge in audio signal amplitude. Current technologies for suppressing feedback primarily employ multi-dimensional collaboration. At the hardware level, directional microphones reduce the pickup range, feedback suppressors automatically detect and attenuate feedback frequencies, or dual-input MOSFET circuits filter out high-frequency signals. Software algorithms include frequency and phase shifting to disrupt phase conditions, notch filters to precisely attenuate feedback frequencies, and adaptive feedback cancellation techniques that eliminate feedback through speaker signal modeling.
[0003] However, current technologies for suppressing feedback still have significant shortcomings. Traditional methods rely on single frequency or amplitude indicators, which can easily lead to misjudgments or missed judgments in complex audio environments, making it difficult to pinpoint the source of feedback. Furthermore, traditional coarse methods such as full-band attenuation or simple filtering are not only ineffective at eliminating feedback but also damage normal signals, resulting in a decrease in audio fidelity. In addition, traditional methods lack dynamic adjustment capabilities and cannot adapt the suppression strategy according to real-time system status or scene changes, making it difficult to meet different needs. Summary of the Invention
[0004] This invention provides an audio feedback suppression method, device, and medium based on intelligent algorithms to solve the problem of audio quality degradation and system performance decline caused by feedback during the use of audio systems.
[0005] To achieve the above objectives, this application provides an audio feedback suppression method based on intelligent algorithms, comprising:
[0006] Acquire audio data from the audio system and synchronize it to the corresponding feedback item view model object;
[0007] The audio data is divided into calculation intervals according to the audio frequency band. Within each interval, a composite operation is performed based on the audio frequency, gain, and quality factor in the audio data to obtain the frequency response information corresponding to each frequency in the entire audio frequency band and to establish a frequency response array.
[0008] Traverse the feedback item view model objects in the audio system and mark potential feedback points. Calculate adjacent valid values in the frequency response array according to a preset mechanism to obtain a set of valid frequency response values. Define the frequency points in the set of valid frequency response values that are greater than a preset threshold and have potential feedback point marks as feedback points.
[0009] Select the corresponding frequency shift option from the preset set of frequency shift options to eliminate the howling point.
[0010] This invention first synchronizes audio data to the feedback item view model, ensuring that the data matches the actual system feedback state and avoiding blind analysis detached from the system context. Then, it divides the calculation intervals by frequency band and performs composite calculations combining audio frequency, gain, and quality factor. This allows for a more comprehensive and detailed capture of the frequency response characteristics across the entire frequency band. This segmented and multi-parameter analysis method clearly distinguishes between normal audio frequency bands and potential feedback frequency bands, eliminating the need for subsequent coarse full-band processing. This fundamentally reduces the problem of residual feedback caused by missed feedback points, directly protecting audio quality. The invention first traverses the feedback item view model objects to mark potential feedback points, then calculates adjacent valid values in the frequency response array, and finally defines feedback points based on the dual conditions of exceeding a threshold and being marked as potentially problematic. This multi-dimensional verification mechanism effectively distinguishes between real feedback and normal audio signals, avoiding the misinterpretation of normal signals as feedback suppression or missed feedback points caused by traditional single-indicator methods, thus protecting audio integrity from the root. The core of frequency shifting is to make a small, controllable shift of the frequency of the precisely located howling point. This targeted operation can break the positive feedback loop of the howling point without affecting the audio signals of other normal frequency bands.
[0011] Compared to existing technologies, this invention divides data into frequency bands and performs composite calculations to establish a precise full-band frequency response array, laying a reliable foundation for feedback identification. By traversing data to mark potential feedback points, calculating adjacent valid values, and combining threshold filtering with dual verification, the actual feedback points can be accurately located for effective elimination. Therefore, it can solve the problem of audio quality degradation and system performance decline caused by feedback during the use of audio systems.
[0012] As a preferred embodiment, the audio data is divided into calculation intervals according to audio frequency bands. Within each interval, a composite operation is performed based on the audio frequency, gain, and quality factor in the audio data to obtain the frequency response information corresponding to each frequency in the entire audio frequency band, thereby establishing a frequency response array. Specifically:
[0013] The audio data is divided into audio frequency bands, resulting in audio frequency band sets including low frequency band, mid frequency band and high frequency band.
[0014] Within each frequency band of the audio frequency band set, composite operations are performed based on the audio frequency, gain, and quality factor in the audio data to obtain the numerator and denominator coefficients of the filter, respectively; wherein, the calculation interval of each frequency band in the audio frequency band set is proportional to the wavelength of the corresponding audio signal;
[0015] Extract the discrete frequencies of the audio data within each calculation interval and convert them into angular frequencies. Calculate the frequency response results corresponding to each frequency in the entire audio frequency band based on the numerator coefficient, the denominator coefficient, and the angular frequencies.
[0016] The frequency response results corresponding to each frequency within the full audio frequency band are stored in frequency band order to establish the frequency response array.
[0017] This preferred solution divides audio data calculation intervals into frequency bands, making the calculation intervals for low-frequency, mid-frequency, and high-frequency bands proportional to the corresponding audio signal wavelengths. This avoids the problems of insufficient accuracy in the low-frequency band or redundancy in the high-frequency band caused by uniform interval calculation across the entire frequency band, and can also be specifically adapted to the signal characteristics of different frequency bands. By performing composite operations, the numerator and denominator coefficients of the filter are obtained, providing a precise filtering foundation for subsequent frequency response calculations. The discrete frequencies are converted into angular frequencies, which can adapt to the requirements of complex number domain operations, ensuring that the frequency response results can accurately reflect amplitude and phase information. By storing the response results in frequency band order to establish a frequency response array, it is possible to achieve systematic management of response data across the entire audio frequency band, providing a complete and accurate data source for subsequent howling point identification, and effectively improving the accuracy and efficiency of the early data processing for howling suppression.
[0018] As a preferred embodiment, the filter's numerator coefficients are obtained by performing composite operations based on the audio frequency, gain, and quality factor in the audio data, specifically:
[0019] Based on the audio data, the radian frequency and bandwidth parameters are calculated according to the audio frequency, sampling frequency and gain.
[0020] The bandwidth characteristic parameters are calculated based on the radian frequency and the quality factor.
[0021] Based on the parametric structure of conjugate zero pairs, the constant term and the coefficient of the second-order delay term of the molecule are calculated according to the gain normalization coefficient, the bandwidth parameter and the bandwidth characteristic parameter.
[0022] Based on the variation law of the notch wave with the frequency of the howling point, the coefficient of the first delay term of the molecule is calculated by combining the radian frequency and the frequency of the howling point.
[0023] The molecule coefficients of the filter are composed of the constant term of the molecule, the coefficient of the first delay term, and the coefficient of the second delay term.
[0024] This preferred solution calculates the radian frequency and bandwidth parameters by combining audio frequency, sampling frequency, and gain, deeply binding the parameters to the actual audio signal characteristics and avoiding theoretical calculation errors that are detached from the actual signal. Based on the radian frequency and quality factor, the bandwidth characteristic parameters can be obtained, allowing precise control of the filter's notch bandwidth and ensuring targeting of potential feedback points. Utilizing the conjugate zero-pair symmetric structure, the numerator constant and second-order delay term coefficients are calculated using the gain normalization coefficient. This ensures the notch filtering effect to weaken the feedback signal while avoiding distortion caused by signal overload through normalization. The delay term coefficients are calculated based on the correlation between the notch and feedback point frequencies, further enhancing the filter's frequency selectivity for feedback points. The final numerator coefficients allow for more accurate subsequent frequency response calculations, providing customized filtering support for feedback suppression.
[0025] As a preferred approach, the discrete frequencies of the audio data within each calculation interval are extracted and converted into angular frequencies, specifically:
[0026] For the calculation interval in the audio frequency band set, extract the discrete frequency corresponding to each interval;
[0027] Using the sampling frequency of the audio system as a reference, and based on the ratio of pi to the sampling frequency, the discrete frequency in the linear dimension is converted into the angular frequency in the angular domain dimension.
[0028] This preferred solution extracts discrete frequencies for each frequency band calculation interval, ensuring that each frequency point corresponds to the potential howling frequency to be analyzed, avoiding interference from invalid frequency points. Using the audio system sampling frequency as a benchmark, and combining pi with the scaling factor of the sampling frequency, it converts the linear discrete frequency into an angular frequency in the angular domain, solving the problem that linear frequencies cannot be directly adapted to complex domain operations. The converted angular frequency accurately reflects the correlation characteristics between the frequency and the sampling system, ensuring a high degree of match between frequency parameters and computational requirements when calculating the frequency response using the numerator and denominator coefficients. This avoids deviations in response results caused by incompatibility in frequency dimensions, providing crucial assurance for the accuracy of full-band frequency response calculation and indirectly improving the reliability of howling point identification.
[0029] As a preferred embodiment, the frequency response results corresponding to each frequency within the full-frequency band are calculated based on the numerator coefficient, the denominator coefficient, and the angular frequency, specifically as follows:
[0030] The angular frequency is converted into a complex term of a delay operator with associative coefficients;
[0031] For each element in the numerator coefficient and the denominator coefficient, a complex polynomial calculation is performed in conjunction with the complex term of the delay operator to obtain the complex sum of the numerator and the complex sum of the denominator.
[0032] For each discrete frequency point within the full audio frequency band of the audio system, complex division is performed based on the corresponding complex sum of the numerator and the complex sum of the denominator to obtain several complex results.
[0033] The modulus and argument of the complex results are extracted and integrated in frequency band order to form the frequency response results corresponding to each frequency in the full audio frequency band.
[0034] This preferred scheme converts angular frequency into a complex term of the delay operator, enabling the filter coefficients to be deeply integrated with specific frequency characteristics and accurately reflect the influence of coefficients on the signal at different frequencies. Complex polynomial calculations are performed on the numerator and denominator coefficients to obtain complex sums, integrating the correlation information between coefficients and frequencies and fully preserving the filtering characteristics. Complex division is used to obtain the complex result for each discrete frequency point, and then the modulus and argument are extracted, comprehensively reflecting the response state of each frequency and avoiding misjudgments of howling caused by focusing only on amplitude while ignoring phase. Integrating the results by frequency band ensures the completeness and orderliness of the response information across the entire audio frequency band, providing comprehensive and accurate data for subsequent judgment of whether howling exists at a frequency, significantly improving the accuracy of howling point identification.
[0035] As a preferred solution, the audio data from the audio system is acquired and synchronized to the corresponding feedback item view model object, specifically:
[0036] Based on the initial settings parameters of the audio system and the target expected scenario, several feedback item view model objects containing preset parameters are added to obtain a set of feedback item view models; wherein, the preset parameters include the audio frequency, the gain, and the quality factor;
[0037] Obtain the audio data from the audio system and synchronize the audio data to the corresponding feedback item view model object in the feedback item view model set.
[0038] This preferred solution establishes a set of feedback item view models, enabling systematic management of multiple sets of parameters, which facilitates subsequent traversal and marking of potential howling points. Synchronizing the acquired audio data to the corresponding model object ensures that the model data and the actual audio signal are consistent in real time, avoiding howling point marking errors caused by data disconnection. It provides an accurate and unified data carrier for subsequent traversal of model objects to mark potential howling points, effectively improving the reliability and adaptability of data preparation in the early stage of howling recognition.
[0039] As a preferred embodiment, after defining the frequency points in the frequency response effective value set that are greater than a preset threshold and have potential howling point markers as howling points, the method further includes:
[0040] The system can acquire adjustment parameters in real time based on the user's adjustments to the audio system according to the identified feedback points.
[0041] The adjustment parameters are integrated according to a preset time window, and the feedback point of the audio system is eliminated based on the integrated adjustment parameters.
[0042] This preferred solution can quickly respond to user intervention needs based on actual howling conditions by acquiring user adjustment parameters in real time, avoiding the lack of flexibility caused by the system relying solely on automatic identification; integrating adjustment parameters according to a preset time window can filter parameter fluctuations caused by frequent user operations, ensuring parameter stability and avoiding system processing disorder caused by instantaneous adjustments; eliminating howling points based on the integrated parameters can specifically solve identified howling problems and improve the suppression effect.
[0043] As a preferred embodiment, the set of frequency shift options is generated based on the frequency range of the audio system and the target frequency shift requirement parameters.
[0044] This preferred solution determines the option boundaries based on the frequency range of the audio system, avoiding the problem of ineffective suppression caused by frequency shifting options exceeding the system's effective operating frequency band, and ensuring that the options are practically operable. By generating options in combination with the target frequency shifting requirement parameters, it can adapt to the feedback suppression requirements in different scenarios, improving the scenario adaptability of the solution. The generated set of frequency shifting options can directly provide effective support for selecting the corresponding frequency shifting option to eliminate feedback points, avoiding suppression failure due to unreasonable options, significantly improving the flexibility and success rate of feedback suppression, and adapting to the differentiated needs of different types of audio systems.
[0045] This application also provides an audio feedback suppression device based on intelligent algorithms, including a data module, an array module, a feedback module, and a cancellation module;
[0046] The data module is used to acquire audio data from the audio system and synchronize it to the corresponding feedback item view model object.
[0047] The array module is used to divide the audio data into calculation intervals according to the audio frequency band. Within each interval, a composite operation is performed based on the audio frequency, gain, and quality factor in the audio data to obtain the frequency response information corresponding to each frequency in the entire audio frequency band and to establish a frequency response array.
[0048] The feedback module is used to traverse the feedback item view model object in the audio system and mark the target potential feedback points, calculate the adjacent valid values in the frequency response array according to a preset mechanism to obtain the set of valid frequency response values, and define the frequency points in the set of valid frequency response values that are greater than a preset threshold and have potential feedback point marks as feedback points.
[0049] The elimination module is used to select the corresponding frequency shift option from a preset set of frequency shift options to eliminate the howling point.
[0050] This application also provides a storage medium storing a computer program, which is called and executed by a computer to implement the audio howling suppression method based on an intelligent algorithm as described above. Attached Figure Description
[0051] Figure 1 This is a flowchart illustrating an audio feedback suppression method based on an intelligent algorithm provided in an embodiment of this application.
[0052] Figure 2 This is a schematic diagram of an audio feedback suppression device based on an intelligent algorithm provided in an embodiment of this application. Detailed Implementation
[0053] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0054] In the description of this application, unless otherwise stated, "a number" means two or more.
[0055] The audio feedback suppression method based on intelligent algorithms provided in this application aims to solve the problems of low feedback point detection accuracy, poor feedback suppression effect and lack of dynamic adjustment capability in existing audio feedback suppression methods, thereby providing a more accurate, efficient and flexible feedback suppression solution for audio systems.
[0056] Example 1:
[0057] Please see Figure 1 The embodiments of this application provide an audio howling suppression method based on intelligent algorithms, including S1~S4, and the specific implementation steps are as follows:
[0058] S1. Obtain the audio data from the audio system and synchronize it to the corresponding feedback item view model object.
[0059] Step S1 in this embodiment includes S1.1 to S1.2; wherein, S1.1 is the process of establishing a set of feedback item view models (FeedbackItemObsers set) and acquiring audio data, and S1.2 is the process of establishing a set of frequency shift options (ShiftFrequencyObsers set), specifically as follows:
[0060] S1.1 During the audio system startup phase, the InitFeedbackControl method is called based on the constructor of FeedbackSuppUcVM to complete the system initialization operation, laying the foundation for subsequent core functions such as audio parameter processing and smoothing adjustment. Here, "audio system" refers to various professional or consumer-grade audio processing devices that require solutions to feedback issues, such as live performance sound systems, conference sound reinforcement systems, and music playback equipment.
[0061] Based on the initial settings and target scenario of the audio system, several FeedbackItemVM objects with preset parameters are added to different frequency ranges, resulting in a FeedbackItemObsers collection. The preset parameters include audio frequency, gain, and quality factor. Taking a basic audio playback system as an example, multiple FeedbackItemVM objects can be added for the 20Hz to 20kHz audio frequency band. Each object is configured with preset parameters such as Frequency, Gain, and Q-factor. These FeedbackItemVM objects are stored uniformly in this collection, providing basic data support for subsequent audio signal processing and howling point analysis.
[0062] The following provides a detailed explanation of the parameter types and functions included in the feedback item view model object:
[0063] ①PointType: Specifies the type of feedback point, which can be categorized as non-existent, fixed, or dynamic. Different types of points have different characteristics and processing methods in feedback point analysis and handling. ②Mode: Indicates the operating mode, with two options: automatic and manual. In automatic mode, the system adjusts parameters according to a pre-defined algorithm; in manual mode, the user can operate the system manually. ③Frequency: Represents the audio frequency, used to determine the pitch of the audio. ④Gain: Represents the gain, which affects the volume of the audio. ⑤Q: Represents the quality factor, which affects the timbre of the audio. ⑥NotchSwitch: Indicates the notch switch status, used to control whether the notch filtering function is on or off.
[0064] For example, in a music playback audio system, for the played music audio, the control system creates a FeedbackItemVM object, sets the Frequency to 440Hz (corresponding to note A), the Gain to 3dB (moderately increasing the volume), the Q value to 10 (giving the audio a richer timbre), and the NotchSwitch to be off. This information is stored in the FeedbackItemObsers collection. When the user adjusts the audio playback effect, the system processes it accordingly based on these parameters, providing a basis for analyzing feedback points and subsequent feedback suppression.
[0065] Based on the InitCacheData method, multiple sub-methods are used to perform real-time data acquisition and storage operations from the audio system's storage area (such as Address.RegIntFeedback and its related addresses) to obtain the audio data of the audio system. The audio data is then synchronized to the corresponding feedback item view model object in the feedback item view model collection. The audio data includes important information about the audio system, including but not limited to the audio frequency, gain, and notch switch status.
[0066] The specific data acquisition and processing logic of each sub-method is as follows:
[0067] ① Frequency Shift Data Acquisition (InitFreqData): Calls the GetCurrentData interface of the SceneDataManage module to extract the original frequency shift-related data from the specified storage area of the system; then uses StructMapp.ByteToStruct <sharedushortstruct3>This utility class parses the acquired byte stream data and converts it into SharedUshortStruct3 structured data for storage. Taking a sound reinforcement system as an example, the frequency shift data read by the system from the storage area can specifically represent the overall frequency shift of the audio signal; after being converted into a SharedUshortStruct3 structure, this structured data can be efficiently extracted and called by the system, providing standardized and directly usable data support for subsequent frequency shift adjustment operations and parameter calculations for adapting to multi-mode audio parameter smoothing algorithms.
[0068] ② Notch Data Acquisition (InitWaveData): Notch-related data is acquired through the SceneDataManage module and encapsulated as FeedbackNotchStruct structured data for storage. The notch data acquired here specifically includes key parameters such as the notch frequency range and notch attenuation depth. This structured data can be directly used for subsequent precise analysis and adjustment of notch characteristics, ensuring that notch processing meets the parametric smoothing requirements of the audio system.
[0069] ③ Notch Point and Howl Point Configuration Data Acquisition (InitWaveConfigurationData and InitHowlPointConfigurationData): The InitWaveConfigurationData sub-method extracts notch point configuration information from the system and encapsulates it into NotchPointStruct structured data; the InitHowlPointConfigurationData sub-method extracts howl point-related configuration data and encapsulates it into NotchPointFreGainStruct structured data. This configuration data is the core basis for the system to achieve precise notch characteristic adjustment and precise howl point location. It includes not only the specific frequency position of the notch point, but also key parameters such as the target frequency and corresponding gain of the howl point, which can directly provide accurate data support for subsequent howl point calculation and analysis and audio parameter smoothing processing.
[0070] ④ Data Storage: The collected audio-related data will be categorized and stored in different dedicated structures according to their data properties to achieve orderly data management and rapid retrieval. Among them, SharedUshortStruct3 is used to store data related to the frequency shift function, providing basic data support for the frequency shift processing module; FeedbackNotchStruct is used to store basic notch information, ensuring parameter traceability of the notch function; NotchPointStruct is used to store detailed parameters of the notch point, including key information such as notch frequency and bandwidth; NotchPointFreGainStruct is used to store the frequency and gain data of the howling point, providing accurate parameter input for subsequent howling suppression algorithms.
[0071] TcpManage is responsible for the core duties of data communication and transmission within the system. By calling the SendCurrentAsynMessage asynchronous method, it sends various types of data, after collection and classification, to other functional modules of the system or external related devices to achieve smooth data transmission within the system and real-time synchronization of information between modules, providing data interaction guarantee for the stable operation of the multi-mode audio parameter smoothing algorithm.
[0072] In this embodiment S1.1, by establishing a set of feedback item view models, multiple sets of parameters can be systematically managed, which facilitates subsequent traversal and marking of potential howling points. Synchronizing the acquired audio data to the corresponding model object can ensure that the model data and the actual audio signal are consistent in real time, avoiding howling point marking errors caused by data disconnection. It provides an accurate and unified data carrier for subsequent traversal of model objects to mark potential howling points, effectively improving the reliability and adaptability of data preparation in the early stage of howling recognition.
[0073] S1.2. Based on the frequency range of the audio system and the target frequency shifting requirements, generate and initialize a set of frequency shifting options (ShiftFrequencyObsers set) to provide users with operable frequency shifting adjustment options. The system will generate multiple frequency shifting options based on the frequency coverage of the audio system and common frequency shifting application requirements in the industry. Users can filter and select the appropriate frequency shift value to adjust the audio signal by combining the real-time effect of audio playback with the actual usage environment requirements. This can effectively avoid feedback and further optimize the audio output effect.
[0074] In this embodiment, S1.2 determines the option boundary based on the frequency range of the audio system, which can avoid the problem of ineffective suppression caused by the frequency shift option exceeding the effective working frequency band of the system, and ensure that the option has practical operability; the option is generated by combining the target frequency shift requirement parameters, which can adapt to the howling suppression requirements in different scenarios and improve the scenario adaptability of the solution; the generated set of frequency shift options can directly provide effective support for selecting the corresponding frequency shift option to eliminate howling points, avoid suppression failure caused by unreasonable options, significantly improve the flexibility and success rate of howling suppression, and adapt to the differentiated requirements of different types of audio systems.
[0075] S2. Divide the audio data into calculation intervals according to the audio frequency band. Within each interval, perform composite calculations based on the audio frequency, gain, and quality factor in the audio data to obtain the frequency response information corresponding to each frequency in the entire audio frequency band and establish a frequency response array.
[0076] In this embodiment, step S2 includes S2.1 to S2.2, wherein S1.1 is the calculation of the numerator coefficient B of the filter. coeff and denominator coefficient A coeff The process, S1.2, is based on the numerator coefficient B. coeff and denominator coefficient A coeff Establish a frequency response array (y outs The process of (array) is as follows:
[0077] S2.1. Divide audio data based on audio frequency bands to obtain audio frequency band sets including low frequency band, mid frequency band and high frequency band respectively;
[0078] Based on the EQ_FreqZ_2 method, within each frequency band of the audio frequency band set, the radian frequency w and bandwidth parameter A are calculated based on the audio data, according to the audio frequency, sampling frequency and gain.
[0079] The bandwidth characteristic parameter a is calculated based on the radian frequency w and the quality factor.
[0080] Based on the parametric structure of conjugate zero pairs, the constant term B of the molecule is calculated using the gain normalization coefficient, bandwidth parameter A, and bandwidth characteristic parameter a. coeff[0] and the coefficient of the second-order delay term B coeff[2] ,
[0081] Based on the variation of the notch wave frequency with the howling point frequency, and combining the radian frequency w and the howling point frequency, the coefficient B of the first-order delay term in the numerator is calculated. coeff[1] ;
[0082] From the constant term B of the molecule coeff[0] The coefficient of the first-order delay term, B coeff[1] and the coefficient of the second-order delay term B coeff[2] The numerator coefficients B that together constitute the filter coeff (B coefficient).
[0083] Similarly, using logic and algorithms similar to those used to calculate the numerator coefficients of a filter, the denominator coefficients A of the filter are calculated based on the input parameters of the audio system (center frequency, gain, and quality factor). coeff (Coefficient A).
[0084] The specific calculation method is as follows:
[0085] (a) The numerator coefficients (B coefficients) of the filter:
[0086] ①Radian frequency w:
[0087] First, the radian frequency w is calculated using the formula w = 2 × π × Fc / fs, where Fc represents the filter center frequency and fs represents the audio system sampling frequency. The core value of this step lies in converting the "ordinary frequency (Hz)" into a "radian frequency" that can be directly used in filter design within digital signal processing (DSP). Physically, this establishes a correlation between the periodic characteristics of the audio signal and the discrete sampling characteristics of the DSP, ensuring that subsequent calculations can accurately reproduce the frequency response of the audio in the digital domain. Taking the 44.1kHz standard sampling frequency (fs = 44100Hz) adapted by the algorithm library as an example, if the center frequency Fc equals 1kHz, substituting it into the formula yields w ≈ 2 × 3.14 × 1000 / 44100 ≈ 0.142 rad. This value accurately characterizes the angular frequency shape of a 1kHz frequency in a 44.1kHz sampling system, laying the foundation for matching the filter coefficients with the digital domain frequency response.
[0088] ②Bandwidth parameter A:
[0089] The gain g (in dB) at the center frequency is converted into the bandwidth parameter A using the formula A = 10^(g / 40). In audio systems, gain is usually expressed in dB as a relative change in signal strength, while filter coefficient calculations need to be based on a linear amplitude scale. Therefore, this conversion is a key bridge connecting the "user-perceived gain parameter" and the "filter-calculated amplitude parameter". For example, when the user sets the center frequency gain g = 6dB, substituting into the formula yields A = 10^(6 / 40) = 10^0.15 ≈ √2 ≈ 1.414. This result intuitively reflects the linear amplification factor of the gain on the signal amplitude, that is, the amplitude is increased to √2 times the original signal. This provides a quantitative basis for the "impact of gain on frequency response" in subsequent coefficient calculations, supporting the algorithm library's smooth transition processing of the gain parameter.
[0090] ③Bandwidth characteristic parameter a:
[0091] The bandwidth characteristic parameter 'a' is calculated using the formula a = sin(w) / (2×Q), where Q is the quality factor. A larger Q value results in a narrower filter bandwidth and stronger selectivity for signals near the center frequency. This step transforms the filter's bandwidth characteristics into an intermediate variable 'a' that can participate in coefficient calculations by combining the sine value of the radian frequency 'w' and the quality factor Q. A smaller 'a' value corresponds to a narrower filter bandwidth, while a larger 'a' value corresponds to a wider filter bandwidth. This parameter 'a' is an intermediate variable related to the filter bandwidth, calculated using sin(w) combined with the quality factor Q, and it affects subsequent filter coefficient calculations.
[0092] ④ Calculate the gain normalization coefficient G and obtain the elements of the filter's numerator coefficients:
[0093] First, calculate the gain normalization coefficient G using the formula G = 1 / (1 + a / A). Then, based on G, calculate the gain normalization coefficient B using formula B. coeff[0] = G×(1 + a×A), B coeff[1] = -2×G×cos(w), B coeff[2] = G×(1 - a×A) Derivation of the elements of the B coefficients. The B coefficients calculated above accurately reflect the frequency response characteristics of the audio system under the current input parameters (center frequency, gain, quality factor), where B... coeff[0] B coeff[1] and B coeff[2] As the numerator coefficients of a second-order IIR filter, they do not act in isolation, but rather comprehensively represent the influence of frequency, gain, and quality factor on the audio system by integrating the radian frequency (corresponding to the frequency parameter), linear amplitude (corresponding to the gain parameter), and bandwidth characteristic parameter (corresponding to the quality factor). Taking the adjustment of the quality factor Q as an example: when the Q value changes, it first alters the value of G through the bandwidth characteristic parameter 'a', which in turn leads to changes in B... coeff The changes in the values of the elements affect the filter's response to signals of different frequencies, thus resulting in different frequency characteristics in the final frequency response.
[0094] (ii) The denominator coefficients (A coefficients) of the filter:
[0095] A coefficient (A) coeff The calculation of ) and the B coefficient mentioned above (B) coeff The calculation of the B coefficient employs a consistent core logic and algorithm framework, all derived based on the core input parameters of the audio system—center frequency, gain, and quality factor. The specific calculation process is as follows: First, the radian frequency w is calculated using the formula w = 2×π×Fc / fs. Then, the gain g is converted to the bandwidth parameter A using A = 10^(g / 40), and the bandwidth characteristic parameter a is calculated using a = sin(w) / (2×Q). Finally, based on these parameters and combined with the gain normalization coefficient G defined in the B coefficient calculation, the three core elements of the A coefficient are derived, namely A... coeff[0] = 1.0, A coeff[1] = -2×G×cos(w), A coeff[2] = G×(1 - a / A). As the denominator coefficients of the second-order IIR filter, the A coefficient and the B coefficient together constitute a key parameter pair describing the core characteristics of the filter. Their synergistic effect directly determines the filtering selectivity and attenuation law of the audio system for different frequency signals, and plays a decisive role in the final frequency response calculation.
[0096] In this system, the calculation interval for each frequency band in the audio frequency band set is proportional to the wavelength of the corresponding audio signal; that is, the longer the wavelength, the denser the calculation interval design, in order to match the accuracy requirements of the algorithm for analyzing parameters of different frequency bands. The specific logic is implemented using the `CalculatePoints` function: for the entire audio frequency range from 20Hz to 48000Hz, a differentiated calculation interval design is adopted according to the characteristics of each frequency band, balancing the accuracy requirements of the smoothing algorithm with the goal of low computational complexity, as detailed below:
[0097] ① For the low-frequency band (20-400Hz), a high-density calculation interval is used. Audio signals in this band have longer wavelengths and more complex characteristics during propagation and reflection. Even subtle frequency fluctuations can significantly impact subsequent core processing steps such as gain adjustment and filter coefficient smoothing. Therefore, more refined frequency band analysis is needed to ensure smoothing effectiveness. For example, by setting the calculation interval to 1Hz, the system will sample and analyze parameters at each 1Hz frequency node within this band, providing accurate low-frequency data support for subsequent smoothing algorithms.
[0098] ② For the mid-frequency band (400-20000Hz), a gradient-increasing sparsity calculation interval design is adopted. For example, the 400-1000Hz range is set with a 4Hz interval, the 1000-2000Hz range is adjusted to a 10Hz interval, and the interval is gradually increased as the frequency increases. The audio signal characteristics in this frequency band are relatively stable, and the impact of frequency fluctuations on parameter smoothing is less than that in the low-frequency band, so it is not necessary to maintain the same analysis density as the low-frequency band. This gradient design can meet the accuracy requirements of the smoothing algorithm in the mid-frequency band, while reasonably reducing the consumption of computing resources, and is suitable for low-power application scenarios such as embedded devices.
[0099] ③ For the high-frequency band (20000-48000Hz), a higher sparsity calculation interval is adopted, such as setting it to 200Hz or 300Hz. From the perspective of audio signal characteristics, the frequency response of this band is less sensitive to the parameter smoothing effect. In addition, considering the core requirement of real-time performance in this algorithm library, appropriately relaxing the calculation density can further optimize the system's computing efficiency while fully ensuring smoothing performance, avoiding redundant calculations that occupy DSP resources, and ensuring the real-time response of the multi-mode smoothing algorithm.
[0100] In this embodiment, S2.1 calculates the radian frequency and bandwidth parameters by combining the audio frequency, sampling frequency, and gain, thus deeply binding the parameters to the actual audio signal characteristics and avoiding theoretical calculation errors that are detached from the actual signal. Based on the radian frequency and quality factor, the bandwidth characteristic parameters can be obtained, which can accurately control the notch bandwidth of the filter and ensure targeting of potential howling points. Relying on the conjugate zero-pair symmetric structure, the numerator constant term and the second-order delay term coefficient are calculated by combining the gain normalization coefficient. This can ensure the notch effect to weaken the howling signal and avoid distortion caused by signal overload through normalization. The delay term coefficient is calculated according to the correlation between the notch and howling point frequencies, which further enhances the frequency selectivity of the filter for howling points. The final numerator coefficient can make the subsequent frequency response calculation more accurate, providing customized filtering support for howling suppression.
[0101] S2.2 For the calculation intervals in the audio frequency band set, extract the discrete frequency k corresponding to each interval; using the sampling frequency of the audio system as a reference, and based on the ratio coefficient of pi and the sampling frequency, convert the discrete frequency k in the linear dimension into the angular frequency freq in the angular domain dimension. Specifically, the conversion of discrete frequency to angular frequency freq is achieved by calculating freq = Math.PI × k / fs; where k is the discretization parameter of frequency, used to quantify the discrete frequency points in the audio system; and fs is the sampling frequency of the audio system, a core parameter connecting digital and analog audio signals. The core purpose of this conversion is to transform linear frequency into angular frequency, laying the foundation for subsequent core operations such as filter frequency response analysis and parameter smoothing calculation in the complex domain. In the audio parameter smoothing scenario focused on in this application embodiment, this complex domain operation has unique advantages: it can simultaneously carry the amplitude and phase information of the signal, and can more accurately support key aspects such as coefficient design, frequency response characteristic analysis, and parameter transition smoothness verification of second-order IIR filters, which is crucial for avoiding phase abrupt changes during filtering and ensuring the naturalness of audio output. For example, when processing a specific discretized frequency characterization parameter k, after converting it into the corresponding angular frequency freq using the above formula, the angular frequency can be directly used as the input parameter for subsequent complex polynomial operations, providing data support for accurately calculating the filter's response intensity and phase shift of the signal at that frequency, and ensuring that the smoothing algorithm's adjustment of the audio parameters in that frequency band meets the design expectations.
[0102] Transform the angular frequency freq into a complex term of a coefficient-associative delay operator;
[0103] against molecule coefficient B coeff and denominator coefficient A coeff Each element in the formula is combined with the complex terms of the delay operator to perform complex polynomial calculations, resulting in the complex sum of the numerator and the complex sum of the denominator.
[0104] For each discrete frequency point within the full audio frequency band of the audio system, perform complex division calculations based on the corresponding complex sum of the numerator and the complex sum of the denominator to obtain several complex results;
[0105] Extract the modulus and argument of several complex number results, integrate them in frequency band order to form the frequency response results corresponding to each frequency in the full audio frequency band;
[0106] The frequency response results corresponding to each frequency within the full audio frequency band are stored in band order to establish a frequency response array (y). outs An array, also known as the Feedback_YOut array.
[0107] The above is based on angular frequency freq and numerator coefficient B. coeff and denominator coefficient A coeff The process of creating the frequency response array is as follows:
[0108] ① Perform complex polynomial addition:
[0109] Transform the angular frequency freq into a complex term of a coefficient-associative delay operator;
[0110] Call the Complex_Polynomial_Addition method in the algorithm library to adjust the numerator coefficient B. coeff Denominator coefficient A coeff Complex polynomial addition is performed on the complex terms of the delay operator corresponding to the angular frequency freq to obtain the complex polynomial addition result. The core of this operation is to deeply correlate and integrate the B coefficients, A coefficients, and angular frequency freq, and through the addition logic in the complex field, to combine the numerator coefficients B at different frequencies. coeff and denominator coefficient A coeff The influence of the result is incorporated into the calculation to form an intermediate complex polynomial result that can be used for subsequent division operations.
[0111] ② Perform complex division and store the result:
[0112] The `Complex_Division` method from the algorithm library is called to perform a complex division operation on the calculated complex polynomial addition result. Through this operation, the system will integrate the numerator coefficient B. coeff and denominator coefficient A coeff The filtering characteristics and the frequency information corresponding to the angular frequency freq are used to calculate and store the frequency response results of each discrete frequency point in y. outs In the array, at this time y outs The array constitutes a complete frequency response array, covering the system response characteristics at different frequencies.
[0113] For example, by using the complex polynomial addition and division operations mentioned earlier, the system frequency response at each frequency point can be accurately calculated. Taking a 1kHz audio signal as an example, even with different gain and quality factor parameters, the same complex number operation logic can still accurately obtain the system frequency response under the current parameter configuration. This frequency response information is the core basis for judging whether there is a risk of feedback at the corresponding frequency—when an abnormal peak appears in the frequency response curve, it usually indicates that the frequency is prone to forming a positive feedback loop in the audio system, thus generating feedback. This provides reliable data support for the accurate judgment of feedback and subsequent suppression work.
[0114] It should be noted that the specific execution logic of the above calculation method is as follows: In each calculation interval, the EQ_FreqZ_2 method of the NotchEqCurve class is called to perform specific calculations on the Frequency, Gain, and Q parameters carried by each FeedbackItemVM object; then, these three core parameters are passed to the EQ_FreqZ_2 method, which calculates the frequency response data for the corresponding frequency point, and finally, the calculation results of each time are stored in y. outs The array provides basic data support for subsequent howling point analysis and feedback suppression;
[0115] In this process, the system calculates the frequency response information at a given frequency based on the Frequency, Gain, and Q parameters of each element, combined with the second-order IIR filter in EQ_FreqZ_2. In this way, the system can perform precise analysis based on different frequency characteristics across the entire audio frequency band, providing detailed data support for the accurate identification of howling points.
[0116] In this embodiment, S2.2 extracts discrete frequencies for each frequency band calculation interval, ensuring that each frequency point corresponds to the potential howling frequency to be analyzed, thus avoiding interference from invalid frequency points. Using the audio system sampling frequency as a benchmark, and combining pi with the scaling factor of the sampling frequency, the discrete frequency in the linear dimension is converted into an angular frequency in the angular domain, solving the problem that linear frequencies cannot be directly adapted to complex domain operations. The converted angular frequency accurately reflects the correlation characteristics between the frequency and the sampling system, ensuring a high degree of match between frequency parameters and computational requirements when calculating the frequency response using the numerator and denominator coefficients. This avoids deviations in response results due to incompatibility in frequency dimensions, providing a crucial guarantee for the accuracy of full-band frequency response calculation and indirectly improving the reliability of howling point identification.
[0117] Furthermore, converting angular frequency into complex terms of the delay operator allows the filter coefficients to be deeply integrated with specific frequency characteristics, accurately reflecting the influence of coefficients on the signal at different frequencies. Complex polynomial calculations are performed on the numerator and denominator coefficients to obtain complex sums, integrating the correlation information between coefficients and frequencies and fully preserving the filtering characteristics. Complex division is used to calculate the complex result for each discrete frequency point, and then the modulus and argument are extracted, comprehensively reflecting the response state of each frequency and avoiding misjudgments of howling caused by focusing only on amplitude while ignoring phase. Integrating the results by frequency band ensures the completeness and orderliness of the response information across the entire audio frequency band, providing comprehensive and accurate data for subsequent judgment of whether howling exists at a frequency, significantly improving the accuracy of howling point identification.
[0118] In summary, this embodiment S2 divides the audio data calculation interval into frequency bands, making the calculation intervals for low-frequency, mid-frequency, and high-frequency bands proportional to the corresponding audio signal wavelengths. This avoids the problems of insufficient accuracy in the low-frequency band or redundancy in the high-frequency band caused by uniform interval calculation across the entire frequency band, and can also be specifically adapted to the signal characteristics of different frequency bands. By performing composite operations, the numerator and denominator coefficients of the filter are obtained, providing a precise filtering foundation for subsequent frequency response calculations. Converting discrete frequencies into angular frequencies can adapt to the requirements of complex domain operations, ensuring that the frequency response results can accurately reflect amplitude and phase information. By storing the response results in frequency band order to establish a frequency response array, a systematic management of response data across the entire audio frequency band can be achieved, providing a complete and accurate data source for subsequent howling point identification, effectively improving the accuracy and efficiency of early data processing for howling suppression.
[0119] Furthermore, compared to traditional feedback point detection techniques, this embodiment S2 relies on the second-order IIR filter algorithm in the NotchEqCurve class to comprehensively incorporate key parameters such as Frequency, Gain, and Q into the analysis system, conducting in-depth analysis of the audio signal from multiple dimensions. For example, in the feedback point judgment stage, it does not focus on a single parameter, but combines the synergistic effects of frequency characteristics, gain amplitude, and quality factor to achieve a comprehensive judgment of the audio signal, effectively breaking through the limitations of traditional techniques that rely solely on a single parameter. This multi-parameter collaborative analysis method significantly improves the accuracy of feedback point positioning, enabling more precise identification of the frequency location and time node where feedback occurs, thereby achieving more efficient feedback suppression and ultimately optimizing the overall performance and output sound quality of the audio system.
[0120] S3. Traverse the feedback item view model objects in the audio system and mark the target potential howling points. Calculate the adjacent valid values in the frequency response array according to the preset mechanism to obtain the set of valid frequency response values. Define the frequency points in the set of valid frequency response values that are greater than the preset threshold and have potential howling point marks as howling points.
[0121] Step S3 in this embodiment of the application is specifically as follows:
[0122] Based on the FixDyStateChanged method, with the GlobalSwitch (system master switch) enabled, the system iterates through the feedback item view model objects in the audio system's feedback item view model set and marks potential feedback points. It then calculates adjacent valid values in the frequency response array according to a preset mechanism to obtain a set of valid frequency response values. The preset mechanism involves calculating the frequency response within a specific frequency band (e.g., 400-1000Hz) and rounding it according to a preset calculation interval to ensure that the valid values best reflect the characteristics of that frequency band are obtained.
[0123] First, using the effective values of each frequency response in the effective value set as data points, a complete frequency response curve is plotted. The curve is then analyzed to extract peak values whose response intensity is significantly higher than that of surrounding frequency points. These peak values are usually precursors to howling due to the concentration of signal energy. A preset threshold is then set. If the response intensity of a frequency point exceeds the threshold and is marked as a potential howling point, the point is identified as an abnormal peak, which is the final howling point.
[0124] The core function of the FixDyStateChanged method is to perform state determination and feedback point location operations on the elements in the FeedbackItemObsers collection, providing accurate state information for subsequent feedback suppression processing in the audio system. Specifically:
[0125] ① Check the status of the system's main switch:
[0126] First, check the status of GlobalSwitch, which directly determines whether the system starts the howling point analysis and processing function: if GlobalSwitch is in the off state, the system will not perform subsequent operations; if it is in the on state, the analysis process will continue.
[0127] ②State determination and marking of elements in the FeedbackItemObsers collection:
[0128] For each element in the set, the relationship between FixedPoint and element index, and between TotalPoint and element index, must be compared separately, and the state must be determined in conjunction with other conditions:
[0129] If FixedPoint > element index, NotchSwitch is on and Frequency is not 0, it means that the element is an active fixed point that may affect the howling point. The system will mark it as the corresponding state related to the howling point.
[0130] If TotalPoint > element index, NotchSwitch is enabled, and Frequency is not 0, the system will also mark the dynamic points accordingly. "Dynamic points" refer to audio processing nodes in the audio system whose parameters can be dynamically adjusted according to system status or user operations. They are used to characterize key positions in audio signal processing, such as the center frequency point of a notch filter. When the conditions of TotalPoint being greater than the element index, NotchSwitch being enabled, and Frequency not being 0 are met, the system will mark these dynamic points. The marking content includes the dynamic point's status (whether it is a dynamic point), related parameters (such as frequency, gain, etc.), and whether further processing is needed (such as adjusting frequency or gain). This marking mechanism allows the system to flexibly adjust audio parameters in subsequent processing, thereby optimizing audio effects or suppressing feedback.
[0131] FixedPoint is a preset key parameter used to determine whether an element in the FeedbackItemObsers collection is an "active fixed point". Its core function is to assist the system in filtering the state before locating the howling point.
[0132] ③ Calculation of adjacent effective values of frequency response:
[0133] The conversion from frequency response data to the effective value of the frequency response requires calling the GetAdjacentValue method to complete the calculation, and different rounding logic is used for different frequency ranges. For example, in the 400-1000Hz frequency band, rounding is performed based on the frequency and the calculation interval. The specific logic is to adjust the remainder after dividing the frequency by the calculation interval to ensure that the value that best reflects the true situation of the frequency band is found, which helps to improve the accuracy of howling point location.
[0134] S4. Select the corresponding frequency shift option from the preset frequency shift option set to eliminate the howling point.
[0135] Step S4 in this embodiment of the application is specifically as follows:
[0136] The optimal frequency shift option is selected from the ShiftFrequencyObsers set and applied to the audio signal using the SendFreqData method to eliminate feedback points. Essentially, "selecting the optimal frequency shift option" means choosing an offset value that precisely moves the feedback point frequency out of the feedback superposition range without affecting the normal audio listening experience, based on the identified feedback point frequency. For example, if 600Hz is the feedback point, selecting the "shift up 50Hz" option will shift the original 600Hz signal to 650Hz. Since 650Hz is outside the sensitive range of feedback superposition, the superposition condition for feedback is cut off at its source.
[0137] Based on a pre-defined user interface, the system acquires in real-time adjustment parameters from users who have adjusted the audio system according to identified feedback points. Using the `DelayDataFilter.AddThrottle` method, the system integrates these adjustment parameters according to a pre-defined time window, eliminates feedback points based on the integrated parameters, and updates the parameters of elements in the `ShiftFrequencyObsers` set. Specifically:
[0138] When a user interacts with the NumChangedCommand of UcSliderNumericBox, the control system performs operations such as delay processing, parameter updates and data transmission, system status updates, and interface updates.
[0139] ① Delayed processing:
[0140] When a user interacts with the UcSliderNumericBox and triggers the NumChangedCommand, the system first delays the user's action using the DelayDataFilter.AddThrottle method. When the user adjusts the UcSliderNumericBox, the system doesn't immediately respond to every small action; instead, it temporarily stores these actions and processes them uniformly according to preset time intervals or the number of actions. For example, if a user adjusts the slider multiple times within one second, the system collects this action data and processes it every 0.5 seconds to avoid performance issues caused by frequent operations.
[0141] ② Parameter update and data transmission:
[0142] After the delay, dedicated methods such as SendFreqData and SendWaveData are called to send the updated parameters to the corresponding functional modules of the system. When the user adjusts the Gain or Frequency parameters corresponding to UcSliderNumericBox, these updated parameters are passed to other modules, providing real-time data support for subsequent processing and analysis.
[0143] ③System status update:
[0144] After the parameters are sent, the system synchronously updates the parameters of the corresponding elements in the FeedbackItemObsers collection, such as Frequency and Gain, to ensure that the internal parameters of the system are completely matched with the user's operation, providing a unified parameter benchmark for subsequent audio processing.
[0145] ④ Interface update:
[0146] The `DrawParameterEqualizerUI` method is called to update the interface display, allowing users to intuitively perceive changes in system status and the distribution of feedback points, thereby achieving a dynamic feedback suppression effect. For example, after a user adjusts the audio gain, the interface will display the gain change in real time, and simultaneously recalculate and display the feedback points based on the new gain, allowing users to clearly see the impact of gain adjustment on feedback points, facilitating further optimization to achieve better audio results.
[0147] Through this delay and throttling process, the system can maintain stable operation even under high-frequency operation, avoiding system delays, stuttering, or even crashes caused by frequent updates. This ensures the performance and reliability of the entire audio system, providing a smooth operating experience and high-quality audio effects for live music performances.
[0148] The user interface includes several user interface elements, such as UcSliderNumericBox, UcToggleButton, and UcComboBox. Specifically:
[0149] ① Functionality of user interface elements:
[0150] UcSliderNumericBox: Allows users to precisely adjust the core parameters required by the algorithm, such as the gain of the audio signal and the center frequency of the filter, by sliding the slider;
[0151] UcToggleButton: Provides function switch control. Users can click to turn the notch filter function on or off, which is directly related to the filter state management link in the algorithm.
[0152] UcComboBox: Provides options in the form of a drop-down menu, allowing users to select audio processing mode or operation mode, matching multiple application scenarios of the algorithm.
[0153] ② Operation trigger command:
[0154] Each operation element is bound to a specific command (SwitchClickCommand, NumChangedCommand, SelectionChangedCommand, etc.). When a user performs an operation, the corresponding command is triggered, and the system converts the operation into a signal that can be processed by the algorithm.
[0155] When the gain is adjusted by sliding the UcSliderNumericBox, the NumChangedCommand is triggered, and the system updates the Gain parameter in real time and passes it to the algorithm parameter input module.
[0156] When the UcToggleButton is clicked to toggle the notch filter switch, SwitchClickCommand is triggered, and the system starts or stops the notch filter function and updates the filter status synchronously.
[0157] When the UcComboBox selects a mode, the SelectionChangedCommand is triggered, and the system adjusts the algorithm's working logic, such as switching from automatic mode to manual mode, or changing to smooth mode.
[0158] The `DelayDataFilter.AddThrottle` method is the core functional interface of the delay processing and system update module. Its core function is to buffer and throttle audio parameter update requests generated by frequent user operations, preventing system performance fluctuations caused by a large influx of requests. The following is a detailed explanation of the `DelayDataFilter.AddThrottle` method:
[0159] ①The necessity of delayed processing:
[0160] In dynamic scenarios such as live music performances, sound engineers may frequently manipulate interface elements such as UcSliderNumericBox, generating a large number of data update requests in a short period of time. If these requests are processed synchronously without control, it will significantly increase the system's computational load, causing delays in parameter smoothing algorithms or even audio output stuttering. Therefore, this method is needed to regulate the request flow.
[0161] ②Implementation mechanism of the DelayDataFilter.AddThrottle method:
[0162] First, user-triggered update requests are temporarily stored in internal data structures such as queues or lists. Then, based on preset rules, processing is triggered using timers or other time management mechanisms. When the time interval arrives, requests not exceeding a threshold are extracted from the buffer structure and processed in an ordered manner. Unprocessed requests are carried over to the next trigger cycle. This is similar to a traffic light, where a certain number of vehicles (requests) are allowed to pass only when the green light is on (the time interval has been reached), rather than allowing all vehicles to pass at the same time to avoid traffic congestion (system lag or instability).
[0163] For example, suppose the set time interval is 500 milliseconds. Within these 500 milliseconds, the user performs multiple parameter adjustments, generating multiple update requests. These requests are added to the storage structure sequentially. When the 500 milliseconds elapse, the system retrieves some requests from the storage structure for processing. The number of requests processed may be limited by a preset request count threshold, such as a maximum of 10 requests. If the number of stored requests exceeds this threshold, unprocessed requests will remain in the storage structure, waiting for processing opportunities in the next time interval.
[0164] In this embodiment, S4 acquires user adjustment parameters in real time, enabling rapid response to user intervention requests based on actual howling conditions and avoiding the lack of flexibility caused by relying solely on automatic identification. Integrating adjustment parameters according to a preset time window filters parameter fluctuations caused by frequent user operations, ensuring parameter stability and preventing system processing disorder caused by instantaneous adjustments. Eliminating howling points based on the integrated parameters can specifically address identified howling problems and improve suppression effectiveness. Synchronously updating the feedback item view model set parameters allows subsequent howling suppression logic to adapt to the adjusted system state, forming a closed loop for continuous howling suppression. This not only improves the user interaction experience but also ensures the system's continuous and stable howling suppression capability after dynamic adjustments.
[0165] Overall, this embodiment has the following beneficial effects:
[0166] This application first synchronizes audio data to the feedback item view model, ensuring that the data matches the actual system feedback state and avoiding blind analysis detached from the system scenario. Then, it divides the calculation intervals by frequency band and performs composite calculations combining audio frequency, gain, and quality factor. This allows for a more comprehensive and detailed capture of the full-band frequency response characteristics. This segmented and multi-parameter analysis method clearly distinguishes between normal audio frequency bands and potential feedback frequency bands, eliminating the need for subsequent coarse full-band processing. This fundamentally reduces the problem of feedback residue caused by missed feedback points and directly protects audio quality. The application first traverses the feedback item view model objects to mark potential feedback points, then calculates adjacent valid values in the frequency response array, and finally defines feedback points based on the dual conditions of exceeding a threshold and being marked as potentially problematic. This multi-dimensional verification mechanism effectively distinguishes between real feedback and normal audio signals, avoiding the misinterpretation of normal signals as feedback suppression or missed feedback points caused by traditional single-indicator methods, thus protecting audio integrity from the root. The core of frequency shifting is to make a small, controllable shift of the frequency of the precisely located howling point. This targeted operation can break the positive feedback loop of the howling point without affecting the audio signals of other normal frequency bands.
[0167] In summary, this application achieves comprehensive audio signal analysis by integrating multiple parameters such as center frequency, gain, and quality factor, combined with second-order infinite impulse response filter design and frequency response calculation, in terms of feedback point detection accuracy. Furthermore, it employs differentiated calculation intervals for different frequency ranges, enabling accurate feedback point localization even in complex audio environments with multiple sound sources and multi-band interference, effectively reducing false positives and false negatives. Regarding feedback suppression, it utilizes intelligent algorithms to dynamically adjust suppression strategies based on real-time audio status and user operations, avoiding the drawbacks of traditional uniform processing. Especially in multi-channel systems, it can accurately suppress feedback while reducing excessive suppression of normal audio. Through precise calculation and adjustment of audio parameters, it specifically eliminates feedback while preserving normal audio quality, significantly improving the listening experience. In terms of system adaptability and intelligence, it possesses the ability to dynamically adjust strategies according to the audio system status and user operations, and provides an intuitive and user-friendly interface with various operational elements. Different operations correspond to specific commands, facilitating parameter adjustment and enabling dynamic feedback suppression, greatly enhancing system usability and intelligence.
[0168] Example 2:
[0169] Based on the same inventive concept as Embodiment 1, please refer to Figure 2 The embodiments of this application provide an audio feedback suppression device based on intelligent algorithms, including a data module 10, an array module 20, a feedback module 30, and a cancellation module 40;
[0170] Among them, the data module 10 is used to acquire audio data from the audio system and synchronize it to the corresponding feedback item view model object;
[0171] Array module 20 is used to divide the audio data into calculation intervals according to the audio frequency band. Within each interval, composite calculations are performed based on the audio frequency, gain and quality factor in the audio data to obtain the frequency response information corresponding to each frequency in the entire audio frequency band to establish a frequency response array.
[0172] The feedback module 30 is used to traverse the feedback item view model object in the audio system and mark the target potential feedback points. It calculates the adjacent valid values in the frequency response array according to the preset mechanism to obtain the set of valid frequency response values. The frequency points in the set of valid frequency response values that are greater than the preset threshold and are marked with potential feedback points are defined as feedback points.
[0173] The cancellation module 40 is used to select the corresponding frequency shift option from the preset frequency shift option set to eliminate the howling point.
[0174] In one embodiment, array module 20 is also used for:
[0175] Based on the audio frequency band division, audio data is obtained, including audio frequency bands including low frequency band, mid frequency band and high frequency band;
[0176] Within each frequency band of the audio frequency band set, composite operations are performed based on the audio frequency, gain, and quality factor in the audio data to obtain the numerator and denominator coefficients of the filter, respectively; wherein, the calculation interval of each frequency band in the audio frequency band set is proportional to the wavelength of the corresponding audio signal;
[0177] Extract the discrete frequencies of the audio data within each calculation interval and convert them into angular frequencies. Calculate the frequency response results corresponding to each frequency in the entire audio frequency band based on the numerator coefficient, denominator coefficient, and angular frequency.
[0178] Store the frequency response results corresponding to each frequency in the full audio frequency band in the order of frequency bands to create a frequency response array.
[0179] In one embodiment, array module 20 is also used for:
[0180] Based on the audio data, the radian frequency and bandwidth parameters are calculated according to the audio frequency, sampling frequency and gain.
[0181] The bandwidth characteristic parameters are calculated based on the radian frequency and the quality factor.
[0182] Based on the parametric structure of conjugate zero pairs, the constant term and the coefficient of the second-order delay term of the molecule are calculated according to the gain normalization coefficient, bandwidth parameter and bandwidth characteristic parameter.
[0183] Based on the variation law of notch wave with the frequency of the howling point, the coefficient of the first delay term of the molecule is calculated by combining the radian frequency and the frequency of the howling point.
[0184] The numerator coefficients of the filter are composed of the constant term, the coefficient of the first delay term, and the coefficient of the second delay term.
[0185] In one embodiment, array module 20 is also used for:
[0186] For the calculation interval in the audio frequency band set, extract the discrete frequency corresponding to each interval;
[0187] Using the sampling frequency of the audio system as a reference, and based on the ratio of pi to the sampling frequency, the discrete frequency in the linear dimension is converted into the angular frequency in the angular domain.
[0188] In one embodiment, array module 20 is also used for:
[0189] Transform the angular frequency into a complex term of the coefficient-associative delay operator;
[0190] For each element in the numerator and denominator coefficients, a complex polynomial calculation is performed in conjunction with the complex terms of the delay operator to obtain the complex sum of the numerator and the complex sum of the denominator.
[0191] For each discrete frequency point within the full audio frequency band of the audio system, perform complex division calculations based on the corresponding complex sum of the numerator and the complex sum of the denominator to obtain several complex results;
[0192] Extract the modulus and argument of several complex results, integrate them in frequency band order to form the frequency response results corresponding to each frequency in the full audio frequency band.
[0193] In one embodiment, the data module 10 is further configured to:
[0194] Based on the initial settings parameters of the audio system and the target expected scenario, several feedback item view model objects with preset parameters are added to obtain a set of feedback item view models; among them, the preset parameters include audio frequency, gain and quality factor;
[0195] Acquire audio data from the audio system and synchronize the audio data to the corresponding feedback item view model object in the feedback item view model collection.
[0196] In one embodiment, after the howling module 30, the following is also included:
[0197] Real-time acquisition of adjustment parameters for the audio system based on identified feedback points;
[0198] The parameters are integrated and adjusted according to a preset time window, and the feedback points of the audio system are eliminated based on the integrated adjustment parameters.
[0199] Furthermore, the set of frequency shifting options involved in Embodiment 2 is generated based on the frequency range of the audio system and the target frequency shifting requirements.
[0200] This device first synchronizes audio data to the feedback item view model, ensuring that the data matches the actual system feedback state and avoiding blind analysis detached from the system context. Then, it divides the calculation intervals by frequency band and performs composite calculations combining audio frequency, gain, and quality factor. This allows for a more comprehensive and detailed capture of the frequency response characteristics across the entire frequency band. This segmented and multi-parameter analysis method clearly distinguishes between normal audio frequency bands and potential feedback frequency bands, eliminating the need for subsequent coarse full-band processing. This fundamentally reduces the problem of residual feedback caused by missed feedback points, directly protecting audio quality. The device first traverses the feedback item view model objects to mark potential feedback points, then calculates adjacent valid values in the frequency response array, and finally defines feedback points based on the dual conditions of exceeding a threshold and being marked as potentially problematic. This multi-dimensional verification mechanism effectively distinguishes between real feedback and normal audio signals, avoiding the misinterpretation of normal signals as feedback suppression or missed feedback points caused by traditional single-indicator methods, thus protecting audio integrity from the root. The core of frequency shifting is to make a small, controllable shift of the frequency of the precisely located howling point. This targeted operation can break the positive feedback loop of the howling point without affecting the audio signals of other normal frequency bands.
[0201] Example 3:
[0202] This application provides a computer-readable storage medium, which includes a stored computer program, wherein the computer program, when running, controls the device where the computer-readable storage medium is located to execute the aforementioned audio howling suppression method based on an intelligent algorithm.
[0203] The audio feedback suppression method based on intelligent algorithms, when implemented as a software functional unit and used as an independent product, can be stored in a computer-readable storage medium. Based on this understanding, all or part of the processes in the above embodiments of the present invention can also be implemented by a computer program instructing related hardware. The computer program can be stored in a computer-readable storage medium, and when executed by a processor, it can implement the steps of the various method embodiments described above. The computer program includes computer program code, which can be in the form of source code, object code, executable files, or certain intermediate forms. The computer-readable medium can include: any entity or device capable of carrying the computer program code, recording media, USB flash drives, portable hard drives, magnetic disks, optical disks, computer memory, read-only memory (ROM), random access memory (RAM), electrical carrier signals, telecommunication signals, and software distribution media, etc.
[0204] The above are preferred embodiments of the present invention. It should be noted that, for those skilled in the art, several improvements and modifications can be made without departing from the principle of the present invention, and these improvements and modifications are also considered to be within the scope of protection of the present invention.
Claims
1. An audio feedback suppression method based on intelligent algorithms, characterized in that, include: Acquire audio data from the audio system and synchronize it to the corresponding feedback item view model object; The audio data is divided into calculation intervals based on audio frequency bands. Within each interval, composite operations are performed based on the audio frequency, gain, and quality factor in the audio data to obtain frequency response information corresponding to each frequency within the entire audio frequency band, thereby establishing a frequency response array. Specifically, the audio data is divided into audio frequency band sets, including low-frequency, mid-frequency, and high-frequency bands. Within each frequency band of the audio frequency band set, composite operations are performed based on the audio frequency, gain, and quality factor in the audio data to obtain the numerator and denominator coefficients of the filter. The calculation interval of each frequency band in the audio frequency band set is proportional to the wavelength of the corresponding audio signal. The discrete frequencies of the audio data within each calculation interval are extracted and converted into angular frequencies. The frequency response results corresponding to each frequency within the entire audio frequency band are calculated based on the numerator coefficients, the denominator coefficients, and the angular frequencies. The frequency response results corresponding to each frequency within the entire audio frequency band are stored in frequency band order to establish the frequency response array. Traverse the feedback item view model objects in the audio system and mark potential feedback points. Calculate adjacent valid values in the frequency response array according to a preset mechanism to obtain a set of valid frequency response values. Define the frequency points in the set of valid frequency response values that are greater than a preset threshold and have potential feedback point marks as feedback points. Select the corresponding frequency shift option from the preset set of frequency shift options to eliminate the howling point.
2. The audio feedback suppression method based on intelligent algorithms as described in claim 1, characterized in that, The filter's numerator coefficients are obtained by performing a composite operation on the audio frequency, gain, and quality factor in the audio data, specifically: Based on the audio data, the radian frequency and bandwidth parameters are calculated according to the audio frequency, sampling frequency and gain. The bandwidth characteristic parameters are calculated based on the radian frequency and the quality factor. Based on the parametric structure of conjugate zero pairs, the constant term and the coefficient of the second-order delay term of the molecule are calculated according to the gain normalization coefficient, the bandwidth parameter and the bandwidth characteristic parameter. Based on the variation law of the notch wave with the frequency of the howling point, the coefficient of the first delay term of the molecule is calculated by combining the radian frequency and the frequency of the howling point. The molecule coefficients of the filter are composed of the constant term of the molecule, the coefficient of the first delay term, and the coefficient of the second delay term.
3. The audio feedback suppression method based on intelligent algorithms as described in claim 1, characterized in that, The discrete frequencies of the audio data within each calculation interval are extracted and converted into angular frequencies, specifically as follows: For the calculation interval in the audio frequency band set, extract the discrete frequency corresponding to each interval; Using the sampling frequency of the audio system as a reference, and based on the ratio of pi to the sampling frequency, the discrete frequency in the linear dimension is converted into the angular frequency in the angular domain dimension.
4. The audio feedback suppression method based on intelligent algorithms as described in claim 1, characterized in that, The frequency response results corresponding to each frequency in the full-audio frequency band are calculated based on the numerator coefficient, the denominator coefficient, and the angular frequency, specifically as follows: The angular frequency is converted into a complex term of a delay operator with associative coefficients; For each element in the numerator coefficient and the denominator coefficient, a complex polynomial calculation is performed in conjunction with the complex term of the delay operator to obtain the complex sum of the numerator and the complex sum of the denominator. For each discrete frequency point within the full audio frequency band of the audio system, complex division is performed based on the corresponding complex sum of the numerator and the complex sum of the denominator to obtain several complex results. The modulus and argument of the complex results are extracted and integrated in frequency band order to form the frequency response results corresponding to each frequency in the full audio frequency band.
5. The audio feedback suppression method based on intelligent algorithms as described in claim 1, characterized in that, Obtain audio data from the audio system and synchronize it to the corresponding feedback item view model object, specifically: Based on the initial settings parameters of the audio system and the target expected scenario, several feedback item view model objects containing preset parameters are added to obtain a set of feedback item view models; wherein, the preset parameters include the audio frequency, the gain, and the quality factor; Obtain the audio data from the audio system and synchronize the audio data to the corresponding feedback item view model object in the feedback item view model set.
6. The audio feedback suppression method based on intelligent algorithms as described in claim 1, characterized in that, After defining frequency points in the frequency response effective value set that are greater than a preset threshold and have potential howling point markers as howling points, the method further includes: The system can acquire adjustment parameters in real time based on the user's adjustments to the audio system according to the identified feedback points. The adjustment parameters are integrated according to a preset time window, and the feedback point of the audio system is eliminated based on the integrated adjustment parameters.
7. The audio feedback suppression method based on intelligent algorithms as described in any one of claims 1-6, characterized in that, The frequency shift option set is generated based on the frequency range of the audio system and the target frequency shift requirement parameters.
8. An audio feedback suppression device based on an intelligent algorithm, characterized in that, It includes a data module, an array module, a howling module, and a cancellation module; The data module is used to acquire audio data from the audio system and synchronize it to the corresponding feedback item view model object. The array module is used to divide the audio data into calculation intervals according to audio frequency bands. Within each interval, composite operations are performed based on the audio frequency, gain, and quality factor in the audio data to obtain frequency response information corresponding to each frequency within the entire audio frequency band, thereby establishing a frequency response array. Specifically, the audio data is divided based on audio frequency bands to obtain audio frequency band sets including low-frequency, mid-frequency, and high-frequency bands. Within each frequency band of the audio frequency band set, composite operations are performed based on the audio frequency, gain, and quality factor in the audio data to obtain the numerator and denominator coefficients of the filter. The calculation interval of each frequency band in the audio frequency band set is proportional to the corresponding audio signal wavelength. Discrete frequencies of the audio data within each calculation interval are extracted and converted into angular frequencies. The frequency response results corresponding to each frequency within the entire audio frequency band are calculated based on the numerator coefficients, the denominator coefficients, and the angular frequencies. The frequency response results corresponding to each frequency within the entire audio frequency band are stored in frequency band order to establish the frequency response array. The feedback module is used to traverse the feedback item view model object in the audio system and mark the target potential feedback points, calculate the adjacent valid values in the frequency response array according to a preset mechanism to obtain the set of valid frequency response values, and define the frequency points in the set of valid frequency response values that are greater than a preset threshold and have potential feedback point marks as feedback points. The elimination module is used to select the corresponding frequency shift option from a preset set of frequency shift options to eliminate the howling point.
9. A storage medium, characterized in that, The storage medium stores a computer program, which is called and executed by a computer to implement an audio howling suppression method based on an intelligent algorithm as described in any one of claims 1 to 7.
Citation Information
Patent Citations
Howling suppression method based on autonomous learning and sound amplification system
CN110248300A
Squeaking suppression method, squeaking suppression device, earphone, and storage medium
CN113596662A