tag: fix the shout and oggflac plugins
During the tag library refactoring, the shout plugin was disabled, and I forgot about adapting it to the new API. Apply the same fixes to the oggflac decoder plugin.
This commit is contained in:
parent
37d77caa3c
commit
01f9684f70
@ -93,7 +93,7 @@ static void freeShoutData(ShoutData * sd)
|
||||
if (sd->shoutConn)
|
||||
shout_free(sd->shoutConn);
|
||||
if (sd->tag)
|
||||
freeMpdTag(sd->tag);
|
||||
tag_free(sd->tag);
|
||||
if (sd->timer)
|
||||
timer_free(sd->timer);
|
||||
|
||||
@ -403,15 +403,15 @@ static void copyTagToVorbisComment(ShoutData * sd)
|
||||
int i;
|
||||
|
||||
for (i = 0; i < sd->tag->numOfItems; i++) {
|
||||
switch (sd->tag->items[i].type) {
|
||||
switch (sd->tag->items[i]->type) {
|
||||
case TAG_ITEM_ARTIST:
|
||||
addTag(sd, "ARTIST", sd->tag->items[i].value);
|
||||
addTag(sd, "ARTIST", sd->tag->items[i]->value);
|
||||
break;
|
||||
case TAG_ITEM_ALBUM:
|
||||
addTag(sd, "ALBUM", sd->tag->items[i].value);
|
||||
addTag(sd, "ALBUM", sd->tag->items[i]->value);
|
||||
break;
|
||||
case TAG_ITEM_TITLE:
|
||||
addTag(sd, "TITLE", sd->tag->items[i].value);
|
||||
addTag(sd, "TITLE", sd->tag->items[i]->value);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
@ -663,19 +663,19 @@ static int myShout_play(AudioOutput * audioOutput,
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void myShout_setTag(AudioOutput * audioOutput, struct tag *tag)
|
||||
static void myShout_setTag(AudioOutput * audioOutput, const struct tag *tag)
|
||||
{
|
||||
ShoutData *sd = (ShoutData *) audioOutput->data;
|
||||
|
||||
if (sd->tag)
|
||||
freeMpdTag(sd->tag);
|
||||
tag_free(sd->tag);
|
||||
sd->tag = NULL;
|
||||
sd->tagToSend = 0;
|
||||
|
||||
if (!tag)
|
||||
return;
|
||||
|
||||
sd->tag = mpdTagDup(tag);
|
||||
sd->tag = tag_dup(tag);
|
||||
sd->tagToSend = 1;
|
||||
}
|
||||
|
||||
|
@ -28,6 +28,8 @@
|
||||
#include "../utils.h"
|
||||
#include "../log.h"
|
||||
|
||||
#include <OggFLAC/seekable_stream_decoder.h>
|
||||
|
||||
static void oggflac_cleanup(FlacData * data,
|
||||
OggFLAC__SeekableStreamDecoder * decoder)
|
||||
{
|
||||
@ -210,7 +212,7 @@ static void of_metadata_dup_cb(const OggFLAC__SeekableStreamDecoder * decoder,
|
||||
switch (block->type) {
|
||||
case FLAC__METADATA_TYPE_STREAMINFO:
|
||||
if (!data->tag)
|
||||
data->tag = newMpdTag();
|
||||
data->tag = tag_new();
|
||||
data->tag->time = ((float)block->data.stream_info.
|
||||
total_samples) /
|
||||
block->data.stream_info.sample_rate + 0.5;
|
||||
@ -294,7 +296,7 @@ fail:
|
||||
}
|
||||
|
||||
/* public functions: */
|
||||
static MpdTag *oggflac_TagDup(char *file)
|
||||
static struct tag *oggflac_TagDup(char *file)
|
||||
{
|
||||
InputStream inStream;
|
||||
OggFLAC__SeekableStreamDecoder *decoder;
|
||||
|
Loading…
Reference in New Issue
Block a user