1000 FAQs, 500 tutorials and explanatory videos. Here, there are only solutions!
Record a live video stream
This guide explains how to record or archive all of your Video Streaming, which can be useful for creating TV replays or reviewing videos recorded by surveillance cameras, for example.
Enable or Disable Automatic Recording of Live Streams
To enable this option:
- log in to the Infomaniak Manager (manager.infomaniak.com) from a web browser such as Brave or Edge
- click on the icon at the top right of the interface (or navigate using the left sidebar menu, for example)
- select Video Streaming (in the Streaming section)
- click on the name of the relevant object in the displayed table
- enable live stream recording from the stream dashboard
Once this feature is enabled, the stream will be automatically and perpetually recorded from the moment it is sent to (or pulled by) the Infomaniak platform.
Be vigilant regarding your FTP space, which could quickly become saturated. If needed, you also have the option to manually schedule recordings using the scheduler tool.
How Automatic Recordings Work
Once this option is enabled, an mp4 file will be automatically generated after each broadcast, which will be transferred to the FTP or VOD space you configured.
Important details:
- a broadcast is defined as the time between connecting and disconnecting from the video encoder
- recording quality: in the case of a multi-bitrate stream, the maximum source quality will be preserved
- file size limitation: in the case of streaming, you have the option to set the maximum duration for each mp4 file; this option allows you to avoid generating overly large files and ensures the recording of your archives to the FTP or VOD space of your choice (once the duration is reached, the recording is automatically stopped, sent via FTP, and a new recording is started)
Customizing Recording Names
To allow you to easily identify and classify your archives, the name of the recordings can be dynamically customized using parameters specified within braces.
Example: template_{stream_id}_{date|format:YYYY-MM-dd_hh:mm:ss}_{fragment_id|from:1|prefix:fragment_(|suffix:)}.{extension}
- stream_id // represents the stream identifier as a string.
- date | format: ISO 8601 // date of the recording day.
- time | format: ISO 8601 // time of the recording.
- datetime | format: ISO 8601 // date and time of the recording.
- fragment_id | from: number | prefix: string | suffix: string // number of the fragment in case a recording is split, with the possibility to prefix and/or suffix it. Each fragment will be incremented, "from" indicates which will be the first reference fragment.
- extension // final file extension.
These parameters and their options are optional, and their order is completely flexible. They can be used as many times as desired. If you provide the same option multiple times, only the last one will be considered. Any unrecognized option will simply be ignored.
Example 1
Situation: you have two daily schedules, the first starting at 10:00 AM and the second at 8:05 PM. By configuring the file naming this way: template_{date|format:hh:mm:ss}, you will obtain the following file names:
For December 5, 2019:
- The first recording at 10:00 AM will be named: template-10:00:00.mp4
- The second recording at 8:05 PM will be named: template-20:05:00.mp4
For December 6, 2019:
- The first recording at 10:00 AM will be named: template-10:00:00.mp4
The recording from the previous day with the same name will be overwritten and replaced by this one. - The second recording at 8:05 PM will be named: template-20:05:00.mp4
The recording from the previous day with the same name will be overwritten and replaced by this one. - And so on.
This logic can be particularly useful for having a loop recording system, for example for video surveillance. The user will retrieve the video only when needed, thus avoiding archiving a potentially infinite number of videos and risking saturating the FTP space.
Example 2
Situation: this time you have a perpetual recording, 24/7, with a file duration limit set to 360 minutes. By configuring the file naming this way: template_{date|format:YYYY-MM-dd}_{fragment_id|from:1|prefix:fragment_(|suffix:)}.{extension}, you will obtain the following file names:
- The first file of the day at 12:00 AM will be named: template_2019-02-05.mp4
- The second file of the day at 6:00 AM will be named: template_2019-02-05_fragment(1).mp4
- The third file of the day at 12:00 PM will be named: template_2019-02-05_fragment(2).mp4
- The fourth file of the day at 6:00 PM will be named: template_2019-02-05_fragment(3).mp4
By configuring the file naming this way: template_{date|format:YYYY-MM-dd}_{fragment_id|from:0|prefix:fragment_(|suffix:)}.{extension}, you will obtain the following names:
- The first file of the day at 12:00 AM will be named: template_2019-02-05_fragment(0).mp4
- The second file of the day at 6:00 AM will be named: template_2019-02-05_fragment(1).mp4
- The third file of the day at 12:00 PM will be named: template_2019-02-05_fragment(2).mp4
- The fourth file of the day at 6:00 PM will be named: template_2019-02-05_fragment(3).mp4