Hi Ross,<div>   Thank you for your response.  </div><div><br></div><div>   I used the FAQ often when I first started with LiveMedia and the single-threaded event loop is well described there.  Given your response, does that imply that ultimately I should dispatch new frames to the rest of the program using the TaskScheduler, UsageEnvironment or both?  I was hoping for a quick blurb on how you saw clients (as opposed to servers) using your event loop infrastructure for display (communication, filtering, processing makes perfect sense to me).  </div>
<div><br></div><div>   I am having difficulty understanding the concept for two reasons, first as I said, only the MediaSink class has access to the newest incoming frame.  How do you envision one transferring this new frame to say ... a GUI for display?  Secondly, while the single-threaded event loop works great for asynchronous communication, I have always read that GUI threads and updates should be separate from communication and processing threads.  I appreciate any assistance, media programming is not my strong suit.</div>
<div><br></div><div>Constantin</div><div><br></div>