Author Topic: digital notch filter to eliminate hum ?  (Read 16428 times)

Offline glider

  • Newbie
  • *
  • Posts: 4
digital notch filter to eliminate hum ?
« on: February 22, 2005, 06:09:47 PM »
First of all - great site!
I'm a student pilot so its great to be able to practice listening to ATC comm.

However, quite a few of the feeds have a fair amount of hum.

Best would of course to be to eliminate this at the source,
but thats not always possible (computers & audio are never
easy..), have you guys looked into running the sample
stream through a digital notch filter ?
It should not be that compute intensive, but of course I
haven't tried anything nor do I know more of what you do to capture the audio.

Also - I was thinking it would be interesting to present a
snapshot of the waveform (say for the last 10 minutes)
when selecting which station to be able to quickly pick one that has the most activity.



Offline dave

  • Site Founder
  • Administrator
  • Hero Member
  • *****
  • Posts: 4593
    • LiveATC.net
digital notch filter to eliminate hum ?
« Reply #1 on: February 22, 2005, 09:16:04 PM »
Bes to solve it at the source.  I know how to do it digitally but can't get at the stream that easily.

Dave

Offline glider

  • Newbie
  • *
  • Posts: 4
digital notch filter to eliminate hum ?
« Reply #2 on: February 22, 2005, 11:47:34 PM »
Are you guys using unix/linux ?

I did a simple test with the venerable 'sox' and its very quick - it should
work fine on stdin/stdout as well for streaming audio.

This takes out 60,120&some 240Hz from a 30min snippet.
Works really well - almost all hum is gone!

> time sox -V PANC-Feb-22-05-0000.wav out.wav bandreject 120 120
sox: Detected file format type: wav

sox: Chunk fmt
sox: Chunk data
sox: Reading Wave file: Microsoft PCM format, 1 channel, 22050 samp/sec
sox:         44100 byte/sec, 2 block align, 16 bits/samp, 79490304 data bytes
sox: Input file PANC-Feb-22-05-0000.wav: using sample rate 22050
        size shorts, encoding signed (2's complement), 1 channel
sox: Input file PANC-Feb-22-05-0000.wav: comment "PANC-Feb-22-05-0000.wav"

sox: Writing Wave file: Microsoft PCM format, 1 channel, 22050 samp/sec
sox:         44100 byte/sec, 2 block align, 16 bits/samp
sox: Output file out.wav: using sample rate 22050
        size shorts, encoding signed (2's complement), 1 channel
sox: Output file: comment "PANC-Feb-22-05-0000.wav"

sox: Finished writing Wave file, 79490304 data bytes 39745152 samples

2.390u 0.940s 0:03.91 85.1%     0+0k 0+0io 197pf+0w

Offline dave

  • Site Founder
  • Administrator
  • Hero Member
  • *****
  • Posts: 4593
    • LiveATC.net
digital notch filter to eliminate hum ?
« Reply #3 on: February 23, 2005, 07:24:39 AM »
We use a variety of UNIX and Linux servers and Icecast for streaming.  I don't see any easy way of integrating this into Icecast, at first glance.  Sox works great, but the problem has always been finding a place to plug it in.

This happens on so few streams that it would be hard to justify the work required to do this.

Dave

Offline glider

  • Newbie
  • *
  • Posts: 4
digital notch filter to eliminate hum ?
« Reply #4 on: February 23, 2005, 10:14:38 AM »
Well, maybe I'm picky, but on the class C airfeeds,
all these have hum to some extent:
PANC, KBTV, KLFT, KMKE, KLEX, KMHT
Thats 6 out of 8 (working) feeds!

So on the feeder site, how do you read the audio device ?
When you encode to mp3, do you take directly from the device ? If so then you could simply run sox in between and have lame (or whatever libshout uses to encode) encode the filtered output ?

I'm willing to try try setting up a test feeder site (with hum removal) to try it out if you don't have time for it.


Quote from: dave
We use a variety of UNIX and Linux servers and Icecast for streaming.  I don't see any easy way of integrating this into Icecast, at first glance.  Sox works great, but the problem has always been finding a place to plug it in.

This happens on so few streams that it would be hard to justify the work required to do this.

Dave

Offline dave

  • Site Founder
  • Administrator
  • Hero Member
  • *****
  • Posts: 4593
    • LiveATC.net
digital notch filter to eliminate hum ?
« Reply #5 on: February 23, 2005, 01:02:16 PM »
98% of the feeder sites run Stream Transcoder on Windows.

Another way to try and reduce it, which seems to work OK, is to adjust the equalizer on your MP3 player (Winamp has one, not sure about the rest).
YMMV.

Dave

Offline glider

  • Newbie
  • *
  • Posts: 4
digital notch filter to eliminate hum ?
« Reply #6 on: February 23, 2005, 02:03:21 PM »
Ahh - windows makes it harder...

But - after you mentioned using an equalizer I checked the
xmms plugins - and there is actually a 'sox' plugin! :)
Unfortunately it was missing the bandreject filter,
will check the package to see if its possible to add it.

Thanks!

Quote from: dave
98% of the feeder sites run Stream Transcoder on Windows.

Another way to try and reduce it, which seems to work OK, is to adjust the equalizer on your MP3 player (Winamp has one, not sure about the rest).
YMMV.

Dave