Capturing LIVE
The HD Live to VOD and Playout Automated Workflow provides background and also outlines the technologies that are used together with Unified Capture.
Note
From version 1.10.27 it is recommended to capture livestreams from a DASH endpoint (instead of a Smooth endpoint) because that way Timed Metadata such as SCTE 35 markers will be captured as well.
Please note that embedded subtitles, CEA-608/708, will not be transcoded alongside other file information when using frame accurate capture.
LIVE to VOD: Catch-up TV (start and end time in the past)
When a Live presentation is streamed by Unified Origin and the Origin is set up to archive the presentation on disk, Unified Capture can create VOD clips from this Live archive. You simply specify a time range of which the start and end time fall within the Live archive, after this time range is captured and stored as a VOD item.
Note
By default, beginning and end times will be aligned to video key frames. To
bypass this limitation, you can use Unified Capture's --frame-accurate
option.
Since the encoder is timestamping the audio/video fragments, it is the encoder that creates the timeline of the Live feed. Please make sure that it uses Must Fix: use of UTC timestamps. This gives the timeline a useful reference point so that you can match an existing EPG (Electronic Program Guide) to the timeline, for example.
The format used for specifying a time range is the ISO 8601 date-time format ("2013-03-31T12:34:56.000"). Capturing a half hour show on the 31st of March from noon until 12:30 looks like this:
#!/bin/bash
unified_capture -o news-at-noon.ismv \
"http://live.unified-streaming.com/channnel01/channel01.isml/.mpd?t=2013-03-31T12:00:00.000-2013-03-31T12:30:00.000"
Note
Your shell may require quoting the input URL when it contains special characters.
LIVE to VOD: Realtime (start time in the past, end time in the future)
New in version 1.10.27: Realtime capture support for dynamic MPD with SegmentTimeline
The end time may be set in the future, that is, after the current live point. In this case, Unified Capture records up to the live point and will then continue capturing the segments that become available from the publishing point in real-time.
When either the end time is reached or the presentation is closed, the capture process will end as well. This allows for close to realtime publishing of catch-up content: as soon as a show finishes the catch-up version can be put live as well.
Realtime capture is supported for Smooth Streaming and DASH. The DASH MPD
should use a $Time$
-based SegmentTimeline
.
Multiple sections into a single clip
New in version 1.6.6.
Using the 'stitch' functionality it is possible to create a new file that is a selection of clips from the original.
For instance two clips of n seconds can be concatenated into one, by using the begin and end time of the clip.
The following table lists the begin and end points of two clips. The duration then is end - begin.
Clip |
From |
Until |
Duration |
---|---|---|---|
1 |
2014-01-30T15:02:45.960Z |
2014-01-30T15:02:50.960Z |
5 seconds |
2 |
2014-01-30T15:17:52.680Z |
2014-01-30T15:17:57.680Z |
5 seconds |
This information can be passed to Unified Capture using a SMIL file. This file should contain the begin and end times (begin + duration) of the clips that need be stitched into a new clip.
Such a SMIL file looks like this:
<?xml version="1.0" encoding="utf-8"?>
<smil xmlns="http://www.w3.org/2001/SMIL20/Language">
<head>
</head>
<body>
<seq>
<video
src="http://usp-test/video.out/rtl8/rtl8.ism/Manifest"
clipBegin="wallclock(2014-01-30T15:02:45.960Z)"
clipEnd="wallclock(2014-01-30T15:02:50.960Z)"
/>
<video
src="http://usp-test/video.out/rtl8/rtl8.ism/Manifest"
clipBegin="wallclock(2014-01-30T15:17:52.680Z)"
clipEnd="wallclock(2014-01-30T15:17:57.680Z)"
/>
</seq>
</body>
</smil>
The clipBegin
and clipEnd
attributes specify the wallclock time of the
presentation. The datetime is in ISO 8601 format and it is recommended to
use UTC timestamps.
The SMIL file can be passed to Unified Capture on the command line, not unlike previous examples:
#!/bin/bash
unified_capture -o video.ismv clips.smil
All the bitrates in the stream are captured into one single file, which can be moved into Block Storage or Cloud Storage so that it can be used for catch-up or other purposes.
Note
This functionality of Unified Capture is for recording multiple time ranges from a single source live stream. To stitch multiple clips together from different sources we recommend the use of Unified Remix instead.