Fix spamming stream titles with OpenAL.

Klutzy interim fix for titles not showing up in notify tips (better fix on it's way)
Cinders 2013-10-09 22:04:44 -06:00
parent 9f4d0aa2cb
commit c67bf7489e
2 changed files with 9 additions and 6 deletions

View File

@ -175,8 +175,10 @@ bool LLStreamingAudio_MediaPlugins::getNewMetadata(LLSD& metadata)
if (mTitle != mMediaPlugin->getTitle() || mArtist != mMediaPlugin->getArtist())
{
metadata["ARTIST"] = mMediaPlugin->getArtist();
metadata["TITLE"] = mMediaPlugin->getTitle();
mArtist = mMediaPlugin->getArtist();
mTitle = mMediaPlugin->getTitle();
metadata["ARTIST"] = mArtist;
metadata["TITLE"] = mTitle;
return true;
}
return false;

View File

@ -52,7 +52,6 @@ void StreamTitleDisplay::checkMetadata()
{
static LLCachedControl<U32> ShowStreamMetadata(gSavedSettings, "ShowStreamMetadata", 1);
static LLCachedControl<bool> StreamMetadataAnnounceToChat(gSavedSettings, "StreamMetadataAnnounceToChat", false);
static std::string last_chat = "";
if (!gAudiop)
return;
@ -73,7 +72,7 @@ void StreamTitleDisplay::checkMetadata()
}
chat.append(mMetadata["TITLE"].asString());
}
if ((chat.length() > 0) && (chat != last_chat))
if (chat.length() > 0)
{
if (StreamMetadataAnnounceToChat)
{
@ -85,12 +84,14 @@ void StreamTitleDisplay::checkMetadata()
chat = LLTrans::getString("StreamtitleNowPlaying") + " " + chat;
reportToNearbyChat(chat);
}
else if (ShowStreamMetadata == 1)
else if (ShowStreamMetadata == 1
&& (mMetadata.has("TITLE") || mMetadata.has("ARTIST")))
{
if (!mMetadata.has("TITLE"))
mMetadata["TITLE"] = "";
LLNotificationsUtil::add((mMetadata.has("ARTIST") ? "StreamMetadata" : "StreamMetadataNoArtist"), mMetadata);
}
}
last_chat = chat;
}
}