Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Current Level of Microphone Input

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!

like image 547
Dominik Schreiber Avatar asked Nov 28 '12 13:11

Dominik Schreiber


2 Answers

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.

like image 199
CL. Avatar answered Nov 08 '22 03:11

CL.


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
like image 33
NVRM Avatar answered Nov 08 '22 03:11

NVRM