Liking cljdoc? Tell your friends :D

hive-kdenlive.render

Headless melt rendering — the JVM-only boundary of the MLT core.

Strata: Pure melt-argv — command vector from data Port IRender — who can render a document Boundary MeltRenderer — spawns the melt process Seam renderer — read at call time; rebind in tests

Results are data: {:ok {...}} | {:error kw ...}, same shape as mlt.xml.

Headless melt rendering — the JVM-only boundary of the MLT core.

Strata:
  Pure      melt-argv        — command vector from data
  Port      IRender          — who can render a document
  Boundary  MeltRenderer     — spawns the melt process
  Seam      *renderer*       — read at call time; rebind in tests

Results are data: {:ok {...}} | {:error kw ...}, same shape as mlt.xml.
raw docstring

*renderer*clj

The IRender implementation render! dispatches through. Rebind in tests with a recording stub; do not capture at wiring time.

The IRender implementation `render!` dispatches through. Rebind in tests
with a recording stub; do not capture at wiring time.
sourceraw docstring

consumer-argsclj

(consumer-args consumer)

CONSUMER (see consumer-map) as melt key=value args, sorted by key. => {:ok ["k=v" ...]} | {:error ...}.

CONSUMER (see `consumer-map`) as melt key=value args, sorted by key.
=> {:ok ["k=v" ...]} | {:error ...}.
sourceraw docstring

consumer-mapclj

(consumer-map consumer)

Avformat consumer properties as a {"key" "value"} map. Takes a map (keyword or string keys, string/number/boolean values) or a Kdenlive preset string of space-separated key=value pairs ("vcodec=libx264 crf=18"). nil -> {}. => {:ok map} | {:error :render/bad-consumer-option ...}.

Avformat consumer properties as a {"key" "value"} map. Takes a map
(keyword or string keys, string/number/boolean values) or a Kdenlive
preset string of space-separated key=value pairs ("vcodec=libx264 crf=18").
nil -> {}. => {:ok map} | {:error :render/bad-consumer-option ...}.
sourceraw docstring

encoding-forclj

(encoding-for out-path)

Default consumer properties for OUT-PATH by extension, as a consumer-map map: H.264 in yuv420p with AAC for .mp4/.mov/.m4v, the combination phones and social players accept, and faststart so playback begins before the download ends. Other extensions get {} (melt's own choice).

Default consumer properties for OUT-PATH by extension, as a `consumer-map`
map: H.264 in yuv420p with AAC for .mp4/.mov/.m4v, the combination phones
and social players accept, and faststart so playback begins before the
download ends. Other extensions get {} (melt's own choice).
sourceraw docstring

IRendercljprotocol

-renderclj

(-render renderer mlt-path out-path opts)

Render the MLT document at mlt-path to out-path. Returns {:ok {:out path :argv [...]}} | {:error :render/... :stderr string}

Render the MLT document at mlt-path to out-path.
Returns {:ok {:out path :argv [...]}} | {:error :render/... :stderr string}
source

load-failuresclj

(load-failures stderr)

The lines where melt says it could not create a producer, filter or transition. melt exits 0 after them, so they are the only sign the render is not the document.

The lines where melt says it could not create a producer, filter or
transition. melt exits 0 after them, so they are the only sign the render
is not the document.
sourceraw docstring

melt-argvclj

(melt-argv melt-bin
           mlt-path
           out-path
           &
           {:keys [profile consumer extra] :as _opts})

The melt command vector for rendering mlt-path to out-path. opts: :profile (avformat profile name), :consumer (map of avformat consumer properties, emitted as key=value args sorted by key; validate it with consumer-args first), :extra (seq of raw args, after the consumer ones).

The melt command vector for rendering `mlt-path` to `out-path`.
opts: :profile (avformat profile name), :consumer (map of avformat consumer
properties, emitted as key=value args sorted by key; validate it with
`consumer-args` first), :extra (seq of raw args, after the consumer ones).
sourceraw docstring

melt-envclj

(melt-env env)

Environment entries a melt process needs so its Qt module loads with no window system, given the current ENV map.

MLT's Qt module (qtblend, kdenlivetitle, qtext) refuses to load unless DISPLAY or WAYLAND_DISPLAY is set, and then melt still exits 0, rendering the word INVALID where each producer should be and skipping each transition. QT_QPA_PLATFORM=offscreen alone does not help: MLT checks the variable before Qt ever runs. A placeholder DISPLAY plus the offscreen platform renders all three with no X server (measured 2026-09-15, melt 7.22). A render never needs a real window, so offscreen is the default even when a display exists; a caller's own QT_QPA_PLATFORM wins.

Environment entries a melt process needs so its Qt module loads with no
window system, given the current ENV map.

MLT's Qt module (qtblend, kdenlivetitle, qtext) refuses to load unless
DISPLAY or WAYLAND_DISPLAY is set, and then melt still exits 0, rendering
the word INVALID where each producer should be and skipping each
transition. QT_QPA_PLATFORM=offscreen alone does not help: MLT checks the
variable before Qt ever runs. A placeholder DISPLAY plus the offscreen
platform renders all three with no X server (measured 2026-09-15, melt
7.22). A render never needs a real window, so offscreen is the default even
when a display exists; a caller's own QT_QPA_PLATFORM wins.
sourceraw docstring

melt-rendererclj

(melt-renderer)
(melt-renderer bin)

A MeltRenderer bound to the melt on PATH (explicit bin overrides).

A MeltRenderer bound to the melt on PATH (explicit `bin` overrides).
sourceraw docstring

render!clj

(render! mlt-xml out-path & {:as opts})

Render MLT XML (a string) to out-path via *renderer*. The document is written to a temp file because melt consumes paths, not stdin. opts: see melt-argv. An invalid :consumer is refused before anything runs; a valid one reaches the renderer normalized to a consumer-map map.

Render MLT XML (a string) to `out-path` via `*renderer*`. The document is
written to a temp file because melt consumes paths, not stdin.
opts: see `melt-argv`. An invalid :consumer is refused before anything runs;
a valid one reaches the renderer normalized to a `consumer-map` map.
sourceraw docstring

render-doc!clj

(render-doc! doc out-path & {:as opts})

Like render! but takes a model node tree.

Like render! but takes a model node tree.
sourceraw docstring

run-processclj

(run-process argv)

Run ARGV with melt-env added to the inherited environment. {:exit :stdout :stderr}; both streams are drained concurrently, so a chatty melt cannot block on a full pipe.

Run ARGV with melt-env added to the inherited environment.
{:exit :stdout :stderr}; both streams are drained concurrently, so a chatty
melt cannot block on a full pipe.
sourceraw docstring

whichclj

(which bin)

Absolute path of bin on PATH, or nil.

Absolute path of `bin` on PATH, or nil.
sourceraw docstring

cljdoc builds & hosts documentation for Clojure/Script libraries

Keyboard shortcuts
Ctrl+kJump to recent docs
←Move to previous article
→Move to next article
Ctrl+/Jump to the search field
× close