public void Start()
{
if (!IsRunning)
{
framesReceived = 0;
// create events
stopEvent = new ManualResetEvent(false);
// create and start new thread
thread = new Thread(new ThreadStart(WorkerThread));
thread.Name = Source; // mainly for debugging
thread.Start();
}
}