A computer program product comprising a non-transitory computer readable storage medium storing the computer program, wherein the computer program comprises computer readable instructions which, when run on an Application on Demand (AoD) processing device, cause the AoD processing device to insert an advertisement into a video stream of an AoD service associated with an application hosted on an AoD server, by:
- acquiring, from the AoD server, advertisement configuration information;
- determining an advertisement to be inserted based on the advertisement configuration information;
- receiving, from the AoD server, a notification that a triggering condition for inserting an advertisement is satisfied, the triggering condition being associated with an interaction between the AoD server and a client device to which the AoD service is provided;
- transmitting to the AoD server an instruction to cause the AoD server to render a combined picture of the application and the advertisement based on the advertisement configuration information;
- and
- receiving, from the AoD server, the combined picture and converting it into a frame in the video stream for transmission to the client device.