A system comprising: multiple clients; a server that includes: a network interface operable to communicate with the clients; and a control unit, implemented by a memory and processor, operable to receive a screen capture (302, 304) that represents visual content at a display of a client, the visual content comprising at least some portion of the pixels displayed to a user of the client via the display, to identify multiple clients for receiving the screen capture, to transmit the screen capture to the multiple clients for presentation at displays of the multiple clients, to receive instructions in parallel from the multiple clients representing marks (602, 802, 804) made upon the screen capture, and to transmit the instructions in parallel to the multiple clients to apply the marks onto the screen capture as presented at the displays of the multiple clients; wherein the control unit is further operable to maintain an open communication channel with each of the multiple clients for receiving instructions from the multiple clients in parallel and asynchronously, to transmit received instructions to the multiple clients via the communication channels, and to store received instructions in memory as part of an undo/redo state from which the state of the meeting can be regenerated; the clients are operable to apply the instructed marks onto the screen capture; and the instructed marks and shared screen captures occupy different layers so that marks overlap instead of replace shared screen captures as presented at the displays of the multiple clients. multiple clients; a server that includes: a network interface operable to communicate with the clients; and a control unit, implemented by a memory and processor, operable to receive a screen capture (302, 304) that represents visual content at a display of a client, the visual content comprising at least some portion of the pixels displayed to a user of the client via the display, to identify multiple clients for receiving the screen capture, to transmit the screen capture to the multiple clients for presentation at displays of the multiple clients, to receive instructions in parallel from the multiple clients representing marks (602, 802, 804) made upon the screen capture, and to transmit the instructions in parallel to the multiple clients to apply the marks onto the screen capture as presented at the displays of the multiple clients; a network interface operable to communicate with the clients; and a control unit, implemented by a memory and processor, operable to receive a screen capture (302, 304) that represents visual content at a display of a client, the visual content comprising at least some portion of the pixels displayed to a user of the client via the display, to identify multiple clients for receiving the screen capture, to transmit the screen capture to the multiple clients for presentation at displays of the multiple clients, to receive instructions in parallel from the multiple clients representing marks (602, 802, 804) made upon the screen capture, and to transmit the instructions in parallel to the multiple clients to apply the marks onto the screen capture as presented at the displays of the multiple clients; wherein the control unit is further operable to maintain an open communication channel with each of the multiple clients for receiving instructions from the multiple clients in parallel and asynchronously, to transmit received instructions to the multiple clients via the communication channels, and to store received instructions in memory as part of an undo/redo state from which the state of the meeting can be regenerated; the clients are operable to apply the instructed marks onto the screen capture; and the instructed marks and shared screen captures occupy different layers so that marks overlap instead of replace shared screen captures as presented at the displays of the multiple clients.