Use BlockingQueue and add methods to stop send thread. Use a standard Java BlockingQueue (from concurrent package) to maintain a maximum number of outstanding packets for send. Introduce and call methods to gracefully stop send thread. Implement finer synchronization granularity for portaudio streams Use dedicated syncronization object in InputStream and MasterStream to implement a synchronization policy with finer granularity. This speeds up processing if SC uses several InputStream, for example several calls that are not on hold. Tries to bring back the initial sizing of the CallDialog so that the remote video is displayed 1:1. Attempts to provide smoother resizing of the CallDialog when remote video is displayed inside it.