Skip to content
Snippets Groups Projects
Commit 478c1e47 authored by Andrey Kleshchev's avatar Andrey Kleshchev
Browse files

SL-16902 Fmod better logging

parent 9f102ad7
Branches
Tags
1 merge request!83Merge Linden 6.6.7
...@@ -70,7 +70,11 @@ mRetryCount(0) ...@@ -70,7 +70,11 @@ mRetryCount(0)
// Must be larger than the usual Second Life frame stutter time. // Must be larger than the usual Second Life frame stutter time.
const U32 buffer_seconds = 10; //sec const U32 buffer_seconds = 10; //sec
const U32 estimated_bitrate = 128; //kbit/sec const U32 estimated_bitrate = 128; //kbit/sec
mSystem->setStreamBufferSize(estimated_bitrate * buffer_seconds * 128/*bytes/kbit*/, FMOD_TIMEUNIT_RAWBYTES); FMOD_RESULT result = mSystem->setStreamBufferSize(estimated_bitrate * buffer_seconds * 128/*bytes/kbit*/, FMOD_TIMEUNIT_RAWBYTES);
if (result != FMOD_OK)
{
LL_WARNS("FMOD") << "setStreamBufferSize error: " << FMOD_ErrorString(result) << LL_ENDL;
}
// Here's where we set the size of the network buffer and some buffering // Here's where we set the size of the network buffer and some buffering
// parameters. In this case we want a network buffer of 16k, we want it // parameters. In this case we want a network buffer of 16k, we want it
...@@ -404,7 +408,11 @@ FMOD::Channel *LLAudioStreamManagerFMODSTUDIO::startStream() ...@@ -404,7 +408,11 @@ FMOD::Channel *LLAudioStreamManagerFMODSTUDIO::startStream()
if (mStreamChannel) if (mStreamChannel)
return mStreamChannel; //Already have a channel for this stream. return mStreamChannel; //Already have a channel for this stream.
mSystem->playSound(mInternetStream, NULL, true, &mStreamChannel); FMOD_RESULT result = mSystem->playSound(mInternetStream, NULL, true, &mStreamChannel);
if (result != FMOD_OK)
{
LL_WARNS("FMOD") << FMOD_ErrorString(result) << LL_ENDL;
}
return mStreamChannel; return mStreamChannel;
} }
...@@ -445,16 +453,29 @@ bool LLAudioStreamManagerFMODSTUDIO::stopStream() ...@@ -445,16 +453,29 @@ bool LLAudioStreamManagerFMODSTUDIO::stopStream()
FMOD_OPENSTATE LLAudioStreamManagerFMODSTUDIO::getOpenState(unsigned int* percentbuffered, bool* starving, bool* diskbusy) FMOD_OPENSTATE LLAudioStreamManagerFMODSTUDIO::getOpenState(unsigned int* percentbuffered, bool* starving, bool* diskbusy)
{ {
FMOD_OPENSTATE state; FMOD_OPENSTATE state;
mInternetStream->getOpenState(&state, percentbuffered, starving, diskbusy); FMOD_RESULT result = mInternetStream->getOpenState(&state, percentbuffered, starving, diskbusy);
if (result != FMOD_OK)
{
LL_WARNS("FMOD") << FMOD_ErrorString(result) << LL_ENDL;
}
return state; return state;
} }
void LLStreamingAudio_FMODSTUDIO::setBufferSizes(U32 streambuffertime, U32 decodebuffertime) void LLStreamingAudio_FMODSTUDIO::setBufferSizes(U32 streambuffertime, U32 decodebuffertime)
{ {
mSystem->setStreamBufferSize(streambuffertime / 1000 * 128 * 128, FMOD_TIMEUNIT_RAWBYTES); FMOD_RESULT result = mSystem->setStreamBufferSize(streambuffertime / 1000 * 128 * 128, FMOD_TIMEUNIT_RAWBYTES);
if (result != FMOD_OK)
{
LL_WARNS("FMOD") << "setStreamBufferSize error: " << FMOD_ErrorString(result) << LL_ENDL;
return;
}
FMOD_ADVANCEDSETTINGS settings; FMOD_ADVANCEDSETTINGS settings;
memset(&settings, 0, sizeof(settings)); memset(&settings, 0, sizeof(settings));
settings.cbSize = sizeof(settings); settings.cbSize = sizeof(settings);
settings.defaultDecodeBufferSize = decodebuffertime;//ms settings.defaultDecodeBufferSize = decodebuffertime;//ms
mSystem->setAdvancedSettings(&settings); result = mSystem->setAdvancedSettings(&settings);
if (result != FMOD_OK)
{
LL_WARNS("FMOD") << "setAdvancedSettings error: " << FMOD_ErrorString(result) << LL_ENDL;
}
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment