我正在使用我的Ubuntu14.04 LTS笔记本电脑在一个聚会上播放音乐。我正在使用Mixxx,并且在这个任务中执行得很好。现在,我想添加一些轻效果,并计划使用Qlcplus。所以我需要把声音从Mixxx发送到声卡和Qlcplus。
我已经成功地将Mixxx配置为向ALSA回环发送声音并在Qlcplus中恢复它。但是我没有声音输出。我如何将声音从ALSA回路传送回扬声器?
发布于 2014-12-29 11:18:23
经过大量的研究,我找到了我问题的答案。您需要适当地配置ALSA,它将提供一个新的设备,将发送给它的声音复制到两个或多个设备,如声卡和回送设备。
在这里,我使用的.asoundrc文件:
# If you want this to be the default, then you
# need to override the default device and provide
# a playback path to the CardAndLoop and a capture
# path to whatever soundcard you have (here the 1st card)
#pcm.!default {
# type asym
# playback.pcm "CardAndLoop"
# capture.pcm "hw:0,0"
#}
# This is the interface you use for sound output
# It will send the output to the soundcard and loopback device
pcm.CardAndLoop {
type plug
slave.pcm MultiCh
route_policy "duplicate"
}
# Virtual multichannel device with four channels
# two the for the soundcard, two for the loopback
pcm.MultiCh {
type multi
slaves.a.pcm pcm.MixCard
slaves.a.channels 2
slaves.b.pcm pcm.MixLoopback
slaves.b.channels 2
bindings.0.slave a
bindings.0.channel 0
bindings.1.slave a
bindings.1.channel 1
bindings.2.slave b
bindings.2.channel 0
bindings.3.slave b
bindings.3.channel 1
}
# Mixer for the soundcard
pcm.MixCard {
type dmix
ipc_key 1024
slave {
# pcm "hw:Conectiv,0"
pcm "hw:PCH,0"
# rate 48000
rate 44100
periods 128
period_time 0
period_size 1024 # must be power of 2
buffer_size 8192
}
}
# Mixer for the loopback
pcm.MixLoopback {
type dmix
ipc_key 1025
slave {
pcm "hw:Loopback,0"
# rate 48000
rate 44100
periods 128
period_time 0
period_size 1024 # must be power of 2
buffer_size 8192
}
}此文件将提供一个新的ALSA声音设备'CardAndLoop‘。如果您在声音应用程序中选择此设备,则声音将被发送到“PCH”声卡和回环设备。您可以启动第二个应用程序,并使用回环设备作为输入,它将获得第一个应用程序播放的声音。
我用名字来命名音响设备。这些名称可以从/proc/asound/cards文件中提取:
$ cat /proc/asound/cards
0 [PCH ]: HDA-Intel - HDA Intel PCH
HDA Intel PCH at 0xf5330000 irq 44
2 [Loopback ]: Loopback - Loopback
Loopback 1玩得开心!
https://unix.stackexchange.com/questions/175649
复制相似问题