5

I want to flatten frequency response of my headphones with EQ (to dramatically increase sound quality with only a bit of time), but I need tone generator for that with live manually selectable frequency gauge, so I can dynamically move it and locate peaks. EQing by playing samples of different tones is much more cumbersome and less accurate.

I need something like this: http://www.tucows.com/preview/502787/SineGen I'd love to not have to use wine.

Ctrl-C
  • 241
  • 1
    Related: https://unix.stackexchange.com/questions/82112/stereo-tone-generator-for-linux – Nathaniel M. Beaver Apr 14 '19 at 23:37
  • Finally I used one of "Online Tone Generator" results from Google. These don't have any non-GUI interface, but you can use mouse to freely change frequency with any speed you want. – Ctrl-C Jun 04 '19 at 09:38

2 Answers2

3

There is a program in the standard repos called siggen that can do this.

screenshot of siggen

It has a curses interface, and you can increment or decrement the frequency with the arrow keys.

Since /dev/dsp is deprecated in most modern Linux distros, you will probably need to install a compatibility library. On Debian-based distros, install the alsa-oss package and run it like this:

$ aoss siggen

or with the PulseAudio OSS Wrapper like so:

$ padsp siggen
1

You might be able to use speaker-test for that.

speaker-test -c1 -t sine -f 440

produces a sine wave of 440 Hz out of my left front speaker. I used a tuning app on my Android phone to verify the frequencies that speaker-test produces. The android app measured the specified tone to within 0.1 Hz.

I used an oscilloscope android app to see the sound waveform, and it showed a decent sine wave. The right front speaker of my laptop has a worse sine wave than the left front.

  • Thank you, but I need something to sweep smoothly through frequencies so I can hear if there's a dip or peak, how wide etc. Anyway nice tip about oscilloscope, I'll use this on my speakers just for science ;] – Ctrl-C Nov 27 '15 at 16:59