undo last changes

git-svn-id: https://svn.musicpd.org/mpd/trunk@2345 09075e82-0dd4-0310-85a5-a0d7c8717e4f
This commit is contained in:
Warren Dukes 2004-10-26 02:13:13 +00:00
parent a494bd73d8
commit 91c7621376

View File

@ -119,12 +119,6 @@ int calculateCrossFadeChunks(PlayerControl * pc, AudioFormat * af) {
quitDecode(pc,dc); \ quitDecode(pc,dc); \
return; \ return; \
} \ } \
{ \
MpdTag * tag = metadataChunkToMpdTagDup( \
&fileMetadataChunk); \
sendMetadataToAudioDevice(tag); \
freeMpdTag(tag); \
} \
pc->totalTime = dc->totalTime; \ pc->totalTime = dc->totalTime; \
pc->sampleRate = dc->audioFormat.sampleRate; \ pc->sampleRate = dc->audioFormat.sampleRate; \
pc->bits = dc->audioFormat.bits; \ pc->bits = dc->audioFormat.bits; \
@ -147,10 +141,11 @@ int calculateCrossFadeChunks(PlayerControl * pc, AudioFormat * af) {
} }
int waitOnDecode(PlayerControl * pc, DecoderControl * dc, OutputBuffer * cb, int waitOnDecode(PlayerControl * pc, DecoderControl * dc, OutputBuffer * cb,
int * decodeWaitedOn, MetadataChunk * fileMetadataChunk) int * decodeWaitedOn)
{ {
strncpy(pc->currentUrl, pc->utf8url, MAXPATHLEN); strncpy(pc->currentUrl, pc->utf8url, MAXPATHLEN);
pc->currentUrl[MAXPATHLEN] = '\0'; pc->currentUrl[MAXPATHLEN] = '\0';
MpdTag * tag = NULL;
while(decode_pid && *decode_pid>0 && dc->start) my_usleep(10000); while(decode_pid && *decode_pid>0 && dc->start) my_usleep(10000);
@ -162,8 +157,10 @@ int waitOnDecode(PlayerControl * pc, DecoderControl * dc, OutputBuffer * cb,
return -1; return -1;
} }
memcpy(fileMetadataChunk, &(pc->fileMetadataChunk), if((tag = metadataChunkToMpdTagDup(&(pc->fileMetadataChunk)))) {
sizeof(MetadataChunk)); sendMetadataToAudioDevice(tag);
freeMpdTag(tag);
}
pc->totalTime = pc->fileTime; pc->totalTime = pc->fileTime;
pc->bitRate = 0; pc->bitRate = 0;
@ -176,8 +173,7 @@ int waitOnDecode(PlayerControl * pc, DecoderControl * dc, OutputBuffer * cb,
} }
int decodeSeek(PlayerControl * pc, DecoderControl * dc, OutputBuffer * cb, int decodeSeek(PlayerControl * pc, DecoderControl * dc, OutputBuffer * cb,
int * decodeWaitedOn, int * next, int * decodeWaitedOn, int * next)
MetadataChunk * fileMetadataChunk)
{ {
int ret = -1; int ret = -1;
@ -191,8 +187,7 @@ int decodeSeek(PlayerControl * pc, DecoderControl * dc, OutputBuffer * cb,
cb->end = 0; cb->end = 0;
dc->error = 0; dc->error = 0;
dc->start = 1; dc->start = 1;
waitOnDecode(pc,dc,cb,decodeWaitedOn, waitOnDecode(pc,dc,cb,decodeWaitedOn);
fileMetadataChunk);
} }
if(*decode_pid>0 && dc->state!=DECODE_STATE_STOP && if(*decode_pid>0 && dc->state!=DECODE_STATE_STOP &&
dc->seekable) dc->seekable)
@ -249,9 +244,7 @@ int decodeSeek(PlayerControl * pc, DecoderControl * dc, OutputBuffer * cb,
if(pause) closeAudioDevice(); \ if(pause) closeAudioDevice(); \
} \ } \
if(pc->seek) { \ if(pc->seek) { \
if(decodeSeek(pc,dc,cb,&decodeWaitedOn,&next, \ if(decodeSeek(pc,dc,cb,&decodeWaitedOn,&next) == 0) { \
&fileMetadataChunk) == 0) \
{ \
doCrossFade = 0; \ doCrossFade = 0; \
nextChunk = -1; \ nextChunk = -1; \
bbp = 0; \ bbp = 0; \
@ -477,14 +470,13 @@ void decodeParent(PlayerControl * pc, DecoderControl * dc, OutputBuffer * cb) {
double sizeToTime = 0.0; double sizeToTime = 0.0;
int previousMetadataChunk = -1; int previousMetadataChunk = -1;
MetadataChunk currentMetadataChunk; MetadataChunk currentMetadataChunk;
MetadataChunk fileMetadataChunk;
int currentChunkSent = 1; int currentChunkSent = 1;
int end; int end;
int next = -1; int next = -1;
memset(silence,0,CHUNK_SIZE); memset(silence,0,CHUNK_SIZE);
if(waitOnDecode(pc,dc,cb,&decodeWaitedOn,&fileMetadataChunk)<0) return; if(waitOnDecode(pc,dc,cb,&decodeWaitedOn)<0) return;
pc->elapsedTime = 0; pc->elapsedTime = 0;
pc->state = PLAYER_STATE_PLAY; pc->state = PLAYER_STATE_PLAY;
@ -635,9 +627,7 @@ void decodeParent(PlayerControl * pc, DecoderControl * dc, OutputBuffer * cb) {
} }
else { else {
next = -1; next = -1;
if(waitOnDecode(pc,dc,cb,&decodeWaitedOn, if(waitOnDecode(pc,dc,cb,&decodeWaitedOn)<0) {
&fileMetadataChunk)<0)
{
return; return;
} }
nextChunk = -1; nextChunk = -1;