ImageWorkflowOperation
Description
The ImageWorkflowOperation will extract still images from a video using FFmpeg and a list of given encoding profiles. Both absolute and relative positions can be used.
Parameter Table
configuration keys | example | description |
---|---|---|
source-flavor | presenter/source | Specifies which media should be processed. |
source-flavors | presenter/source, presentation/source | Specifies a list of media which should be processed. In case a flavor has been specified in source-flavor, it will be added to this list. |
source-tags | engage | Specifies which media should be processed. |
target-flavor | presenter/work | Specifies the flavor the new files will get. |
target-tags | engage | Specifies the tags the new files will get. |
encoding-profile | search-cover.http | Comma-separated list of encoding profiles to use. |
time | 1 | Comma-separated list of time (in seconds or relative to source track duration) where the image should be taken. |
target-base-name-format-second | thumbnail_%.0f%s | Used to control the target filenames for images extracted at absolute times. Mainly helpful when integrating third-party applications that prefer to use filename to distinguish individual images |
target-base-name-format-percent | thumbnail_%.3f%s | Used to control the target filenames for images extracted at relative times. Mainly helpful when integrating third-party applications that prefer to use filename to distinguish individual images |
end-margin | 500 | Safety margin at the end of the track. Sometimes, image extraction is critical at the end of the file. Using end-margin ensures, that no images are being extracted near the end of the video file to avoid problems with defective inputs. (Default: 100) |
Notes:
- Absolute and relative position may be mixed up in the configuration key time
Operation Example
Basic
Extract one image at position 1 second using the encoding profile search-cover.http.
<operation
id="image"
fail-on-error="true"
exception-handler-workflow="error"
description="Encoding presenter (camera) to search result preview image">
<configurations>
<configuration key="source-flavor">presenter/trimmed</configuration>
<configuration key="source-tags"></configuration>
<configuration key="target-flavor">presenter/search+preview</configuration>
<configuration key="target-tags">engage</configuration>
<configuration key="encoding-profile">search-cover.http</configuration>
<configuration key="time">1</configuration>
</configurations>
</operation>
Advanced
In this example, we extract images at three relative positions (1%, 50%, 100%) from the presenter/trimmed track. For each position, we extract three images using three different encoding profiles (example.encoding.profile.*). This operation therefore generates nine images in total. The target filenames will be formed based on the target-base-name-format-* configuration keys (prefix) and the configuration of the encoding profiles (file extension and possibly suffix).
<operation id="image"
description="Extract set of thumbnails"
fail-on-error="true"
exception-handler-workflow="partial-error">
<configurations>
<configuration key="source-flavor">presenter/trimmed</configuration>
<configuration key="target-flavor">presenter/thumbnails</configuration>
<configuration key="target-base-name-format-second">thumbnail_%.3f%s</configuration>
<configuration key="target-base-name-format-percent">thumbnail_%.0f%s</configuration>
<configuration key="encoding-profile"> example.encoding.profile.small, example.encoding.profile.medium, example.encoding.profile.large</configuration>
<configuration key="time">1%, 50%, 100%</configuration>
<configuration key="end-margin">1000</configuration>
</configurations>
</operation>