Clips
A core functionality of the Limecraft Flow platform is the management of (audiovisual) media clips, which in their most common form represent video material with its associated audio. An extensive data model was implemented to support the various aspects of managing audiovisual media and their technical and user-defined metadata. This section explains the creation and upload of clips into our platform, the management of metadata associated with clips and how clips in Limecraft Flow can be synchronized with external applications.
The data model surrounding media in Limecraft Flow is very comprehensive to support many use cases, and is documented in deep in its dedicated section.
MediaObject
A clip, as shown in the Limecraft Flow UI library, is internally called a MediaObject
. This document will use both terms to mean the same thing. You can learn more about its structure here.
A clip does not need to represent video footage only, it can also be just audio, it can be an image, it is even possible to upload any filetype to Limecraft Flow. In fact, a clip doesn’t even necessarily need to have a file attached to it, it can be a placeholder that represent a non-digital asset if needed.
To learn more about how to create a MediaObject, and upload data to it, see this page.
For more info on the data model behind clips or MediaObjects
, please check out
this page.
Annotations
Most of the metadata of a MediaObject (or part of a MediaObject) will be stored in Annotations
attached to that MediaObject. Learn more about them here.
Custom Fields
Custom Fields
can be used to attach custom user-defined metadata properties to Annotations. Learn more about them here.
Start the ingest workflow for a clip
Boolean options can be provided for the call:
-
redo
— Check if the ingest workflow has run before and throw an error if such workflow exists and redo is set tofalse
.
Start the ingest workflow otherwise (defaults tofalse
). -
redoSingleTask
— When set to true, force each task in the ingest workflow not to use previous results and regenerate all transcodes, thumbs, etc…
By default, as much of the previous run is recycled. (defaults tofalse
) -
redoAndTerminateRunning
— Stop the running ingest workflow (if one exists) and restart.
POST /production/{prId}/mo/{moId}/service/ingest
This call will start the ingest workflow for a clip.
Details
Description
Parameters
Path Parameters
Name | Description | Required | Type |
---|---|---|---|
|
ID of the production. |
✔ |
Long |
|
ID of the MediaObject. |
✔ |
Long |
Query Parameters
Name | Description | Required | Type |
---|---|---|---|
|
✔ |
Boolean |
|
|
✔ |
Boolean |
Return Type
MediaObjectWorkflowReport
Field Name | Required | Type | Description | Format |
---|---|---|---|---|
adminOnly |
✘ |
Boolean |
||
audioAnalyzerCompleted |
✘ |
Date |
date-time |
|
created |
✘ |
Date |
The time when this resource was created |
date-time |
createdBy |
✘ |
String |
The request or process that created this resource |
|
createdByShareId |
✘ |
Long |
int64 |
|
createdBySharedUserId |
✘ |
Long |
int64 |
|
creatorId |
✘ |
Long |
The id of the user who created this resource |
int64 |
duration |
✘ |
Double |
double |
|
errorReports |
✘ |
List of TaskReport |
||
extra |
✘ |
Object |
||
funnel |
✘ |
String |
||
id |
✔ |
Long |
The id of this resource |
int64 |
label |
✘ |
String |
User-friendly label of the workflow |
|
lastUpdated |
✘ |
Date |
The time when this resource was last updated |
date-time |
mediaAnalyzerCompleted |
✘ |
Date |
date-time |
|
mediaObjectId |
✘ |
Long |
int64 |
|
modifiedBy |
✔ |
String |
The request or process responsible for the last update of this resource |
|
objectType |
✘ |
String |
The data model type or class name of this resource |
|
productionId |
✘ |
Long |
int64 |
|
publishedFiles |
✘ |
List of object |
Files generated by the workflow, which can be downloaded. |
|
removeFromQuota |
✘ |
Boolean |
||
requiredRights |
✘ |
List of ProductionPermission |
||
size |
✘ |
Long |
int64 |
|
startupParameters |
✘ |
Object |
||
status |
✘ |
String |
Enum: Inited, Started, Completed, Error, Cancelled, Paused, CompletedPending, ErrorPending, WaitForCallback, Scheduled, |
|
successFul |
✘ |
Boolean |
||
target |
✘ |
String |
||
taskReports |
✘ |
List of TaskReport |
||
transcoder1Completed |
✘ |
Date |
date-time |
|
transcoder2Completed |
✘ |
Date |
date-time |
|
variables |
✘ |
Object |
||
version |
✔ |
Long |
The version of this resource, used for Optimistic Locking |
int64 |
workflowCompleted |
✘ |
Date |
When did the workflow complete? |
date-time |
workflowFailed |
✘ |
Date |
When did the workflow fail? |
date-time |
workflowId |
✘ |
String |
The id of the workflow. This can be used to retrieve the workflow status. |
|
workflowStarted |
✘ |
Date |
When was the workflow started? |
date-time |
workflowTask |
✘ |
String |
||
workflowType |
✘ |
String |
Enum: INGEST, SPEECH, IPPAMEXPORT, IPPAMSYNC, MOIEXPORT, REMOTE_SPEECH, VOLDEMORT_SPEECH, TRANSCODE, AUDIOANALYZE, EXPORT_VWFLOW, FEATURE_EXTRACTION, BLACK_FRAME, STON_APPROVE, AAF_EXPORT, FCP_EXPORT, VOLDEMORT_SPEECH_2, KALDI_SPEECH, SUBTITLING, MIGRATE, INDEX, BACKUP, VOLDEMORT_SPEECH_3, VOLDEMORT_SPEECH_4, VOLDEMORT_SPEECH_5, TRANSLATION, INDEX_SWITCH, SIMPLEINGEST, CLONE, UPDATE_CATEGORY, WEBHOOK, SETKEEPER_ATTACH, PDF_EXPORT, SHOT_DETECTION, EXPORT, REMOTE_HELLO_WORLD, CUSTOM, UNKNOWN, CHANGE_AUDIO_LAYOUT, WORKSPACE_BOOTSTRAP, MEDIA_TRANSFER_COMPLETE, MEDIA_TRANSFER_FAILED, DELIVERY_REQUEST_SUBMISSION_CLIP_PROBED, DELIVERY_REQUEST_SUBMISSION, ADVANCED_SUBTITLE, TRANSCRIPTION_SUMMARIZE, |
Content Type
-
application/json
Responses
Code | Description | Datatype |
---|---|---|
200 |
The request was successful. |
|
403 |
The user needs LIBRARY_UPLOAD rights. |
|
404 |
The production or media object was not found. |
|
409 |
The workflow was already in progress. |
|
Synchronize
This is explained on this page.