todo update
git-svn-id: https://svn.musicpd.org/mpd/trunk@2926 09075e82-0dd4-0310-85a5-a0d7c8717e4f
This commit is contained in:
parent
09a87803a1
commit
f134e2686a
8
TODO
8
TODO
@ -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;
|
||||
|
Loading…
Reference in New Issue
Block a user