aac, mod: moved decoder command check into loop condition
Avoid while(true) loops, and convert them to a loop with a proper condition.
This commit is contained in:
parent
3f6fcfd38e
commit
5b13f067cd
@ -363,7 +363,7 @@ aac_stream_decode(struct decoder *mpd_decoder, struct input_stream *inStream)
|
||||
|
||||
advanceAacBuffer(&b, bread);
|
||||
|
||||
while (true) {
|
||||
do {
|
||||
fillAacBuffer(&b);
|
||||
adts_find_frame(&b);
|
||||
fillAacBuffer(&b);
|
||||
@ -414,9 +414,7 @@ aac_stream_decode(struct decoder *mpd_decoder, struct input_stream *inStream)
|
||||
decoder_data(mpd_decoder, NULL, sampleBuffer,
|
||||
sampleBufferLen, file_time,
|
||||
bitRate, NULL);
|
||||
if (decoder_get_command(mpd_decoder) == DECODE_COMMAND_STOP)
|
||||
break;
|
||||
}
|
||||
} while (decoder_get_command(mpd_decoder) == DECODE_COMMAND_NONE);
|
||||
|
||||
faacDecClose(decoder);
|
||||
if (b.buffer)
|
||||
@ -495,7 +493,7 @@ aac_decode(struct decoder *mpd_decoder, const char *path)
|
||||
|
||||
advanceAacBuffer(&b, bread);
|
||||
|
||||
while (true) {
|
||||
do {
|
||||
fillAacBuffer(&b);
|
||||
|
||||
if (b.bytesIntoBuffer == 0)
|
||||
@ -544,9 +542,7 @@ aac_decode(struct decoder *mpd_decoder, const char *path)
|
||||
decoder_data(mpd_decoder, NULL, sampleBuffer,
|
||||
sampleBufferLen, file_time,
|
||||
bitRate, NULL);
|
||||
if (decoder_get_command(mpd_decoder) == DECODE_COMMAND_STOP)
|
||||
break;
|
||||
}
|
||||
} while (decoder_get_command(mpd_decoder) == DECODE_COMMAND_NONE);
|
||||
|
||||
faacDecClose(decoder);
|
||||
if (b.buffer)
|
||||
|
@ -179,6 +179,7 @@ mod_decode(struct decoder *decoder, const char *path)
|
||||
float total_time = 0.0;
|
||||
int ret;
|
||||
float secPerByte;
|
||||
enum decoder_command cmd = DECODE_COMMAND_NONE;
|
||||
|
||||
if (!mod_initMikMod())
|
||||
return false;
|
||||
@ -199,18 +200,12 @@ mod_decode(struct decoder *decoder, const char *path)
|
||||
|
||||
decoder_initialized(decoder, &audio_format, false, 0);
|
||||
|
||||
while (true) {
|
||||
if (decoder_get_command(decoder) == DECODE_COMMAND_STOP)
|
||||
break;
|
||||
|
||||
if (!Player_Active())
|
||||
break;
|
||||
|
||||
while (cmd == DECODE_COMMAND_NONE && Player_Active()) {
|
||||
ret = VC_WriteBytes(data->audio_buffer, MIKMOD_FRAME_SIZE);
|
||||
total_time += ret * secPerByte;
|
||||
decoder_data(decoder, NULL,
|
||||
(char *)data->audio_buffer, ret,
|
||||
total_time, 0, NULL);
|
||||
cmd = decoder_data(decoder, NULL,
|
||||
data->audio_buffer, ret,
|
||||
total_time, 0, NULL);
|
||||
}
|
||||
|
||||
mod_close(data);
|
||||
|
Loading…
Reference in New Issue
Block a user