Hi, Actually, i am using the alsa dummy driver for the linux kernel. Indeed, for a specific proof of concept, i am trying to use an audio loopback driver as virtual microphone. An audio stream is injecting into the dummy using the ffmpeg tool and another instance of the tool get the sound back but the sound in output is not good. I join more detail just below about my problem if someone can have few minutes to send me a feedback. Maybe i have a problem with my alsa_id, about the format or somewhere else. Thanks in advance. ----------------------------------------------------------------------------------------------------- More information about : I have an local stream encoded with the pcm_s16le codec. I need virtual audio driver without any link with a hardware. Indeed, i need to inject/write/play an audio pcm stream into this driver and to to read/record from the same driver in output. I can test the audio using the ffmpeg tool and it works fine : /usr/local/bin/ffplay -f s16le -acodec pcm_s16le -ar 44.1k -ac 1 -i tcp://localhost:4001 The first question is to use either the snd-aloop or snd-dummy driver ? which one is the best to use ? The alsa ID to used is obtain as follow : export ALSA_ID="`cat /proc/asound/modules|grep snd_dummy|awk '{print $1}'`" echo ${ALSA_ID} 1 (not sure i have to use only 1) Here is how i play the pcm audio stream into the Dummy driver : /usr/local/bin/ffmpeg -f s16le -acodec pcm_s16le -ar 44.1k -ac 1 -i tcp://localhost:4001 -acodec pcm_s16le -ar 44.1k -ac 1 -f alsa hw:${ALSA_ID} For the test, the playback of the sound through the alsa drivers is done as follow : /usr/local/bin/ffplay -acodec pcm_s16le -ar 44.1k -ac 1 -f alsa hw:${ALSA_ID} The recording is done like this : /usr/local/bin/ffmpeg -f v4l2 -i /dev/video2 -f alsa -i hw:${ALSA_ID} -ss 00:00:05 -async 1 /tmp/record/live-record-1427383242378.mp4 The driver have the following configuration : /etc/modules-load.d/sound-loopback.conf snd-dummy /etc/modprobe.d/sound-loopback.conf options snd-dummy fake_buffer=0 pcm_devs=4 enable=1 $ lsmod | grep snd snd_hda_codec_hdmi 46368 1 snd_hda_codec_realtek 65580 1 snd_hda_intel 56531 4 snd_hda_codec 192906 3 snd_hda_codec_realtek,snd_hda_codec_hdmi,snd_hda_intel snd_dummy 20483 2 snd_hwdep 13602 1 snd_hda_codec snd_aloop 23396 2 snd_seq_midi 13324 0 snd_seq_midi_event 14899 1 snd_seq_midi snd_pcm 102099 6 snd_aloop,snd_dummy,snd_hda_codec_hdmi,snd_hda_codec,snd_hda_intel snd_page_alloc 18710 2 snd_pcm,snd_hda_intel snd_rawmidi 30144 1 snd_seq_midi snd_seq 61560 2 snd_seq_midi_event,snd_seq_midi snd_seq_device 14497 3 snd_seq,snd_rawmidi,snd_seq_midi snd_timer 29482 2 snd_pcm,snd_seq snd 69322 28 snd_hda_codec_realtek,snd_aloop,snd_dummy,snd_hwdep,snd_timer,snd_hda_codec_hdmi,snd_pcm,snd_seq,snd_rawmidi,snd_hda_codec,snd_hda_intel,snd_seq_device,snd_seq_midi soundcore 12680 1 snd $ cat /etc/modprobe.d/alsa-base.conf # autoloader aliases install sound-slot-0 /sbin/modprobe snd-card-0 install sound-slot-1 /sbin/modprobe snd-card-1 install sound-slot-2 /sbin/modprobe snd-card-2 install sound-slot-3 /sbin/modprobe snd-card-3 install sound-slot-4 /sbin/modprobe snd-card-4 install sound-slot-5 /sbin/modprobe snd-card-5 install sound-slot-6 /sbin/modprobe snd-card-6 install sound-slot-7 /sbin/modprobe snd-card-7 # Cause optional modules to be loaded above generic modules install snd /sbin/modprobe --ignore-install snd $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-ioctl32 ; /sbin/modprobe --quiet --use-blacklist snd-seq ; } # # Workaround at bug #499695 (reverted in Ubuntu see LP #319505) install snd-pcm /sbin/modprobe --ignore-install snd-pcm $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-pcm-oss ; : ; } install snd-mixer /sbin/modprobe --ignore-install snd-mixer $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-mixer-oss ; : ; } install snd-seq /sbin/modprobe --ignore-install snd-seq $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-seq-midi ; /sbin/modprobe --quiet --use-blacklist snd-seq-oss ; : ; } # install snd-rawmidi /sbin/modprobe --ignore-install snd-rawmidi $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-seq-midi ; : ; } # Cause optional modules to be loaded above sound card driver modules install snd-emu10k1 /sbin/modprobe --ignore-install snd-emu10k1 $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-emu10k1-synth ; } install snd-via82xx /sbin/modprobe --ignore-install snd-via82xx $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-seq ; } # Load saa7134-alsa instead of saa7134 (which gets dragged in by it anyway) install saa7134 /sbin/modprobe --ignore-install saa7134 $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist saa7134-alsa ; : ; } # Prevent abnormal drivers from grabbing index 0 options bt87x index=-2 options cx88_alsa index=-2 options saa7134-alsa index=-2 options snd-atiixp-modem index=-2 options snd-intel8x0m index=-2 options snd-via82xx-modem index=-2 options snd-usb-audio index=-2 options snd-usb-caiaq index=-2 options snd-usb-ua101 index=-2 options snd-usb-us122l index=-2 options snd-usb-usx2y index=-2 # Ubuntu #62691, enable MPU for snd-cmipci options snd-cmipci mpu_port=0x330 fm_port=0x388 # Keep snd-pcsp from being loaded as first soundcard options snd-pcsp index=-2 # Keep snd-usb-audio from beeing loaded as first soundcard options snd-usb-audio index=-2 I am using the following script to generate the /home/myuser/.asoundrc system file : /etc/amahealth/setup-asoundrc.sh #!/bin/bash # setup-asoundrc.sh v0.1.0 20090101 markc@xxxxxxxxx GPLv3 # setup-asoundrc.sh v0.2.0 20090320 quatro_por_quatro@xxxxxxxx GPLv3 # # A simple script to create a particular default audio device regardless # of what cards are loaded or in what order. It could be used anytime or # placed in a ~/.bashrc script for a persistent setup every login. # # Usage: setup-asoundrc.sh [DEFAULT_CARD] > ~/.asoundrc # use the first parameter as the card name, or else # look for the sound card, discarding those that are only microphones # when there are multiple cards, use the first one if default_card="${1:-$(cat "$(for f in $(ls -1 /proc/asound/card[0-9]*/{midi,codec}* 2>/dev/null); do echo "${f%/*}"; done \ | sed -e '\|^[\[:blank:]\]$|d' -e 'q')/id" 2>/dev/null)}"; then echo "Using sound card: ${default_card}" >&2 cat /proc/asound/card[0-9]*/id | \ gawk --assign default_card="${default_card}" \ '{print "pcm."$1" { type hw; card "$1"; }\nctl."$1" { type hw; card "$1"; }" } END {print "pcm.!default pcm."default_card"\nctl.!default ctl."default_card}' else echo "Warning: No sound cards found." >&2 fi Used like this : $ sudo /etc/setup-asoundrc.sh Dummy > /home/myuser/.soundrc That provide the following file : pcm.Loopback { type hw; card Loopback; } ctl.Loopback { type hw; card Loopback; } pcm.Dummy { type hw; card Dummy; } ctl.Dummy { type hw; card Dummy; } pcm.HDMI { type hw; card HDMI; } ctl.HDMI { type hw; card HDMI; } pcm.PCH { type hw; card PCH; } ctl.PCH { type hw; card PCH; } pcm.!default pcm.Dummy ctl.!default ctl.Dummy Here are more information about : $ aplay -l **** Liste des Périphériques Matériels PLAYBACK **** carte 0: Loopback [Loopback], périphérique 0: Loopback PCM [Loopback PCM] Sous-périphériques: 8/8 Sous-périphérique #0: subdevice #0 Sous-périphérique #1: subdevice #1 Sous-périphérique #2: subdevice #2 Sous-périphérique #3: subdevice #3 Sous-périphérique #4: subdevice #4 Sous-périphérique #5: subdevice #5 Sous-périphérique #6: subdevice #6 Sous-périphérique #7: subdevice #7 carte 0: Loopback [Loopback], périphérique 1: Loopback PCM [Loopback PCM] Sous-périphériques: 8/8 Sous-périphérique #0: subdevice #0 Sous-périphérique #1: subdevice #1 Sous-périphérique #2: subdevice #2 Sous-périphérique #3: subdevice #3 Sous-périphérique #4: subdevice #4 Sous-périphérique #5: subdevice #5 Sous-périphérique #6: subdevice #6 Sous-périphérique #7: subdevice #7 carte 1: Dummy [Dummy], périphérique 0: Dummy PCM [Dummy PCM] Sous-périphériques: 7/8 Sous-périphérique #0: subdevice #0 Sous-périphérique #1: subdevice #1 Sous-périphérique #2: subdevice #2 Sous-périphérique #3: subdevice #3 Sous-périphérique #4: subdevice #4 Sous-périphérique #5: subdevice #5 Sous-périphérique #6: subdevice #6 Sous-périphérique #7: subdevice #7 carte 1: Dummy [Dummy], périphérique 1: Dummy PCM [Dummy PCM] Sous-périphériques: 8/8 Sous-périphérique #0: subdevice #0 Sous-périphérique #1: subdevice #1 Sous-périphérique #2: subdevice #2 Sous-périphérique #3: subdevice #3 Sous-périphérique #4: subdevice #4 Sous-périphérique #5: subdevice #5 Sous-périphérique #6: subdevice #6 Sous-périphérique #7: subdevice #7 carte 1: Dummy [Dummy], périphérique 2: Dummy PCM [Dummy PCM] Sous-périphériques: 8/8 Sous-périphérique #0: subdevice #0 Sous-périphérique #1: subdevice #1 Sous-périphérique #2: subdevice #2 Sous-périphérique #3: subdevice #3 Sous-périphérique #4: subdevice #4 Sous-périphérique #5: subdevice #5 Sous-périphérique #6: subdevice #6 Sous-périphérique #7: subdevice #7 carte 1: Dummy [Dummy], périphérique 3: Dummy PCM [Dummy PCM] Sous-périphériques: 8/8 Sous-périphérique #0: subdevice #0 Sous-périphérique #1: subdevice #1 Sous-périphérique #2: subdevice #2 Sous-périphérique #3: subdevice #3 Sous-périphérique #4: subdevice #4 Sous-périphérique #5: subdevice #5 Sous-périphérique #6: subdevice #6 Sous-périphérique #7: subdevice #7 carte 2: HDMI [HDA Intel HDMI], périphérique 3: HDMI 0 [HDMI 0] Sous-périphériques: 1/1 Sous-périphérique #0: subdevice #0 carte 2: HDMI [HDA Intel HDMI], périphérique 7: HDMI 1 [HDMI 1] Sous-périphériques: 1/1 Sous-périphérique #0: subdevice #0 carte 2: HDMI [HDA Intel HDMI], périphérique 8: HDMI 2 [HDMI 2] Sous-périphériques: 1/1 Sous-périphérique #0: subdevice #0 carte 3: PCH [HDA Intel PCH], périphérique 0: ALC668 Analog [ALC668 Analog] Sous-périphériques: 1/1 Sous-périphérique #0: subdevice #0 $ aplay -L null Discard all samples (playback) or generate zero samples (capture) pulse PulseAudio Sound Server default Playback/recording through the PulseAudio sound server sysdefault:CARD=Loopback Loopback, Loopback PCM Default Audio Device dmix:CARD=Loopback,DEV=0 Loopback, Loopback PCM Direct sample mixing device dmix:CARD=Loopback,DEV=1 Loopback, Loopback PCM Direct sample mixing device dsnoop:CARD=Loopback,DEV=0 Loopback, Loopback PCM Direct sample snooping device dsnoop:CARD=Loopback,DEV=1 Loopback, Loopback PCM Direct sample snooping device hw:CARD=Loopback,DEV=0 Loopback, Loopback PCM Direct hardware device without any conversions hw:CARD=Loopback,DEV=1 Loopback, Loopback PCM Direct hardware device without any conversions plughw:CARD=Loopback,DEV=0 Loopback, Loopback PCM Hardware device with all software conversions plughw:CARD=Loopback,DEV=1 Loopback, Loopback PCM Hardware device with all software conversions sysdefault:CARD=Dummy Dummy, Dummy PCM Default Audio Device dmix:CARD=Dummy,DEV=0 Dummy, Dummy PCM Direct sample mixing device dmix:CARD=Dummy,DEV=1 Dummy, Dummy PCM Direct sample mixing device dmix:CARD=Dummy,DEV=2 Dummy, Dummy PCM Direct sample mixing device dmix:CARD=Dummy,DEV=3 Dummy, Dummy PCM Direct sample mixing device dsnoop:CARD=Dummy,DEV=0 Dummy, Dummy PCM Direct sample snooping device dsnoop:CARD=Dummy,DEV=1 Dummy, Dummy PCM Direct sample snooping device dsnoop:CARD=Dummy,DEV=2 Dummy, Dummy PCM Direct sample snooping device dsnoop:CARD=Dummy,DEV=3 Dummy, Dummy PCM Direct sample snooping device hw:CARD=Dummy,DEV=0 Dummy, Dummy PCM Direct hardware device without any conversions hw:CARD=Dummy,DEV=1 Dummy, Dummy PCM Direct hardware device without any conversions hw:CARD=Dummy,DEV=2 Dummy, Dummy PCM Direct hardware device without any conversions hw:CARD=Dummy,DEV=3 Dummy, Dummy PCM Direct hardware device without any conversions plughw:CARD=Dummy,DEV=0 Dummy, Dummy PCM Hardware device with all software conversions plughw:CARD=Dummy,DEV=1 Dummy, Dummy PCM Hardware device with all software conversions plughw:CARD=Dummy,DEV=2 Dummy, Dummy PCM Hardware device with all software conversions plughw:CARD=Dummy,DEV=3 Dummy, Dummy PCM Hardware device with all software conversions hdmi:CARD=HDMI,DEV=0 HDA Intel HDMI, HDMI 0 HDMI Audio Output hdmi:CARD=HDMI,DEV=1 HDA Intel HDMI, HDMI 1 HDMI Audio Output hdmi:CARD=HDMI,DEV=2 HDA Intel HDMI, HDMI 2 HDMI Audio Output dmix:CARD=HDMI,DEV=3 HDA Intel HDMI, HDMI 0 Direct sample mixing device dmix:CARD=HDMI,DEV=7 HDA Intel HDMI, HDMI 1 Direct sample mixing device dmix:CARD=HDMI,DEV=8 HDA Intel HDMI, HDMI 2 Direct sample mixing device dsnoop:CARD=HDMI,DEV=3 HDA Intel HDMI, HDMI 0 Direct sample snooping device dsnoop:CARD=HDMI,DEV=7 HDA Intel HDMI, HDMI 1 Direct sample snooping device dsnoop:CARD=HDMI,DEV=8 HDA Intel HDMI, HDMI 2 Direct sample snooping device hw:CARD=HDMI,DEV=3 HDA Intel HDMI, HDMI 0 Direct hardware device without any conversions hw:CARD=HDMI,DEV=7 HDA Intel HDMI, HDMI 1 Direct hardware device without any conversions hw:CARD=HDMI,DEV=8 HDA Intel HDMI, HDMI 2 Direct hardware device without any conversions plughw:CARD=HDMI,DEV=3 HDA Intel HDMI, HDMI 0 Hardware device with all software conversions plughw:CARD=HDMI,DEV=7 HDA Intel HDMI, HDMI 1 Hardware device with all software conversions plughw:CARD=HDMI,DEV=8 HDA Intel HDMI, HDMI 2 Hardware device with all software conversions sysdefault:CARD=PCH HDA Intel PCH, ALC668 Analog Default Audio Device front:CARD=PCH,DEV=0 HDA Intel PCH, ALC668 Analog Front speakers surround40:CARD=PCH,DEV=0 HDA Intel PCH, ALC668 Analog 4.0 Surround output to Front and Rear speakers surround41:CARD=PCH,DEV=0 HDA Intel PCH, ALC668 Analog 4.1 Surround output to Front, Rear and Subwoofer speakers surround50:CARD=PCH,DEV=0 HDA Intel PCH, ALC668 Analog 5.0 Surround output to Front, Center and Rear speakers surround51:CARD=PCH,DEV=0 HDA Intel PCH, ALC668 Analog 5.1 Surround output to Front, Center, Rear and Subwoofer speakers surround71:CARD=PCH,DEV=0 HDA Intel PCH, ALC668 Analog 7.1 Surround output to Front, Center, Side, Rear and Woofer speakers dmix:CARD=PCH,DEV=0 HDA Intel PCH, ALC668 Analog Direct sample mixing device dsnoop:CARD=PCH,DEV=0 HDA Intel PCH, ALC668 Analog Direct sample snooping device hw:CARD=PCH,DEV=0 HDA Intel PCH, ALC668 Analog Direct hardware device without any conversions plughw:CARD=PCH,DEV=0 HDA Intel PCH, ALC668 Analog Hardware device with all software conversions $ arecord -l **** Liste des Périphériques Matériels CAPTURE **** carte 0: Loopback [Loopback], périphérique 0: Loopback PCM [Loopback PCM] Sous-périphériques: 8/8 Sous-périphérique #0: subdevice #0 Sous-périphérique #1: subdevice #1 Sous-périphérique #2: subdevice #2 Sous-périphérique #3: subdevice #3 Sous-périphérique #4: subdevice #4 Sous-périphérique #5: subdevice #5 Sous-périphérique #6: subdevice #6 Sous-périphérique #7: subdevice #7 carte 0: Loopback [Loopback], périphérique 1: Loopback PCM [Loopback PCM] Sous-périphériques: 8/8 Sous-périphérique #0: subdevice #0 Sous-périphérique #1: subdevice #1 Sous-périphérique #2: subdevice #2 Sous-périphérique #3: subdevice #3 Sous-périphérique #4: subdevice #4 Sous-périphérique #5: subdevice #5 Sous-périphérique #6: subdevice #6 Sous-périphérique #7: subdevice #7 carte 1: Dummy [Dummy], périphérique 0: Dummy PCM [Dummy PCM] Sous-périphériques: 7/8 Sous-périphérique #0: subdevice #0 Sous-périphérique #1: subdevice #1 Sous-périphérique #2: subdevice #2 Sous-périphérique #3: subdevice #3 Sous-périphérique #4: subdevice #4 Sous-périphérique #5: subdevice #5 Sous-périphérique #6: subdevice #6 Sous-périphérique #7: subdevice #7 carte 1: Dummy [Dummy], périphérique 1: Dummy PCM [Dummy PCM] Sous-périphériques: 8/8 Sous-périphérique #0: subdevice #0 Sous-périphérique #1: subdevice #1 Sous-périphérique #2: subdevice #2 Sous-périphérique #3: subdevice #3 Sous-périphérique #4: subdevice #4 Sous-périphérique #5: subdevice #5 Sous-périphérique #6: subdevice #6 Sous-périphérique #7: subdevice #7 carte 1: Dummy [Dummy], périphérique 2: Dummy PCM [Dummy PCM] Sous-périphériques: 8/8 Sous-périphérique #0: subdevice #0 Sous-périphérique #1: subdevice #1 Sous-périphérique #2: subdevice #2 Sous-périphérique #3: subdevice #3 Sous-périphérique #4: subdevice #4 Sous-périphérique #5: subdevice #5 Sous-périphérique #6: subdevice #6 Sous-périphérique #7: subdevice #7 carte 1: Dummy [Dummy], périphérique 3: Dummy PCM [Dummy PCM] Sous-périphériques: 8/8 Sous-périphérique #0: subdevice #0 Sous-périphérique #1: subdevice #1 Sous-périphérique #2: subdevice #2 Sous-périphérique #3: subdevice #3 Sous-périphérique #4: subdevice #4 Sous-périphérique #5: subdevice #5 Sous-périphérique #6: subdevice #6 Sous-périphérique #7: subdevice #7 carte 3: PCH [HDA Intel PCH], périphérique 0: ALC668 Analog [ALC668 Analog] Sous-périphériques: 1/1 Sous-périphérique #0: subdevice #0 $ arecord -L null Discard all samples (playback) or generate zero samples (capture) pulse PulseAudio Sound Server default Playback/recording through the PulseAudio sound server sysdefault:CARD=Loopback Loopback, Loopback PCM Default Audio Device dmix:CARD=Loopback,DEV=0 Loopback, Loopback PCM Direct sample mixing device dmix:CARD=Loopback,DEV=1 Loopback, Loopback PCM Direct sample mixing device dsnoop:CARD=Loopback,DEV=0 Loopback, Loopback PCM Direct sample snooping device dsnoop:CARD=Loopback,DEV=1 Loopback, Loopback PCM Direct sample snooping device hw:CARD=Loopback,DEV=0 Loopback, Loopback PCM Direct hardware device without any conversions hw:CARD=Loopback,DEV=1 Loopback, Loopback PCM Direct hardware device without any conversions plughw:CARD=Loopback,DEV=0 Loopback, Loopback PCM Hardware device with all software conversions plughw:CARD=Loopback,DEV=1 Loopback, Loopback PCM Hardware device with all software conversions sysdefault:CARD=Dummy Dummy, Dummy PCM Default Audio Device dmix:CARD=Dummy,DEV=0 Dummy, Dummy PCM Direct sample mixing device dmix:CARD=Dummy,DEV=1 Dummy, Dummy PCM Direct sample mixing device dmix:CARD=Dummy,DEV=2 Dummy, Dummy PCM Direct sample mixing device dmix:CARD=Dummy,DEV=3 Dummy, Dummy PCM Direct sample mixing device dsnoop:CARD=Dummy,DEV=0 Dummy, Dummy PCM Direct sample snooping device dsnoop:CARD=Dummy,DEV=1 Dummy, Dummy PCM Direct sample snooping device dsnoop:CARD=Dummy,DEV=2 Dummy, Dummy PCM Direct sample snooping device dsnoop:CARD=Dummy,DEV=3 Dummy, Dummy PCM Direct sample snooping device hw:CARD=Dummy,DEV=0 Dummy, Dummy PCM Direct hardware device without any conversions hw:CARD=Dummy,DEV=1 Dummy, Dummy PCM Direct hardware device without any conversions hw:CARD=Dummy,DEV=2 Dummy, Dummy PCM Direct hardware device without any conversions hw:CARD=Dummy,DEV=3 Dummy, Dummy PCM Direct hardware device without any conversions plughw:CARD=Dummy,DEV=0 Dummy, Dummy PCM Hardware device with all software conversions plughw:CARD=Dummy,DEV=1 Dummy, Dummy PCM Hardware device with all software conversions plughw:CARD=Dummy,DEV=2 Dummy, Dummy PCM Hardware device with all software conversions plughw:CARD=Dummy,DEV=3 Dummy, Dummy PCM Hardware device with all software conversions sysdefault:CARD=PCH HDA Intel PCH, ALC668 Analog Default Audio Device front:CARD=PCH,DEV=0 HDA Intel PCH, ALC668 Analog Front speakers surround40:CARD=PCH,DEV=0 HDA Intel PCH, ALC668 Analog 4.0 Surround output to Front and Rear speakers surround41:CARD=PCH,DEV=0 HDA Intel PCH, ALC668 Analog 4.1 Surround output to Front, Rear and Subwoofer speakers surround50:CARD=PCH,DEV=0 HDA Intel PCH, ALC668 Analog 5.0 Surround output to Front, Center and Rear speakers surround51:CARD=PCH,DEV=0 HDA Intel PCH, ALC668 Analog 5.1 Surround output to Front, Center, Rear and Subwoofer speakers surround71:CARD=PCH,DEV=0 HDA Intel PCH, ALC668 Analog 7.1 Surround output to Front, Center, Side, Rear and Woofer speakers dmix:CARD=PCH,DEV=0 HDA Intel PCH, ALC668 Analog Direct sample mixing device dsnoop:CARD=PCH,DEV=0 HDA Intel PCH, ALC668 Analog Direct sample snooping device hw:CARD=PCH,DEV=0 HDA Intel PCH, ALC668 Analog Direct hardware device without any conversions plughw:CARD=PCH,DEV=0 HDA Intel PCH, ALC668 Analog Hardware device with all software conversions $ ls /proc/asound/ card0/ card1/ card2/ card3/ cards devices Dummy/ HDMI/ hwdep Loopback/ modules PCH/ pcm seq/ timers version $ cat /proc/asound/pcm 00-00: Loopback PCM : Loopback PCM : playback 8 : capture 8 00-01: Loopback PCM : Loopback PCM : playback 8 : capture 8 01-00: Dummy PCM : Dummy PCM : playback 8 : capture 8 02-03: HDMI 0 : HDMI 0 : playback 1 02-07: HDMI 1 : HDMI 1 : playback 1 02-08: HDMI 2 : HDMI 2 : playback 1 03-00: ALC668 Analog : ALC668 Analog : playback 1 : capture 1 $ cat /proc/asound/modules 0 snd_aloop 1 snd_dummy 2 snd_hda_intel 3 snd_hda_intel $ cat /proc/asound/devices 1: : sequencer 2: [ 0- 1]: digital audio playback 3: [ 0- 1]: digital audio capture 4: [ 0- 0]: digital audio playback 5: [ 0- 0]: digital audio capture 6: [ 0] : control 7: [ 1- 0]: digital audio playback 8: [ 1- 0]: digital audio capture 9: [ 1] : control 10: [ 3- 0]: digital audio playback 11: [ 3- 0]: digital audio capture 12: [ 3- 0]: hardware dependent 13: [ 3] : control 14: [ 2- 8]: digital audio playback 15: [ 2- 7]: digital audio playback 16: [ 2- 3]: digital audio playback 17: [ 2- 0]: hardware dependent 18: [ 2] : control 33: : timer $ cat /proc/asound/cards 0 [Loopback ]: Loopback - Loopback Loopback 1 1 [Dummy ]: Dummy - Dummy Dummy 1 2 [HDMI ]: HDA-Intel - HDA Intel HDMI HDA Intel HDMI at 0xf7a14000 irq 53 3 [PCH ]: HDA-Intel - HDA Intel PCH HDA Intel PCH at 0xf7a10000 irq 52 $ cat /proc/asound/hwdep 03-00: HDA Codec 0 02-00: HDA Codec 0 $ cat /proc/asound/version Advanced Linux Sound Architecture Driver Version k3.13.0-46-generic. amahealth@amahealth-pc:~/tmp/webui-dev/DEBIAN$ cat /proc/asound/timers G0: system timer : 4000.000us (10000000 ticks) P0-0-0: PCM playback 0-0-0 : SLAVE P0-0-1: PCM capture 0-0-1 : SLAVE P0-0-2: PCM playback 0-0-2 : SLAVE P0-0-3: PCM capture 0-0-3 : SLAVE P0-0-4: PCM playback 0-0-4 : SLAVE P0-0-5: PCM capture 0-0-5 : SLAVE P0-0-6: PCM playback 0-0-6 : SLAVE P0-0-7: PCM capture 0-0-7 : SLAVE P0-0-8: PCM playback 0-0-8 : SLAVE P0-0-9: PCM capture 0-0-9 : SLAVE P0-0-10: PCM playback 0-0-10 : SLAVE P0-0-11: PCM capture 0-0-11 : SLAVE P0-0-12: PCM playback 0-0-12 : SLAVE P0-0-13: PCM capture 0-0-13 : SLAVE P0-0-14: PCM playback 0-0-14 : SLAVE P0-0-15: PCM capture 0-0-15 : SLAVE P0-1-0: PCM playback 0-1-0 : SLAVE P0-1-1: PCM capture 0-1-1 : SLAVE P0-1-2: PCM playback 0-1-2 : SLAVE P0-1-3: PCM capture 0-1-3 : SLAVE P0-1-4: PCM playback 0-1-4 : SLAVE P0-1-5: PCM capture 0-1-5 : SLAVE P0-1-6: PCM playback 0-1-6 : SLAVE P0-1-7: PCM capture 0-1-7 : SLAVE P0-1-8: PCM playback 0-1-8 : SLAVE P0-1-9: PCM capture 0-1-9 : SLAVE P0-1-10: PCM playback 0-1-10 : SLAVE P0-1-11: PCM capture 0-1-11 : SLAVE P0-1-12: PCM playback 0-1-12 : SLAVE P0-1-13: PCM capture 0-1-13 : SLAVE P0-1-14: PCM playback 0-1-14 : SLAVE P0-1-15: PCM capture 0-1-15 : SLAVE P1-0-0: PCM playback 1-0-0 : SLAVE P1-0-1: PCM capture 1-0-1 : SLAVE P1-0-2: PCM playback 1-0-2 : SLAVE P1-0-3: PCM capture 1-0-3 : SLAVE P1-0-4: PCM playback 1-0-4 : SLAVE P1-0-5: PCM capture 1-0-5 : SLAVE P1-0-6: PCM playback 1-0-6 : SLAVE P1-0-7: PCM capture 1-0-7 : SLAVE P1-0-8: PCM playback 1-0-8 : SLAVE P1-0-9: PCM capture 1-0-9 : SLAVE P1-0-10: PCM playback 1-0-10 : SLAVE P1-0-11: PCM capture 1-0-11 : SLAVE P1-0-12: PCM playback 1-0-12 : SLAVE P1-0-13: PCM capture 1-0-13 : SLAVE P1-0-14: PCM playback 1-0-14 : SLAVE P1-0-15: PCM capture 1-0-15 : SLAVE P2-3-0: PCM playback 2-3-0 : SLAVE P2-7-0: PCM playback 2-7-0 : SLAVE P2-8-0: PCM playback 2-8-0 : SLAVE P3-0-0: PCM playback 3-0-0 : SLAVE P3-0-1: PCM capture 3-0-1 : SLAVE $ tree /dev/snd/ /dev/snd/ ├── by-path │ ├── pci-0000:00:03.0 -> ../controlC2 │ ├── pci-0000:00:1b.0 -> ../controlC3 │ └── platform-snd_dummy.0 -> ../controlC1 ├── controlC0 ├── controlC1 ├── controlC2 ├── controlC3 ├── hwC2D0 ├── hwC3D0 ├── pcmC0D0c ├── pcmC0D0p ├── pcmC0D1c ├── pcmC0D1p ├── pcmC1D0c ├── pcmC1D0p ├── pcmC1D1c ├── pcmC1D1p ├── pcmC1D2c ├── pcmC1D2p ├── pcmC1D3c ├── pcmC1D3p ├── pcmC2D3p ├── pcmC2D7p ├── pcmC2D8p ├── pcmC3D0c ├── pcmC3D0p ├── seq └── timer 1 directory, 28 files $ tree /sys/module/snd_dummy/ /sys/module/snd_dummy/ ├── coresize ├── drivers │ └── platform:snd_dummy -> ../../../bus/platform/drivers/snd_dummy ├── holders ├── initsize ├── initstate ├── notes ├── parameters │ ├── enable │ ├── fake_buffer │ ├── hrtimer │ ├── id │ ├── index │ ├── model │ ├── pcm_devs │ └── pcm_substreams ├── refcnt ├── sections │ ├── __jump_table │ ├── __mcount_loc │ └── __param ├── srcversion ├── taint └── uevent 6 directories, 18 files $ modinfo snd-dummy filename: /lib/modules/3.13.0-46-generic/kernel/sound/drivers/snd-dummy.ko license: GPL description: Dummy soundcard (/dev/null) author: Jaroslav Kysela <perex@xxxxxxxx> srcversion: BE4ED116DC56DB7CDC157FD depends: snd,snd-pcm intree: Y vermagic: 3.13.0-46-generic SMP mod_unload modversions signer: Magrathea: Glacier signing key sig_key: C7:61:33:64:BC:2A:A1:9D:70:BF:0C:6E:59:BF:8A:CA:FF:65:C8:79 sig_hashalgo: sha512 parm: index:Index value for dummy soundcard. (array of int) parm: id:ID string for dummy soundcard. (array of charp) parm: enable:Enable this dummy soundcard. (array of bool) parm: model:Soundcard model. (array of charp) parm: pcm_devs:PCM devices # (0-4) for dummy driver. (array of int) parm: pcm_substreams:PCM substreams # (1-128) for dummy driver. (array of int) parm: fake_buffer:Fake buffer allocations. (bool) parm: hrtimer:Use hrtimer as the timer source. (bool) Regards Thierry GAYET Mobile : +33.663.849.589 Skype : terranova44 / tux35220 Member of the GNU/Linux Fundation : https://www.linuxfoundation.org/users/thierryg35 www.nextinnovation.org ------------------------------------------------------------------------------ Dive into the World of Parallel Programming The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take a look and join the conversation now. http://goparallel.sourceforge.net/ _______________________________________________ Alsa-user mailing list Alsa-user@xxxxxxxxxxxxxxxxxxxxx https://lists.sourceforge.net/lists/listinfo/alsa-user