# Welcome to RouteEffect!

**RouteEffect** is the modern way to control your [Blackmagic Design Videohub video routers](https://www.blackmagicdesign.com/products/blackmagicvideohub) — built from the ground up for power, customization, flexibility, and automation. Whether you're switching live video feeds or managing complex signal paths in a studio, RouteEffect gives you full control with an interface that's intuitive, responsive, and incredibly capable.

{% embed url="<https://youtu.be/fXQbOqz532I>" %}
RouteEffect launch video
{% endembed %}

## Multiple Ways to Visualize Routing

RouteEffect offers several views for understanding and managing your video routing setup:

* [**Buttons**](/using-routeeffect/routing/button-view): It's like having every route represented as a software button.
* [**Split**](/using-routeeffect/routing/split-view): See more information about each input and output, replete with colors and icons.
* [**List**](/using-routeeffect/routing/list-view): A streamlined interface for quickly finding and switching sources and destinations.
* [**Wheel**](/using-routeeffect/routing/wheel-view): Spin the wheel to set your sources and destinations.
* [**Crosspoint Matrix**](/using-routeeffect/routing/crosspoint-view): A grid-based layout that shows all possible input and output combinations at once.

<figure><img src="/files/WygOQuyY6zdPOH7Y1wCP" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/9NYBjIYH39UrVoO6wVSw" alt=""><figcaption></figcaption></figure>

No other app gives you this much visual flexibility — and you can switch between views any time to fit your workflow.

## More Power

RouteEffect isn’t just about controlling your router — it’s about supercharging your workflow. These advanced features give professionals the tools they need to route smarter and faster in high-pressure environments.

* [Virtual Outputs](/using-routeeffect/virtual-outputs)
* [Presets](/using-routeeffect/presets)
* [Multiview](/using-routeeffect/multiview)

### Virtual Outputs

Create virtual outputs to group multiple physical outputs into one logical unit. Need to send the same source to a video wall, a recorder, and a monitor? With Virtual Outputs, you can switch them all with a single action — no need to route each one individually.

### Presets

Build and trigger Presets for common routing configurations. Whether it’s your default studio layout, a guest-specific setup, or a “showtime” switch-over, you can apply full or partial crosspoint states instantly. Presets make complex routing changes predictable, repeatable, and fast.

### Multiview

The Multiview gives you a clear, full-screen visual representation of your Videohub’s signal flow. It's perfect for at-a-glance monitoring — especially in fast-paced or high-stakes environments where clarity is critical. You can open multiple Multiview windows, one for each Videohub, and place them across displays or spaces. Use it to keep an eye on routing activity in real-time, with clean labels and a grid layout that makes it easy to understand what’s going where.

<figure><img src="/files/hR3YjlTgZrsmLI6UJ5oN" alt=""><figcaption></figcaption></figure>

### Built-in Simulator

Want to test your setup without hardware? RouteEffect includes a [powerful simulator](/simulator) that emulates a Blackmagic Design Videohub. You can configure the number of inputs and outputs, apply labels, simulate routing behavior, and even maintain state between launches.

It’s perfect for:

* Learning how routers work
* Building and testing presets in advance
* Demos and offline workflows

<figure><img src="/files/EkG8QcMr3Y0J3rQfypXB" alt=""><figcaption></figcaption></figure>

## Control with OSC

Control RouteEffect via software like Bitfocus Companion and hardware like Elgato Stream Decks. You can send OSC messages to RouteEffect to connect to video routers, route outputs, execute presets, and update virtual outputs.

## Automate with Shortcuts

Take control of your routers from Apple Shortcuts! Trigger presets, switch specific crosspoints, or automate entire routing workflows — hands-free or using voice commands via Siri.

This opens up incredible automation possibilities:

* Change routing based on time of day
* Trigger presets from your stream deck or NFC tag
* Integrate with home automation and production workflows

## Designed for Every Apple Device

RouteEffect runs beautifully on:

* iPhone — Pocket-sized routing control with full feature access
* iPad — The ultimate touch-based routing interface &#x20;
* Mac — Keyboard, mouse, and windowed productivity &#x20;

Your settings and router connections sync across devices with iCloud, so you’re always ready no matter where you are.

## Why RouteEffect?

RouteEffect isn’t just another Videohub controller — it’s the controller you’ve been waiting for:

* Modern, touch-friendly UI &#x20;
* Full-featured simulator &#x20;
* Multiview routing &#x20;
* Multi-router support &#x20;
* Shortcuts integration &#x20;
* Native on iPhone, iPad, and Mac &#x20;

Whether you manage one Videohub or a dozen, RouteEffect gives you more power, more visibility, and more confidence.

***

*Blackmagic Design and Videohub are trademarks of Blackmagic Design Pty. Ltd. All product names, logos, and brands are property of their respective owners.*


# Which version is right for you?

There are two versions of RouteEffect on the App Store:

* **RouteEffect**: Free to download with monthly and annual subscriptions to unlock all features. See on [App Store](https://apps.apple.com/us/app/routeeffect-video-router/id6743954602).
* **RouteEffect Pro**: A lifetime version of RouteEffect, suitable for purchase by companies and individuals who want a perpetual license or who are unable to use In-App Purchases. See on [App Store](https://apps.apple.com/us/app/routeeffect-pro-video-router/id6744062991).

Here are the two application icons for RouteEffect and RouteEffect Pro respectively:

<div><figure><img src="/files/EKbYtMtGvOmAfYjbIMa0" alt="RouteEffect (subscription)" width="188"><figcaption></figcaption></figure> <figure><img src="/files/ACaJtl2wmv971euXowz9" alt="RouteEffect Pro (paid up-front)" width="188"><figcaption></figcaption></figure></div>

## RouteEffect - Free to Download with Subscription

Without a subscription, RouteEffect operates in Freemium Mode, which includes access to the following features:

* Premium features available to those with a RouteEffect subscription include:
* Create unlimited video routers and simulators, but you will only be able to control the first one in each list.
* Button and Wheel routing management method

<figure><img src="/files/PtfwdWKilPCmsM6ZsKLG" alt=""><figcaption></figcaption></figure>

* Connect to an unlimited number of Videohub video routers of simulators
* Access to the Split, List, and Crosspoint routing management methods
* Assign input sources to virtual outputs
* Fire salvos with presets
* Access to RouteEffect's extensive support for Shortcuts
* Automation via OSC
* Picture-in-Picture dashboard
* Export and import of video router metadata
* Opening external Multiview windows

Trying to perform an action that requires a subscription will display an upgrade sheet. Scroll and tap on View Plans to see available plans.

<figure><img src="/files/gJol5ct6Iyqzpl3nZa19" alt=""><figcaption></figcaption></figure>

## Subscription

RouteEffect is limited in functionality without purchasing a subscription.

Monthly and annual subscription plans purchased from the app will be charged to your App Store account and will automatically renew within 24 hours prior to the end of the current subscription period unless auto-renew is disabled beforehand. You can manage your subscriptions in your App Store account settings.

### Free Trial

Most plans offer a free trial period during which you can evaluate all the features of RouteEffect for free. When the trial period ends, you will be automatically renewed and charged for the subscription amount.

***

## RouteEffect Pro - Paid Up-Front with Lifetime License

The free to download version of RouteEffect does not come with a lifetime In-App Purchase option. If you wish to purchase a perpetual license of RouteEffect, [learn about the separate paid up-front](/pro) version of RouteEffect Pro.&#x20;

RouteEffect Pro is the one-time purchase version of RouteEffect, offering lifetime access with no subscriptions, no recurring fees, and full feature unlock across iPhone, iPad, and Mac. It’s ideal for professionals and studios who prefer to own their tools outright and deploy them freely via Family Sharing or MDM.


# What is a Video Router

Terms used in RouteEffect

A video router is a device that manages the routing of video signals from multiple sources to multiple destinations. Instead of physically reconnecting cables or using a patch panel, a video router allows you to switch signals instantly through software or control hardware.

Video routers are used in:

* Broadcast studios&#x20;
* Live event productions
* Post-production facilities
* Control rooms
* Anywhere multiple video sources and destinations are involved

## How It Works

A video router has inputs (like cameras, playback devices, or graphics systems) and outputs (like monitors, recorders, or streaming encoders). Each input can be routed to any output — and changes happen instantly.

This "crosspoint" matrix design allows for enormous flexibility. For example:

* Send one input to many outputs
* Assign a specific camera feed to a multiview or switcher input
* Change your entire routing layout in seconds

## Types of Video Routers

RouteEffect currently works with video routers from Blackmagic Design, including the following:

* Videohub
* ATEM production switcher

### Blackmagic Design Videohubs

[Blackmagic Design](https://www.blackmagicdesign.com/products/blackmagicvideohub) makes a popular family of video routers known as Videohubs. These routers support SDI-based workflows and are available in a range of sizes — from compact models with a handful of ports to massive 80x80 or 120x120 matrix routers.

Key features include:

* SDI input/output routing with support for 3G, 6G, or 12G SDI depending on model
* Crosspoint switching via hardware panels, software, or network protocols
* Labeling and control via USB or Ethernet
* Protocol-based control, allowing third-party software (like RouteEffect!) to automate and manage routing

### Blackmagic Design ATEM Switchers

Every modern ATEM live production switcher is also a Videohub. You can configure all of the auxiliary outputs of an ATEM switcher. On those switchers with webcam output, you can also route which input is sent out of this output (some limitations apply on the ATEM Mini lineup). A sample of ATEM switchers that act as a Videohub includes:

* ATEM Mini Pro
* ATEM Mini Pro ISO
* ATEM Mini Extreme
* ATEM Mini Extreme ISO
* ATEM Mini Extreme ISO G2
* ATEM SDI Pro ISO
* ATEM SDI Extreme ISO
* ATEM Television Studio HD8
* ATEM Television Studio HD8 ISO
* ATEM Television Studio 4K8
* ATEM 1 M/E Constellation HD
* ATEM 1 M/E Constellation 4K
* ATEM 2 M/E Constellation HD
* ATEM 2 M/E Constellation 4K
* ATEM 4M/E Constellation HD
* ATEM 4 M/E Constellation 4K
* ATEM 4 M/E Constellation 4K Plus
* ATEM Constellation 8K

## Why Use a Video Router?

* Simplifies cable management and workflows
* Enables dynamic routing during production or post
* Centralizes control of video signal flow
* Works seamlessly with other Blackmagic hardware (ATEM switchers, HyperDecks, etc.)

Understanding how video routers work — and how to control them — is essential for anyone working in a professional video environment. Whether you’re switching feeds in a studio, routing ISO recordings, or building complex preset layouts, a video router gives you the flexibility and speed to get the job done.

## Connecting RouteEffect to a Videohub

RouteEffect takes it even further — combining powerful control, visual clarity, and smart automation to transform your video routing workflow into something faster, cleaner, and dramatically more capable.

* Tap + from the RouteEffect home
* Choose Add Video Router
* Enter a name for your video router
* Enter the IP address of the Videohub. You can find the IP Address of your Videohub from Videohub Setup app on your Mac or PC
* Tap Add
* Tap Connect

***

*Blackmagic Design, Videohub, HyperDeck, and ATEM are trademarks of Blackmagic Design Pty. Ltd. All product names, logos, and brands are property of their respective owners.*


# Using RouteEffect

This section describes how to use RouteEffect to control video routers, including Videohub routers from Blackmagic Design:

* [Adding a Video Router](/using-routeeffect/adding-a-video-router)
* [Connect to a Video Router](/using-routeeffect/connecting-to-a-video-router)
* [Video Router Landing Page](/using-routeeffect/video-router-landing-page)
* [Routing](/using-routeeffect/routing)
* [Input Labels](/using-routeeffect/input-labels)
* [Output Labels](/using-routeeffect/output-labels)
* [Virtual Outputs](/using-routeeffect/virtual-outputs)
* [Presets](/using-routeeffect/presets)
* [Multiview](/using-routeeffect/multiview)


# Adding a Video Router

To add a new video router to RouteEffect, follow these steps:

1. From the RouteEffect home, tap the `+` button.
2. Choose `New Video Router`.
3. If this is your first time using RouteEffect, a permissions dialog will appear asking you to give RouteEffect the ability to discover and communicate with devices on the local network. Tap Accept.
4. In the sheet that appears, RouteEffect will list video routers it discovers on your network. Tap on the name to pre-populate the fields for `Name`, `IP Address`, and `Port`. Or, you can manually enter these fields if you know them.&#x20;
5. Tap `Add` to save the video router to RouteEffect.

<figure><img src="/files/KQhwLtu25wm3j4JrCn4D" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %}
RouteEffect currently works with the Videohub line of video routers from Blackmagic Design. Future versions of RouteEffect may add support for additional video routers from other manufacturers.&#x20;
{% endhint %}

## Determining the IP address of your video router

To determine the IP address of your video router, use the software that came with it. With Blackmagic Design Videohub, this would be the Videohub Setup application for Mac and Windows.

<div><figure><img src="/files/t1kMzmAatMp5N9NGGViy" alt=""><figcaption><p>Videohub Setup</p></figcaption></figure> <figure><img src="/files/4jqlV7f6zKLFNqmaNY97" alt=""><figcaption><p>Setup section showing network settings</p></figcaption></figure></div>

It is recommended that you set up a static IP address or use DHCP Reservation to provide your video router with a stable, un-changing IP address.

## Use Local Network

If you did not give permission to RouteEffect to communicate with devices over the local network, RouteEffect will not be able to communicate with your Videohubs. To change this, do the following:

1. Go to the iOS or iPadOS Home
2. Tap `Settings`
3. Scroll to the bottom of the left-hand sidebar and tap Apps
4. Tap `RouteEffect`
5. Make sure `Local Network` is enabled

<figure><img src="/files/qnP2Vi5mgi7YqwWVbzkE" alt="" width="375"><figcaption></figcaption></figure>


# Connecting to a Video Router

To connect to a video router, perform the following:

1. From the RouteEffect home, tap on the name of a video router.
2. In the screen that appears, tap `Connect`.

Once connected, the screen should show the video router landing page or redirect you to the Manage section if you have the Go to Routing on Connect [setting](/settings) enabled.

{% hint style="danger" %}
RouteEffect will attempt to connect for five seconds before stopping. If you are unable to connect to the video router, make sure the IP address and Port number are valid and that your RouteEffect device and the video router are on the same network.
{% endhint %}

## Auto-Connect on Launch

Toggling the Auto-Connect on Launch setting for a video router will cause RouteEffect to try to connect to that video router whenever a new window is open. Use this feature if you always want to connect to a set of video routers when the application is open.

{% hint style="warning" %}
Multitasking away from RouteEffect may cause the connection to terminate. Returning to RouteEffect will not cause it to reconnect to these video routers at the moment. Create a new window or force quit the app and relaunch to reconnect.

Future versions of RouteEffect may change this behavior.
{% endhint %}


# Video Router Landing Page

When you are connected to a video router, there will be several sections that you can explore depending on the capabilities of your video router:

* **Routing**
  * Video Output Routing
  * Monitoring Output Routing
  * Processing Unit Routing
  * Frame Buffer Routing
  * Serial Port Routing
* **Labels**
  * Input Labels
  * Output Labels
  * Monitoring Output Labels
  * Frame Buffer Labels
  * Serial Port Labels
* **Locks**
  * Output Locks
  * Monitoring Output Locks
  * Processing Unit Locks
  * Frame Buffer Locks
  * Serial Port Locks
* **Serial Port Directions**
* **Extensions**
  * Virtual Outputs
  * Presets
  * Multiview

Information about the connected video router, will also be displayed:

* Name
* Type
* IP Address
* Port Number
* Model
* Model ID
* Pin to top
* Auto-Connect on Launch

If your video router entry is linked to a Simulator, you will see additional fields containing:

* Simulator link
* Hide from Library

**Port Metadata**

* Copy Port Metadata to Clipboard
* Import Port Metadata


# Routing

Control the routing of inputs and outputs in the Routings section. This is the heart of RouteEffect and where you will perform many of your routing functions. It is comprised of several sections or views:

* [Button](/using-routeeffect/routing/button-view)
* [Split](/using-routeeffect/routing/split-view)
* [List](/using-routeeffect/routing/list-view)
* [Wheel](/using-routeeffect/routing/wheel-view)
* [Crosspoint](/using-routeeffect/routing/crosspoint-view)
* [Virtual Output](/using-routeeffect/routing/virtual-output-view)

When in the Routing section, you can press `Command-;` and `Command-'` to go to the previous and next sections respectively.

You can also press `Command-Shift-R` to go to the Routing section when connected to a video router.


# Button View

The buttons view style looks like the front faceplate of a Videohub video router. Tap an output and tap an input to assign it to the selected output.

<figure><img src="/files/EkG8QcMr3Y0J3rQfypXB" alt=""><figcaption></figcaption></figure>

## Take Mode

If Take Mode is enabled, selecting an input will turn it yellow. Tap on it again to select the take and change the route.

If the Double Tap to Select preference is enabled, you must double-tap on all buttons to select and take.

## Locking and Unlock Outputs

If an output is locked, the icon, short label, or output index will be replaced by a lock symbol. To unlock it, long-press on the button and choose `Unlock` from the menu that appears. To lock an output, long-press and choose `Lock` from the menu that appears. Finally, if an output is locked from another client, you can force unlock it by long-pressing on the button and choosing `Force Unlock` from the menu that appears.


# Split View

An attractive view showing large buttons with customizable icons, labels, and colors for your input sources and output destinations.

<figure><img src="/files/9NYBjIYH39UrVoO6wVSw" alt=""><figcaption></figcaption></figure>

## Take Mode

If Take Mode is enabled, selecting an input will turn it red. Tap on it again to select the take and change the route.

If the Double Tap to Select preference is enabled, you must double-tap on all buttons to select and take.

## Locking and Unlock Outputs

If an output is locked, you can tap on the upper-right corner of a button to unlock it.

To lock an output, tap on the upper-right corner to lock it.

If an output is locked from another client, you can unlock it by double-tapping on the lock icon.

{% hint style="info" %}
If you want to see an unlock symbol next to the buttons, turn on Show Unlocked Label in RouteEffect Settings.
{% endhint %}


# List View

A vertical list of input sources and output destinations.

<figure><img src="/files/TpN4tudFfKl3t32JzKhI" alt=""><figcaption></figcaption></figure>

## Take Mode

If Take Mode is enabled, selecting a new input source will display two buttons, a blue checkmark button that will select the take and a re


# Wheel View

Dual wheel pickers, one for choosing the input source and another for selecting the output destination.

<figure><img src="/files/MMfhLycx2MGtK5CM4vMO" alt="" width="375"><figcaption></figcaption></figure>

## Take Mode

If Take Mode is enabled, selecting a new input source will display two buttons, a blue checkmark button that will select the take and a red x button that will clear the selection.


# Crosspoint View

A crosspoint matrix that shows every possible combination of routes between inputs and outputs. For a Videohub Mini 4x2 12G, that's 8 possible combinations. For a Videohub 120x120 12G, that's 14,400 possible combinations!

<figure><img src="/files/OfxZhaQyMb833HrtNe03" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
Loading the crosspoint matrix for large Videohub video routers may take a few extra moments to load.
{% endhint %}

## Take Mode

If Take Mode is enabled, selecting a new input source will highlight the new source in red. Tap it again to select the take and change the route. To clear the route, tap on another input or tap on the original input.

## Locking and Unlock Outputs

If an output is locked, you can tap on the lock icon to unlock it. To lock an output, tap on the unlocked icon. Finally, if an output is locked from another client, you can unlock it by double-tapping on the lock icon.


# Virtual Output View

Assign an input source to multiple output destinations with a single action using Virtual Outputs. You can group multiple outputs in a single virtual output.

<figure><img src="/files/NRgLs7tFYLExhcwmMCrx" alt=""><figcaption></figcaption></figure>

## Creating a virtual output

You can create virtual outputs by tapping the + button or by going to the separate [Virtual Outputs extension page](/using-routeeffect/routing/virtual-output-view).

## Assigning an input to a virtual output

Perform these steps to assign an input to a group of outputs collected in a virtual output.

1. Go to the `Virtual Output View` in the Routing section
2. Locate the virtual output you want to use. Swipe down to reveal a search bar allowing you to filter through the list of available virtual outputs on this video hub
3. Tap `Choose` next to the selected virtual output
4. In the list that appears, select the input you wish to assign to the virtual output

{% hint style="warning" %}
If you have Take Mode enabled, you will need to confirm your selection by clicking or tapping on the blue checkmark button.
{% endhint %}

Once the input source has been chosen and/or approved, it will be assigned to all of the outputs that make up the virtual output.

## Locked outputs

If any output is locked in a virtual output, it will be skipped over during assignment of the virtual output.&#x20;


# Options menu

The Options menu gives quick access to controlling the look and operation within any of the Routing sections. To reveal the inspector, tap or click on the button with the ellipsis in the upper-right hand corner of the screen.

<figure><img src="/files/KaWnwYP9PIiNhXc1adTQ" alt=""><figcaption></figcaption></figure>

Here is a list of things you can do from the Inspector. Some of the settings are global in nature and some affect the currently selected video router:

### Global Settings

* **Use Take**: Toggles Take Mode on and off. Take Mode is a global preference that works on all of your connected video routers.
* **Require Double Tap to Select**: When enabled, you must double-tap or double-click on an input source or output destination in the Buttons or Split routing view in order to select a source or destination. The purpose is to prevent accidental routing changes. Like with the Use Take toggle, this is a global preference that applies to all video routers you are connected to.

### Per-Video Router Settings

* **Use Column Layout**: Toggles between Column and Row layout in the Buttons and Split routing view styles. You can also press `Command-L` to toggle between these two layouts.
* **Show Sources First**: You can have output destinations show up first in the Buttons, Split, List, and Wheel routing view styles by disabling this feature. Press `Command-Option-S` to toggle between this preference.
* **Show Details**: You can show additional details in the Split and List routing view styles, such as the connections attached to an input source or output destination. Press `Command-Shift-D` to toggle this preference.
* **Show Hidden**: Reveal or hide hidden input sources and output destinations with this toggle. Press `Command-Shift-H` to toggle this setting.
* Show Icons in Buttons View:&#x20;
* Show Labels in Buttons View:&#x20;
* **Reset Split Divider Position**: Sometimes the split divider in the Buttons and Split routing view style gets out of sync. Choose this option to reset its position back to the defaults.


# Take Mode

If Take Mode is enabled, selecting a route will not immediately change the route on the given output. You will have to confirm the take by performing an operation depending on which section you are on:

* **Button**: Tap the selected input again to approve the take.
* **Split**: Tap the selected input again to approve the take.
* **List**: Tap the blue checkmark button to approve the take.
* **Wheel**: Tap the blue checkmark button to approve the take.
* **Crosspoint**: Tap the selected input again to approve the take.
* **Virtual Output**: Tap the blue checkmark button to approve the take.
* **Multiview**: Tap the blue checkmark button to approve the take.

<figure><img src="/files/tFE9KGonKNackspfmHzK" alt=""><figcaption><p>Take mode active in Split, List, Buttons, and Wheel view styles.</p></figcaption></figure>

If you have **Double Tap to Select** enabled in Settings, you will have to double-tap on an input in the Buttons and Split views in order to select and take a routing change.


# Input Labels

Input sources on Blackmagic Design Videohub only expose a label, but RouteEffect allows you to add additional metadata for an input source.

<figure><img src="/files/wuwy8WOFuBcZPWQlazjb" alt=""><figcaption></figcaption></figure>

The following metadata is available to add for inputs:

* **Hide Input**: Hide the source in all of the Routing views.
* **Short Label**: A short label that's displayed on the Buttons page.
* **Icon**: An [SF Symbol](https://developer.apple.com/sf-symbols/) representative of the input source.
* **Icon Badge**: Choose a number from 0 to 50 or a letter from A to Z. This badget will be displayed on the Buttons page in the upper-right corner of the button.
* **Color**: The color of the input source to be displayed on the Button, Split, and List sections.
* **Notes**: Optional notes about the input source. Search will look through the notes field.

You can press `Command-Shift-I` to go to the Input Labels section when connected to a video router.

<figure><img src="/files/9QIAZDpWKpJbeIY1xbqz" alt=""><figcaption></figcaption></figure>


# Output Labels

Output destinations on Blackmagic Design Videohub only expose a label. RouteEffect allows you to add additional metadata for an output destination, including:

* **Hide Input**: Hide the source in all of the Routing views.
* **Short Label**: A short label that's displayed on the Buttons page.
* **Icon**: An [SF Symbol](https://developer.apple.com/sf-symbols/) representative of the input source.
* **Color**: The color of the input source to be displayed on the Button, Split, and List sections.
* **Notes**: Optional notes about the input source. Search will look through the notes field.

You can press `Command-Shift-O` to go to the Output Labels section when connected to a video router.

<figure><img src="/files/V9fmSEGLI0CjCEPlkAcV" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/q2Z8bdU4PIwZxI6bb3OS" alt=""><figcaption></figcaption></figure>


# Output Locks

Output destinations can be locked in a Blackmagic Design Videohub video router. An output can be:

* Unlocked
* Locked by owner
* Locked by other

Owner is defined as the current client connected to the Videohub.&#x20;

To unlock an output that was locked by another, you have to force unlock the output.

To force unlock an input from this screen, double-tap or double-click on the lock icon. Otherwise, a single tap or click will lock and unlock an output.

You can press `Command-Shift-L` to go to the Output Locks section when connected to a video router.

<figure><img src="/files/jDaQ8TjydxULP1vFUAya" alt=""><figcaption></figcaption></figure>


# Virtual Outputs

Assign an input source to multiple output destinations with a single action using Virtual Outputs. You can group multiple outputs in a single virtual output.

In this section, you can create and manage your virtual outputs. You can press `Command-Shift-V` to go to the Virtual Outputs section when connected to a video router.

<figure><img src="/files/J66NtZG8EgrHsOWHHP3g" alt=""><figcaption></figcaption></figure>

## Adding a virtual output

Follow these steps to create a virtual output:

1. Connect to a video router
2. Tap `Virtual Outputs` from the Detail or Landing page
3. Tap `+`
4. Enter a name for your virtual output
5. Optionally add an icon and color
6. Enter some notes about the virtual output
7. Select the outputs that should be grouped into this virtual output
8. Tap `Save`

Your new virtual output will appear in the list on both Virtual Output pages, the one you are currently in and the Virtual Outputs page in the Routing section.

## Assigning an input to a virtual output

Go to the [Virtual Output Routing View section](/using-routeeffect/routing/virtual-output-view) to learn how to assign an input to a virtual output.


# Presets

Presets are pre-loaded commands that you can issue to a Videohub. Think of a preset like a macro for ATEM switchers.

Presets normally are run against the video router on which they were created, but RouteEffect can optionally run a preset on any video router.&#x20;

You can press `Command-Shift-P` to go to the Presets section when connected to a video router.

## Creating a Preset

To create a preset, follow these steps:

1. Connect to a video router
2. Go to the `Presets` section
3. Tap `+`
4. In the sheet that appears, enter a name for your preset
5. Optionally choose and icon and color for your preset
6. In the Video Output Routing, Input Labels, and Output Labels sections, toggle those settings you want stored in the preset
7. Tap `Add` to save the preset

<figure><img src="/files/nFUkLqDZKxdTWQ9ss83O" alt=""><figcaption></figcaption></figure>

## Running a Preset

To run a preset, tap its button on the Presets page. RouteEffect will confirm that the preset was designed to run against the video router, and prompt you to confirm.

<figure><img src="/files/d63mzoThrudV0zBPob6J" alt=""><figcaption></figcaption></figure>

If you try to run a preset that was not designed for your video router, RouteEffect will warn you, but you will still be able to run the preset should you desire to do so.

## Filtering Presets

Use the filter button in the upper-right corner to change what presets are shown:

* **This Video Router**: Only show those presets that match the model and unique id of the currently selected video router.
* **Similar Video Routers**: Show those presets that match the model of the currently selected video router.
* **All Presets**: Show all presets in RouteEffect.

<figure><img src="/files/Ykd2wYK3cex15iWxAQQy" alt=""><figcaption></figcaption></figure>


# Multiview

The Multiview displays a single screen view of all outputs and their sources. On iPadOS and macOS, you can break off the Multiview into its own separate window. This is good if you want to move the window to an external screen for real-time video monitoring of your video router.

You can press `Command-Shift-M` to go to the Multiview section when connected to a video router.

<figure><img src="/files/YNo5z172mluTmYdMnRh7" alt=""><figcaption></figcaption></figure>

## Changing Inputs

You can change input sources for a destination by long-pressing or right-clicking on an output. A context menu will appear with the following information and options:

* **Name of output**
* **Source menu with name of current input**: Choose a new input to bind to this output
* **Lock controls**: Lock, Unlock, or Force Unlock the output

If you have Take Mode enabled, choosing a new source will call the take or clear buttons to appear above the output source's cell in the grid. Tap on the blue checkmark button to approve the take or the red x button to cancel the take.

<figure><img src="/files/EPWF9kvNaxaLaPBHvsjS" alt=""><figcaption></figcaption></figure>

## Making Multiview its own Window

Tap the display icon in the upper-right corner of the Multiview section to open it in a new window. You can choose to move this window to an external display or as a smaller window to keep track of routing changes during your event.

<figure><img src="/files/rEmxcbPHSR1AGVk6m4OI" alt=""><figcaption></figcaption></figure>


# Simulator

The RouteEffect Simulator provides a fully virtual Blackmagic Design Videohub environment for testing and experimentation — no physical hardware required! Emulate Videohubs as small as the Videohub Mini 4x2 12G with four inputs and two outputs up to a Videohub 120x120 12G with a massive 120 inputs and outputs!

Most newer ATEM switchers can act as Videohubs, so you can configure the routing on those devices using RouteEffect.

<figure><img src="/files/lxlQbKRid6EGjiVlZOLR" alt=""><figcaption></figcaption></figure>

When enabled, the simulator creates a mock Videohub with customizable inputs and outputs. You can:

* Switch sources and destinations
* Change labels
* Preview UI behavior and routing logic

The simulated router behaves like a real device, making it ideal for evaluating RouteEffect’s features, building presets in advance, or demoing workflows when hardware isn’t available. From there, you can extend the capabilities of a standard Videohub by layering in **RouteEffect-exclusive features** like custom icons, port colors, reusable presets, virtual outputs, and more — all designed to make complex routing faster, clearer, and easier to manage.

***

### Initializing the Simulator with a Real Router

You can configure the simulator to match the state of a real Videohub by importing its **Protocol Preamble** — the initial text output sent when connecting to a physical router via the Videohub protocol.

1. Connect to a real Blackmagic Design Videohub using a terminal or logging tool on port 9990. On macOS, you would open the Terminal application and type: `nc IP_ADDRESS_OF_VIDEOHUB 9990`where `IP_ADDRESS_OF_VIDEOHUB`is the address of the Videohub on your network
2. Copy the full protocol preamble (everything from `PROTOCOL PREAMBLE:` through to `END PRELUDE:`)
3. Create a new simulator in RouteEffect
4. Paste the text into the `Initial State` field
5. Tap `Add` to save the simulator

{% hint style="success" %}
When you create a new Simulator, RouteEffect also creates a hidden Video Router entry that's tied to the Simulated video router.
{% endhint %}

RouteEffect will parse the preamble to set up inputs, outputs, labels, routing state, and more — giving you a faithful replica of your real-world Videohub inside the Simulator.

<figure><img src="/files/bP5X8DX0mQbMMjNDSaG5" alt=""><figcaption></figcaption></figure>

### Create a Simulator Using a Sample Protocol Preamble

RouteEffect also comes with sample Protocol Preambles for the latest Videohub products from Blackmagic Design. To create a simulated Videohub from one of these samples, perform the following.<br>

1. Tap `+` and choose `New Simulator` in RouteEffect
2. Tap `Choose` next to the Sample Videohub field
3. Select a Videohub
4. Optionally change the name of your simulated Videohub
5. Tap `Add`
6. Tap `Start Simulator`
7. Tap `Launch Client`
8. Enjoy interacting with your virtual Videohub! &#x20;

***

## Running the Simulator

* Tap `Start Simulator`
* Tap `Launch Client`
* Enjoy playing with your virtual Videohub!

<figure><img src="/files/JtAytionw6ENWUkP9cXx" alt=""><figcaption></figcaption></figure>

## Accessing the Simulator from Other Devices

The simulator will show addresses that are available for others to interact with the simulated video router. In the screenshot above, someone using RouteEffect could create an video router entry and enter the IP address of `192.168.87.39`and port `9990`. When they tap the Connect button, it will connect to the simulated router running on your iPhone, iPad, or Mac.

You can also access the simulator running on the same device by creating a video router entry with the IP address of `127.0.0.1`.&#x20;

{% hint style="info" %}
127.0.0.1 is a special IP address that just means “this device”—your iPhone, iPad, or Mac. It’s like telling RouteEffect, *“Hey, connect to a router that’s running right here on this same device.*

You might also hear it called “localhost.” It’s super common in tech when apps want to talk to themselves or run a simulation without needing a real network.

So if you see 127.0.0.1, don’t worry—it just means the simulator is running locally, not on another device.
{% endhint %}

## Adding Icons

You can add a custom icon, backed by SF Symbols, to represent your simulated video router. Download the [SF Symbols app for macOS](https://developer.apple.com/sf-symbols) to see what you can assign to your simulator.

<figure><img src="/files/bWESpX009m30MDzIKaPL" alt=""><figcaption></figcaption></figure>

## State

When you use a simulated Videohub device, any changes that you or others make to the server will be saved. When you relaunch the simulator, it will restore from the last saved state. This allows you to work and configure the Videohub as if it was a real device.

You can choose to restore the state to the initial preamble that you used when creating the simulator by following these directions.

1. Go to the simulator entry
2. Tap Edit in the upper-right corner
3. Scroll to the State Information section
4. Tap Revert to Original
5. Tap Save to save changes back to the simulator entry

When you launch the client again, it will look like the day you cloned the simulated device from the real one.

## Port in use

You may receive an error message while trying to start the simulator that the address is already in use. This can mean a couple of things.

1. A simulator is already running on that port. Two devices cannot use the same port.
2. Another application is using that port. Find the application and force quit it.
3. An unknown error. If you are sure that there are no simulators running or other devices on the network, you can force quit RouteEffect and relaunch it. If you are able to run the selected similar, it was probably a problem with RouteEffect that needed to be reset.

You can also change the port number for the simulator. Then, try start the simulator again and launch the client.

***

*Blackmagic Design and Videohub are trademarks of Blackmagic Design Pty. Ltd. All product names, logos, and brands are property of their respective owners.*


# Dashboard

Get a high-level overview of which clients are connected and what simulators are running in RouteEffect. You can also launch a Picture-in-Picture (PIP) of RouteEffect, which will help it stay running in the background longer if you have to perform multitasking tasks on iOS and iPadOS.

<figure><img src="/files/yvOHhDhPO60yF7KIR4BH" alt=""><figcaption></figcaption></figure>

## Start PIP

Opens the Picture-in-Picture window. With it running, you can go to other applications, and RouteEffect will stay open longer in the background.&#x20;

Here is a photo of the PIP as it has just been activate and running alongside the MixEffect app while controlling an ATEM 2 M/E Constellation HD.

<figure><img src="/files/0usKxRSWhxCwLajJwKGw" alt=""><figcaption><p>The RouteEffect PIP activated</p></figcaption></figure>

<figure><img src="/files/b9wvC7KI1AGnyutTvREb" alt=""><figcaption><p>RouteEffect's PIP allows it to stay connected to your Videohubs while working in other applications.</p></figcaption></figure>

{% hint style="danger" %}
Note that iPadOS may still stop RouteEffect while its PIP is active. If you turn off your iPad, network connections may stop and this will disconnect RouteEffect from your Videohubs and stop your Simulators from running.
{% endhint %}

## Disconnect All Clients

Disconnects all clients from their real or simulated Videohub video routers.

## Stop All Simulators

Tapping this button will send the stop signal to all simulators running in RouteEffect.&#x20;

{% hint style="danger" %}
There are times when you disconnect the simulator but the port to which it was attached is not available. If RouteEffect complains about the port being in use, you will have to force quit the app and relaunch to clear the port.
{% endhint %}


# OSC

Documentation on OSC support in RouteEffect

Control RouteEffect by sending it Open Sound Control (OSC) messages. With Bitfocus Companion and an Elgato Stream Deck, you can have a physical button control surface to interface with RouteEffect. The following sections covers the OSC messages supported by RouteEffect.

## Configuring Bitfocus Companion

Here are instructions for adding support for controlling RouteEffect in Companion:

1. Go to Companion.
2. Click Connections.
3. Click Add connection.
4. Add a Generic OSC connection to your Companion instance
5. For the Target Hostname, enter the IP address of the device running RouteEffect.
6. For the Target Port, enter the port number for the OSC server as defined in RouteEffect Settings.
7. Click Save.

<figure><img src="/files/AjUM7cPAIEC1LQHFVLZz" alt=""><figcaption></figcaption></figure>

## OSC Message Anatomy

You can send a variety of OSC messages to RouteEffect:

* **Send message without arguments**
* Send integer
* Send float
* **Send String**
* **Send messages with multiple arguments**
* Send boolean
* Send blob

You will typically send the three items listed in bold above, Send message without arguments, Send String, and Send messages with multiple arguments.

### OSC Path and Arguments

The OSC path will contain the message you want to send to RouteEffect along with the ID of the video router you wish to communicate to.&#x20;

#### Example 1

For example, support you want to recall the preset "Default Mini" on an ATEM Mini Pro with the identifier: E735F17C-D01D-4DF8-89E7-E01287D188C5.

* **OSC path**: `/routeeffect/preset/E735F17C-D01D-4DF8-89E7-E01287D188C4`
* **Arguments**: `"Default Mini"`

<figure><img src="/files/Lk95IkiX8Hq2N5pNeasV" alt=""><figcaption></figcaption></figure>

#### Example 2

If you want to route output 2 to input 1, you would use the following OSC path and arguments using the Send message wit multiple arguments action:

* **OSC path**: `/routeeffect/route/E735F17C-D01D-4DF8-89E7-E01287D188C5`
* **Arguments**: `2 1`

<figure><img src="/files/uPViCHRESaTPwZ9ke3Uk" alt=""><figcaption></figcaption></figure>

### Arguments

If you choose the Send message with multiple arguments and want to include a string with a space in it, be sure to surround the string with double quotes.

***

## Unique Identifier

Every video router and simulated video router has a unique identifier. You can find this by looking at the detail page for your video router in RouteEffect under the heading `OSC Identifier`.

Tap the string to copy the identifier to your clipboard.

<figure><img src="/files/lNnSmX7Vt4UnZ3BxHplI" alt=""><figcaption></figcaption></figure>


# Connect

Instruct RouteEffect to connect to a video router.

| Message                   | Description                               | Arguments |
| ------------------------- | ----------------------------------------- | --------- |
| `/routeeffect/connect/ID` | Connect to a video router in RouteEffect. | None      |

Where `ID` is the unique identifier for your video router in RouteEffect.


# Disconnect

Instruct RouteEffect to disconnect from a video router.

| Message                      | Description                                    | Arguments |
| ---------------------------- | ---------------------------------------------- | --------- |
| `/routeeffect/disconnect/ID` | Disconnect from a video router in RouteEffect. | None      |

Where `ID` is the unique identifier for your video router in RouteEffect.


# Route

Instruct RouteEffect to route an output and input pair with the selected video router.

| Message                 | Description                   | Arguments             |
| ----------------------- | ----------------------------- | --------------------- |
| `/routeeffect/route/ID` | Assign an input to an output. | Output and Input pair |

Where `ID` is the unique identifier for your video router in RouteEffect.

| Argument | Type    | Description                     |
| -------- | ------- | ------------------------------- |
| Output   | Integer | Zero-based index of the output. |
| Input    | Integer | Zero-based index of the input.  |

{% hint style="danger" %}
Remember that OSC messages use a zero-based index for determining the output and input ids.
{% endhint %}


# Preset

Instruct RouteEffect to recall a preset assigned to a particular video router.

| Message                  | Description                          | Arguments   |
| ------------------------ | ------------------------------------ | ----------- |
| `/routeeffect/preset/ID` | Recall a preset on the video router. | Preset name |

Where `ID` is the unique identifier for your video router in RouteEffect.

| Argument    | Type   | Description                   |
| ----------- | ------ | ----------------------------- |
| Preset name | String | The exact name of the preset. |

{% hint style="danger" %}
If there are multiple presets with the same name, nothing will happen. Make sure your presets are uniquely named for each video router.
{% endhint %}

This action will only look for presets assigned to this particular video router. If you want to recall a preset for video routers of the same model, send the modelPreset message instead.


# Model Preset

Instruct RouteEffect to recall a preset assigned to models of a specific type of video router.

| Message                       | Description                                              | Arguments   |
| ----------------------------- | -------------------------------------------------------- | ----------- |
| `/routeeffect/modelPreset/ID` | Recall a preset on a model of a particular video router. | Preset name |

Where `ID` is the unique identifier for your video router in RouteEffect.

| Argument    | Type   | Description                   |
| ----------- | ------ | ----------------------------- |
| Preset name | String | The exact name of the preset. |

{% hint style="danger" %}
If there are multiple presets with the same name, nothing will happen. Make sure your presets are uniquely named.
{% endhint %}

This action will only look for presets that were assigned to a particular model of video router (i.e. all ATEM Mini Pro switchers).


# Global Preset

Instruct RouteEffect to recall a any preset in RouteEffect.

| Message                        | Description        | Arguments   |
| ------------------------------ | ------------------ | ----------- |
| `/routeeffect/globalPreset/ID` | Recall any preset. | Preset name |

Where `ID` is the unique identifier for your video router in RouteEffect.

| Argument    | Type   | Description                   |
| ----------- | ------ | ----------------------------- |
| Preset name | String | The exact name of the preset. |

{% hint style="danger" %}
If there are multiple presets with the same name, nothing will happen. Make sure your presets are uniquely named.
{% endhint %}

Be careful using this message, as a preset may not have the correct commands tailored for the video hub you are targeting.

For instance, if you recall a preset designed for an ATEM 2 M/E Constellation HD onto an ATEM Mini Pro, the results may be unpredicable.


# Virtual Output

Instruct RouteEffect to the source of a virtual output for the selected video router.

| Message                         | Description                             | Arguments                            |
| ------------------------------- | --------------------------------------- | ------------------------------------ |
| `/routeeffect/virtualOutput/ID` | Set a virtual output on a video router. | Virtual output name and source index |

Where `ID` is the unique identifier for your video router in RouteEffect.

| Argument            | Type    | Description                          |
| ------------------- | ------- | ------------------------------------ |
| Virtual output name | String  | The exact name of the virtual output |
| Source index        | Integer | Zero-based index of input source     |

{% hint style="danger" %}
If there are multiple virtual outputs with the same name, nothing will happen. Make sure your virtual outputs are uniquely named.
{% endhint %}

{% hint style="danger" %}
Remember that OSC messages use a zero-based index for determining the output and input ids.
{% endhint %}


# Lock

Instruct RouteEffect to lock an output in the selected video router.

| Message                | Description                         | Arguments    |
| ---------------------- | ----------------------------------- | ------------ |
| `/routeeffect/lock/ID` | Lock an output in the video router. | Output index |

Where `ID` is the unique identifier for your video router in RouteEffect.

| Argument     | Type    | Description                       |
| ------------ | ------- | --------------------------------- |
| Output index | Integer | Zero-based index of output source |

{% hint style="danger" %}
Remember that OSC messages use a zero-based index for determining the output and input ids.
{% endhint %}


# Unlock

Instruct RouteEffect to unlock an output in the selected video router.

| Message                  | Description                            | Arguments    |
| ------------------------ | -------------------------------------- | ------------ |
| `/routeeffect/unlock/ID` | Unlocks an output in the video router. | Output index |

Where `ID` is the unique identifier for your video router in RouteEffect.

| Argument     | Type    | Description                       |
| ------------ | ------- | --------------------------------- |
| Output index | Integer | Zero-based index of output source |

{% hint style="danger" %}
Remember that OSC messages use a zero-based index for determining the output and input ids.
{% endhint %}


# Force Unlock

Instruct RouteEffect to force unlock an output in the selected video router.

| Message                       | Description                                  | Arguments    |
| ----------------------------- | -------------------------------------------- | ------------ |
| `/routeeffect/forceUnlock/ID` | Force unlocks an output in the video router. | Output index |

Where `ID` is the unique identifier for your video router in RouteEffect.

| Argument     | Type    | Description                       |
| ------------ | ------- | --------------------------------- |
| Output index | Integer | Zero-based index of output source |

{% hint style="danger" %}
Remember that OSC messages use a zero-based index for determining the output and input ids.
{% endhint %}


# Simulator Connect

Instruct RouteEffect to connect to a simulator.

| Message                             | Description                            | Arguments |
| ----------------------------------- | -------------------------------------- | --------- |
| `/routeeffect/simulator/connect/ID` | Connect to a simulator in RouteEffect. | None      |

Where `ID` is the unique identifier for your simulated video router in RouteEffect.


# Simulator Disconnect

Instruct RouteEffect to disconnect from a simulator.

| Message                                | Description                                 | Arguments |
| -------------------------------------- | ------------------------------------------- | --------- |
| `/routeeffect/simulator/disconnect/ID` | Disconnect from a simulator in RouteEffect. | None      |

Where `ID` is the unique identifier for your simulated video router in RouteEffect.


# Shortcuts

This page covers the actions provided to the Shortcuts app from RouteEffect.

* [Find Port Info](/shortcuts/find-port-info)
* [Find Simulator](/shortcuts/find-simulator)
* [Find Video Router](/shortcuts/find-video-router)
* [Run Preset](/shortcuts/run-preset)
* [Send Videohub Command](/shortcuts/send-videohub-command)
* [Export Configuration](/shortcuts/export-configuration)
* [Change Lock Status](/shortcuts/change-lock-status)
* [Get Lock Status](/shortcuts/get-lock-status)
* [Get Port Metadata](/shortcuts/get-port-metadata)
* [Set Port Metadata](/shortcuts/set-port-metadata)
* [Change Route](/shortcuts/change-route)
* [Change Virtual Route](/shortcuts/change-virtual-route)
* [Get Current Route](/shortcuts/get-current-route)
* [Control Simulator](/shortcuts/control-simulator)
* [Control Video Router](/shortcuts/control-video-router)
* [Get Active Router](/shortcuts/get-active-video-router)


# Find Port Info

Searches for Port Info metadata entries in RouteEffect.&#x20;

## Required Filter

You must specify a filter on the Video Router field in order for this action to work. RouteEffect ony returns port info objects associated with a single video router.

### Sort by

Optionally, what to sort the port info by.

### LImit

Whether or not to limit the number of port info received.

### Get

The maximum number of port info.

### Result

The port info that match the criteria.


# Find Simulator

Searches for simulator entries in RouteEffect.&#x20;

### Sort by

Optionally, what to sort the simulator by.

### Limit

Whether or not to limit the number of simulator retrieved.

### Get

The maximum number of simulator.

### Result

The simulator that match the criteria.


# Find Video Router

Find video router entries in RouteEffect.

### Sort by

Optionally, what to sort the video router by.

### Limit

Whether or not to limit the number of video router retrieved.

### Get

The maximum number of video router.

### Result

The video router that match the criteria.


# Run Preset

Runs a preset on a video router.

### Preset

The preset to run.

### Target

Choose to run the preset on the currently focused video router or a selected video router.

### Video Router

The video router to apply the preset to.

### Filter

Filter the list of presets shown in the list.

### Skip Confirm on Exact Match

Skip the prompt if the preset matches excatly the video router.


# Send Videohub Command

Sends a command to a Blackmagic Design Videohub.

### Command

The command to send.

### Video Router Type

The type of video router.

### Target

Choose to send the command to the currently focused video router or a selected video router.

### Videohub

A Blackmagic Design Videohub video router.

This action currently only supports Blackmagic Design Videohub video routers.


# Export Configuration

Exports the video router configuration for labels, routing, and locks.

### Export Type

The type of export to copy to the clipboard. Choose from LabelSet, Configuration Commands, or the complete set.

### Target

Choose to export from the currently focused video router or a selected on.

### Video Router

The video router to retrieve the export configuration from.

### Result

Copies the chosen export configuration to the clipboard.


# Change Lock Status

Change the lock status for an output.

### Lock Action

The lock action to perform: Lock, Unlock, or Force Unlock.

### Output

The output destnation to change the lock status for.

### Target

The currently focused video router or a selected one.

### Video Router

The video router to change the lock status for.


# Get Lock Status

Returns the lock status for an output.

### Output

The output destnation to change the lock status for.

### Target

The currently focused video router or a selected one.

### Video Router

The video router to change the lock status for.


# Get Port Metadata

Returns metadata for a given port.

### Port Type

The type of port to receive metadata from. Currently only Input and Output port types are supported.

### Input

The input source if the port type is set to Input. Leave blank to return all input sources.

### Output

The output destination if the port type is set to Output. Leave blank to return all output destinations.

### Target

Target the currently selected video router or the focused video router.

### Video Router

If the target is selected, the video router to query.


# Set Port Metadata

Sets metadata for a given port.

### Port Type

The type of port to receive metadata from. Currently only Input and Output port types are supported.

### Input

The input source if the port type is set to Input.

### Output

The output destination if the port type is set to Output.

### Label

The long name for the port.

### Short Label

The short name for the port.

### Icon

An SF Symbol representing the port.

### Icon Badge

A number from 0-50 or a letter from A-Z.

### Color (Hex)

The color value in hexadecimal for the port.

### Notes

Additional notes about the port.

### Is Hidden

Whether or not the port should be hidden.

### Target

Target the currently selected video router or the focused video router.

### Video Router

If the target is selected, the video router to query.


# Change Route

Routes a source to a destination for a video router.

### Input

The source input to set

### Output

The destination output to assign the source input to.

### Target

The currently focused video router or a selected one.

### Video Router

The video router to change the route


# Change Virtual Route

Routes a source to a destination for virtual output of the selected video router.

### Input

The source input to set

### Virtual Output

The virtual destination output to assign the source input to.

### Target

The currently focused video router or a selected one.

### Video Router

The video router to change the route


# Get Current Route

Returns the route(s) for a given port type on a video router.

### Port Type

The port to search. Only input and output are supported.

### Input

The input source

### Output

The output destination

### Target

Specify whether to search the currently focused video router or a selected video router.

### Video Router

The selected video router


# Control Simulator

Control a video router simulator

### Action

The action to run on the simulator. Start, Start and Connect, Stop, or Stop All Simulators.

### Simulator

The simulator to control.


# Control Video Router

Connect or disconnect video router

### Action

The action to send to the video router. Choose from Connect or Disconnect.

### Target

Choose to send the action to the currently selected video router or a designated one.

### Video Router

The video router to send the command to.


# Get Active Video Router

Returns the currently selected video router on the active RouteEffect window


# Import and Export

One of RouteEffect's best features is its ability to simulate a Videohub. This can be a replica of a real Videohub or an imaginary Videohub. What's great is that the simulated Videohub acts pretty much like a real one; you can change the routes, add icons, colors, and short labels to inputs and outputs, run shortcuts and presets against it, and more.

RouteEffect lets you import and export data from real and simulated Videohubs back and forth. This is useful if you use a simulator of a real Videohub. When you're done with your changes, you'll want to copy them back to the real Videohub.

{% hint style="danger" %}
Be careful though! With great power comes great responsibility. Making bulk changes to your Videohub installation may result in changed routes and renamed labels. Make sure you have a [stable backup](/import-and-export/backing-up-a-videohub) of your Videohub before making any changes using RouteEffect's import and export features.
{% endhint %}


# Backing up a Videohub

It is recommended that you have a backup of your Videohub's state before making any changes. To do so, perform the following functions on a computing device that supports the telnet networking command. Instructions below are for macOS:

1. Open the Terminal application, location in the Applications/Utilities folder on your Mac.
2. Identify the IP address and port number of your Videohub. You can find this information using the Videohub Setup application from Blackmagic Design (BMD). The port number for actual Videohub video routers from BMD will be 9990. Simulated Videohubs created by RouteEffect can run off of any port.
3. Enter `nc IP_ADDRESS PORT_NUMBER` in the Terminal application. If your Videohub's IP address is 10.0.1.19 and port 9990, you would enter: `nc 10.0.1.19 9990`.
4. Copy and paste the text that appears. This is called the Protocol Preamble.

### Protocol Preamble Sample

A complete sample preamble is shown below:

```
PROTOCOL PREAMBLE:
Version: 2.8

VIDEOHUB DEVICE:
Device present: true
Model name: Blackmagic Videohub 20x20 12G
Friendly name: Blackmagic Videohub 20x20 12G
Unique ID: XYZ
Video inputs: 20
Video processing units: 0
Video outputs: 20
Video monitoring outputs: 0
Serial ports: 0

NETWORK:
Interface Count: 1
Default Interface: 0

NETWORK INTERFACE 0:
Name: 1GbE
Priority: 1
MAC Address: 7c:2e:0d:a7:38:e8
Dynamic IP: true
Current Addresses: 10.0.1.220/255.255.255.0
Current Gateway: 10.0.1.1
Static Addresses: 10.0.0.7/255.255.255.0
Static Gateway: 10.0.0.1

INPUT LABELS:
0 Input 1
1 Input 2
2 Input 3
3 Input 4
4 Input 5
5 Input 6
6 Input 7
7 Input 8
8 Input 9
9 Input 10
10 Input 11
11 Input 12
12 Input 13
13 Input 14
14 Input 15
15 Input 16
16 Input 17
17 Input 18
18 Input 19
19 Input 20

OUTPUT LABELS:
0 Output 1
1 Output 2
2 Output 3
3 Output 4
4 Output 5
5 Output 6
6 Output 7
7 Output 8
8 Output 9
9 Output 10
10 Output 11
11 Output 12
12 Output 13
13 Output 14
14 Output 15
15 Output 16
16 Output 17
17 Output 18
18 Output 19
19 Output 20

VIDEO OUTPUT LOCKS:
0 U
1 U
2 U
3 U
4 U
5 U
6 U
7 U
8 U
9 U
10 U
11 U
12 U
13 U
14 U
15 U
16 U
17 U
18 U
19 U

VIDEO OUTPUT ROUTING:
0 0
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
10 10
11 11
12 12
13 13
14 14
15 15
16 16
17 17
18 18
19 19

CONFIGURATION:
Take Mode: false

TAKE MODE:
0 true
1 true
2 true
3 true
4 true
5 true
6 true
7 true
8 true
9 true
10 true
11 true
12 true
13 true
14 true
15 true
16 true
17 true
18 true
19 true

END PRELUDE:
```

### Commands

The portion of the preamble that constitutes the backup portion of your Videohub is located after the `Network:` and '`Network Interface:` sections and the `END PRELUDE:` line.

```
INPUT LABELS:
0 Input 1
1 Input 2
2 Input 3
3 Input 4
4 Input 5
5 Input 6
6 Input 7
7 Input 8
8 Input 9
9 Input 10
10 Input 11
11 Input 12
12 Input 13
13 Input 14
14 Input 15
15 Input 16
16 Input 17
17 Input 18
18 Input 19
19 Input 20

OUTPUT LABELS:
0 Output 1
1 Output 2
2 Output 3
3 Output 4
4 Output 5
5 Output 6
6 Output 7
7 Output 8
8 Output 9
9 Output 10
10 Output 11
11 Output 12
12 Output 13
13 Output 14
14 Output 15
15 Output 16
16 Output 17
17 Output 18
18 Output 19
19 Output 20

VIDEO OUTPUT LOCKS:
0 U
1 U
2 U
3 U
4 U
5 U
6 U
7 U
8 U
9 U
10 U
11 U
12 U
13 U
14 U
15 U
16 U
17 U
18 U
19 U

VIDEO OUTPUT ROUTING:
0 0
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
10 10
11 11
12 12
13 13
14 14
15 15
16 16
17 17
18 18
19 19

CONFIGURATION:
Take Mode: false

TAKE MODE:
0 true
1 true
2 true
3 true
4 true
5 true
6 true
7 true
8 true
9 true
10 true
11 true
12 true
13 true
14 true
15 true
16 true
17 true
18 true
19 true

```

You can change the data in this text to update labels and routes for your Videohub. These are in fact the sample commands that the Videohub Controller application for Mac and PC and RouteEffect call to control the Videohub. More information on available commands and how to use them can be found in the Videohub Manual PDF that came with your Videohub.

## Restoring a Videohub

To restore a Videohub, you first connect to it and issue it commands using the Ethernet Protocol.

1. Open the Terminal application on your Mac.
2. Enter `nc IP_ADDRESS PORT_NUMBER`  and hit Return. Again, if your Videohub's IP address is 10.0.1.19 and port 9990, you would enter: `nc 10.0.1.19 9990`.
3. After the Protocol Preamble has been sent, you can issue commands to the Videohub. Each command consists of a command block header, such as `INPUT LABELS:` followed by a series of lines containing the commands. When you are ready to send the command to the Videohub, press Enter twice.

For example, if I was connected to an ATEM Mini Pro and wanted to restore it to the state listed in the Protocol Preamble above, I would copy and paste the relevant command data into the Terminal application and hit Return/Enter.

```
INPUT LABELS:
0 Black
1 VideoHub
2 ATEM
3 5D Mark IV
4 iPad
5 Color Bars
6 Color 1
7 Color 2
8 Media Player 1
9 Media Player 1 Key
10 Multi View
11 Program
12 Preview
13 VideoHub Direct

OUTPUT LABELS:
0 Output
1 Webcam Out
2 Program
3 Preview

VIDEO OUTPUT ROUTING:
0 11
1 11
2 2
3 1

```

Here is a video of issuing three separate commands to the ATEM Mini to restore its input labels, output labels, and routing configuration.

<figure><img src="/files/UOCk6ydekZKKk3xh9Aki" alt=""><figcaption></figcaption></figure>


# Exporting Configuration

When RouteEffect is connected to a Videohub, go to the Landing Page to see commands to export the current configuration to the clipboard. There are three exports that you can retrieve:

* Configuration Commands
* Label Set
* Complete State

## Configuration Commands

These are the primary commands to send to a Videohub to set the router's labels, locks, and routing.&#x20;

## Label Set

This exports a file that contains the labels for the Videohub's inputs and outputs. This file is suitable for uploading back to the Videhub using the Videohub Setup application on your Mac or PC. Here is an example from an Blackmagic Design Videohub 20x20 12G.

```
Input, 1, Constellation PGM
Input, 2, iPad
Input, 3, iOS
Input, 4, MacBook Pro
Input, 5, Apple TV
Input, 6, Xbox
Input, 7, Decklink 1
Input, 8, Decklink 2
Input, 9, Decklink 3
Input, 10, Decklink 4
Input, 11, Mac Mini
Input, 12, Input 12
Input, 13, 5D Mark IV
Input, 14, Ultimatte PGM
Input, 15, HyperDeck 1 Monitor
Input, 16, HyperDeck 2 Monitor
Input, 17, Web Presenter 4K Monitor
Input, 18, Ultimatte Monitor
Input, 19, Multiview 1
Input, 20, Multiview 2
Output, 1, Output 01
Output, 2, Output 02
Output, 3, Output 03
Output, 4, Output 04
Output, 5, Output 05
Output, 6, Output 06
Output, 7, Output 07
Output, 8, Output 08
Output, 9, Output 09
Output, 10, Output 10
Output, 11, Output 11
Output, 12, Output 12
Output, 13, Output 13
Output, 14, Output 14
Output, 15, Output 15
Output, 16, Output 16
Output, 17, Output 17
Output, 18, Output 18
Output, 19, VideoHub Aux 1
Output, 20, VideoHub Aux 2

```

To import using Videohub Setup, click on the gear icon in the bottom-right and choose Load Label Set. Select the file to restore the label names to the inputs and outputs of the selected Videohub.

<figure><img src="/files/N4in1R0pWv3LlWmJ6cFi" alt=""><figcaption></figcaption></figure>

## Complete State

This reconstructs and returns the Protocol Preamble from your Videohub. You can use this text to create a simulated version of your Videohub by following these steps:

1. Connect to a Videohub
2. Go to the `Videohub Landing` page. You can do so by going to a section and hitting the back button
3. Tap `Complete State` from the `Export to Clipboard` section
4. Tap `+` in the RouteEffect sidebar
5. Choose `New Simulator`
6. Enter the name for your simulator
7. Change the port if necessary
8. Paste the text in the `Initial State` field
9. Tap `Add` to save the simulator

<figure><img src="/files/DYxnH3rgkuW1sGz0OTbs" alt=""><figcaption></figcaption></figure>

The simulated Videohub will be added to the Simulators list in the RouteEffect sidebar. You can now launch the simulator by tapping or clicking on the Launch Client button:

<figure><img src="/files/XHENVXU1n7aKrPCZOrB2" alt=""><figcaption></figcaption></figure>

Creating the simulator does not transfer over any of the extra metadata that RouteEffect layers on top of a Videohub. To transfer that to your simulated Videohub, proceed to the next section.


# Port Metadata

Port metadata is all that extra information that RouteEffect layers on top of your Videohub. This includes short labels, icons, badges, colors, and notes for your input sources and output destinations.

RouteEffect allows you to export your port metadata from simulated and real Videohubs and transfer them to other Videohub instances.

{% hint style="danger" %}
Replacing port metadata is an operation that cannot be undone. You'll want to backup your data before performing a restore so that if there's a problem, you can restore to a known, stable state.
{% endhint %}

## Exporting port metadata to the clipboard

To export the port metadata for a Videohub to the clipboard, follow these steps:

1. Navigate to the video router or simulator that you wish to export the port info metadata from
2. In the content section, scroll down to the `Port Metadata` section
3. Tap `Copy Port Metadata to Clipboard`

This will place a JSON file in your clipboard that has all the metadata for your inputs and outputs. A sample file looks like this for an ATEM Mini Pro:

```
{"colorChoiceRaw":"green","colorHex":"30D158","isHidden":false,"label":"Webcam Out","portIndex":1,"portTypeRaw":"output","shortLabel":"Web cam"}
{"colorChoiceRaw":"purple","colorHex":"BF5AF2","isHidden":false,"label":"Program","notes":"Red","portIndex":2,"portTypeRaw":"output","shortLabel":"PGM"}
{"colorChoiceRaw":"red","colorHex":"FF453A","icon":"rectangle.inset.filled","isHidden":false,"label":"Program","portIndex":11,"portTypeRaw":"input","shortLabel":"PGM"}
{"colorChoiceRaw":"red","colorHex":"FF453A","icon":"point.topright.filled.arrow.triangle.backward.to.point.bottomleft.scurvepath","isHidden":false,"label":"VideoHub Direct","portIndex":13,"portTypeRaw":"input","shortLabel":"DIRECT"}
{"colorChoiceRaw":"blue","colorHex":"0A84FF","isHidden":false,"label":"Output","portIndex":0,"portTypeRaw":"output","shortLabel":"OUT"}
{"colorChoiceRaw":"green","colorHex":"30D158","icon":"camera.fill","isHidden":false,"label":"5D Mark IV","portIndex":3,"portTypeRaw":"input","shortLabel":"5D4"}
{"colorChoiceRaw":"green","colorHex":"30D158","icon":"rectangle.inset.filled","isHidden":false,"label":"Preview","portIndex":12,"portTypeRaw":"input","shortLabel":"PRV"}
{"colorChoiceRaw":"purple","colorHex":"BF5AF2","icon":"rectangle.split.3x3.fill","isHidden":false,"label":"Multi View","portIndex":10,"portTypeRaw":"input","shortLabel":"MV"}
{"colorChoiceRaw":"purple","colorHex":"BF5AF2","icon":"mediastick","iconBadge":"2","isHidden":false,"label":"Media Player 1 Key","portIndex":9,"portTypeRaw":"input","shortLabel":"MP2"}
{"colorChoiceRaw":"orange","colorHex":"FF9F0A","icon":"mediastick","iconBadge":"1","isHidden":false,"label":"Media Player 1","portIndex":8,"portTypeRaw":"input","shortLabel":"MP1"}
{"colorChoiceRaw":"yellow","colorHex":"FFD60A","icon":"rectangle.fill","iconBadge":"2","isHidden":false,"label":"Color 2","portIndex":7,"portTypeRaw":"input","shortLabel":"COL2"}
{"colorChoiceRaw":"green","colorHex":"30D158","icon":"circle.fill","iconBadge":"1","isHidden":false,"label":"Color 1","portIndex":6,"portTypeRaw":"input","shortLabel":"COL1"}
{"colorChoiceRaw":"red","colorHex":"FF453A","icon":"barcode","isHidden":false,"label":"Color Bars","portIndex":5,"portTypeRaw":"input","shortLabel":"BARS"}
{"colorChoiceRaw":"blue","colorHex":"0A84FF","icon":"ipad.homebutton","isHidden":false,"label":"iPad","portIndex":4,"portTypeRaw":"input","shortLabel":"iPad"}
{"colorChoiceRaw":"red","colorHex":"FF453A","icon":"keyboard.fill","isHidden":false,"label":"ATEM","portIndex":2,"portTypeRaw":"input","shortLabel":"ATEM"}
{"colorChoiceRaw":"custom","colorHex":"00FFFF","icon":"server.rack","isHidden":false,"label":"VideoHub","portIndex":1,"portTypeRaw":"input","shortLabel":"VHUB"}
{"colorChoiceRaw":"custom","colorHex":"BF5AF2","icon":"rectangle.fill","isHidden":true,"label":"Black","portIndex":0,"portTypeRaw":"input","shortLabel":"BLK"}
{"colorChoiceRaw":"purple","colorHex":"BF5AF2","isHidden":false,"label":"Preview","portIndex":3,"portTypeRaw":"output","shortLabel":"PRV"}
{"isHidden":false,"label":"Output 20","portIndex":19,"portTypeRaw":"output"}
{"isHidden":false,"portIndex":-1,"portTypeRaw":"input"}
{"isHidden":false,"label":"Output 19","portIndex":18,"portTypeRaw":"output"}
{"isHidden":false,"label":"Output 18","portIndex":17,"portTypeRaw":"output"}
{"isHidden":false,"label":"Output 17","portIndex":16,"portTypeRaw":"output"}
{"isHidden":false,"label":"Output 16","portIndex":15,"portTypeRaw":"output"}
{"isHidden":false,"label":"Output 15","portIndex":14,"portTypeRaw":"output"}
{"isHidden":false,"label":"Output 14","portIndex":13,"portTypeRaw":"output"}
{"isHidden":false,"label":"Output 13","portIndex":12,"portTypeRaw":"output"}
{"isHidden":false,"label":"Output 12","portIndex":11,"portTypeRaw":"output"}
{"isHidden":false,"label":"Output 11","portIndex":10,"portTypeRaw":"output"}
{"isHidden":false,"label":"Output 10","portIndex":9,"portTypeRaw":"output"}
{"isHidden":false,"label":"Output 9","portIndex":8,"portTypeRaw":"output"}
{"isHidden":false,"label":"Output 8","portIndex":7,"portTypeRaw":"output"}
{"isHidden":false,"label":"Output 7","portIndex":6,"portTypeRaw":"output"}
{"isHidden":false,"label":"Output 6","portIndex":5,"portTypeRaw":"output"}
{"isHidden":false,"label":"Output 5","portIndex":4,"portTypeRaw":"output"}
```

<figure><img src="/files/hnoZZNMabbwMCk5kCTTU" alt=""><figcaption></figcaption></figure>

## Importing port metadata

To import port metadata from one Videohub to another, perform the following:

1. Navigate to the video router or simulator that you want to import the port metadata to
2. In the content section, scroll down to the `Port Metadata` section
3. Tap `Import Port Metadata…`
4. In the sheet that appears, paste the port metadata text blog into the text editing field
5. Tap `Import`
6. Confirm your action to import the metadata. Note that this is an undoable operation

Now the simulated ATEM Mini Pro's inputs and outputs match the physical ATEM Mini Pro's look and feel in RouteEffect. Here are before and after shots:

<div><figure><img src="/files/Wfq9Uk31t3Wh6a6pnXVH" alt=""><figcaption><p>Before port metadata import</p></figcaption></figure> <figure><img src="/files/DaZ1rT6bjR7697romyQ6" alt=""><figcaption><p>After port metadata import</p></figcaption></figure></div>


# Settings

Tap the gear icon in the upper-left of RouteEffect or press command-comma to open the settings sheet. Here is a description of what you can change and configure in the app.

## General

### Remember Last Router

When enabled, RouteEffect will automatically open to the last video router you used when you relaunch the app. Handy if you’re mostly using the same device every time. You will still need to tap Connect to connect to the video router.

### Go to Routing on Connect

Skips the dashboard and takes you straight to the routing view when a router connects. RouteEffect remembers the last page you were on and will take you there (i.e. Button, Split, List, Wheel, Crosspoint, or Virtual Output).

### Quick Connect Action

In the RouteEffect sidebar, you can tap on the icon next to a video router or simulator icon to perform a particular action.

* **Nothing**: Tapping on the icon performs no additional action beyond selecting the video router.
* **Connect**: Connects to the video router or simulator but does not open to the content or detail page.
* **Connect and Open**: Connects to the video router or simulator and opens to the content or detail page. If you have the Go to Routing on Connect preference set, tapping on a video router icon will go to the Manage Routings section.

### Use Take

When enabled, you must perform an additional step to change a source. When you tap on a source, it will be marked as the Take, and a colored border will appear around the button. To commit your change, tap the blue checkmark in the view that appears.

### Double Tap to Select

Enabling this will require you to double-click or double-tap on an input or output in the Buttons, Split, Crosspoint pages. This is useful to prevent accidental switches.

***

## Automation

### Enable Shortcuts

Allows you to control RouteEffect using Apple’s Shortcuts app. You can automate routing actions, presets, and more. Learn more about Shortcuts support in RouteEffect here.

### Enable OSC

Allows the OSC server to be launched when the application starts up.

### OSC Port

Enter the port number for the OSC Server in RouteEffect to listen on. Choose a number between `1024-65535`. The default is `49991` for RouteEffect (Subscription) and `49992` for RouteEffect Pro (Paid).

{% hint style="warning" %}
Shortcuts and OSC are features that requires an active subscription on RouteEffect or the paid up-front RouteEffect Pro.
{% endhint %}

***

## Appearance

### Default View Settings

These settings are copied over to each video router when they are initially created. By storing the settings on a video router basis you can be assured that the use of these video routers remains consistent.

* **Manage View Style**: The page style to return to when launching the client for the first time.
* **Use Column Layout**: Changes the orientation of the sources and destination panes in the Buttons and Split view styles.
* **Show Sources First**: Prioritizes showing your list of sources first in the interface.&#x20;
* **Show Details**: Displays additional details on the Split view style page, Input Labels, and Output Labels pages.&#x20;

### System Haptics

Plays haptic feedback based on what view is being displayed and/or interacted with.

### Hide Unlocked Label

Hide the icon for unlocked status in the interface unless necessary. This helps to remove the visual clutter in the interface.

### Cycle View Styles

Disable this setting to prevent the the Next and Previous View Style keyboard shortcuts from cycling through the beginning and end of the view style list.

### Selected Button Color

Customize the highlight color for selected sources and destinations. Makes it easier to match your setup or improve visibility.

### Color Scheme

Choose between Light, Dark, or System Default. Tailor the look of RouteEffect to your personal or studio lighting preferences.

***

## Security

### Disable Auto-Lock

Turns off the auto-sleep feature on the device. For iPhone and iPad, this means the app not turn off due to inactivity.

***

## Informational

In addition to user preferences, RouteEffect has a number of informational links/

* **Documentation**: The website you are reading now. Learn all about RouteEffect and how it can help superchange your work schedule.
* **Feedback**: Send an email. Please provide as much information possble to have a product troubleshooting you.
* **Website**: A link to the wipemyclient.com website.
* **Rate**: Rate RouteEffect on the App Store.
* **About**: About MixEffect. This contains the build number and build striing.
* **Licenses**: The 3rd party libraries
* **Verion History**: See a changelof of events.
* **Privacy Policy**: Opens a web browser to the privacy policy page for RouteEffect.
* **EULA**: Opens a web browser to the End User License Agreement page for RouteEffect.

## Reset App Settings

Reset app settings in RouteEffect to their defaults. This will cause the Welcome screen to appear.


# Support

Having problems with the app? Use the Feedback link in RouteEffect to send a support ticket:

1. Open RouteEffect
2. Tap the gear icon in the upper-left
3. Scroll down and tap Feedback
4. Enter your support inquiry. Please provide as much information as necessary to help troubleshoot your problem

<figure><img src="/files/f5OjygCHYl5CbNs3WLYR" alt=""><figcaption><p>Tap Feedback to send an email to the RouteEffect developer</p></figcaption></figure>

You may also email the RouteEffect team at <RouteEffect@tow.com>.


# Frequently Asked Questions

<details>

<summary>When I try to launch a simulator, it says “port address in use.” What should I do?</summary>

When RouteEffect creates a simulated video router, it needs to bind to a specific port on your device. Only one application can use a given port at a time. If you see this error, it usually means a simulator is already running on that port.

To resolve this:

1. Open the Dashboard in RouteEffect.
2. Tap Stop All Simulators to shut down any active simulators.
3. If the issue persists, force quit RouteEffect and relaunch the app.

This should free up the port so you can start the simulator again.

Note: The Blackmagic Design Videohub Controller app for macOS also makes use of this port. So, when creating your Simulator entries, you may want to choose a port other than 9990.

</details>

<details>

<summary>What features can I use if I don’t subscribe to RouteEffect?</summary>

You’ll still be able to create Video Router entries and simulators, but only the first one in each list will actually run. You can use the Button and Wheel Picker views to route sources to destinations.

The more advanced stuff—like Split View, List View, Crosspoint Matrix, and Virtual Outputs—requires a license. Same goes for Multiview, Presets, and automating with Shortcuts.

It’s a great way to try things out before unlocking the full power of the app.

</details>

<details>

<summary>Is there a lifetime version of RouteEffect? I only see subscription options.</summary>

Yep! A lifetime version is available as a separate app called RouteEffect Pro on the App Store. It’s a one-time purchase, with no subscription required.

The regular RouteEffect app (the free download) only supports subscriptions. RouteEffect Pro is designed for people who prefer to pay once, or whose devices are managed by an organization that blocks In-App Purchases.

The lifetime price reflects the ongoing development and maintenance of the app, so you’ll keep getting updates and new features. It will also be enabled for Family Sharing.

</details>


# Privacy and EULA

## Privacy Policy

Your privacy is important. The RouteEffect app does not collect any personally identifiable information or location data.

***

## End User License Agreement <a href="#end-user-license-agreement" id="end-user-license-agreement"></a>

The RouteEffect End User License Agreement (EULA) is supplementary to Apple's Standard End User License Agreement, which can be reviewed here: <https://www.apple.com/legal/internet-services/itunes/dev/stdeula/>.

### Refund policy <a href="#refund-policy" id="refund-policy"></a>

Refunds to purchases made via the App Store are handled by Apple. Please refer to the following [link](https://support.apple.com/en-us/118223) for more information.

### Disclaimer of Warranties <a href="#disclaimer-of-warranties" id="disclaimer-of-warranties"></a>

By using this app, you agree to release, indemnify, and hold harmless the developer from any claims, damages, losses, liabilities, and all costs and expenses of defense, including but not limited to, attorneys' fees, resulting directly or indirectly from a claim by a third party that arises in connection with your use of this app.

***

### Changes to This Policy

We reserve the right to modify this privacy policy at any time, so please review it frequently.

* April 5, 2025: First published.


# Version History

<details>

<summary>Version 1.1.1 - October 6, 2025</summary>

## Bug Fixes

* Disconnect OSC message now disconnects from specified video router.

</details>

<details>

<summary>Version 1.1.0 - September 16, 2025</summary>

## New Features

* Added support for iOS 26 and iPadOS 26.
* Refreshed application icons.
* Introduced an OSC server to control RouteEffect remotely from software and hardware such as Bitfocus Companion and Elgato Stream Deck.
* New Auto-Connect on Launch option to automatically connect to selected routers when RouteEffect launches or when a new window open
* Option to hide icons and labels in the Buttons view style for a cleaner layout.
* Keyboard shortcuts now appear in the menu on iPadOS 26.

## Improvements

* Enhanced search experience in Video Output Routing pages.
* Inspector in Video Output Routing pages has been redesigned as a menu for better reliability.
* Toolbar buttons are now more consistent across iOS and iPadOS.
* Multiple UI refinements for improved usability.

## Bug Fixes

* Removed the color scheme preference to avoid conflicts with toolbars in new operating systems.
* Lock icons now display correctly based on the video router state.
* Presets view no longer clips below the toolbar.
* Buttons in the Split view style now maintain consistent spacing.
* Divider position correctly updates if it moves off-screen in Buttons and Split view styles.
* Additional stability and performance fixes.

</details>

<details>

<summary>Version 1.0.0 - April 17, 2025</summary>

* Initial release

</details>


# RouteEffect Pro

RouteEffect Pro is the one-time purchase version of RouteEffect, offering lifetime access with no subscriptions, no recurring fees, and full feature unlock across iPhone, iPad, and Mac. It’s ideal for professionals and studios who prefer to own their tools outright and deploy them freely via Family Sharing or MDM.

<figure><img src="/files/b1mOI9q18JWiYNNRD9IH" alt="" width="375"><figcaption></figcaption></figure>

## Which version should you choose?

* Choose [RouteEffect](/welcome-to-routeeffect/which-version-is-right-for-you) if you prefer to start with a free trial and pay monthly or annually. [App Store Link](https://apps.apple.com/us/app/routeeffect-video-router/id6743954602).
* Choose **RouteEffect Pro** if you want to buy once and own it forever — ideal for production studios, AV professionals, and integrators who need a long-term, stable solution. [App Store link](https://apps.apple.com/us/app/routeeffect-pro-video-router/id6744062991).

## Technical Notes

* Both versions support Blackmagic Design Videohub 12G routers, from the compact Mini 4x2 to the massive 120x120.
* Both versions include real-time routing, presets, lock support, virtual outputs, multiple view modes, and iCloud syncing.
* RouteEffect Pro supports Apple Business Manager (ABM) and Apple School Manager (ASM) for MDM-based deployments.


