WebVfx 0.1.6-6-g5144893-dirty
|
WebVfx implements producer, filter and transition plugin services for the MLT Framework. The MLT service ID is webvfx
and the service argument or resource
property is the path to the HTML or QML effect implementation.
MLT services are implemented as WebVfx effects - see Effects Authoring. The pathname to the HTML or QML effects implementation can be provided as the service contructor argument, or specified using the resource
property. e.g.
melt -transition webvfx:/path/to/transition.html
melt -transition webvfx resource=/path/to/transition.html
Effects that use extra images (i.e. that register webvfx.ExtraImageType
image names) accept an additional set of attributes of the form: producer.name.producer_attribute.
webvfx.ExtraImageType
. resource
attribute must be specified. in
and out
can also be specified (e.g. to extract a single frame from a video). e.g. for an extra image named "foobar"
we might have: producer.foobar.resource=/some/file.mov producer.foobar.in=90 producer.foobar.out=200
The example demo/examples/transition-demo.html transition uses an extra image named "backgroundImage"
:
webvfx.imageTypeMap = { "sourceImage" : webvfx.SourceImageType, "targetImage" : webvfx.TargetImageType, "backgroundImage" : webvfx.ExtraImageType };
The melt script example demo/mlt/mlt_transition_demo_html specifies the producer.backgroundImage.resource
attribute for the transition:
#!/bin/bash export DISPLAY=${DISPLAY:-:0} "${VFX_MELT:-melt}" -verbose "${VFX_SOURCE:-red.mlt}" out=149 \ -track -blank 59 \ "${VFX_TARGET:-blue.mlt}" out=149 \ -transition webvfx:../examples/transition-demo.html in=60 out=149 \ producer.backgroundImage.resource="${VFX_BACKGROUND:-green.mlt}" \ title="${VFX_TITLE:-Testing WebVfx Transition}" \ $(eval echo $(< "${VFX_CONSUMER:-consumer_sdl}"))
A set of bash scripts are provided to run melt with the sample effects. These are located in the demo/mlt
directory and should be run in that directory. They are configurable through VFX_
prefixed environment variables. e.g. to run the mlt_transition_demo_html
script, you can change the default source and target videos using VFX_SOURCE
and VFX_TARGET
.
VFX_SOURCE=/videos/source.mov VFX_TARGET=/videos/target.mov ./mlt_transition_demo_html
The demos default to using the SDL consumer, this can be changed to the avformat consumer by setting VFX_CONSUMER=consumer_av
and setting VFX_OUTPUT
to the path of the output QuickTime movie file to be created.
On MacOS, you will need to build qmelt
and set VFX_MELT=qmelt
to run the demos.