Audio input not working on Jetson TK1

My audio input is currently not working. arecord -l reports devices, however, using arecord results in file with no sound. The microphone works fine on other computers.

If the arecord -l lists multiple devices, did you try recording from all of them? If you choose the wrong input, then you’ll get just silence.

I tried all devices, none of them worked.

Which command exactly are you using?

Could you try if these help:
https://devtalk.nvidia.com/default/topic/772401/audio-input-on-jetson-tk1/

I am using ‘arecord -D voice test.wav’. I’ve also tried ‘arecord -D hw:1,0’ with hw:1,0-hw:1,4.

I tried the commands listed in the link, but they did not work.

Here is the result of ‘arecord -l’:

**** List of CAPTURE Hardware Devices ****
card 1: tegrart5639 [tegra-rt5639], device 0: rt5639 PCM rt5639-aif1-0 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: tegrart5639 [tegra-rt5639], device 2: BT SCO PCM dit-hifi-2 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: tegrart5639 [tegra-rt5639], device 3: VOICE CALL PCM rt5639-aif1-3 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: tegrart5639 [tegra-rt5639], device 4: BT VOICE CALL PCM dit-hifi-4 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0

Try with:

arecord -t wav -c 1 -d 4 -v tmp_file.wav
aplay tmp_file.wav

Beware if you are working with remote graphical logins and forwarding displays this may confuse the issue, e.g., “ssh -Y” may behave differently from just “ssh”.

Unfortunately that did not work. I have been running everything over ssh without graphics forwarding.

Output if its useful:

> arecord -t wav -c 1 -d 4 -v tmp_file.wav
Recording WAVE 'tmp_file.wav' : Unsigned 8 bit, Rate 8000 Hz, Mono
ALSA <-> PulseAudio PCM I/O Plugin
Its setup is:
  stream       : CAPTURE
  access       : RW_INTERLEAVED
  format       : U8
  subformat    : STD
  channels     : 1
  rate         : 8000
  exact rate   : 8000 (8000/1)
  msbits       : 8
  buffer_size  : 4000
  period_size  : 1000
  period_time  : 125000
  tstamp_mode  : NONE
  period_step  : 1
  avail_min    : 1000
  period_event : 0
  start_threshold  : 1
  stop_threshold   : 4000
  silence_threshold: 0
  silence_size : 0
  boundary     : 2097152000

From the other thread listed above, try this prior the recording:

amixer cset name="Stereo ADC MIXL ADC2 Switch" 0
amixer cset name="Stereo ADC MIXR ADC2 Switch" 0
amixer cset name="Int Mic Switch" 0
amixer cset name="ADC Capture Switch" 1
amixer cset name="RECMIXL BST1 Switch" 0
amixer cset name="RECMIXR BST1 Switch" 0
amixer cset name="RECMIXL BST2 Switch" 1
amixer cset name="RECMIXR BST2 Switch" 1
amixer cset name="Stereo ADC L1 Mux" "ADC"
amixer cset name="Stereo ADC R1 Mux" "ADC"
amixer cset name="Stereo ADC MIXL ADC1 Switch" 1
amixer cset name="Stereo ADC MIXR ADC1 Switch" 1
amixer cset name="Stereo ADC MIXL ADC2 Switch" 0
amixer cset name="Stereo ADC MIXR ADC2 Switch" 0
amixer cset name="IN1 Mode Control" "Single ended"
amixer cset name="IN2 Mode Control" "Single ended"
amixer cset name="Mic Jack Switch" 1

In particular, I’m thinking the Mic Jack Switch parameter might be the issue.