diff options
| -rw-r--r-- | src/player.c | 6 | ||||
| -rw-r--r-- | src/player.h | 1 | 
2 files changed, 5 insertions, 2 deletions
| diff --git a/src/player.c b/src/player.c index 086fcad..f2403bc 100644 --- a/src/player.c +++ b/src/player.c @@ -105,8 +105,7 @@ size_t BarPlayerCurlCb (void *ptr, size_t size, size_t nmemb, void *stream) {  			int tmpReplayBuf;  			size_t i;  			for (i = 0; i < frameInfo.samples; i++) { -				tmpReplayBuf = (float) (replayBuf[i]) * -						computeReplayGainScale (player->gain); +				tmpReplayBuf = (float) replayBuf[i] * player->scale;  				/* avoid clipping */  				if (tmpReplayBuf > INT16_MAX) {  					replayBuf[i] = INT16_MAX; @@ -249,6 +248,9 @@ void *BarPlayerThread (void *data) {  	/* init handles */  	player->audioFd = curl_easy_init ();  	player->aacHandle = NeAACDecOpen(); +	 +	/* init replaygain */ +	player->scale = computeReplayGainScale (player->gain);  	/* set aac conf */  	conf = NeAACDecGetCurrentConfiguration(player->aacHandle); diff --git a/src/player.h b/src/player.h index 9d0908b..94be1a4 100644 --- a/src/player.h +++ b/src/player.h @@ -42,6 +42,7 @@ struct aacPlayer {  	unsigned long samplerate;  	unsigned char channels;  	float gain; +	float scale;  	/* audio out */  	ao_device *audioOutDevice;  	char *url; | 
