Add support for MixRamp tags
Adds mixrampdb and mixrampdelay commands. Reads MIXRAP_START and MIXRAMP_END tags from FLAC files and overlaps instead of crossfading.
This commit is contained in:
committed by
Max Kellermann
parent
e9b75d462c
commit
e7a515c8b1
@@ -23,6 +23,7 @@
|
||||
#include "decoder_internal.h"
|
||||
#include "decoder_list.h"
|
||||
#include "decoder_plugin.h"
|
||||
#include "decoder_api.h"
|
||||
#include "input_stream.h"
|
||||
#include "player_control.h"
|
||||
#include "pipe.h"
|
||||
@@ -36,6 +37,9 @@
|
||||
|
||||
#include <unistd.h>
|
||||
|
||||
#undef G_LOG_DOMAIN
|
||||
#define G_LOG_DOMAIN "decoder_thread"
|
||||
|
||||
static enum decoder_command
|
||||
decoder_lock_get_command(struct decoder_control *dc)
|
||||
{
|
||||
@@ -430,6 +434,13 @@ decoder_task(gpointer arg)
|
||||
|
||||
switch (dc->command) {
|
||||
case DECODE_COMMAND_START:
|
||||
g_debug("clearing mixramp tags");
|
||||
dc_mixramp_start(dc, NULL);
|
||||
dc_mixramp_prev_end(dc, dc->mixramp_end);
|
||||
dc->mixramp_end = NULL; /* Don't free, it's copied above. */
|
||||
|
||||
/* fall through */
|
||||
|
||||
case DECODE_COMMAND_SEEK:
|
||||
decoder_run(dc);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user