libRaidVoice

This library provides simple API for integrating some voicechat features.It evolved from RaidVoice addon. RaidVoice addon is my main project that uses this library to enable people to see each other when speaking on external voice chat like TeamSpeak or Ventrillo. Purpose of this library is to provide transparent overlay over global functions and events. Any ace3 addon can recieve voice events as if they came from ingame voicechat, this can be beneficial mainly for unitframes. You can also use this library to broadcast talking players. Supported is both push to talk and voice activation. Muted players support is included too.

Supported events:

VOICE_START

VOICE_STOP

MUTELIST_UPDATE

How it works:

Library should snoop on addon channel communication and use small cache to store who is speaking. When voice status of any players changes callback will be fired through ace. Push to talk effect is gained by binding a key to function that notifies other players. Voice activation requires in-game voicechat to be enabled and microphone activation level to be set.Then a short loopback sound is recorded, if the treshold is reached, players are notified in same way as before.

latest API Documentation

Example usage:

local RV = LibStub('libRaidVoice-1.0')


--how to broadcast voice events:

--bind keys to

RV:playerStartsSpeaking()
RV:playerStopsSpeaking()


--Or enable blizz voice chat, set voice sensitivy and call:
RV:useVoiceActivation(true)

(optional) RV:setVoiceUpdatePeriod(2) 
--update period in seconds

--This can be disabled using:
RV:useVoiceActivation(false)



--how to hide blizz voice box with player name

		VoiceChatTalkers:UnregisterAllEvents();
		VoiceChatTalkers:SetScript("OnLoad",nil);
		VoiceChatTalkers:SetScript("OnUpdate",nil);
		VoiceChatTalkers:SetScript("OnEnter",nil);
		VoiceChatTalkers:SetScript("OnEvent",nil);
		VoiceChatTalkers:Hide();
		


--for sending mute/unmute information
--bind a key to

RV:playerMute()
RV:playerUnmute()

--use GetMuteStatus
--to query mute status of other players

global functions:

UnitIsTalking(playerNameOrUnit) - returns 1 if player is speaking on external voichat or when speaking over Blizzard voicechat, nil if not speaking.

GetMuteStatus(playerNameOrUnit) - returns 1 if player is muted on external voichat or Blizzard voicechat, nil otherwise.

IsVoiceChatEnabled - returns always 1

You must login to post a comment. Don't have an account? Register to get one!

Facts

Date created
Nov 01, 2009
Categories
Last update
Sep 25, 2011
Development stage
Release
License
GNU General Public License version 3 (GPLv3)
Curse link
libRaidVoice
Downloads
901
Recent files

Authors

Relationships

Optional dependency
Ace3