TurboPlayerService is an extra module, which runs as a Windows service. Its main purpose is to provide an access via REST (representational state transfer) interface and WebSockets to a TurboPlayer engine. DAVID uses these interfaces within WebTurboPlayer but this also allows others to write software interfacing with TurboPlayer. The service has also a built-in web server. Therefore the web pages of WebTurboPlayer can be hosted within the service. The communication to TurboPlayer engine is done via the thread messages / thread message boxes the standard GUI uses, too. Therefore a TurboPlayerService appears as a bunch of standard GUIs to the engine. If you are interested in a description of the programming interfaces, there is an extra documentation “TurboPlayerService_ProgrammersManual”.
This is what the WebTurboPlayer looks like: