Takes captured audio and sends it to the remote peer via UDP channel. More...
Public Member Functions | |
void | send () throws IOException |
Sends audio as payload encapsulated in VoicePDU. | |
Package Functions | |
VoicePDUSender (AudioInterface audioInterface, CallContext call) | |
Constructor for the VoicePDUSender object. | |
Private Attributes | |
AudioInterface | audio |
CallContext | call |
int | voicePduSubclass |
byte[] | audioBuffer |
long | callStartTimestamp |
long | nextDueTimestamp |
int | timestamp |
Takes captured audio and sends it to the remote peer via UDP channel.
Definition at line 15 of file VoicePDUSender.java.
protocol.VoicePDUSender.VoicePDUSender | ( | AudioInterface | audioInterface, |
CallContext | call | ||
) | [package] |
Constructor for the VoicePDUSender object.
audioInterface | The audio interface |
call | The call object |
Definition at line 32 of file VoicePDUSender.java.
References protocol.VoicePDUSender.audio, protocol.VoicePDUSender.audioBuffer, protocol.VoicePDUSender.call, protocol.VoicePDUSender.callStartTimestamp, audio.AudioInterface.getSampleSize(), protocol.CallContext.getTimestamp(), audio.AudioInterface.getVoicePduSubclass(), protocol.VoicePDUSender.nextDueTimestamp, and protocol.VoicePDUSender.voicePduSubclass.
{ this.audio = audioInterface; this.call = call; this.voicePduSubclass = audioInterface.getVoicePduSubclass (); this.audioBuffer = new byte[ this.audio.getSampleSize () ]; this.callStartTimestamp = this.call.getTimestamp (); this.nextDueTimestamp = this.callStartTimestamp; }
void protocol.VoicePDUSender.send | ( | ) | throws IOException [virtual] |
Sends audio as payload encapsulated in VoicePDU.
Implements audio.AudioInterface.Packetizer.
Definition at line 47 of file VoicePDUSender.java.
References protocol.VoicePDUSender.audio, protocol.VoicePDUSender.audioBuffer, protocol.VoicePDUSender.call, protocol.ProtocolDataUnit.dump(), protocol.VoicePDUSender.nextDueTimestamp, audio.AudioInterface.readWithTimestamp(), protocol.ProtocolDataUnit.sendPayload(), protocol.ProtocolDataUnit.setTimestamp(), protocol.VoicePDUSender.timestamp, and protocol.VoicePDUSender.voicePduSubclass.
{ this.audio.readWithTimestamp( this.audioBuffer ); this.timestamp = (int) this.nextDueTimestamp; VoicePDU vf = new VoicePDU( this.call, this.voicePduSubclass ); vf.setTimestamp( this.timestamp ); vf.sendPayload( this.audioBuffer ); vf.dump( "Outbound Voice" ); Log.audio( "Sent voice PDU" ); /* Now work out how long to wait... */ this.nextDueTimestamp += 20; }
AudioInterface protocol.VoicePDUSender.audio [private] |
Definition at line 17 of file VoicePDUSender.java.
Referenced by protocol.VoicePDUSender.send(), and protocol.VoicePDUSender.VoicePDUSender().
byte [] protocol.VoicePDUSender.audioBuffer [private] |
Definition at line 21 of file VoicePDUSender.java.
Referenced by protocol.VoicePDUSender.send(), and protocol.VoicePDUSender.VoicePDUSender().
CallContext protocol.VoicePDUSender.call [private] |
Definition at line 18 of file VoicePDUSender.java.
Referenced by protocol.VoicePDUSender.send(), and protocol.VoicePDUSender.VoicePDUSender().
long protocol.VoicePDUSender.callStartTimestamp [private] |
Definition at line 22 of file VoicePDUSender.java.
Referenced by protocol.VoicePDUSender.VoicePDUSender().
long protocol.VoicePDUSender.nextDueTimestamp [private] |
Definition at line 23 of file VoicePDUSender.java.
Referenced by protocol.VoicePDUSender.send(), and protocol.VoicePDUSender.VoicePDUSender().
int protocol.VoicePDUSender.timestamp [private] |
Definition at line 24 of file VoicePDUSender.java.
Referenced by protocol.VoicePDUSender.send().
int protocol.VoicePDUSender.voicePduSubclass [private] |
Definition at line 20 of file VoicePDUSender.java.
Referenced by protocol.VoicePDUSender.send(), and protocol.VoicePDUSender.VoicePDUSender().