From 295539577da6e3f43ab211c3adece32d59be8cab Mon Sep 17 00:00:00 2001 From: Takashi Iwai Date: Tue, 8 Jan 2002 17:21:28 +0000 Subject: [PATCH] fixed -c option --- ac3dec/ac3dec.c | 4 ++-- ac3dec/output.c | 6 +++++- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/ac3dec/ac3dec.c b/ac3dec/ac3dec.c index 37d4ad3..13d2bea 100644 --- a/ac3dec/ac3dec.c +++ b/ac3dec/ac3dec.c @@ -101,7 +101,7 @@ int main(int argc,char *argv[]) {"device", 1, NULL, 'D'}, {"4ch", 0, NULL, '4'}, {"6ch", 0, NULL, '6'}, - {"card", 0, NULL, 'c'}, + {"card", 1, NULL, 'c'}, {"iec958c", 0, NULL, 'C'}, {"spdif", 0, NULL, 'C'}, {"iec958p", 0, NULL, 'P'}, @@ -131,7 +131,7 @@ int main(int argc,char *argv[]) while (1) { int c; - if ((c = getopt_long(argc, argv, "hvcD:46CPRZ:q", long_option, NULL)) < 0) + if ((c = getopt_long(argc, argv, "hvc:D:46CPRZ:q", long_option, NULL)) < 0) break; switch (c) { case 'h': diff --git a/ac3dec/output.c b/ac3dec/output.c index 125de28..5d5494f 100644 --- a/ac3dec/output.c +++ b/ac3dec/output.c @@ -52,7 +52,6 @@ int output_open(output_t *output) switch (output->channels) { case 1: case 2: - sprintf(devstr, "default"); if (output->spdif != SPDIF_NONE) { unsigned char s[4]; if (output->spdif == SPDIF_PRO) { @@ -76,6 +75,11 @@ int output_open(output_t *output) sprintf(devstr, "iec958:AES0=0x%x,AES1=0x%x,AES2=0x%x,AES3=0x%x", s[0], s[1], s[2], s[3]); if (out_config.card) sprintf(devstr + strlen(devstr), ",CARD=%s", out_config.card); + } else { + if (out_config.card) + sprintf(devstr, "plughw:%s", out_config.card); + else + sprintf(devstr, "default"); } break; case 4: -- 2.47.1