Guide for conducting Showtime events

General Information

What is Touchcast Director

Touchcast Director is a macOS application for conducting virtual events in combination with Touchcast Fabric Showtime. It gets video and audio from communication applications, arrange this content on virtual scenes and stream them to Fabric Showtime or to Touchcast Virtual Camera and record this content locally.

Terms

We use following terms:

  • “speakers” (participants of a show, currently Zoom meeting participants only)

  • “cameras of speakers”

  • “shared screens of speakers”

  • “scenes” - their arrangement is prepared (see Prepare mode) and saved in a project

  • “placeholders on scenes” - areas on scenes to show either cameras of speakers or shared screens of speakers.

System Requirements

Devices with Intel Processor

MacBook Pro 2020 or later
CPU: Intel Core i9
RAM: 32 GB
OS: macOS Big Sur (11.0)
Discrete graphics card

Devices with Apple Silicon

MacBook Pro (13-inch, M1, 2020) or later, 16GB preferred

Other requirements

  • Stable internet connection with 10+ Mbps uplink

  • Storage: 20GB and more. Local storage is used for the project files (.tcp), their size depends on assets quality and quantity, and for local recordings, size depends on resolution and duration.

  • Installation of third party virtual audio driver Blackhole, see below

  • Permissions to record screen, access to microphone and camera

Make sure you are using the charger that comes with your MacBook Pro, the proper one is 96W.
Chargers from older devices provide less power and MacBook may not charge during high CPU load and battery may deplete during usage of Touchcast Director

First Time Preparations

This section lists actions that should be performed only once to prepare a dedicated streaming device for virtual events.

Installing Touchcast Director application

Touchcast Director can be obtained from https://appcenter.ms/orgs/touchcast/apps/Director-macOS
Always use the latest stable build.

Installing BlackHole

Touchcast Director requires installation of BlackHole Virtual Audio Driver (available here) to capture audio from Zoom calls and also to capture native audio from videos like “Coming soon…“ or “Onto“ on scenes.

Users have to download and install BlackHole driver by themselves.

Touchcast Director will check if BlackHole is installed every time when Touchcast Director joins a Zoom call and displays a message if necessary, asking user to install it.
To install BlackHole, proceed to the BlackHole official site, enter your email and name, click “Subscribe for Free Mac Download” and you will receive an email with a link in form http://existential.audio/blackhole/download/?code=XXXXXXXXXX. Open this link and on the page that opens click “BlackHole 16ch vX.XX” button to download the installer. Install it.

To confirm that BlackHole is installed:

  1. Open Audio Midi Setup
    Use Spotlight command+space and type Audio Midi Setup. Click on the Audio Midi Setup app to open.

  2. Open Audio Devices Window
    If the Audio Devices window does not immediately appear when opening Audio MIDI Setup select Audio Devices from the Windows drop down menu in Audio MIDI Setup.

  3. Check if BlackHole is installed
    The list on the left should contain BlackHole 16ch icon. The icon image may be different.

 

Uninstalling BlackHole
It’s easier to just update BlackHole driver by installing an updated version but if needed download the uninstaller from here or follow this guide.

Checking permissions

Screen Recording

Touchcast Director requires permission to record screen in order to capture and stream video from Zoom calls. Touchcast Director will check if recording permissions are granted every time when an attempt to connect to Zoom call is performed. The first time user clicks “Zoom” button Touchcast Director will display a dialog similar to this:

Click Open System Preferences, then open Security & Privacy , click Privacy tab and scroll the left list to find Screen Recording. Select Touchcast Director.app on the right and set the checkmark if it is not set.

 

 

At this moment macOS will recommend user to restart Touchcast Director application, answer Later because restarting is not required in our case.

 

To avoid confusion and delays during actual events please run Touchcast Director with some test project and connect to any Zoom meeting at least once before real events. This will help getting the required permissions in advance and save time later.

Camera Access

Touchcast Director requires to access the camera. The first time when Touchcast Director opens a project it asks user for permissions to access the camera, please make sure to grant the access.

For most cases local camera of a director is not used during events, but camera light is still on.

Microphone Access

Touchcast Director requires to access the microphone. The first time when Touchcast Director opens a project it asks user for permissions to access the microphone, please make sure to grant the access.

Entering Fabric Streaming Pipeline

The first time user presses Stream button Touchcast Director will ask to enter the URL and the key of the service’s pipeline to stream to. Another way to invoke this dialog is to press the gear button in the bottom right corner and add + in the list of pipelines in ‘Outputs' section of the app’s preferences.

Service name is a convenient way to refer to the service, for example “Fabric Downhill” or “Fabric Pipeline Track 3” etc.
Stream URL and a key are RTMP parameters, currently they can be obtained from technical staff.

Check streaming parameters

It is recommended to use 1080p resolution when show assumes presenting shared screens.

For non-top devices it is recommended to use 720p resolution.

Make sure frame rate is 25fps when streaming to Fabric!

If you have stable uplink, it is recommended to switch off adaptive bitrate option.

Make sure max bitrate is below your uplink!

Conducting Events

General description

Touchcast Director uses .TCP project files that contain virtual scenes for events, it connects to calls in communication software (Zoom), captures audio and video and arranges speakers from those calls according to the project file.
A director switches between scenes if necessary according to event scenario and current speakers and shared content, also they start and stop streaming, local recording or do other additional actions when required.

 

Note about audio devices

In general, wireless or USB headphones are supported but as with other hot-plug devices, be extra careful with them. When using Director in Show mode you should not connect or disconnect devices, and “smart” bluetooth devices may disconnect because of their “smart” logic, to handle an incoming phone call and so on.

  • Connect your headphones and set the preferred volume level while still in Prepare mode.
    You can select a specific audio device if you’re using it as an output, for example an external audio mixer + custom audio route

  • In Show mode it’s not possible to switch to or from headphones or change their volume level.
    Touchcast Director will create a temporary virtual audio device called “Touchcast Audio” and will set it as your output device, it is needed for normal operations.

  • Don’t disconnect your headphones when in Show mode.
    AirPods or other bluetooth headphones should work but make sure they stay connected during the whole live session.
    You will stop hearing audio If “smart” headphones disconnect because of their battery or if they connect to your other device, such as your phone if a call is received.
    It’s safer to put your devices in Don’t Disturb mode or make sure you won’t have to deal with random switching of AirPods.

  • If bluetooth (“smart”) headphones were disconnected during a live session you have to exit Show mode, configure your headphones and enter Show again
    It’s almost impossible to restore sound when “smart” headphones disconnect even after the reconnection. Wired headphones except USB may continue working.

  • If Touchcast Director leaves a “Touchcast Audio” device alive you can delete it manually or ignore it until next time
    After exiting Show mode Touchcast Director will delete the “Touchcast Audio” virtual device, but in rare cases when Director crashes or is forced to quit the virtual device “Touchcast Audio” may stay in the system. You may ignore it and just select your regular audio devices for your daily work
    Another option is to delete “Touchcast Audio” manually:

    • Open Audio Midi Setup
      Use Spotlight command+space and type Audio Midi Setup. Click on the Audio Midi Setup app to open.

    • Open Audio Devices Window
      If the Audio Devices window does not immediately appear when opening Audio MIDI Setup select Audio Devices from the Windows drop down menu in Audio MIDI Setup.

    • Find “Touchcast Audio” device in the list on the left

    • Delete “Touchcast Audio” device
      After selecting it press “—” button in the bottom left corner

  • Next time in Show mode Touchcast Director will create another virtual device if needed.

Some Technical background:
In order to be able to capture audio from Zoom calls and from local sources like video vapps Touchcast Director uses a combination of BlackHole Virtual Audio Driver (installed separately, one-time action) and a temporary virtual audio device Touchcast Audio. Previously users of Touchcast Director had to create a Multi-Output Device manually but since version 1.39 this step is automated. Still there are some specifics that users should know in advance before working with Touchcast Director.

  • When Touchcast Director enters Show mode it remembers what audio device is currently set as an output (your headphones? your external gear?).

  • It creates “Touchcast Audio” virtual audio device, configures it in such way that your previous audio device remains selected. In other words if you were using your AirPods in Prepare mode you will continue using it in Edit

  • It sets “Touchcast Audio” as your system sound output. Don’t change it, don’t allow your system to update this device. For example if you disconnect and connect your headphones the macOS will override Touchcast Audio and your recording/streaming session will become broken.

  • Because of system specifics you can’t adjust audio level when this virtual device is selected. It means that if you were using Built In Speakers set to loud volume and you switch to Show and start streaming you won’t be able to make it less loud.

  • “Touchcast Audio” device is deleted by Touchcast Director after exiting Show mode. Next time it will be created again.

  • If for some reason “Touchcast Audio” was not removed either ignore it or delete it by following the guide above

Concept of placeholders

Touchcast Director captures users and shared screen from Zoom calls, but speakers speak and share their screens in turns. To simplify handling this a concept of placeholders was implemented. A placeholder is a template element that, when connected to Zoom call, will display a speaker or a shared content, based on simple rules. The rules for placeholders can be described as follows

  1. There is a list of all users and a shared screen (for now, only one shared screen is supported).

  2. Each scene can contain placeholders for cameras of speakers and for shared screen of speakers.

  3. By default, users are sorted by their “active speaker” activity. The most recent active speaker is on top. In general it means that whoever is speaking now is the first, the previous active speaker is the second and so on.

  4. This list of speakers is reordered every time when active speaker changes in Zoom.

  5. When Touchcast Director displays a scene it fills the placeholders with the top N of the list, so if a scene contains only one placeholder for speaker’s camera it will display an active speaker. Only placeholders of the current scene are counted.

  6. When list is updated the placeholders are updated accordingly, so when there is a new active speaker it will be automatically displayed in a placeholder for speaker’s camera.

This approach greatly simplifies the control of the events. In the simplest scenario it is enough to have just one scene with desired number of placeholders and users will be displayed according to their activity. Switching scenes just allows to add more professional look and feel, to simulate a control room and cameras during TV shows.

Steps for streaming

Open a project

Open a .TCP project, prepared for current event by opening Touchcast Director and clicking Open Project on the home screen.
If the app crashed during previous run it may start with previous project restored. Close it without saving changes, if asked and open your actual project.

Check that microphone is set to BlackHole

 

Selection of BlackHole mic in Prepare mode is necessary to capture, record or stream audio from Zoom.

Join a Zoom call

Open Show mode and click Zoom button in the top toolbar and in the popup window that appears enter the invite URL for your Zoom call. This URL looks like:
https://touchcast.zoom.us/j/XXXXXXXXXXX?pwd=YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY

 

Username field represents how Touchcast Director will appear in Zoom call, so it is recommended to don’t change this name to avoid confusing Zoom guests.

Start streaming

Before starting a stream, make sure your current uplink exceeds max bitrate specified in the app’s Preferences.

To check the streaming destination click the gear icon in the bottom right corner and make sure that proper destination is selected in a “Stream to service” dropdown and other parameters such as resolution and others are set correctly.

Press Stream button in the top bar to start or stop streaming to the selected streaming destination.

When streaming starts video elements of current scene start playing automatically, if configured. The timer in status bar will track duration of your current stream. If destination is unreachable or any other error occurs the app will display an error. If FPS drops from the desired FPS (see Streaming settings, a gear icon) an explanation mark appears as a signal that it is recommended to check your internet connection, CPU load and your streaming destination server health.

Streaming can be paused and continued during the event if needed.

Controlling an event

During an event director can track the conversation happening in Zoom and switch the scenes according to the situation.

Consider scenes as predefined camera angles during a TV show. By changing scenes you switch between camera angles, zooming and focusing on a speaker or a group of speakers, on a shared content or just switching a virtual background for speakers.

It is recommended to open the Speakers Monitor by pressing Speakers button to see whether screen is shared, track users and so on.

For example, when there is only one speaker talking during the intro section of an event it may make sense to switch to a scene with only one Speaker Placeholder, but when there is a group of people talking to each other it may make sense to switch to a different scene with a group shot.

Director’s actions

 

During an event director also can perform following actions.

Use “On Air“

There is a “On Air“ button on toolbar in Show mode.

When “On Air“ is OFF, any sound from Zoom isn’t translated to outputs.

Director can hear speakers & producer but viewers will not hear them.

Also director can show “Coming soon“ or “Intro“ scenes, and audio from scenes will be heard by audience as usually.

Switch “On Air“ ON only when this is necessary.

Talk to speakers

There is a “Talk“ button on toolbar in Show mode.

Push it (or press and hold Space on keyboard) to talk to speakers.

Of course, viewers will not hear you.

Chat with speakers

There is a ‘Chat' tab on 'Speakers’ panel in Show mode.

Director can post messages to everyone or to certain Zoom participant, and also see replies.

Keep a speaker on backstage

Every speaker of Monitor can be thrown to backstage.

Being on backstage, speaker will never be shown on scenes.

To do that, click onto ‘keyhole' button appeared when cursor is over speaker’s camera in Monitor, or via “Tune a speaker“ window which appears after clicking onto speaker’s camera in Monitor.

To return from backstage, unset ‘keyhole' (to get ‘Auto’ mode of appearance) or click 'star’ button (see below).

Keep a speaker on scenes

Every speaker of Monitor can became “a star“ of the show.

It will be shown if there is at least one placeholder free of other “stars“.

To do that, click onto ‘star' button appeared when cursor is over speaker’s camera in Monitor, or via “Tune a speaker“ window.

To return from scenes, unset ‘star' (to get ‘Auto’ mode of appearance) or click 'keyhole’ button (see above).

Mute a speaker or ask to unmute

When director is host or co-host, it is possible to mute certain speaker or ask a speaker to unmute.

To do that, click onto ‘mute' button appeared when cursor is over speaker’s camera in Monitor.

When director is not host or co-host, messages “Please mute yourself“ or “Please unmute yourself“ will be sent to that user.

Adjust auto green screen for a speaker

Defaults for auto green screen are in the app preferences.

These defaults are applied for all the next Zoom participants, not to already joined ones.

To adjust this for certain speaker, make right mouse click on speaker’s camera in Monitor to open “Tune a speaker“ window.

All your adjustments are applied immediately.

Hide non-presentable speakers

Non-presentable speakers are participants having their cameras OFF.

You can prevent their appearance on scenes, switching related option in the app preferences, on 'Shows' tab.

Control appearance of titles for speakers

Each placeholder of speaker’s camera can represent a title & subtitle.

To enable this, just set “Show title“ option for chosen placeholder in Prepare mode, on ‘Content' tab of ‘Format’ panel.

After this, “Speaker’s title“ and “Speaker’s subtitle“ will appear on chosen placeholder.

To control appearance of these titles, there are 3 options in the app preferences on 'Shows' tab:

  • “Show when allowed“ - when OFF, all the titles will not appear.

  • “Hide after 5, 10, 20, 30 secs or 1 min“ - when ON, all the titles of the current scene will disappear after time specified.

  • “Show only once“ - when ON, titles will not be shown again and again when switching between scenes during recording or streaming. So they’ll gone after their 1st hiding.

Adjust title & subtitle for a speaker

After joining to the Zoom meeting, speaker’s title is automatically set to the Zoom name of speaker and speaker’s subtitle is empty.

Make right mouse click on any speaker in Monitor.

On 'Tune a speaker' window appeared, edit a title and specify some subtitle if necessary.

It is recommended to do such presetting before going live and while keeping speaker being tuned on backstage.

Notice that very long title / subtitle will not be shown, to avoid appearance of truncated text at the show.

Reorder speakers manually

By default, queue of speakers in Monitor is automatically ordered in following way: current active Zoom speaker is at the top of queue, former active Zoom speaker is below, and so on.

If you need to ignore this automatic ordering, just switch off “Order automatically“ below ‘Media' tab of 'Speakers’ panel.

After this, you will be able to rearrange speakers in queue and even swap them using drag’n’drop.

Notice that “Keep on scenes“ and “Keep on backstage“ became disable at manual reordering.

Use this mode e.g. to set speaker at the podium and speakers at the table on scenes like “Accenture Speakers“.

Enter Zoom breakout room

TC Director bot can be invited to any Zoom breakout room by host (producer of event) and then assigned from one room to another, if necessary.

Only participants of the same room appear in Director's speakers monitor and take part in event.

Zoom scenes in / out near point of interest and simulate camera movements on a scene

By default, each scene is shown to viewers (via local recording | streaming | virtual camera) entirely.

Additionally, it is possible to present certain part of each scene.

This allows director to focus viewers on some point of interest and also simulate camera movements.

To do this:

  1. Being in Show mode, click “Move Camera“ on toolbar

  2. Move cursor on a scene and click to specify point of interest

  3. Choose desired zoom level (x1.0 means entire scene whereas x2.0 means 1/4 of scene)

  4. Specify desired speed to reach chosen area (either ‘Instant' or animating ‘Fast', ‘Normal’, ‘Slow’ or 'Very Slow’)

  5. Click “Apply“

You can repeat this as many times as you want.

Director always sees entire scene whereas viewers see only output area (i.e. everything within red rectangle on a scene) specified by director.

All changes of output areas aren’t saved in TCP so you’ll always have zoom x1.0 by default for all the scenes after reopening a project.

Completing an event

When event is complete or when told by people conducting the event, disconnect from Zoom by clicking Zoom button and confirming in the dialog that appears. In some cases if Zoom call organisers stop the Zoom call you will be disconnected automatically.

After disconnecting from Zoom stop your streaming. Don’t save changes in project, unless confident in your actions.

Actions above can be done in different order, i.e. it is allowed to stop streaming first and then disconnect from a Zoom call.

Optional steps

Recording and exporting

Touchcast Director allows recoding of the content locally, simultaneously with streaming or independently. To start or stop recording click the “Record” button in the top panel. The recording timer displays the current duration of the recording and whether the content is being recorded.

After recording is complete stop it and proceed to “Edit” mode. The recording and streaming will be paused at this moment.

On the edit screen user can edit and export the recording.

To export either original MP4 recording or a composition, just click “Export“ in Edit mode.

Virtual Camera

Pressing Virtual Camera starts streaming the content to Touchcast (former Pitch) Virtual Camera. It is a separate installer and has to be set up separately, this guide does not cover using this feature.

Background SFX

If event requires playing a background audio track play it in any available audio player and its audio will be captured automatically.
For example, open the audio in Quick Time Player, adjust the volume, loop it if needed (Quick Time Player > View > Loop)

Important recommendations

  • General recomendations:

    • Touchcast Director requires lots of system resources so make sure you are only running applications, required for your current streaming experience.

    • Avoid running additional (standalone) Zoom clients on the same machine unless confident in your actions.

    • To follow the flow of Zoom call and be able to change scenes with proper timing keep listening to Zoom conversation, pay attention to number of active speakers to know when to switch scenes. Keep “Speakers” panel open to see when Zoom guests share their screen - it may be necessary to switch to a different scene more suited to shared content, with different layout, more room for speakers, etc. Treat switching between scenes as changing camera angles in the control room for a realtime TV show.

  • Display recommendations:

    • Do not change configuration of displays during an active event: do not connect or disconnect monitors, do not change resolution, do not switch between virtual desktops.

    • Do not make any windows in fullscreen mode.

    • Ideally keep a dedicated display for Touchcast Director and if you need to run additional applications run them on additional display, but make sure you test this configuration before actual events.

  • Audio recommendations:

    • All sounds in system are captured so disable your notifications, close all the apps that may play sound, start calling during events etc. Ideally enter Do Not Disturb mode before events and do not exit this mode until the event is finished and recording is stopped, if it was being recorded locally. One of the shortcuts to enter Do Not Disturb mode is to do an Option-click on the system clock on the top right corner of the screen. A half-moon indicator appears in System Menu when Do Not Disturb mode is active.

    • It is optional but recommended step to disable system sounds and volume change confirmations, to do this open System Preferences, click Sound, select Sound Effects tab and uncheck “Play user interface sound effects” and “Play feedback when volume is changed”.

  • Touchcast Director usage recommendations:

    • Do not open .TCP files in any other applications during an event.

    • Do not modify the current .TCP project, especially during events, and if modified accidentally do not save changes if asked or explicitly.

    • Use .TCP files as provided, if for some reason you need to modify the project, for example to change resolution, do it and save only before events.

    • Do not move or delete any elements or reorder scenes without need. Always keep a backup copy of the original .TCP if you do want to modify anything.

    • Do not click the microphone button in the bottom left corner of the app’s Show mode. This button disables audio input in Touchcast Director, but because during events audio input is Zoom and not microphone, clicking this button will mute the Zoom audio.