Commit f134e268 authored by Warren Dukes's avatar Warren Dukes

todo update

git-svn-id: https://svn.musicpd.org/mpd/trunk@2926 09075e82-0dd4-0310-85a5-a0d7c8717e4f
parent 09a87803
......@@ -40,12 +40,8 @@
*) Handle mp1 and mp2 files (including mp2's that are disguised as mp3's with
a mp3 suffix)
*) choose id3v2 over id3v1 tags when both are present
*) add error codes for status->error
*) add support for mousepack/mpc files
*) add alsa audioOutput plugin
*) add a method for closing the audio device immediatly w/o waiting for an
......@@ -53,6 +49,10 @@
*) add support for playing aac streams (gee, thanks icecast)
*) implement apev2 and id3v1 tag reader from xmms-musepack plugin
*) only use libid3tag for id3v2 tags, use internal implementation for id3v1 tags
0.13
----
*) support for dynamically loading plugins
......
......@@ -132,6 +132,7 @@ int mpc_decode(OutputBuffer * cb, DecoderControl * dc, InputStream * inStream)
mpc_uint32_t vbrUpdateBits;
float time;
int i;
ReplayGainInfo * replayGainInfo = NULL;
data.inStream = inStream;
data.dc = dc;
......@@ -174,11 +175,17 @@ int mpc_decode(OutputBuffer * cb, DecoderControl * dc, InputStream * inStream)
dc->totalTime = mpc_streaminfo_get_length(&info);
dc->audioFormat.bits = 16;
dc->audioFormat.channels = 2;
dc->audioFormat.channels = info.channels;
dc->audioFormat.sampleRate = info.sample_freq;
getOutputAudioFormat(&(dc->audioFormat), &(cb->audioFormat));
replayGainInfo = newReplayGainInfo();
replayGainInfo->albumGain = info.gain_album;
replayGainInfo->albumPeak = info.peak_album;
replayGainInfo->trackGain = info.gain_title;
replayGainInfo->trackPeak = info.peak_title;
dc->state = DECODE_STATE_DECODE;
while(!eof) {
......@@ -224,7 +231,8 @@ int mpc_decode(OutputBuffer * cb, DecoderControl * dc, InputStream * inStream)
chunk, chunkpos,
time,
bitRate,
NULL);
replayGainInfo);
chunkpos = 0;
s16 = (mpd_sint16 *)chunk;
if(dc->stop) {
......@@ -243,13 +251,15 @@ int mpc_decode(OutputBuffer * cb, DecoderControl * dc, InputStream * inStream)
sendDataToOutputBuffer(cb, NULL, dc, inStream->seekable,
chunk, chunkpos, time, bitRate,
NULL);
replayGainInfo);
}
closeInputStream(inStream);
flushOutputBuffer(cb);
freeReplayGainInfo(replayGainInfo);
if(dc->stop) {
dc->state = DECODE_STATE_STOP;
dc->stop = 0;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment