Photon Voice v2.53

Public Member Functions | Protected Member Functions | Protected Attributes | Properties | List of all members
LocalVoiceAudio< T > Class Template Reference

Outgoing audio stream. More...

Inherits LocalVoiceFramed< T >, and ILocalVoiceAudio.

Public Member Functions

void VoiceDetectorCalibrate (int durationMs, Action< float > onCalibrated=null)
 Trigger voice detector calibration process. More...
 
- Public Member Functions inherited from LocalVoiceFramed< T >
void AddPostProcessor (params IProcessor< T >[] processors)
 Adds processors after any built-in processors and everything added with AddPreProcessor. More...
 
void AddPreProcessor (params IProcessor< T >[] processors)
 Adds processors before built-in processors and everything added with AddPostProcessor. More...
 
void RemoveProcessor (params IProcessor< T >[] processors)
 Adds processors before built-in processors and everything added with AddPostProcessor. More...
 
void ClearProcessors ()
 Clears all processors in pipeline including built-in resampling. User should add at least resampler processor after call. More...
 
void PushDataAsync (T[] buf)
 Asynchronously push data into this stream. More...
 
void PushData (T[] buf)
 Synchronously push data into this stream. More...
 
override void Dispose ()
 Releases resources used by the LocalVoiceFramed<T> instance. Buffers used for asynchronous push will be disposed in encoder thread's 'finally'. More...
 
- Public Member Functions inherited from LocalVoice
void SendSpacingProfileStart ()
 
void RemoveSelf ()
 Remove this voice from it's VoiceClient (using VoiceClient.RemoveLocalVoice More...
 

Protected Member Functions

void initBuiltinProcessors ()
 
- Protected Member Functions inherited from LocalVoiceFramed< T >
T[] processFrame (T[] buf, int p0, int p1)
 
- Protected Member Functions inherited from LocalVoice
bool targetExits (bool targetMe, int[] targetPlayers)
 
void sendVoiceInfoAndConfigFrame (bool targetMe, int[] targetPlayers)
 
void sendVoiceRemove (bool targetMe, int[] targetPlayers)
 

Protected Attributes

AudioUtil.VoiceDetector< T > voiceDetector
 
AudioUtil.VoiceDetectorCalibration< T > voiceDetectorCalibration
 
AudioUtil.LevelMeter< T > levelMeter
 
int channels
 
- Protected Attributes inherited from LocalVoice
int[] targetPlayers_
 
VoiceInfo info
 
IEncoder encoder
 
VoiceClient voiceClient
 
bool threadingEnabled
 
ArraySegment< byte > configFrame
 
volatile bool disposed
 
object disposeLock = new object()
 
bool isJoined => voiceClient != null && voiceClient.transport.IsChannelJoined(this.channelId)
 

Properties

virtual AudioUtil.IVoiceDetector VoiceDetector [get]
 
virtual AudioUtil.ILevelMeter LevelMeter [get]
 
bool VoiceDetectorCalibrating [get]
 True if the VoiceDetector is currently calibrating. More...
 
- Properties inherited from LocalVoiceFramed< T >
FactoryPrimitiveArrayPool< T > BufferFactory [get]
 <see cref="PushData(T[])" and />. More...
 
bool PushDataAsyncReady [get]
 Wether this LocalVoiceFramed has capacity for more data buffers to be pushed asynchronously. More...
 
- Properties inherited from LocalVoice
VoiceInfo Info [get]
 Returns Info structure assigned on local voice cration. More...
 
bool TransmitEnabled [get, set]
 If true, stream data broadcasted. More...
 
bool IsCurrentlyTransmitting [get]
 Returns true if stream broadcasts. More...
 
int FramesSent [get]
 Sent frames counter. More...
 
int FramesSentFragmented [get]
 Sent fragmented frames counter. More...
 
int FramesSentFragments [get]
 Sent frames fragments counter. More...
 
int FramesSentBytes [get]
 Sent frames bytes counter. More...
 
bool Reliable [get, set]
 Send data reliable. See also VoiceCreateOptions.Reliable. More...
 
bool Encrypt [get, set]
 Send data encrypted. See also VoiceCreateOptions.Encrypt. More...
 
bool Fragment [get, set]
 Split frames into fragments according to the size provided by the Transport. See also VoiceCreateOptions.Fragment. More...
 
int FEC [get, set]
 Forward Error Correction control. See also VoiceCreateOptions.FEC. More...
 
IServiceable LocalUserServiceable [get, set]
 Optional user object attached to LocalVoice. its Service() will be called at each VoiceClient.Service() call. More...
 
byte Group [get, set]
 
byte InterestGroup [get, set]
 If InterestGroup != 0, streaming only to the players subscribed to this group (if supported by the transport). See also VoiceCreateOptions.InterestGroup. More...
 
bool DebugEchoMode [get, set]
 If true, outgoing stream routed back to client via server same way as for remote client's streams. See also VoiceCreateOptions.DebugEchoMode. More...
 
int[]?? TargetPlayers [get, set]
 If TargetPlayers is not null, sending voice info and streaming only to clients having player numbers specified in the array (if supported by transport). See also VoiceCreateOptions.TargetPlayers. More...
 
string SendSpacingProfileDump [get]
 
int SendSpacingProfileMax [get]
 Logs input frames time spacing profiling results. Do not call frequently. More...
 
byte ID [get]
 
byte EvNumber [get]
 
string shortName [get]
 
string Name [get]
 
string LogPrefix [get]
 
- Properties inherited from ILocalVoiceAudio
AudioUtil.IVoiceDetector VoiceDetector [get]
 The VoiceDetector in use. More...
 
AudioUtil.ILevelMeter LevelMeter [get]
 The LevelMeter utility in use. More...
 
bool VoiceDetectorCalibrating [get]
 If true, voice detector calibration is in progress. More...
 

Additional Inherited Members

- Static Public Attributes inherited from LocalVoice
const int DATA_POOL_CAPACITY = 50
 

Detailed Description

Outgoing audio stream.

Member Function Documentation

◆ VoiceDetectorCalibrate()

void VoiceDetectorCalibrate ( int  durationMs,
Action< float >  onCalibrated = null 
)

Trigger voice detector calibration process.

While calibrating, keep silence. Voice detector sets threshold basing on measured backgroud noise level.

Parameters
durationMsDuration of calibration in milliseconds.
onCalibratedCalled when calibration is complete. Parameter is new threshold value.

Implements ILocalVoiceAudio.

Property Documentation

◆ VoiceDetectorCalibrating

bool VoiceDetectorCalibrating
get

True if the VoiceDetector is currently calibrating.