Clip Ingest service (CIS) - Sport

Introduction

Clip Ingest Service allows the uploading of a media content to a server and makes it available in a content management service to be watched on demand.

Functionality

There will be three modes of ingesting content:

  • Upload mode. It consists on selecting a video from the local computer of the user and upload it.
  • Download mode. It consists on downloading a video from the internet from the url of the video. The downloaded video is copied to the source folder of the ingest process. Thereafter, the process is just the same than in the upload mode.
  • File-system mode. It consist on copying a video previously stored in a folder on the server where the ingest service is deployed to the source folder of the process. Thereafter, the process is just the same than in the upload and download mode.

MimeTypes supported by Clip Ingest Service are the following:

  • video/msvideo
  • video/x-msvideo
  • video/avs-video
  • video/avi
  • video/mp4a
  • video/webm
  • video/ogg
  • video/quicktime

Transcodification will be made only for those MimeTypes selected in the service invocation. A thumbnail will also be generated.

During ingest process, an UUID will be created and assigned to all files created.

After the POST request is received, the API will return an XML with an OK or KO message.

  • In case of a OK message, URL of the content generated will be displayed.
  • In case of a KO message, a brief description of the error will be displayed.

After content transcoding the server will inform of the transcoded content URLs and the metadata.

Use Cases

Clip Ingest Service Sport has been deployed at the first run of experiments in the context of an experimental application: CARVIREN (CAR Virtuel Environment).

API

List of functions

Recording content

The main difference between CIS Sport and CIS Cultural is that CIS Sport allows control over the camera whose contents are uploaded by the ingest process.

Previous configuration of the camera is necessary; ingest application user must contact technical support to set this configuration. In order to do that, a php file named ‘livestreaming.php’ is provided, which admits two methods: start and end.

Assuming that this php file is deployed in the folder exXX of Apache public content directory (‘/var/www/html’):

  • To start video recording, make a GET to http://{host_name}/exXX/livestreaming.php?action=start&camera={camera_name}&file={file_name} (file_name without extension)
  • To stop an existing video recording, make a GET to http://{host_name}/exXX/livestreaming.php?action=stop&camera={camera_name}

Uploading content

In CIS Sport, there are two ways for uploading video content.

The first one is the same as in CIS Cultural: make a POST (just one request) to: http://{host_name}/{experiment_ingest_name}/uploadFile

Parameters accepted for this invocation are the following:

Name Type Description Mandatory
title string content title yes
description string content description yes
category string content categories separate by comma ”,” no
type string content type no
thumbnailsTitle string thumbnail title no
releaseDate string date format: ISO 8601 (20071103T131805 ) no
actors string content actors separated by comma ”,” no
director string content director separated by comma ”,” no
rightHolder string conditional access right holder ID no
conditionalAccess boolean conditional access true / false no
conditionalAccessProfile string name of the conditional access profile no
multiQuality boolean true / false at least one transcodification profile must be selected
html5Mp4U boolean true / false
html5WebM boolean true / false
html5OggM boolean true / false
html5Mp3audio boolean true / false
userName string user uploading the video, to be shown on Facebook event page yes
path string url where the video is downloaded from (download mode) or location of the video on the local filesystem (local filesystem mode) yes if download or local filesystem mode is selected
caption string URL of the caption file no
uploadedfile file video source file yes

The second one is make a GET to the php file named ‘ingest.php’ deployed in the the folder exXX of Apache public content directory (same as the php file to start/stop the video recording).

A limited set of parameters are accepted:

Name Type Description Mandatory
title string content title yes
description string content description yes
category string content categories separate by comma ”,” no
multiQuality boolean true / false at least one transcodification profile must be selected
html5Mp4U boolean true / false
html5WebM boolean true / false
html5OggM boolean true / false
userName string user uploading the video, to be shown on Facebook event page yes

The url invocaction to this php file is hte following: http://{host_name}/exXX/ingest.php?title={title}&description={description}&category={category}&multiQuality={1/0}&html5Mp4U={1/0}&html5WebM={1/0}&html5OggM={1/0}&userName={user}&file={file_name}

Deleting content

To delete a content, make a POST to: http://{host_name}/{experiment_ingest_name}/deleteContent

The only parameter of this service is the uuid generated during ingest process

For security reasons, the IPs allowed to invoke this service must be declared in a white-list file.

Metrics generation

The Clip Ingest Service has been integrated ECC 2.0 library version. Each ingest job is reported as a new entity on the ECC and all its metrics are compiled during media content processing. There are two types of metrics, absolutes and relative to time.

Attribute Description
Files in queue Current number of files in the transcoding queue
Average time Average trans codification time *
Files VoD Total number of audiovisual content available for VoD
Processed data Average processed data per interval
Queue waiting time Queue waiting time per interval *
Transcoding errors Transcoding errors within the provided interval
Transcoded files Number of files transcoded within an interval *
Transcoded data Data read and transcoded within an interval *
Total transcoded data Accumulated data read and transcoded by a service instance
  • Metrics reset after every report.

User Interface

In the CMS there will be a html file with a form whose fields are those listed in the Uploading content section.

Contact & Support Information

Contact

Pablo Salinero Ruiz
Media Lab, Atos
Antonio Gómez Muriana
Media Lab, Atos

Support

See Contact.