This specification relates generally to electronic amplification systems, and, more specifically, to feedback detection and suppression in the electronic amplification systems.
All examples and features mentioned below can be combined in any technically possible way.
In one aspect, a method for detecting feedback in an electrical amplification system is provided. The method comprises dividing a frequency spectrum into a plurality of frequency bands, classifying a tone present in an incoming audio signal into one of the plurality of frequency bands based on a frequency of the tone, selecting a threshold value based on the frequency band into which the tone is classified, and disqualifying the tone from potentially being feedback if the amplitude of the tone is greater than the amplitude of a harmonic of the tone by less than the threshold value.
Embodiments of the method may include one of the following features, or any combination thereof.
The method can further comprise determining that the tone is potentially feedback if the amplitude of the tone is greater than the amplitude of a plurality of harmonics of the tone by at least the threshold value. A number of determinations of the tone as potential feedback can be required to reach a pre-established count before declaring the tone to be feedback. This pre-established count can be determined by the frequency band into which the tone is classified.
Additionally, the method can further comprise attenuating the amplitude of the tone after the tone is declared to be feedback by applying a filter with a predetermined initial gain, a predetermined width, or a combination thereof, determined by the frequency band into which the tone is classified.
As another example, the method can further comprise determining, in response to declaring the tone as feedback, whether a filter is available to operate on the tone, determining that all filters are currently being used with other tones, identifying a least important filter of the filters, and making the least important filter available for operating on the feedback tone. The least important filter can have a smallest amplitude of all the filters. The identifying of a least important filter can exempt a predetermined number of recently applied filters.
In other examples, the method can determine, in response to declaring the tone to be feedback, that a filter is already in use on the tone, and modifying a gain of the filter to increase a degree of attenuation attained by the filter on the amplitude of the tone. The amount by which to modify the gain of the filter can be based on the frequency band into which the tone is classified.
The plurality of harmonics of the tone can include a first harmonic of the tone and a second harmonic of the tone, or a sub-harmonic of the tone. The frequency spectrum can be divided into at least two non-overlapping frequency bands including a low band at a low frequency end of the frequency spectrum and a high band at a high frequency end of the frequency spectrum. Each frequency band can be associated with a different threshold value.
In one example, the method further comprises associating a plurality of threshold values with at least one of the frequency bands; wherein the selecting of a threshold value based on the frequency band into which the tone is classified includes further selecting one of the plurality of threshold values based on a harmonic with which the amplitude of the tone is to be compared. Each threshold value may be user-adjustable.
In another aspect, an audio signal processor comprises a processor configured to divide the frequency spectrum into a plurality of frequency bands, classify a tone present in the audio samples into one of the plurality of frequency bands based on a frequency of the tone, select a threshold value based on the frequency band into which the tone is classified, and disqualify the tone from potentially being feedback if the amplitude of the tone is greater than the amplitude of a harmonic of the tone by less than the threshold value.
Embodiments of the audio sound processor may include one of the following features, or any combination thereof.
The processor of the audio sound processor can be further configured to determine that the tone is potentially feedback if the amplitude of the tone is greater than the amplitude of a plurality of harmonics of the tone by at least the threshold value. A number of determinations of the tone as potential feedback can be required to reach a pre-established count before declaring the tone to be feedback. This pre-established count can be determined by the frequency band into which the tone is classified.
Additionally, the audio signal processor can further comprise a plurality of filters, wherein the processor can be further configured to attenuate the amplitude of the tone after the tone is declared to be feedback by applying one of the plurality of filters with a predetermined initial gain, a predetermined width, or a combination thereof determined by the frequency band into which the tone is classified.
In one example, the audio signal processor further comprises a plurality of filters, and the processor can be further configured to determine, in response to declaring the tone as feedback, whether one of the plurality of filters is available to operate on the tone, to determine that all filters are currently being used with other tones, to identify a least important filter of the plurality of filters, and to make the least important filter available for operating on the feedback tone. The least important filter can have a smallest amplitude of all the filters. The processor can exempt a predetermined number of recently applied filters when identifying the least important filter.
In other examples, the processor of the audio signal processor can be further configured to determine, in response to declaring the tone to be feedback, that a filter is already in use on the tone, and to modify a gain of the filter to increase a degree of attenuation attained by the filter on the amplitude of the tone. The amount by which to modify the gain of the filter can be based on the frequency band into which the tone is classified.
The plurality of harmonics of the tone can include a first harmonic of the tone and a second harmonic of the tone, or a sub-harmonic of the tone. The processor can further be configured to divide the frequency spectrum into at least two non-overlapping frequency bands including a low band at a low frequency end of the frequency spectrum and a high band at a high frequency end of the frequency spectrum. Each frequency band can be associated with a different threshold value. Each threshold value may be user-adjustable.
In another example, the processor can further be configured to associate a plurality of threshold values with at least one of the frequency bands, and select a threshold value based on the frequency band into which the tone is classified by selecting one of the plurality of threshold values associated with the at least one frequency band based on a harmonic with which the amplitude of the tone is to be compared.
The processor of the audio signal processor can further comprise memory storing program code for detecting and suppressing feedback in an audio signal and the processor can be configured to execute the program code stored in memory.
In still another aspect, an audio system comprises an acoustic transducer converting sound into electrical signals and an audio signal processor. The audio signal processor comprises an analog-to-digital converter that converts the electrical signals into digital audio samples, and a processor that transforms the digital audio samples into a frequency spectrum. The processor is configured to divide the frequency spectrum into a plurality of frequency bands, classify a tone present in the audio samples into one of the plurality of frequency bands based on a frequency of the tone, select a threshold value based on the frequency band into which the tone is classified, and disqualify the tone from potentially being feedback if the amplitude of the tone is greater than the amplitude of a harmonic of the tone by less than the threshold value.
Examples of the audio system may include one of the following features, or any combination thereof. The processor of the audio sound processor can further be configured to determine that the tone is potentially feedback if the amplitude of the tone is greater than the amplitude of a plurality of harmonics of the tone by at least the threshold value.
In another aspect, an audio signal processor comprises means for dividing a frequency spectrum into a plurality of frequency bands, means for classifying a tone present in an incoming audio signal into one of the plurality of frequency bands based on a frequency of the tone, means for selecting a threshold value based on the frequency band into which the tone is classified, and means for disqualifying the tone from potentially being feedback if the amplitude of the tone is greater than the amplitude of a harmonic of the tone by less than the threshold value. The frequency spectrum may be divided into at least two non-overlapping frequency bands including a low band at a low frequency end of the frequency spectrum and a high band at a high frequency end of the frequency spectrum.
Examples of the audio signal processor may include one of the following features, or any combination thereof. A plurality of threshold values can be associated with at least one of the frequency bands; and the means for selecting a threshold value based on the frequency band into which the tone is classified further includes means for selecting one of the plurality of threshold values based on a harmonic with which the amplitude of the tone is to be compared. Each threshold value can be user-adjustable.
The audio signal processor may include means for determining that the tone is potentially feedback if the amplitude of the tone is greater than the amplitude of a plurality of harmonics of the tone by at least the threshold value. The plurality of harmonics of the tone can include a first harmonic of the tone and a second harmonic, or a sub-harmonic, or a combination thereof, of the tone. Each frequency band can be associated with a different threshold value.
In addition, the audio signal processor may include means for requiring a number of determinations of the tone as potential feedback to reach a pre-established count before declaring the tone to be feedback. The pre-established count may be determined by the frequency band into which the tone is classified. Also, the audio signal processor may include means for attenuating the amplitude of the tone after the tone is declared to be feedback by applying a filter with a predetermined initial gain, a predetermined width, or a combination thereof, determined by the frequency band into which the tone is classified.
The audio signal processor may further comprise means for determining, in response to means for declaring the tone as feedback, whether a filter is available to operate on the tone; means for determining that all filters are currently being used with other tones; means for identifying a least important filter of the filters; and means for making the least important filter available for operating on the feedback tone. The least important filter can have a smallest magnitude of all the filters. The means for identifying a least important filter may exempt a predetermined number of recently applied filters.
The audio signal processor may further comprise means for determining, in response to means for declaring the tone to be feedback, that a filter is already in use on the tone; and means for modifying a gain of the filter to increase a degree of attenuation attained by the filter on the amplitude of the tone. The amount by which to modify the gain of the filter can be based on the frequency band into which the tone is classified.
The above and further features and advantages may be better understood by referring to the following description in conjunction with the accompanying drawings, in which like numerals indicate like structural elements and features in various figures. The drawings are not necessarily to scale, emphasis instead being placed upon illustrating the principles of features and implementations.
In brief overview, automatic feedback suppression units or devices eliminate acoustic feedback within audio systems, including public address (PA) systems, by identifying the existence of a feedback tone, and then using a filter to remove the tone. An important factor for discerning feedback from music lies in the respective harmonic characteristics of the two signals. Whereas musical tones are rich in harmonics, feedback tones are nearly harmonic-free. A conventional technique for deciding whether a relatively loud tone at a particular frequency, F, is feedback or a musical note is to compare the amplitude of that tone, Amplitude (F), with the amplitude of each of its first and second harmonics, Amplitude (2*F) and Amplitude (3*F).
A constant value, C, can be used to represent the necessary difference (in dB) between two compared amplitudes for a tone, F, to be declared feedback. As an example, consider the case where the constant C, is set equal to 30 dB, the tone in question, F, is equal to 1000 Hz, the amplitude of the tone, Amplitude (1000 Hz), is equal to 50 dB, and the amplitude of its first harmonic, Amplitude (2000 Hz), is equal to 25 dB. In this case, the tone is not deemed feedback because the difference between the two amplitudes (50 dB−25 dB=25 dB) is less than the value of the constant C, which is 30 dB; that is, the first harmonic of the tone is relatively powerful, being only 25 dB less than the amplitude of the fundamental tone.
If, instead, the amplitude of the first harmonic, Amplitude (2000 Hz), is equal to 7 dB, the difference between the fundamental tone and its first harmonic is equal to 43 db (50 dB−7 dB). In this instance, the tone may be a feedback tone because the difference in amplitudes exceeds the value of the constant C. The determination proceeds with a comparison of the amplitude, Amplitude (3000 Hz), of the second harmonic of the tone with the amplitude, Amplitude (1000 Hz) of the fundamental tone. If the difference between these two amplitudes also exceeds the value of the constant C, the tone (F=1000 Hz) is deemed feedback and is filtered. If the difference between the amplitudes is less than the value of the constant C, the tone is not considered feedback and is allowed to pass for amplification.
A challenge lies in choosing a proper value for the constant C for accurately and swiftly identifying feedback tones for elimination (i.e., use a lower value for C), while avoiding spuriously identifying a normal music tone, such as from an acoustic guitar, as feedback (i.e., use a higher value for C). If a feedback-elimination filter is improperly deployed on a musical tone, the quality of that musical tone deteriorates. Conversely, if feedback is not quickly eliminated, the feedback tone will quickly grow to an annoying and possibly dangerous volume.
Automatic feedback suppression units, as described herein, employ an approach that involves varying the value of the constant C based on the frequency band in which the tone in question, F, lies. The frequency spectrum of the PA system is divided into various bands, and the tone F is classified in one of the bands. For example, if F<500 Hz, the tone is classified LOW, if 500 Hz<F<2000 Hz, the tone is classified MID, and if 2000 Hz<F<2500 Hz, the tone is classified HIGH. The value of the constant C can vary based on the frequency band within which the tone F falls. For example, if the tone is classified LOW, C(LOW)=35 dB; if classified HIGH, C(HIGH)=15 dB. The value of the constant C can also vary based on the harmonic of the tone being used in the comparison. For example, if the tone is classified HIGH, the value of C for the first harmonic can be equal to 15 dB, and equal to 20 dB for the second harmonic. If instead the tone is classified LOW, the value of C for the first harmonic can be equal to 33 dB, and equal to 36 dB for the second harmonic. The frequency spectrum may be divided into any number of frequency bands, having different widths than those illustrated in the previous example, and the value of the constant C may vary for each of the frequency bands. For example, the previous HIGH band can instead range between 2000 Hz<F<22,000 Hz. As another example, there can be a fourth band, referred to as an ULTRA HIGH band, ranging between 2500 Hz<F<22,000 Hz. Alternatively, the HIGH band can be defined as F>2000 Hz, or the ULTRA HIGH band as F>2500 Hz, without any specification of an upper limit.
Whereas feedback occurs similarly across the entire audio band, from low to high frequencies, music exists much more prominently in the lower part of the spectrum, below approximately 4 kHz. Below this frequency is where most fundamentals of musical signals exist. Above this frequency, mostly only harmonics of tones are found, with the exception of a few instruments and noises. By allowing the value of constant C to vary based on the frequency of a possible feedback tone, a conservative approach to declaring a tone to be feedback (higher value for C) can be applied at the lower end of the frequency spectrum, thereby reducing possible false detections, and an aggressive approach (lower value for C) can be applied at higher frequencies, where little musical content generally lies. This customizing of the value of the constant C for the particular end of the frequency spectrum enables quick detection and elimination of feedback at higher frequencies, while avoiding false feedback detection at lower frequency musical tones.
The audio signal processor 12 further includes an analog-to-digital (A/D) converter 16, a processor 18, a plurality of analog inputs (not shown) for connecting to audio signal sources, such as a microphone 20, a plurality of analog outputs (not shown) for connecting to sound-emitting devices, such as a speaker 22, a digital-to-analog (D/A) converter 24, an amplifier 25, and a network interface (I/F) 26 for establishing communications with external devices, such as a computing system. The microphone 20 is in vicinity of the speaker 22, where the microphone may pick up sound emitted by the speaker, potentially leading to unwanted feedback tones.
The automatic feedback suppression module 14 may include memory 28 that stores program code 30, which, when executed by the processor 18, detects and suppresses feedback tones in the sound coming from the microphone 20. During its execution, the program code 30 refers to other portions of the memory 28 that store configuration parameters 32, implement a revolving buffer 34, and apply filters 36 to detected feedback tones. A portion of the program code 26, when executed, produces a graphical user interface on the display screen of an external device by which a user can configure one or more of the configuration parameters 32.
These configuration parameters 32 include: settings tuned for the environment within which the PA system 10 is deployed, including predetermined definitions of the frequency bands (i.e., divisions of the frequency spectrum); one or more constant C values for each frequency band used to detect feedback; a threshold count (P) for each frequency band representing the number of detections as potential feedback required of a tone for that tone to be declared feedback; initial gain (G), delta (D) gain, and width (W) settings for the filters 36 for each frequency band; and the number (N) of recently applied filters exempted from a least-important-filter analysis (also frequency band dependent) performed in the event a busy dynamic filter needs to be released in order to be applied to a recently detected feedback tone. The filters 36 being applied to suppress feedback tones can be dynamic notch filters, meaning such filters are recyclable or reusable for different feedback tones if needed, or static notch filters, meaning such filters, once used for a tone, remain used for that tone (until a user resets the system). In addition, the filters 36 can be instantiated using software, hardware, or a combination thereof. The width (W) of a given filter 36 instantiated on the feedback tone may vary with the frequency band 102 into which the feedback tone is classified.
The A/D converter 16 is in communication with the microphone 20 (i.e., an acoustic transducer), from which the A/D converter 16 receives electrical signals corresponding to the sound picked up by the microphone 20, and produces digital signals therefrom. The processor 18 is a digital signal processor (DSP) in communication with the A/D converter 16 to receive and process the digital signals using a Fast Fourier Transform (FFT) function. The DSP 18 is in communication with the automatic feedback suppression module 14 to perform suppression of any feedback detected in the processed digital signals. Released or unfiltered tones pass to the D/A converter 24, which converts the digital signals to their analog signal counterparts. The amplifier 25 amplifies these analog signals and drives the speaker 22 to produce corresponding sound.
A computing system 40 may be in communication with the audio signal processor 12 over a communication link 42. The computing system 40 includes a display screen 44 and a processor (not shown) in communication with memory (not shown) over a signal bus (not shown). A user of the computing system 40 can enter information and commands through a user-input interface 50 with one or more user-input devices, e.g., a keyboard, a mouse, trackball, touch-pad, touch-screen, microphone, joystick. Exemplary implementations of the computing system 40 include, but are not limited to, personal computers (PC), Macintosh computers, workstations, laptop computers, kiosks, hand-held devices, such as personal digital assistants (PDAs), smartphones, Apple iPads™, Amazon.com KINDLEs®, navigation and global positioning systems, and network terminals.
The communication link 42 can be a direct connection (wireless or wired) to the audio signal processor 12 or one or more communication paths through a network 46 (shown in dashed outline to signify an alternative connection path). Examples of the network 46 include, but are not limited to, local-area networks (LAN), metro-area networks (MAN), and wide-area networks (WAN), such as the Internet or World Wide Web. The computing system 40 can connect to the audio signal processor 12 through one or more of a variety of connection types and associated protocols, such as standard telephone lines, digital subscriber lines (DSL), asynchronous DSL, LAN or WAN links (e.g., T1, T3), broadband connections (Frame Relay, ATM), RS-232C, RS-485, and wireless connections (e.g., 802.11(a), 802.11(b), 802.11(g)).
In this example, the frequency spectrum is divided into three frequency bands 102-1, 102-2, and 102-3 (generally, 102). Frequency band 102-1 is referred to as the LOW band, frequency band 102-2 as the MID band, and frequency band 102-3 as the HIGH band. Other examples can have as few as two or greater than three frequency bands without departing from the principles described herein.
The user can use a pointing device (e.g., mouse) to move the horizontal lines 106 up or down (as indicated by double-headed arrows 104) in order to increase or decrease the sensitivity (i.e., value of C) for detecting feedback for a given frequency band 102. A setting of 0.5 in all frequency bands 102 may result in a different C value (in dB) for each frequency band. Increasing the sensitivity from 0.5 to 0.6 in each frequency band 102 operates to reduce the C value (in dB) in that band.
For illustration purposes, the frequency range for the LOW band 102-1 extends up to and includes 180 Hz, for the MID-band 102-2, the frequency range spans between 180 Hz to 800 Hz, and for the HIGH band 102-3, the frequency range covers 800 Hz and above. The definition of the particular frequency ranges 102 can depend upon the environmental setting of the PA system 10 selected by a user, such as a “conference room setting” or a “stage setup setting.” In one example, the user can move the vertical boundary lines 110 left or right (as indicated by double-headed arrows 108), thereby increasing or decreasing the size (i.e., range) of a given frequency band.
In other examples, each frequency band 102 can have multiple constant C value settings, one for each harmonic or sub-harmonic of the tone in question, each C value setting being represented by a different horizontal line 106 within that frequency band 102.
In the example shown, the LOW band 102-1 has a sensitivity value of 0.55, which can correspond to a C value of 33 dB, the MID band 102-2 has a sensitivity value of 0.50, which can correspond to a C value of 35 dB, and the HIGH band 102-3 has a sensitivity value of 0.30, which can correspond to a C value of 36 dB. Accordingly, this example configuration of the automatic feedback suppression module 14 more aggressively declares feedback for tones classified in the LOW band 102-1 than for tones classified in the MID band 102-2, and more aggressively for tones classified in the MID band 102-2 than for tones classified in the HIGH band 102-3.
A spectral peak detector (part of the program code 30) scans the vector and identifies (step 206) M frequencies or tones with the highest magnitudes in the spectrum. The value assigned M (e.g., 3) corresponds to the total number of feedback tones tested for by the automatic feedback suppression module 14 during a given cycle. The spectral peak detector can produce an M-dimensional vector of frequency bins containing magnitude data. Each of the M bins of this vector corresponds to one of the M frequencies in the frequency spectrum and holds a value corresponding to the magnitude (in dB) for that frequency. Each of these M peak frequencies is tested to determine whether that frequency corresponds to feedback that should be suppressed, as described herein.
At step 208, the automatic feedback suppression module 14 determines whether all M peak frequencies in the M-dimensional vector have been tested. If so, the process 200 returns for the next cycle of 2*N time-based samples to be transformed into a new one-sided vector containing magnitude data at N frequencies in the frequency spectrum of the audio signal.
If, instead, not all M peak frequencies have yet been tested, the next untested frequency bin in the M-dimensional vector is selected (step 210). The frequency band is classified (step 212) for this selected frequency. For example, referring to the multiple frequency bands 102 described in connection with
The particular band in which the frequency-under-test is classified determines the value of the constant C, used to test (step 214) the frequency at multiple different potential harmonics. For example, consider that the frequency-under-test falls within the LOW band 102-1 and the value of the constant C assigned to this frequency band is equal to 33 dB, the peak magnitude at this frequency must be 33 dB higher in magnitude than the magnitudes at its potential harmonics at 2*F and 3*F. The magnitudes at the potential harmonics at 2*F and 3*F are acquired as part of the FFT results (step 202). Other examples test at these and other potential harmonics and sub-harmonics, such as 0.5*F and ⅔*F, or any combination thereof. In still other examples, the value of the constant C can vary based on the particular harmonic being tested (e.g., 33 dB for the first harmonic, 36 dB for the second harmonic). To be considered a candidate for being declared feedback, the tone at frequency F must satisfy all tests at all tested harmonics. In other examples, to be considered a candidate for being declared feedback, the tone at frequency F may satisfy all tests at a subset of the tested harmonics.
If, at step 216, the frequency-under-test (F) does not satisfy the criterion at all of the tested harmonics (or at a subset of the tested harmonics), this tone is disqualified from further consideration as feedback. The tone is “released” (step 218), that is, allowed to pass unfiltered, and removed from memory 28. Alternatively, if the tone satisfies all tests at all (or a subset of) the tested harmonics (i.e., the amplitude of the tone F exceeds the amplitude at the tested harmonics by the appropriate threshold value), the tone could potentially be feedback.
At step 222, the buffer 34 is scanned to count the number of times the candidate tone F appears within the buffer 34. This count is compared with a predefined threshold (P), which represents the number of times a candidate tone must appear within the recorded history in the buffer 34 in order for the candidate tone to qualify as feedback. If the count equals the predefined threshold (P), then the tone F is deemed feedback; otherwise the process 200 returns to step 208 (
The predefined threshold can vary depending on the classification of the tone. For example, the predefined threshold can be set equal to three for a tone classified as MID band 102-2 and equal to one for a tone classified as HIGH band 102-3. According to these example settings, a HIGH band tone is considered feedback just upon a single occurrence; whereas a tone classified in the MID band 102-2 must occur three times before being considered feedback.
In response to a candidate tone being declared feedback, the process 200 determines (step 224) whether the tone already has a filter 32 operating upon it. If so, this re-detection of the feedback tone signifies that the currently applied filter 32 is insufficient to suppress this feedback tone. To improve the effectiveness of the filter 32, the depth of this filter (step 226) is increased by a predetermined amount (e.g., −3 dB). As an example illustrating this step of the process, consider that the filter is presently reducing the amplitude at the tone by −6 dB. The depth (D) of the filter can be increased by an additional −3 dB, to achieve an overall amplitude reduction of −9 dB. The amount by which to increase the depth (D) of the filter is predetermined, and is based on the frequency band classification of the candidate tone. For example, a feedback tone previously classified in the HIGH band 102-3 may have a greater increase in filter depth (D) than if classified in the MID band 102-2. The process 200 then returns to step 208 (
If instead, at step 224, the feedback tone does not already have a filter, the process 200 applies one. At step 228, a check occurs to determine whether a filter 32 is available. If a filter is available, the filter is applied (step 230) to the feedback tone with an initial gain (G). If, instead, all filters are currently in use, and none is available for the feedback tone, one of the filters in use is freed (step 232) and applied (step 230) to the feedback tone. To determine which filter to make available for use with the feedback tone, one technique includes identifying the least important filter currently in use, for example, the notch filter with the smallest magnitude of all the filters. The amplitude of the filter generally reflects the degree of the feedback problem caused by the given feedback tone upon which that notch filter is operating; the smaller the amplitude of the applied filter, the lesser the problem posed by the associated feedback tone. This technique can exempt a predetermined number (N) of the most recent filters applied to feedback tones in order to avoid removing a filter from a tone recently detected.
After applying a filter to the feedback tone, the process 200 returns to step 208 (
Examples of the systems and methods described above comprise computer components and computer-implemented steps that will be apparent to those skilled in the art. For example, it should be understood by one of skill in the art that the computer-implemented steps may be stored as computer-executable instructions on a computer-readable medium such as, for example, floppy disks, hard disks, optical disks, Flash ROMS, nonvolatile ROM, and RAM.
Furthermore, it should be understood by one of skill in the art that the computer-executable instructions may be executed on a variety of processors such as, for example, microprocessors, digital signal processors, gate arrays, etc. For ease of exposition, not every step or element of the systems and methods described above is described herein as part of a computer system, but those skilled in the art will recognize that each step or element may have a corresponding computer system or software component. Such computer system and/or software components are therefore enabled by describing their corresponding steps or elements (that is, their functionality), and are within the scope of the disclosure.
A number of implementations have been described. Nevertheless, it will be understood that additional modifications may be made without departing from the scope of the inventive concepts described herein, and, accordingly, other embodiments are within the scope of the following claims.