7

How can I get the current audio input level of a microphone via a shell command under Ubuntu 12.04 LTS?

I checked out amixer to set the volume but could not find a way to get the audio input level at the time of the shell call.

Thank you in advance!

Dominik Schreiber
  • 769
  • 2
  • 15
  • 25

2 Answers2

8

To get the level of the input signal, you have to actually record from the input device. Use the -d 1 parameter for arecord to get a short file.

To read the level of the data in that file, use something like sox recordedfile.wav -n stat.

CL.
  • 173,858
  • 17
  • 217
  • 259
2

Based on the above answer, to get the maximum amplitude:

arecord -qd 1 volt && sox volt -n stat &> volt.d && sed '4q;d' volt.d
NVRM
  • 11,480
  • 1
  • 88
  • 87