-
Notifications
You must be signed in to change notification settings - Fork 33
Feedback
Feedback is the portion of an emitted signal which is recorded by the microphones. It mainly depends on the acoustical paths from the loudspeaker to the microphone, i.e., on the physical connection between both. If feedback-times-amplification exceeds 100% for any frequency and certain phase conditions are met, the amplitude diverges which results in a loud and unpleasant howling tone. Hence, feedback limits the maximum amplification.
There are several sources for feedback of which the---by far---most dominant one is the acoustical feedback path. In other words, the soundwaves that travel from the loudspeakers though the air and the enclosure of the headset to the microphones.
The feedback seems to have a high degree of variation within a series. We observed that even the left and the right side can be very different. There is substantial feedback which severely limits the possible amplification at the moment.
We are currently running systematic measurements of feedback paths. The data will soon be provided here.
An simple possibility for measuring feedback is to play back a white noise signal and simultaneously record the signal from the microphones. Tools to generate the signal, to play it back and record simultaneously, and to evaluate the recorded signals are provided in this repository: https://github.com/m-r-s/hearingaid-prototype/tree/master/tools
They are intended to be used as follows:
- Calibrate your setup
- Log-in via SSH and go to the tools directory:
cd ~/hearingaid-prototype/tools
- Generate the white noise signal:
./generate_whitenoise.m
- Copy the generated file to /tmp/:
cp whitenoise_2ch.wav /tmp/
- Be sure that JACK is running. If unsure, open another terminal via SSH and run
cd ~/hearingaid-prototype && ./start.sh
and leave that window open. - Open
njconnect
, press "a" to see all audio connections, navigate to the "Audio Connections" panel pressing "tabulator", disconnect everything using "backspace", and close njconnect "q" - Place the headphones at least some 10cm away from each other and from any surfaces (dangeling from a chair?)
- Run the playback and record script and wait about 20 seconds until it finishes:
./record_feedback.sh /tmp/whitenoise_2ch.wav 22 /tmp/feedback.wav
- Check the output for errors that indicate that some ports could not be connected an repeat the last step if you see that error
- Copy the recorded "feedback.wav" to your tools directory:
cp /tmp/feedback.wav ~/hearingaid-prototype/tools/
- Run the evaluation script:
./evaluate_feedback.m
. - Copy the resulting "feedback.eps" (e.g., using scp) to you local PC to see the results. The file "feedback.wav" contains the first 100 ms of the feedback impulse response.
Here is an example output for a pair of Roland CS-10EM earphones: You can see the impulse responses of both channels in the upper panel, and the corresponding frequency responses in the lower panel. The delay from playback to recording is about 5 ms. The feedback paths are very different for both channels. At 3kHz, much more energy (about 15 dB) is registered at the microphone in channel 2, compared to channel 1.