Skip to content

Transcoding as a Service (TaaS) Manifest

The transcoding (also known as transrate) service tries to cover the need of certain CERN apps and services regarding video conversions also known as sub-formats. The service is based on a FOSS project: Opencast which is heavily based on ffmpeg to do the conversions.

The service API in order to tranfer/query jobs/download results is following Opencast guidelines and best practices. The service interface to external CERN apps/services should be the same for all of them. This implies an agnostic view as internal workflows should be unaware of how those user application/services internally work. Any request that differs from mainstream are simply not maintanable and therefore not possible. The service will try to keep up-to-date with upstream versions.

The service clients should open a Snow Ticket to provide the folowing information, in order to access the TaaS External API or WebUI:

  • One new Opencast local USER name or one existing CERN eGroup name or Service account to get the required permissons for using the API.
  • One (or more) Opencast Series Name to associate the ingested/uploaded videos and metadata files, and whose ACLs will be applied.

The client is reponsible for the upload of his/her source files and download of the encoded resulting files. Those files will be available in the server for downloading during a limited period of time.

The service is running on CERN openstack virtual machines. It's limited on the resources that such virtualization is offering. As resources are shared, no priorities will be stablished for specific tasks. However the global resources could be increased as needed.

To know how to use the service and ingest a mediapackage, visit the ingest documentation and examples.

Nowadays running on ... we have observed following limits: Performance

Operations and encoding reference examples:

Operation 480 MB 1.3 GB 5.9 GB 68 GB
Ingest 30s 1m 2m 17m
Inspect 15s 30s 1m 12m
Encode 360p 1m 1m 2m 23m
Encode 480p 2m 1m 3m 22m
Encode 720p 4m 2m 4m 25m
Encode 1080p 9m 3m 9m 32m
Encode 2160p 25m 9m 22m 1h1m
Exec time 45m 19m 45m 2h58m

Source files: https://videos.cern.ch/

Type Frame rate Bit rate Resolution Frame count Size Duration
H.264 / AVC / MPEG-4 part 10 25 5878935 1920x1080 15464 480 MB 10:18
Apple ProRes (iCodec Pro) 25 87854368 1440x1080 2910 1.3 GB 1:56
Apple ProRes (iCodec Pro) 25 117642088 1920x1080 10068 5.9 GB 6:42
Apple ProRes (iCodec Pro) 25 782865090 3840x2160 17418 68.2 GB 11:36

File transfer rate: 1177.21 Mbps