From b38a572356ef8fdb346467233a990570561bfb67 Mon Sep 17 00:00:00 2001 From: Jaroslav Kysela Date: Fri, 20 Aug 1999 20:16:46 +0000 Subject: [PATCH] Fixes for PCM loopback.. --- include/pcm.h | 2 +- src/pcm/pcm_loopback.c | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/include/pcm.h b/include/pcm.h index 73856f60..69707810 100644 --- a/include/pcm.h +++ b/include/pcm.h @@ -49,7 +49,7 @@ ssize_t snd_pcm_read(snd_pcm_t *handle, void *buffer, size_t size); extern "C" { #endif -int snd_pcm_loopback_open(snd_pcm_loopback_t **handle, int card, int device, int mode); +int snd_pcm_loopback_open(snd_pcm_loopback_t **handle, int card, int device, int subchn, int mode); int snd_pcm_loopback_close(snd_pcm_loopback_t *handle); int snd_pcm_loopback_file_descriptor(snd_pcm_loopback_t *handle); int snd_pcm_loopback_block_mode(snd_pcm_loopback_t *handle, int enable); diff --git a/src/pcm/pcm_loopback.c b/src/pcm/pcm_loopback.c index 3da41c7b..d9b03545 100644 --- a/src/pcm/pcm_loopback.c +++ b/src/pcm/pcm_loopback.c @@ -28,7 +28,7 @@ #include #include "asoundlib.h" -#define SND_FILE_PCM_LB "/proc/asound/%i/pcm%i%s" +#define SND_FILE_PCM_LB "/proc/asound/%i/pcmloopD%iS%i%s" #define SND_PCM_LB_VERSION_MAX SND_PROTOCOL_VERSION( 1, 0, 0 ) struct snd_pcm_loopback { @@ -37,7 +37,7 @@ struct snd_pcm_loopback { int fd; } ; -int snd_pcm_loopback_open(snd_pcm_loopback_t **handle, int card, int device, int mode) +int snd_pcm_loopback_open(snd_pcm_loopback_t **handle, int card, int device, int subchn, int mode) { int fd, ver; char filename[32]; @@ -47,8 +47,8 @@ int snd_pcm_loopback_open(snd_pcm_loopback_t **handle, int card, int device, int if (card < 0 || card >= SND_CARDS) return -EINVAL; - sprintf(filename, SND_FILE_PCM_LB, card, device, - mode == SND_PCM_LB_OPEN_CAPTURE ? "r" : "p"); + sprintf(filename, SND_FILE_PCM_LB, card, device, subchn, + mode == SND_PCM_LB_OPEN_CAPTURE ? "c" : "p"); if ((fd = open(filename, mode)) < 0) { snd_card_load(card); if ((fd = open(filename, mode)) < 0) -- 2.47.1