A virtual set-top box (vSTB) for executing a middleware component, designed originally for use with the physical STB, including emulating hardware capabilities of the physical STB t