diff options
author | Eric Wong <normalperson@yhbt.net> | 2007-09-10 07:12:42 +0000 |
---|---|---|
committer | Eric Wong <normalperson@yhbt.net> | 2007-09-10 07:12:42 +0000 |
commit | 8b141ae54edabf1fd020b5b81412ccca774ef89c (patch) | |
tree | d6772ae56a37f6b5da8a7ebd1a10cae069baaade /src | |
parent | 54339dfbc2e32536c420942e0fc3c8fad733f455 (diff) | |
download | mpd-8b141ae54edabf1fd020b5b81412ccca774ef89c.tar.gz mpd-8b141ae54edabf1fd020b5b81412ccca774ef89c.tar.xz mpd-8b141ae54edabf1fd020b5b81412ccca774ef89c.zip |
buffer input while waiting for outputBuffer space in mp4 and (ogg)flac
Both mp4 and (ogg)flac inputPlugins got HTTP inputStream support
later in the game, so their calls to sendDataToOutputBuffer()
didn't get updated to support buffering while the outputBuffer
was full. This fixes it.
git-svn-id: https://svn.musicpd.org/mpd/trunk@6873 09075e82-0dd4-0310-85a5-a0d7c8717e4f
Diffstat (limited to 'src')
-rw-r--r-- | src/inputPlugins/_flac_common.h | 3 | ||||
-rw-r--r-- | src/inputPlugins/mp4_plugin.c | 2 |
2 files changed, 3 insertions, 2 deletions
diff --git a/src/inputPlugins/_flac_common.h b/src/inputPlugins/_flac_common.h index e04e70693..df96d9f9c 100644 --- a/src/inputPlugins/_flac_common.h +++ b/src/inputPlugins/_flac_common.h @@ -172,7 +172,8 @@ MpdTag *copyVorbisCommentBlockToMpdTag(const FLAC__StreamMetadata * block, /* keep this inlined, this is just macro but prettier :) */ static inline int flacSendChunk(FlacData * data) { - if (sendDataToOutputBuffer(data->cb, NULL, data->dc, 1, data->chunk, + if (sendDataToOutputBuffer(data->cb, data->inStream, + data->dc, 1, data->chunk, data->chunk_length, data->time, data->bitRate, data->replayGainInfo) == diff --git a/src/inputPlugins/mp4_plugin.c b/src/inputPlugins/mp4_plugin.c index 11d634ff2..2426d3b2b 100644 --- a/src/inputPlugins/mp4_plugin.c +++ b/src/inputPlugins/mp4_plugin.c @@ -285,7 +285,7 @@ static int mp4_decode(OutputBuffer * cb, DecoderControl * dc, sampleBuffer += offset * channels * 2; - sendDataToOutputBuffer(cb, NULL, dc, 1, sampleBuffer, + sendDataToOutputBuffer(cb, inStream, dc, 1, sampleBuffer, sampleBufferLen, time, bitRate, NULL); if (dc->stop) { eof = 1; |