Managed Recordings
The challenges of standard BigBlueButton recordings
- Recordings are processed on the server which hosted the BigBlueButton meeting. Because Video encoding is so demanding of computer resources, the software is 'de-optimized' to prevent this interfering with meetings that are still underway. This means that the processing of recordings is incredibly slow.
- For the same reason, only one recording can be processed at a time - so BigBlueButton puts them in a queue. This can create long delays before recordings can be viewed. For example, an installation recording meetings all day might still be processing these recordings the following morning when the next set of meetings starts.
- Each processed recording ‘lives’ on the machine where the meeting took place. As you begin to scale, this becomes tricky to manage as you need to track which recording is on which machine. Scalelite provides only a partial solution.
- Recordings use a great deal of disk space and running out of storage means yet more engineer time on a tricky upgrade.
Our solution: Managed Recordings
BBB On Demand moves the processing of recordings off the BigBlueButton host machine, processes them in parallel, stores recordings in the cloud and provides unified hosting of published recordings. This exposes standard BigBlueButton API methods so that standard libraries and integrations can use manage recordings.
Step 1: Recording
- The BigBlueButton meeting is recorded in the usual way with all the data stored on the host machine.
Step 2: Processing
- After the meeting has finished, BBB On Demand launches a dedicated virtual computer to process the recording. This is a high power computer that is specially configured for fast video and audio encoding.
Processing begins within a few minutes of the end of the meeting and there is no queue: parallel processing across different machines means that nobody has to wait and there is zero burden on the host machine.
There is a charge for processing recordings based on the amount of time that it takes – you only pay for the computer time that you use. See the note on Encoding, below, which affects your charges.
Step 3: Storage and hosting
- After processing, the recording is moved to long term cloud storage and optionally published and hosted for viewing on the web.
An archive of the ‘raw’ data is retained in case you have a future need to re-process the recording, along with the processed recording itself. Since this is in cloud storage there are no storage caps and you will never run out of disk space.
Using the standard BigBlueButton Api methods against the BBB On Demand API endpoint, you can list and manage all the recordings we store on your behalf. This gives you a ‘unified’ way of managing recordings rather than having them spread across many computers.
If you ‘publish’ a recording, it is transferred to our recordings hosting system from where it can be viewed in the normal way.
Encoding Options
BBB On Demand allows you to configure the encoding of your recordings to get the optimal balance between quality, speed and compatibility for your organisation.
Under the Options tab of the Account page, you can set the default "Encoding Quality" to 'Fast', 'Standard' or 'Best'. The ‘fast’ setting results in a lower video quality but is several times faster to encode than ‘Best’. The ‘Best’ setting optimizes for video quality rather than speed. Remember that you are billed for the amount of time that it takes to process your recording, so setting the quality to ‘fast’ will be cheaper than ‘best’.
If you want to override this default for a particular demand meeting, add the desired encoding setting to the meta data of the create meeting method like this: VIDEO=fast (or 'standard' or 'best')
Also on the Options tab of the Account page, you can set the default "Encoding Formats. This allows you to select whether to encode only in Webm format, Mp4 or both.
Playback of recordings on an ipad or iphone is only supported with MP4 recordings - so if this is important set the format to MP4 or Both. For maximum compatibility, select Both. If your priority is reducing costs, consider MP4 only as this is faster to encode than Webm.
API Changes
With standard BigBlueButton, no information is returned about a recording until it has finished processing - and by default it is immediately published and available for viewing
With BBB On Demand, the API (for both on demand meetings and on demand instances) returns information about the recording even whilst it is being processed (state is 'processing') and when processed the state is 'unpublished'. It is then up to you whether to publish this recording.
On Demand instances
The managed recordings process is automatic for on demand meetings. If you want to manage your own instances (using our instances API) you can either look after recordings yourself, or let BBB On Demand manage them for you.
When you create an instance, the setting ‘manageRecordings’ flags whether you want to use the default BigBlueButton approach (recordings remain on the server) or have BBB On Demand handle them for you as described above.
Remember that even if you manage your own instances you do not have shell access and the disks are not (at this stage – may become configurable) especially large. We do not provide technical support for transferring recordings off machines – so if that might be an issue, set managedRecordings=true.
Self-hosted recordings
If you would like to use managed recordings but do not want us to provide hosting, it might be possible for you to host your own recordings. We have a solution in development but it is not a high priority – please get in touch if this would be of interest.