From ce10ba4b119faac3eb7c5d1251b1a875d28056c1 Mon Sep 17 00:00:00 2001 From: Warren Dukes Date: Mon, 25 Oct 2004 20:09:03 +0000 Subject: fix a big time bug in metadataChunk (off by one in an array assignment) also, now we have metadata in our streams git-svn-id: https://svn.musicpd.org/mpd/trunk@2337 09075e82-0dd4-0310-85a5-a0d7c8717e4f --- src/decode.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'src/decode.c') diff --git a/src/decode.c b/src/decode.c index 7296e154c..55252c46e 100644 --- a/src/decode.c +++ b/src/decode.c @@ -145,6 +145,7 @@ int waitOnDecode(PlayerControl * pc, DecoderControl * dc, OutputBuffer * cb, { strncpy(pc->currentUrl, pc->utf8url, MAXPATHLEN); pc->currentUrl[MAXPATHLEN] = '\0'; + MpdTag * tag = NULL; while(decode_pid && *decode_pid>0 && dc->start) my_usleep(10000); @@ -156,8 +157,14 @@ int waitOnDecode(PlayerControl * pc, DecoderControl * dc, OutputBuffer * cb, return -1; } + if((tag = metadataChunkToMpdTagDup(&(pc->fileMetadataChunk)))) { + sendMetdataToAudioDevice(tag); + printMpdTag(stdout, tag); + freeMpdTag(tag); + tag = NULL; + } + pc->totalTime = pc->fileTime; - pc->elapsedTime = 0; pc->bitRate = 0; pc->sampleRate = 0; pc->bits = 0; @@ -465,6 +472,7 @@ void decodeParent(PlayerControl * pc, DecoderControl * dc, OutputBuffer * cb) { if(waitOnDecode(pc,dc,cb,&decodeWaitedOn)<0) return; + pc->elapsedTime = 0; pc->state = PLAYER_STATE_PLAY; pc->play = 0; kill(getppid(),SIGUSR1); -- cgit v1.2.3