Skip to content

Touch Screen

Overview

The Touch Screen device lets a show react to people touching the picture. It watches one video output of one Media Server, and every time a finger lands on the touch panel showing that output, the show gets an event carrying the touched position. This is what turns an ordinary Onlyview output into an interactive surface: a touch kiosk, an interactive wall, a "press to start" panel.

Any touch panel that the operating system already recognises as a touch device works — a touch-enabled monitor, a touch overlay frame, a USB/HID touch digitizer. There is no vendor-specific setting and no driver to install from Onlyview: if the panel drives the mouse cursor when you touch it in Windows, Onlyview will see the touches.

Setup

Create one Touch Screen device per touch panel. The setup dialog (Touch Screen Setup) has a single field:

  • Output window: The Media Server output the touch panel is physically plugged into, listed as server name / output name. Only touches landing on that output reach this device.

Touches are captured by the fullscreen output windows of a Media Server, so:

  • The touch panel must be connected to a Media Server, not to the Producer. The Producer's own screens, the 2D preview and the UserScreens do not feed this device.
  • Pick a video (GPU) output. The list also contains the server's other outputs, but only a GPU output has a window to be touched.
  • The server must be running the show fullscreen for touches to be picked up.

Once configured, the touch is distributed to the whole show: an ActionGraph running on the Producer or on any other Media Server reacts to it just as well as the server the panel is plugged into.

Touch coordinates

A touch is reported as a position in pixels within the selected output, with 1, 1 at the top-left corner. The bottom-right corner is the output resolution — for a 1920x1080 output, positions run from 1, 1 to 1920, 1080.

There is no calibration, rotation or region setting in Onlyview. The mapping between the panel and the picture is whatever the operating system provides, so if touches land in the wrong place, or on the wrong screen of a multi-output server, fix it in the OS display and touch settings (on Windows: Tablet PC SettingsSetup, to associate the touch digitizer with the right monitor). Keep the server's display scaling at 100% so that reported coordinates match the output resolution.

ActionGraph Nodes

Both nodes live under Devices/TouchScreen in the node palette, and both have a Device property used to pick which Touch Screen device to listen to.

On Touch

Fires every time the device's output is touched.

Properties:

  • Device: The Touch Screen device to listen to.

Output Slots:

  • Position: Vec2 — the touched position, in output pixels. Invalid until the first touch is received, and whenever no device is selected.

Output Events:

  • On Touch: Fired on each touch.

On Touch Zone

Same as On Touch, but only reacts to touches landing inside a rectangle. Use one node per button area of an interactive layout.

Properties:

  • Device: The Touch Screen device to listen to.

Input Slots:

  • Top Left: Vec2 — top-left corner of the sensitive rectangle, in output pixels. Defaults to 1, 1.
  • Bottom Right: Vec2 — bottom-right corner of the sensitive rectangle, in output pixels. Defaults to 1920, 1080.

Both corners are required: they always hold either the value you type in the node, or the value coming from a connected node. Touches exactly on the edges count as inside.

Output Slots:

  • Position: Vec2 — the touched position, still expressed in output pixels (not relative to the rectangle). Invalid until a touch inside the rectangle is received.

Output Events:

  • On Touch: Fired only when the touch falls inside the rectangle. Touches outside it are ignored and change nothing on the node.

Limitations

Info

Only the moment the finger lands is reported. There is no event when the finger moves or is lifted, and no duration, so drags, swipes, pinches and other gestures cannot be built from this device.

Info

One touch point at a time. If several fingers land together, a single position is reported for that touch; the extra points are discarded. The device cannot be used for two-handed or multi-user simultaneous interaction.

Clicking in the output window with a mouse also produces a touch event, which is a convenient way to test an interactive graph on a machine that has no touch panel.