Skip to content

Instantly share code, notes, and snippets.

@smartmic
Last active February 3, 2024 19:52
Show Gist options
  • Save smartmic/c20bd18cc846170d96a0 to your computer and use it in GitHub Desktop.
Save smartmic/c20bd18cc846170d96a0 to your computer and use it in GitHub Desktop.
.asoundrc
defaults.pcm.!rate_converter "samplerate_best"
# ******************************************************
# PLAYBACK
# hardware 0,0 : ALSA playback
pcm.loophw00 {
type hw
card Loopback
device 0
subdevice 0
format S32_LE
rate 48000
}
# playback PCM device: using loopback subdevice 0,0
pcm.amix {
type dmix
ipc_key 219345
slave {
pcm loophw00
period_size 8192
periods 2
}
}
# software volume: using loopback subdevie 0,0
pcm.asoftvol {
type softvol
slave.pcm "amix"
control { name "Volume Out" }
min_dB -51.0
max_dB 20.0
}
# ------------------------------------------------------
# for Jack alsa_in: looped-back signal at other end
pcm.cloop {
type hw
card Loopback
device 1
subdevice 0
format S32_LE
rate 48000
}
# ******************************************************
# CAPTURE
# hardware 0,1 : used for ALSA capture
pcm.loophw01 {
type hw
card Loopback
device 0
subdevice 1
format S32_LE
rate 48000
}
# software volume
pcm.bsoftvol {
type softvol
slave.pcm "loophw01"
control { name "Volume In" }
min_dB -51.0
max_dB 20.0
}
# ------------------------------------------------------
# for Jack alsa_out: looped-back signal at other ends
pcm.ploop {
type hw
card Loopback
device 1
subdevice 1
format S32_LE
rate 48000
}
# ******************************************************
# duplex device combining our PCM devices defined above
pcm.aduplex {
type asym
playback.pcm "asoftvol"
capture.pcm "bsoftvol"
}
# ------------------------------------------------------
# default device
pcm.!default {
type plug
slave.pcm "aduplex"
hint {
show on
description "Duplex Loopback"
}
}
ctl.!default {
type hw
card Loopback
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment