{% extends "base.html" %}
{% load static static_v %}
{% block title %}ATEM Control Panel{% endblock %}
{% block extra_css %}
{% endblock %}
{% block content %}
{% comment %} The switcher went quiet mid-session (#38): the page keeps its last
state under this scrim and notice, inert, until the server says the switcher
is back. The scrim covers the page's own scroller (the this page sits
in), not the window: whatever the host puts above it, its navigation, stays
usable, so the operator can just go to another page. The box is measured, not
assumed, since hosts differ in what sits above ; with no it is the
window. The notice is centred in it. Both sit outside the wrapper, which goes
inert, and above every overlay of this page; the scrim dims the page without
filtering it. :style is an object, never a string: a string would rewrite the
style attribute and undo x-show. {% endcomment %}
{% comment %} Solid raised surface, strong border: a notice, not a state. No
alert colour: --in is the link coral, which reads as PROGRAM here. {% endcomment %}
The switcher isn't responding. Reconnecting…
Controls are paused until it's back.
{% comment %} Its own row on a phone, where it ran off the banner. {% endcomment %}
Loading ATEM Control
Initializing connection and loading controls...
{% include 'control/_header.html' %}
{% comment %} flex-wrap: each M/E button is min-w-20, so a 4-M/E
switcher ran the row off a phone screen and M/E 4 could not be
reached at all. It wraps to a second line instead. {% endcomment %}
M/E
Program
{% comment %} Tracks are a fixed --atem-btn, never minmax(0,…):
collapsing columns overlapped every label on a switcher with
many inputs. The ASC row needs a control surface's width, which
a phone has not got, so below sm .atem-bus-row wraps into as
many lines as it needs, and .atem-bus-big wraps a BANKED
switcher below lg too (a 4 M/E does not fit a tablet either).
Rules in atem_control.css; the column template travels as
--bus-tpl so a stylesheet can replace it. Desktop keeps this
two-row shape exactly. {% endcomment %}
Preview
{% comment %} Tracks are a fixed --atem-btn, never minmax(0,…):
collapsing columns overlapped every label on a switcher with
many inputs. The ASC row needs a control surface's width, which
a phone has not got, so below sm .atem-bus-row wraps into as
many lines as it needs, and .atem-bus-big wraps a BANKED
switcher below lg too (a 4 M/E does not fit a tablet either).
Rules in atem_control.css; the column template travels as
--bus-tpl so a stylesheet can replace it. Desktop keeps this
two-row shape exactly. {% endcomment %}
{% include 'control/_transition_controls.html' %}
T-Bar
Position: 0%
Keys
USKs
{% include 'control/_transition_style.html' %}
{% include 'control/_macros.html' %}
{% include 'control/_fade_to_black.html' %}
{% include 'control/_hyperdeck_panel.html' %}
{% include 'control/_media_pool.html' %}
Change video mode?
Current
New
Changing the video mode will:
Resync the switcher and drop outputs for ~3 seconds.
Clear the entire media pool — all uploaded stills will be deleted.
{% include 'control/_profile_modal.html' %}
{% include 'control/_fairlight.html' %}
Settings
{% include 'control/_atem_info.html' %}
Hex Color
{% include 'control/_settings_usk.html' %}
{% include 'control/_settings_transition.html' %}
{% include 'control/_settings_dsk.html' %}
Rename sources to your preferred names. Labels appear in every dropdown.
Tab between fields; changes save when you leave the field.
SrcLong nameShort
{{ atem_equipment|json_script:"atem-equipment-data" }}
{{ hyperdeck_names|json_script:"hyperdeck-names-data" }}
{% comment %} A hosting platform adds its own panels and scripts here (a template that
extends control.html and fills control_extra), leaving this file alone. {% endcomment %}
{% block control_extra %}{% endblock %}
{% endblock %}