replay_gain: refactor API, move code to replay_gain_state.c

The replay_gain_state struct holds the precalculated scale factor,
which is removed from struct replay_gain_info.
This commit is contained in:
Max Kellermann
2010-01-04 13:31:20 +01:00
parent cd8f92c928
commit 0e183d3fa1
8 changed files with 209 additions and 76 deletions

View File

@@ -31,7 +31,7 @@
#include "mapper.h"
#include "path.h"
#include "uri.h"
#include "replay_gain.h"
#include "replay_gain_state.h"
#include <glib.h>
@@ -303,7 +303,8 @@ decoder_run_song(struct decoder_control *dc,
{
struct decoder decoder = {
.dc = dc,
.replay_gain = NULL,
.replay_gain = replay_gain_state_new(replay_gain_preamp,
replay_gain_missing_preamp),
};
int ret;
@@ -332,7 +333,7 @@ decoder_run_song(struct decoder_control *dc,
/* flush the last chunk */
if (decoder.replay_gain != NULL)
replay_gain_info_free(decoder.replay_gain);
replay_gain_state_free(decoder.replay_gain);
if (decoder.chunk != NULL)
decoder_flush_chunk(&decoder);