[alsa-devel] [PATCH 1/1] aplay: print vu-meter to stderr, not stdout

Takashi Iwai tiwai at suse.de
Sun May 6 12:41:33 CEST 2012


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 at 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');
> +		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);
>  	}
>  }
>  
> -- 
> 1.7.10
> 


More information about the Alsa-devel mailing list