Class FFMpegStoryBoardProcess

  • All Implemented Interfaces:
    WorkflowProcess

    @Service
    @Properties(@Property(name="process.label",value="Create Video Storyboard",propertyPrivate=true))
    public class FFMpegStoryBoardProcess
    extends AbstractFFMpegProcess
    Workflow process that calls FFMPEG on the command line to create a storyboard of a video. A storyboard consists of several key frames extracted from the video. The key frames will be stored as subassets of the video asset. Also, a merged film strip of the key frames will be stored as a storyboard rendition of the video asset.

    Process arguments / configuration:

        frames:{Number}      The number of key frames to use for the strip. The frames will be evenly distributed
                             over the length of the movie. Default number of frames is 10.
                                  E.g.: frames:10
     
        start:{Number}       The start position in seconds for the first key frame. Default is 0. Formats supported:
                                  plain number (seconds)
                                  E.g.: start:5
     
        maxWidth:{Number}    The maximum width in px of key frames. Default: 320 px. Aspect ratio is kept.
     
        maxHeight:{Number}   The maximum height in px of key frames. Default: 240 px. Aspect ratio is kept.
     
        upScale:{Boolean}    Whether to upscale key frames if the source video is smaller than maxWidth/maxHeight.
     
        [{time}],[{time}],..  Define number and time stamp of every key frame individually. Using this option
                              causes the "frames" and "start" options to be ignored. Time formats supported:
                                  hh:mm:ss or plain number (seconds)
                                  E.g.: [00:05:00],[00:10:00]
        Examples:
     
        - Create 10 frames, starting with the first at 12 seconds into the movie.
              frames:10,start:12
     
        - Create 10 frames, each 100 x 80 px, upscaled:
              frames:10,maxWidth:100,maxHeight:80,upScale:true
     
        - Create 5 frames, each at a defined position, each 100 x 80 px, upscaled:
              maxWidth:100,maxHeight:80,[00:05:00],[00:10:00],[00:15:00],[00:20:00],[00:25:00]
     

    Will create thumbnails of size 140x100 and 48x48 with a black letterbox/pillarbox

    This will only happen for assets having a video-based mime-type, others are ignored.

    • Constructor Detail

      • FFMpegStoryBoardProcess

        public FFMpegStoryBoardProcess()
    • Method Detail

      • buildArguments

        public java.lang.String[] buildArguments​(MetaDataMap metaData)