diff --git a/src/crossfade.c b/src/crossfade.c index a65d304e8..ac2461689 100644 --- a/src/crossfade.c +++ b/src/crossfade.c @@ -22,6 +22,7 @@ #include "pcm_utils.h" #include "pipe.h" #include "audio_format.h" +#include "tag.h" #include #include @@ -58,6 +59,10 @@ void cross_fade_apply(struct music_chunk *a, const struct music_chunk *b, assert(current_chunk <= num_chunks); + if (a->tag == NULL && b->tag != NULL) + /* merge the tag into the destination chunk */ + a->tag = tag_dup(b->tag); + size = b->length > a->length ? a->length : b->length;