CORE I/O controls one or more media servers from a browser. Hosts run flows, dashboards contain widgets that control those flows, presets provide reusable settings, and user accounts determine which functions and flows are available.
Hosts and the Media Engine
A host is a CORE I/O server. You connect to one host for sign-in and configuration, and that host maintains information about all other hosts in the installation. On the Flows page, each row identifies a host by name and IP address and displays its flows. An administrator can add a host and its first flow through Add Flows in the app bar by entering a Host Name, Host IP Address, and Flow Name.
Each host runs a Media Engine, which performs the recording, transcoding, and playout operations.
If the Media Engine is unavailable, the Health pop-up marks the host as Media Engine Disconnected. Flow switches for that host are disabled and display the hint Media Engine disconnected. Notifications report Media Engine connection lost for and, after the connection is restored, Media Engine reconnected for.
Flows and flow types
A flow is a processing chain on a host. It consists of an input, processing nodes, and one or more outputs, displayed as a graph on the Flows page. A flow is either active and running on the Media Engine, or inactive.
Only inactive flows can be edited.
Each flow has one of four types. CORE I/O uses the same color for that type in the Add Widgets dialog, flow nodes, and widget headers.
| Type | Color | What it does |
|---|---|---|
| Record | Red | Captures an incoming signal to files. Record flows use naming, capture and destination presets, metadata views and action sets. |
| Loop | Purple | Records continuously into a rolling loop. The Loop Segment Exporter cuts segments out of it and exports them as files. |
| Transcode | Blue | Converts an incoming stream and sends it to stream endpoints. |
| Playout | Green | Plays files out of a playlist or a show. The Single Player and Multi Player widgets drive it. |
Widgets that do not belong to a flow type, such as file browsers, editors, and monitors, are grouped under Generic and displayed in gray.
The license can disable individual flow types. The License page lists Record, Transcode, Loop, Playout, and Streaming Out as features.
Flow configuration profiles
A flow can store several configurations as profiles and switch between them. Every flow begins with a profile named Default. A profile stores the complete graph, node settings, and flow type. Switching profiles can therefore change the flow type. For example, a flow with a Record profile and a Playout profile operates as a Record flow when the Record profile is active and as a Playout flow when the Playout profile is active.
The Flows page displays one tab for each profile below the flow tabs. The active profile has a green background.
You can switch the profile of an inactive flow immediately. Switching the profile of an active flow restarts it on the Media Engine, so CORE I/O asks for confirmation. If the flow type changes, the server unlinks widgets that no longer match the flow. The profile tab displays the icon for its flow type.
A widget can be assigned to a flow that contains a matching profile even if a profile of another type is currently active. The widget remains idle and displays a hint until you switch the flow to the matching profile.
The Flow Controller widget lists every flow with more than one profile and lets you switch profiles from a dashboard. See Dashboards and Widgets.
Dashboards and widgets
A dashboard arranges widgets on a grid. Each user has an individual set of dashboards listed under Dashboard in the sidebar. You can create as many dashboards as the license permits and rename, reorder, or delete them. See Profile and Dashboard Management.
A widget is a tool on a dashboard. Most widgets attach to one flow of a specific type and display or control that flow. Generic widgets operate without a flow. The Add Widgets dialog groups widgets as follows:
| Category | Widgets |
|---|---|
| Record | Record Viewer, Record Timeline |
| Loop | Loop Viewer, Loop Segment Exporter |
| Transcode | Transcode Viewer |
| Playout | Single Player, Multi Player |
| Generic | File Browser, Flow Controller, Rough Cut Editor, Show Builder, Transfer Monitor |
A restricted flow can be assigned to only one corresponding viewer or player widget across all dashboards in the account. This restriction applies to Record, Loop, Transcode, and Playout flows. The picker marks an assigned flow as In Use elsewhere. Multiple Loop Segment Exporters can share one Loop flow, and a Record Timeline can contain several Record flows.
Presets
Presets store named settings that flows and widgets can reuse. Administrators manage them under Configuration in the sidebar:
| Preset | Used by | Chapter |
|---|---|---|
| Naming Presets | Record flows: how recorded files are named. | Naming Presets |
| Capture Presets | Record flows: codec and format of a recording. | Capture Presets |
| Destination Presets | Record flows: where recordings are written. | Destination Presets |
| Encoder Presets | Transcode and streaming outputs. | Encoders |
| Export Presets | Exports from the Loop Segment Exporter and the Rough Cut Editor. | Export Presets |
Actions are reusable action sets that run when a recording starts, splits, or stops. Metadata Views define the metadata fields that a Record Viewer displays and stores. Define each item once, then select it for the required flow or widget. See Actions and Metadata Views.
Stream endpoints
A stream endpoint is a named network input or output that a flow node can use. Supported types include SRT, UDP, RTMP, RTP, and HLS. Administrators manage endpoints on the Stream Endpoints page. Operators can select an enabled endpoint for a flow in the Record Viewer or Transcode Viewer.
File browser sources
The File Browser widget displays mount points, which are storage locations defined by an administrator on the File Browser configuration page. Integrations can add other sources, such as cloud storage, MOS rundowns, or graphics packages.
Integrations
Integrations connect CORE I/O to other systems. The Integrations page displays a grid of tiles. A configurable integration opens its configuration page; other tiles link to the vendor. Available integrations include Active Directory, Amazon Web Services, Backblaze, (S)FTP File Transfer, iconik, LucidLink, MXMZ, NDI, Octopus Newsroom, SAML SSO, singular.live, Slack, SNMP, and Suite. See Storage integrations, Production integrations, and Notifications and sign-in.
Users, groups and roles
Each person signs in with a user account. An account can be local or supplied by Active Directory or a SAML identity provider. See Getting Started. Each account has one role:
| Role | What it allows |
|---|---|
| Admin | Access to all functions, including the Configuration, Permissions, and System sections; user and group management; license management; and user impersonation. |
| User | Access to dashboards, widgets, and the user's own profile. |
| Viewer | The same access as User, except that settings for changing a flow's presets, endpoints, and actions are hidden in the Record Viewer, and the corresponding keyboard shortcuts are disabled. |
Groups organize users and determine which flows they can access. Groups can be managed locally or synchronized with Active Directory. API users are accounts for external software and authenticate with tokens instead of passwords. See Users and Groups.
Licenses and seats
The license is tied to the server's Machine ID and activated with an activation code on the License page. It determines:
- how many flows can be active at the same time (Licensed Flows);
- how many users can be signed in at the same time (Seats); a person occupies a seat while signed in, and an API user occupies a seat while it has a token;
- how many dashboards can exist (Dashboards); and
- which flow types are enabled (Features).
The number of registered accounts is not limited; only simultaneous use is restricted. When every seat is occupied, CORE I/O rejects a new sign-in with All licensed seats are currently in use. If an active session cannot renew its seat, an overlay pauses access until a seat becomes available. See Getting Started. A seat value of Unlimited means that the license does not impose a limit.
Time and time zones
The Record Timeline and Loop Segment Exporter display times in the server's time zone, which the application reads after sign-in. CORE I/O formats dates and times according to the Locale selected in your profile. If no locale is selected, the browser language determines the format. See Profile and Dashboard Management. Timecode and frame rates explains timecode notation.