Utilise sound_PlayStreamWithBuf in cdAudio_OpenTrack to specify a larger buffer count
git-svn-id: svn+ssh://svn.gna.org/svn/warzone/trunk@3583 4a71c877-e1ca-e34f-864e-861f7616d084master
parent
024c8c1c10
commit
e5885934b7
|
@ -19,6 +19,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
#include <physfs.h>
|
||||||
|
|
||||||
#include "lib/framework/frame.h"
|
#include "lib/framework/frame.h"
|
||||||
|
|
||||||
|
@ -28,6 +29,8 @@
|
||||||
#include "mixer.h"
|
#include "mixer.h"
|
||||||
#include "playlist.h"
|
#include "playlist.h"
|
||||||
|
|
||||||
|
static const size_t bufferSize = 16 * 1024;
|
||||||
|
static const unsigned int buffer_count = 32;
|
||||||
static bool music_initialized;
|
static bool music_initialized;
|
||||||
static unsigned int music_track = 0;
|
static unsigned int music_track = 0;
|
||||||
static float music_volume = 0.5;
|
static float music_volume = 0.5;
|
||||||
|
@ -81,10 +84,18 @@ static bool cdAudio_OpenTrack(const char* filename)
|
||||||
#ifndef WZ_NOSOUND
|
#ifndef WZ_NOSOUND
|
||||||
if (strncasecmp(filename+strlen(filename)-4, ".ogg", 4) == 0)
|
if (strncasecmp(filename+strlen(filename)-4, ".ogg", 4) == 0)
|
||||||
{
|
{
|
||||||
cdStream = audio_PlayStream(filename, music_volume, cdAudio_TrackFinished, NULL);
|
PHYSFS_file* music_file = PHYSFS_openRead(filename);
|
||||||
|
|
||||||
|
if (music_file == NULL)
|
||||||
|
{
|
||||||
|
debug(LOG_ERROR, "cdAudio_OpenTrack: Failed opening file %s, with error %s", filename, PHYSFS_getLastError());
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
cdStream = sound_PlayStreamWithBuf(music_file, music_volume, cdAudio_TrackFinished, NULL, bufferSize, buffer_count);
|
||||||
if (cdStream == NULL)
|
if (cdStream == NULL)
|
||||||
{
|
{
|
||||||
|
PHYSFS_close(music_file);
|
||||||
debug(LOG_ERROR, "Failed creating audio stream for %s", filename);
|
debug(LOG_ERROR, "Failed creating audio stream for %s", filename);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue