The Cloud Playout solution from SkyLark is based on the Server Modules of the SL NEO Platform, working in a virtual environment. There are several conceptual differences from the «Classics» when building Cloud Playout:
- All Server Software Components (decoders, recorders, players, encoders, DB and others) must support network interaction with each other, working together in a VM environment. The Software Modules of the SL NEO Media Platform fully meet this condition.
- The term «Cloud» (in relation to the broadcasting subject) means that the server components of the playout system are located in one or several data centers, and the broadcasting and content control & management is performed via Internet. In this case, the use of standard client applications is impossible because of the large network delays and unpredictable connection speed. For such cases we developed a web-management server, which works on the provider’s side and allows remote clients to manage the processes via a web-browser. All the key functions of the SL NEO platform client applications are preserved: downloading, editing and managing the progress of the recording and playback sheets, file import, search, view, markup, view and export the fragments of the broadcast control record.
- Changing the monitoring scheme for input and output streams. In the case of the cloud, all required I/O streams on the provider’s side are combined into multiscreen compositions and broadcast to one or multiple workstations with minimal delay.
The diagram shows the SkyLark Concept for Cloud Playout Systems
- For Cloud-based Playout Platform we developed a Web-Application Server, which works on the side of the data center and allows remote clients to manage the processes via a web-browser.
- All key functions of the SL NEO client applications are preserved: downloading, editing schedules and control of the recording and playback processes, file import, search, browsing, set I/O point for materials, key point to ad insertions, viewing and exporting fragments of compliance recording.
Operations and Processes in the Cloud
Capture, Live & File Ingest
- Capture and decoding of incoming SDI/HDMI signals and ASI/IP streams, recording according to schedules.
- Analysis of executable playlists and automatic import of files in priority order into operative storage from network resources: archive and NLE with possibilities of transcoding (change of codec and container), up/down/cross conversion, audio level and volume level normalization.
- Preparing for Playout: inspection of materials, editing of IN/OUT tags, quick editing by proxy copies, without copying files to the station and rendering. Import of playlists from the traffic system, automatic loading of playlists and individual blocks, making and editing of on-air schedules in the built-in editor with access to the database and proxy.
Automated Playout with Live and Live Events
- Automatic playback of materials is performed according to schedules — playlists. Program Player is a server module of the SL NEO software, which is responsible for playlist execution and formation of the program signal of one channel.
- In accordance with the playlist data, it mix to the program Live signals from external sources, the operative correction of the current schedule events is possible: changing the OUT marker, emergency transitions to any events in the list, Hold functions («holding» the Live events) and many others.
- Mix of SDI/ASI/IP input interfaces, signals and SD/HD/UHD formats with different frame rates. All ports/inputs use buffering and frame synchronization together with up/down/cross conversions. Therefore, Skylark’s solution provides possibilities of switching, mixing, and playing files and live sources with different resolution and FPS on-air. The same can be said about multiscreen displaying on a single monitor for signals of various formats: NTSC/PAL/720p/1080i/1080p/2160p with FPS values varying from 25 to 60.
- The Program Player is also responsible for the design: automatic (or manually controlled) playback of layered compositions/templates consisting of titles with animated backdrops clips with alpha channel, live video, PIP and 2D and Croma Key effects. The compositions are logically organized into virtual players (layers).
- Each program channel contains eight virtual graphic players, plus a logo layer. Starting and stopping the playback of compositions in each of the players is performed with linkage to the events in the main playlist, either to the current time or manually.
- Automatic generation and multiplexing of closed caption data streams. The information is transmitted as part of the ANC data, it is decoded and text is superimposed on the image by the subscriber’s device.
Redundancy and Fault Tolerance
- The each Backup Program Player services constantly synchronize their playlists from the main Program Player module, all playout channels runs in parallel and in sync. If the main set fails, the backup continues to work autonomously
- After the main set is restored to working condition, a one-time synchronization of its playlist services from the backup is performed. On-line synchronization also occurs at the content level (files, metadata) between the main and backup servers.
Monitoring & Logging
- The monitoring subsystem provides control of signals and basic processes occurring in the system, this information can be monitored simultaneously on several workplaces. The system keeps event logs and generates accurate reports on the time of broadcasting events.
- Multiscreen Monitoring
Multiscreen Software Module Function Block Diagram
One MultiScreen module can accept up to 24 input signals and streams of all possible formats and arrange their video sequences in 24 windows of multiscreen composition, with an indication of audio or loudness levels. Alarms for freeze frame, black field and audio level deviation from specified values are available.
A separate window can display the clock and current date. Integration with File Recorder and Program Player modules: this allows you to visualize information about playback and recording schedules. The uncompressed virtual video/audio stream from the output of the Multiscreen module connected to the input of the Stream Player module via Virtual Router.
The IP Multiscreen Output is a handy tool to control all I/O streams in a cloud environment.
Streaming with Processing
To distribute output programs in various environments, SDI/ASI/IP Streams with the necessary resolution/fps parameters, IP-protocols, and bitrates are generated at Server Output Ports. The procedure for creating a single output signal/stream is performed by the Stream Player software module.
In Playout configurations, it receives uncompressed AV and ANC data from the Program Player module and then:
- encodes one compressed stream, sends it to the NIC/ASI port, or
- encodes one uncompressed data stream in SDI/HDMI format, sends it to the Output Board, or
- encodes one uncompressed SMTE ST2110 stream, sends it to the NVIDIA NIC Output Port.
Each Stream Player module performs AV & data processing operations:
- up/down/cross conversion with changing video frame rate;
- loudness normalization for audio streams in accordance with EBU-R128, audio levels normalization and dynamic range compression;
- DTMF generation, multiplexing into the output stream data of Closed Captions, SCTE-104 or SCTE-35 markers, as well as EPG, AFD and VITC.