Air Traffic Monitoring > Listener Forum

digital notch filter to eliminate hum ?

(1/2) > >>

glider:
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.

dave:
Bes to solve it at the source.  I know how to do it digitally but can't get at the stream that easily.

Dave

glider:
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

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

glider:
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
--- End quote ---

Navigation

[0] Message Index

[#] Next page

Go to full version