[alsa-devel] [PATCH 1/1] aplay: print vu-meter to stderr, not stdout
It allows showing the vu-meter while recording to stdout, eg:
aplay -C -V stereo | oggenc - > out.ogg
Signed-off-by: Jerome Carretero cJ@zougloub.eu
diff --git a/aplay/aplay.c b/aplay/aplay.c index 1ce34c4..8462484 100644 --- a/aplay/aplay.c +++ b/aplay/aplay.c @@ -1453,9 +1453,9 @@ static void print_vu_meter_mono(int perc, int maxperc) sprintf(line + val, "| MAX"); else sprintf(line + val, "| %02i%%", maxperc); - fputs(line, stdout); + fputs(line, stderr); if (perc > 100) - printf(_(" !clip ")); + fprintf(stderr, _(" !clip ")); }
static void print_vu_meter_stereo(int *perc, int *maxperc) @@ -1493,7 +1493,7 @@ static void print_vu_meter_stereo(int *perc, int *maxperc) memcpy(line + bar_length, tmp, 3); } line[bar_length * 2 + 6 + 2] = 0; - fputs(line, stdout); + fputs(line, stderr); }
static void print_vu_meter(signed int *perc, signed int *maxperc) @@ -1631,9 +1631,9 @@ static void compute_max_peak(u_char *data, size_t count) if (perc[c] > maxperc[c]) maxperc[c] = perc[c];
- putchar('\r'); + putc('\r', stderr); print_vu_meter(perc, maxperc); - fflush(stdout); + fflush(stderr); } else if(verbose==3) { printf(_("Max peak (%li samples): 0x%08x "), (long)ocount, max_peak[0]); @@ -1642,8 +1642,8 @@ static void compute_max_peak(u_char *data, size_t count) putchar('#'); else putchar(' '); - printf(" %i%%\n", perc[0]); - fflush(stdout); + fprintf(stderr, " %i%%\n", perc[0]); + fflush(stderr); } }
At Sat, 5 May 2012 23:10:01 -0400, Jerome Carretero wrote:
It allows showing the vu-meter while recording to stdout, eg:
aplay -C -V stereo | oggenc - > out.ogg
Signed-off-by: Jerome Carretero cJ@zougloub.eu
I like this change, but wait for a while just to see whether anyone has objection to change this. This will change the behavior, so in some cases this may break some scripting.
thanks,
Takashi
diff --git a/aplay/aplay.c b/aplay/aplay.c index 1ce34c4..8462484 100644 --- a/aplay/aplay.c +++ b/aplay/aplay.c @@ -1453,9 +1453,9 @@ static void print_vu_meter_mono(int perc, int maxperc) sprintf(line + val, "| MAX"); else sprintf(line + val, "| %02i%%", maxperc);
- fputs(line, stdout);
- fputs(line, stderr); if (perc > 100)
printf(_(" !clip "));
fprintf(stderr, _(" !clip "));
}
static void print_vu_meter_stereo(int *perc, int *maxperc) @@ -1493,7 +1493,7 @@ static void print_vu_meter_stereo(int *perc, int *maxperc) memcpy(line + bar_length, tmp, 3); } line[bar_length * 2 + 6 + 2] = 0;
- fputs(line, stdout);
- fputs(line, stderr);
}
static void print_vu_meter(signed int *perc, signed int *maxperc) @@ -1631,9 +1631,9 @@ static void compute_max_peak(u_char *data, size_t count) if (perc[c] > maxperc[c]) maxperc[c] = perc[c];
putchar('\r');
print_vu_meter(perc, maxperc);putc('\r', stderr);
fflush(stdout);
} else if(verbose==3) { printf(_("Max peak (%li samples): 0x%08x "), (long)ocount, max_peak[0]);fflush(stderr);
@@ -1642,8 +1642,8 @@ static void compute_max_peak(u_char *data, size_t count) putchar('#'); else putchar(' ');
printf(" %i%%\n", perc[0]);
fflush(stdout);
fprintf(stderr, " %i%%\n", perc[0]);
}fflush(stderr);
}
-- 1.7.10
At Sun, 06 May 2012 12:41:33 +0200, Takashi Iwai wrote:
At Sat, 5 May 2012 23:10:01 -0400, Jerome Carretero wrote:
It allows showing the vu-meter while recording to stdout, eg:
aplay -C -V stereo | oggenc - > out.ogg
Signed-off-by: Jerome Carretero cJ@zougloub.eu
I like this change, but wait for a while just to see whether anyone has objection to change this. This will change the behavior, so in some cases this may break some scripting.
As no one has objections, I applied the patch now. Thanks!
Takashi
thanks,
Takashi
diff --git a/aplay/aplay.c b/aplay/aplay.c index 1ce34c4..8462484 100644 --- a/aplay/aplay.c +++ b/aplay/aplay.c @@ -1453,9 +1453,9 @@ static void print_vu_meter_mono(int perc, int maxperc) sprintf(line + val, "| MAX"); else sprintf(line + val, "| %02i%%", maxperc);
- fputs(line, stdout);
- fputs(line, stderr); if (perc > 100)
printf(_(" !clip "));
fprintf(stderr, _(" !clip "));
}
static void print_vu_meter_stereo(int *perc, int *maxperc) @@ -1493,7 +1493,7 @@ static void print_vu_meter_stereo(int *perc, int *maxperc) memcpy(line + bar_length, tmp, 3); } line[bar_length * 2 + 6 + 2] = 0;
- fputs(line, stdout);
- fputs(line, stderr);
}
static void print_vu_meter(signed int *perc, signed int *maxperc) @@ -1631,9 +1631,9 @@ static void compute_max_peak(u_char *data, size_t count) if (perc[c] > maxperc[c]) maxperc[c] = perc[c];
putchar('\r');
print_vu_meter(perc, maxperc);putc('\r', stderr);
fflush(stdout);
} else if(verbose==3) { printf(_("Max peak (%li samples): 0x%08x "), (long)ocount, max_peak[0]);fflush(stderr);
@@ -1642,8 +1642,8 @@ static void compute_max_peak(u_char *data, size_t count) putchar('#'); else putchar(' ');
printf(" %i%%\n", perc[0]);
fflush(stdout);
fprintf(stderr, " %i%%\n", perc[0]);
}fflush(stderr);
}
-- 1.7.10
participants (2)
-
Jerome Carretero
-
Takashi Iwai