VideoOverIP is a remote desktop protocol developed by Texas-based, desktop virtualization and cloud computing company VDIworks.
VideoOverIP is similar in many ways to traditional remote access protocols, such as Remote Desktop Protocol (RDP) or Virtual Network Computing (VNC), but provides a number of additional features that benefit users in Desktop Virtualization or VDI environments.[1] VideoOverIP is currently supported on Microsoft Windows XP, Windows Vista, and Windows 7 hosts, with full support for Microsoft Windows Embedded clients and Apple iPad devices, as well as beta support for Linux systems.
The protocol has been developed in C++ and incorporates a number of features for the efficient transport of remote desktop data across the network. For example, the protocol employs change detection, which allows it to isolate changes on the screen at the sender's end, thereby reducing the amount of pixel data that needs to be transported. Similarly, numerous techniques are utilized to automatically detect the type of application running on the sender's side, ensuring that the appropriate codecs and compression levels are employed.
VideoOverIP supports two modes of operation which determine how it captures video information from the source:
1. Mirror Driver Mode
Using this methodology, VideoOverIP relies on a mirror driver that is included with the host installer. The mirror driver is used to intercept rendering calls and capture screen changes via an event-based model.These changes are then processed by the VideoOverIP change detection, optimization, and compression pipelines before being sent to the receiver or client. This technique aims to be more efficient by reducing the CPU usage on the host or sender side.
2. GDI Mode
Using this methodology, VideoOverIP uses Graphics Device Interface (GDI) methods to capture the frame buffer and does not rely on an event-based approach to be notified of on-screen changes. This technique has the advantage of capturing the final, processed image from the frame buffer which allows the protocol to support Windows Aero or other sophisticated display technologies which require a host-side GPU. The downside with this approach is the increase in host-side CPU utilization due to the extra polling employed for source-side video capture.
VideoOverIP does not require a connection broker to operate, but it is fully supported by VDIworks' VDP connection broker[2] and virtual desktop management software.
VideoOverIP provides the following major features:[3]