wee found the audioFormatConversion bug, was actually a bug in shout plugin

git-svn-id: https://svn.musicpd.org/mpd/trunk@2311 09075e82-0dd4-0310-85a5-a0d7c8717e4f
This commit is contained in:
Warren Dukes 2004-10-23 12:58:59 +00:00
parent 480023201a
commit 23c59e8cda
3 changed files with 8 additions and 2 deletions

View File

@ -40,6 +40,8 @@ typedef int (* AudioOutputPlayFunc) (AudioOutput * audioOutput,
typedef void (* AudioOutputCloseDeviceFunc) (AudioOutput * audioOutput);
typedef int (* AudioOutputKeepAliveFunc) (AudioOutput * audioOutput, int ms);
struct _AudioOutput {
int open;
@ -47,17 +49,20 @@ struct _AudioOutput {
AudioOutputOpenDeviceFunc openDeviceFunc;
AudioOutputPlayFunc playFunc;
AudioOutputCloseDeviceFunc closeDeviceFunc;
AudioOutputKeepAliveFunc keepAliveFunc;
void * data;
};
typedef struct _AudioOutputPlugin {
char * name;
AudioOutputInitDriverFunc initDriverFunc;
AudioOutputFinishDriverFunc finishDriverFunc;
AudioOutputOpenDeviceFunc openDeviceFunc;
AudioOutputPlayFunc playFunc;
AudioOutputCloseDeviceFunc closeDeviceFunc;
AudioOutputKeepAliveFunc keepAliveFunc;
} AudioOutputPlugin;
void initAudioOutputPlugins();
@ -71,5 +76,6 @@ int openAudioOutput(AudioOutput * audioOutput, AudioFormat * audioFormat);
int playAudioOutput(AudioOutput * audioOutput, char * playChunk, int size);
void closeAudioOutput(AudioOutput * audioOutput);
void finishAudioOutput(AudioOutput * audioOutput);
int keepAudioOutputAlive(AudioOutput * audioOutput, int ms);
#endif

View File

@ -321,7 +321,7 @@ static int shout_play(AudioOutput * audioOutput, char * playChunk, int size) {
}
}
vorbis_analysis_wrote(&(sd->vd), size/4);
vorbis_analysis_wrote(&(sd->vd), samples);
while(1 == vorbis_analysis_blockout(&(sd->vd), &(sd->vb))) {
vorbis_analysis(&(sd->vb), NULL);

View File

@ -306,7 +306,7 @@ size_t pcm_sizeOfOutputBufferForAudioFormatConversion(AudioFormat * inFormat,
outSize = (outSize >> 1) << 2;
break;
case 2:
//outSize >>= 1;
outSize >>= 1;
break;
}
}