Remote Controlled Image Slideshow Control

The RCWeb Slideshow Control app (app/slideshow-c) is the phone and tablet controller for the RCWeb Slideshow Display (app/slideshow). Together they create a Remote controlled Image Slideshow for shared screens, TVs, projectors, monitors, and kiosk displays.

icon

Overview

This app lets a phone, tablet, or desktop browser choose local images and send them to a remote controlled image slideshow display in the same RCWeb room. It can build the image playlist, reorder slides, remove images, clear the slideshow, change slide timing, choose the display transition, choose image scaling, and show or hide display overlays.

The control app is designed for touch use. The image playlist sits directly below the Add Images button so selected photos can be reviewed and reordered before adjusting playback options.

How to use

  1. Open /slideshow/ on the main display.
  2. Scan the QR code shown by the display.
  3. Press Add Images and select one or more photos from this device.
  4. Keep the controller open while the display downloads and caches the selected images.
  5. Drag images in the playlist to change their order.
  6. Tap an image to show it on the display, or use the remove button to take it out of the slideshow.
  7. Adjust slide duration, transition, scaling, information display, and QR visibility as needed.
  8. Use Clear to empty the slideshow and return the display to its waiting screen.

Remote Controlled Image Slideshow Controls

  • Add multiple local images at once.
  • Review selected images as a playlist with thumbnails and cache status.
  • Drag playlist items to reorder the slideshow.
  • Tap a playlist item to jump the display to that image.
  • Remove individual images.
  • Clear the full slideshow.
  • Rebuild the playlist view from display state when the control app is refreshed.

Image transfer

Images are processed in the browser before transfer. Each selected image is resized to a maximum side of 1920 pixels and encoded as JPEG at 85 percent quality. This reduces transfer time and keeps the cached display image smaller.

The controller hosts selected image data only while the display is loading it through RCWeb's /x-file/ proxy. Do not close the controller until the display reports that the images are cached. If the controller is closed too early, the display may not be able to finish loading the pending images.

After caching is complete, the display owns the slideshow playlist and can keep playing from its local browser cache. Refreshed or newly opened controllers can request the current state from the display, and the display can recreate thumbnail previews from cached image URLs.

Playback controls

  • Set slide duration from 2 to 120 seconds.
  • Choose No transition, Fade, or Ken Burns.
  • Choose Fill screen, Add border, or Stretch scaling.
  • Show or hide the display's slideshow information panel.
  • Show or hide the display's QR code and fullscreen controls.

Scaling options

Fill screen covers the whole display and may crop the image.

Add border keeps the whole image visible and adds border space only where needed.

Stretch fills the screen exactly, which can distort photos if their shape does not match the display.

Multiple controllers and displays

Several control browsers can be open in the same room. Each controller sends commands to the slideshow display app and receives state updates back from the display, so multiple people can manage the same remote controlled image slideshow.

The slideshow is display-led after images are cached. That means a refreshed controller can recover the playlist and thumbnails from the display, but a brand-new display still needs to load and cache the images on its own device before it can resume a previous slideshow.

How RCWeb makes it possible

RCWeb assigns each browser tab an app name, room ID, and client ID, then connects clients in the same room through WebSocket messaging. slideshow-c uses RCWeb function calls to send playlist, timing, transition, scaling, and overlay commands to the display.

Because image files are too large for normal WebSocket commands, the controller shares temporary file URLs through RCWeb's file proxy. The display loads those image URLs into the browser cache and sends compact state snapshots back to controllers so the control surface stays synchronized.

Related app

Use this app with RCWeb Slideshow Display (app/slideshow).

DocumentationServer TelemetryServer StatsServer HTTP LogServer WebSocket Log