@rendley/sdk - v1.15.19
    Preparing search index...

    Class Settings

    Stores project-wide runtime and export settings used by the engine, renderer, media pipeline, and subtitles.

    Index

    Constructors

    Methods

    getClipAudioMonoChannelsWeight getClipAudioMonoMixType getClipAudioSampleForceMono getClipAudioSampleRate getClipAudioSeekThreshold getClipAudioStoreSamples getClipImageLoadOnInit getClipVideoDynamicLoad getClipVideoDynamicLoadTime getClipVideoFilmstripInterval getClipVideoFilmstripKeyframesOnly getClipVideoFilmstripMaxFrames getClipVideoFilmstripMaxHeight getClipVideoFilmstripMaxWidth getClipVideoFilmstripMaxWorkers getClipVideoSeekThreshold getClipVideoStoreFilmstrip getClipVideoStoreSamples getDecoderPreferredAcceleration getDecoderUseSeparateWorker getDecoderUseSubImage getDecoderUseWebCodecs getDefaultSettings getEncoderBitrate getEncoderBitrateMode getEncoderCodec getEncoderCrf getEncoderDeadline getEncoderForcedCodecRFCString getEncoderKeyframeInterval getEncoderPerformanceMode getEncoderPreferredAcceleration getEncoderUseAlpha getEncoderUseWebCodecs getM3u8MaxResolution getMediaBackgroundHashing getMediaHashAlgorithm getMediaHashMaxWorkers getMediaInfoMaxWorkers getMediaTranscodeMaxWorkers getRenderAudioUseWorker getRenderCancelFailTimeout getRenderChunkedOutputMaxSize getRenderFixAntialiasDiagonal getRenderMaxQueueSize getRenderProcessingStallTimeout getRenderShowPreview getRenderThrottleFactor getRenderUseChunkedOutput getRenderVideoUseDirectFrames getSubtitlesAutoWrapOnResize getSubtitlesScaleOnResize getUseInternalTranscoder getViewAutoLayoutOnResize serialize setClipAudioMonoChannelsWeight setClipAudioMonoMixType setClipAudioSampleForceMono setClipAudioSampleRate setClipAudioSeekThreshold setClipAudioStoreSamples setClipImageLoadOnInit setClipVideoDynamicLoad setClipVideoDynamicLoadTime setClipVideoFilmstripInterval setClipVideoFilmstripKeyframesOnly setClipVideoFilmstripMaxFrames setClipVideoFilmstripMaxHeight setClipVideoFilmstripMaxWidth setClipVideoFilmstripMaxWorkers setClipVideoSeekThreshold setClipVideoStoreFilmstrip setClipVideoStoreSamples setDecoderPreferredAcceleration setDecoderUseSeparateWorker setDecoderUseSubImage setDecoderUseWebCodecs setEncoderBitrate setEncoderBitrateMode setEncoderCodec setEncoderCrf setEncoderDeadline setEncoderForcedCodecRFCString setEncoderKeyframeInterval setEncoderPerformanceMode setEncoderPreferredAcceleration setEncoderUseAlpha setEncoderUseWebCodecs setM3u8MaxResolution setMediaBackgroundHashing setMediaHashAlgorithm setMediaHashMaxWorkers setMediaInfoMaxWorkers setMediaTranscodeMaxWorkers setRenderAudioUseWorker setRenderCancelFailTimeout setRenderChunkedOutputMaxSize setRenderFixAntialiasDiagonal setRenderMaxQueueSize setRenderProcessingStallTimeout setRenderShowPreview setRenderThrottleFactor setRenderUseChunkedOutput setRenderVideoUseDirectFrames setSubtitlesAutoWrapOnResize setSubtitlesScaleOnResize setUseInternalTranscoder setViewAutoLayoutOnResize deserialize

    Constructors

    • Creates a settings object initialized with SDK defaults.

      Returns Settings

    Methods

    • Returns the per-channel mono downmix weights.

      Returns number[]

      The per-channel mono downmix weights.

    • Returns the mono downmix formula for waveform samples.

      Returns MonoMixType

      The mono downmix formula for waveform samples.

    • Returns whether waveform samples are downmixed to mono.

      Returns boolean

      Whether waveform samples are downmixed to mono.

    • Returns the stored waveform sample rate in Hz.

      Returns number

      The stored waveform sample rate in Hz.

    • Returns the audio seek back-off in seconds.

      Returns number

      The audio seek back-off in seconds.

    • Returns whether waveform samples are extracted for audio media.

      Returns boolean

      Whether waveform samples are extracted for audio media.

    • Returns whether image textures are uploaded eagerly on init.

      Returns boolean

      Whether image textures are uploaded eagerly on init.

    • Returns whether video sources are loaded dynamically.

      Returns boolean

      Whether video sources are loaded dynamically.

    • Returns the dynamic-load proximity window in seconds.

      Returns number

      The dynamic-load proximity window in seconds.

    • Returns the minimum time between filmstrip frames, in seconds.

      Returns number

      The minimum time between filmstrip frames, in seconds.

    • Returns whether filmstrip extraction decodes only keyframes.

      Returns boolean

      Whether filmstrip extraction decodes only keyframes.

    • Returns the maximum number of filmstrip frames per media.

      Returns number

      The maximum number of filmstrip frames per media.

    • Returns the maximum filmstrip thumbnail height in pixels.

      Returns number

      The maximum filmstrip thumbnail height in pixels.

    • Returns the maximum filmstrip thumbnail width in pixels.

      Returns number

      The maximum filmstrip thumbnail width in pixels.

    • Returns the maximum number of concurrent filmstrip workers.

      Returns number

      The maximum number of concurrent filmstrip workers.

    • Returns the video seek back-off in seconds.

      Returns number

      The video seek back-off in seconds.

    • Returns whether filmstrips are extracted for video media.

      Returns boolean

      Whether filmstrips are extracted for video media.

    • Returns whether waveform samples are extracted for video media.

      Returns boolean

      Whether waveform samples are extracted for video media.

    • Returns whether video clips demux on separate workers.

      Returns boolean

      Whether video clips demux on separate workers.

    • Returns whether decoded frames are uploaded with texSubImage2D.

      Returns boolean

      Whether decoded frames are uploaded with texSubImage2D.

    • Returns whether the WebCodecs decoder is used.

      Returns boolean

      Whether the WebCodecs decoder is used.

    • Returns the immutable default settings payload derived from SettingsSchema.

      Returns {
          clipAudioMonoChannelsWeight: number[];
          clipAudioMonoMixType: MonoMixType;
          clipAudioSampleForceMono: boolean;
          clipAudioSampleRate: number;
          clipAudioSeekThreshold: number;
          clipAudioStoreSamples: boolean;
          clipImageLoadOnInit: boolean;
          clipVideoDynamicLoad: boolean;
          clipVideoDynamicLoadTime: number;
          clipVideoFilmstripInterval: number;
          clipVideoFilmstripKeyframesOnly: boolean;
          clipVideoFilmstripMaxFrames: number;
          clipVideoFilmstripMaxHeight: number;
          clipVideoFilmstripMaxWidth: number;
          clipVideoFilmstripMaxWorkers: number;
          clipVideoSeekThreshold: number;
          clipVideoStoreFilmstrip: boolean;
          clipVideoStoreSamples: boolean;
          decoderPreferredAcceleration: PreferredAcceleration;
          decoderUseSeparateWorker: boolean;
          decoderUseSubImage: boolean;
          decoderUseWebCodecs: boolean;
          encoderBitrate: number;
          encoderBitrateMode: BitrateMode;
          encoderCodec: VideoCodec;
          encoderCrf: number;
          encoderDeadline: number;
          encoderForcedCodecRFCString: string;
          encoderKeyframeInterval: number;
          encoderPerformanceMode: PerformanceMode;
          encoderPreferredAcceleration: PreferredAcceleration;
          encoderUseAlpha: boolean;
          encoderUseWebCodecs: boolean;
          m3u8MaxResolution: [number, number];
          mediaBackgroundHashing: boolean;
          mediaHashAlgorithm: HashAlgorithmEnum;
          mediaHashMaxWorkers: number;
          mediaInfoMaxWorkers: number;
          mediaTranscodeMaxWorkers: number;
          renderAudioUseWorker: boolean;
          renderCancelFailTimeout: number;
          renderChunkedOutputMaxSize: number;
          renderFixAntialiasDiagonal: boolean;
          renderMaxQueueSize: number;
          renderProcessingStallTimeout: number;
          renderShowPreview: boolean;
          renderThrottleFactor: number;
          renderUseChunkedOutput: boolean;
          renderVideoUseDirectFrames: boolean;
          subtitlesAutoWrapOnResize: boolean;
          subtitlesScaleOnResize: boolean;
          useInternalTranscoder: boolean;
          viewAutoLayoutOnResize: AutoLayoutMode;
      }

      The default settings object.

    • Returns the target video bitrate in bps.

      Returns number

      The target video bitrate in bps.

    • Returns the bitrate control mode.

      Returns BitrateMode

      The bitrate control mode.

    • Returns the export video codec.

      Returns VideoCodec

      The export video codec.

    • Returns the CRF used by the wasm FFmpeg encoder path.

      Returns number

      The CRF used by the wasm FFmpeg encoder path.

    • Returns the wasm encoder deadline in microseconds.

      Returns number

      The wasm encoder deadline in microseconds.

    • Returns the forced RFC 6381 codec string ("" when none).

      Returns string

      The forced RFC 6381 codec string ("" when none).

    • Returns the keyframe interval in frames.

      Returns number

      The keyframe interval in frames.

    • Returns the encoder performance (latency) mode.

      Returns PerformanceMode

      The encoder performance (latency) mode.

    • Returns whether the export requests an alpha channel.

      Returns boolean

      Whether the export requests an alpha channel.

    • Returns whether the WebCodecs encoder is used.

      Returns boolean

      Whether the WebCodecs encoder is used.

    • Returns the [width, height] cap for HLS variant selection.

      Returns number[]

      The [width, height] cap for HLS variant selection.

    • Returns whether media hashes are computed in the background.

      Returns boolean

      Whether media hashes are computed in the background.

    • Returns the maximum number of background hash workers.

      Returns number

      The maximum number of background hash workers.

    • Returns the maximum number of pooled media info workers (0 = disabled).

      Returns number

      The maximum number of pooled media info workers (0 = disabled).

    • Returns the maximum number of pooled transcode workers (0 = disabled).

      Returns number

      The maximum number of pooled transcode workers (0 = disabled).

    • Returns whether export audio is mixed on a dedicated worker.

      Returns boolean

      Whether export audio is mixed on a dedicated worker.

    • Returns the export cancel timeout in milliseconds.

      Returns number

      The export cancel timeout in milliseconds.

    • Returns the maximum output chunk size in bytes.

      Returns number

      The maximum output chunk size in bytes.

    • Returns whether the diagonal anti-alias fix is applied.

      Returns boolean

      Whether the diagonal anti-alias fix is applied.

    • Returns the maximum number of in-flight frame reads during export.

      Returns number

      The maximum number of in-flight frame reads during export.

    • Returns the export stall watchdog timeout in milliseconds.

      Returns number

      The export stall watchdog timeout in milliseconds.

    • Gets the visibility of the render preview.

      Returns boolean

      A boolean indicating whether the render preview is visible.

      • No longer used as there is no intermediate framebuffer
    • Returns the export back-pressure throttle factor.

      Returns number

      The export back-pressure throttle factor.

    • Returns whether the export produces chunked output.

      Returns boolean

      Whether the export produces chunked output.

    • Returns whether the export uses the direct-frames path.

      Returns boolean

      Whether the export uses the direct-frames path.

    • Returns whether the subtitle wrap width follows display resizes.

      Returns boolean

      Whether the subtitle wrap width follows display resizes.

    • Returns whether subtitles scale with the display on resize.

      Returns boolean

      Whether subtitles scale with the display on resize.

    • Returns whether the internal transcoder is used.

      Returns boolean

      Whether the internal transcoder is used.

    • Returns the auto-layout strategy applied on display resize.

      Returns AutoLayoutMode

      The auto-layout strategy applied on display resize.

    • Serializes the current settings into a schema-validated plain object.

      Returns {
          clipAudioMonoChannelsWeight: number[];
          clipAudioMonoMixType: MonoMixType;
          clipAudioSampleForceMono: boolean;
          clipAudioSampleRate: number;
          clipAudioSeekThreshold: number;
          clipAudioStoreSamples: boolean;
          clipImageLoadOnInit: boolean;
          clipVideoDynamicLoad: boolean;
          clipVideoDynamicLoadTime: number;
          clipVideoFilmstripInterval: number;
          clipVideoFilmstripKeyframesOnly: boolean;
          clipVideoFilmstripMaxFrames: number;
          clipVideoFilmstripMaxHeight: number;
          clipVideoFilmstripMaxWidth: number;
          clipVideoFilmstripMaxWorkers: number;
          clipVideoSeekThreshold: number;
          clipVideoStoreFilmstrip: boolean;
          clipVideoStoreSamples: boolean;
          decoderPreferredAcceleration: PreferredAcceleration;
          decoderUseSeparateWorker: boolean;
          decoderUseSubImage: boolean;
          decoderUseWebCodecs: boolean;
          encoderBitrate: number;
          encoderBitrateMode: BitrateMode;
          encoderCodec: VideoCodec;
          encoderCrf: number;
          encoderDeadline: number;
          encoderForcedCodecRFCString: string;
          encoderKeyframeInterval: number;
          encoderPerformanceMode: PerformanceMode;
          encoderPreferredAcceleration: PreferredAcceleration;
          encoderUseAlpha: boolean;
          encoderUseWebCodecs: boolean;
          m3u8MaxResolution: [number, number];
          mediaBackgroundHashing: boolean;
          mediaHashAlgorithm: HashAlgorithmEnum;
          mediaHashMaxWorkers: number;
          mediaInfoMaxWorkers: number;
          mediaTranscodeMaxWorkers: number;
          renderAudioUseWorker: boolean;
          renderCancelFailTimeout: number;
          renderChunkedOutputMaxSize: number;
          renderFixAntialiasDiagonal: boolean;
          renderMaxQueueSize: number;
          renderProcessingStallTimeout: number;
          renderShowPreview: boolean;
          renderThrottleFactor: number;
          renderUseChunkedOutput: boolean;
          renderVideoUseDirectFrames: boolean;
          subtitlesAutoWrapOnResize: boolean;
          subtitlesScaleOnResize: boolean;
          useInternalTranscoder: boolean;
          viewAutoLayoutOnResize: AutoLayoutMode;
      }

      The serialized settings payload.

    • Sets per-channel weights for the mono downmix (unitless, normalized for the average modes). Channels beyond the array length get weight 0; if all weights sum to 0, channel 0 gets weight 1. Default [1.0, 1.0].

      Parameters

      • weights: number[]

        Per-channel mix weights, index = channel.

      Returns void

      Nothing.

    • Sets the mono downmix formula for waveform samples (average, absolute average, peak/absolute max/min). Only applied when setClipAudioSampleForceMono is enabled. Default MonoMixType.ABSOLUTE_AVERAGE.

      Parameters

      Returns void

      Nothing.

    • Downmixes extracted waveform samples to a single channel (see setClipAudioMonoMixType). Default false.

      Parameters

      • forceMono: boolean

        Whether waveform samples are downmixed to mono.

      Returns void

      Nothing.

    • Sets the sample rate (Hz) of the stored waveform samples. Decoding runs at the source rate and is resampled to this value; the same value indexes into the stored samples, so changing it after extraction misaligns lookups. Default 10000.

      Parameters

      • sampleRate: number

        Stored waveform sample rate in Hz.

      Returns void

      Nothing.

    • Sets the back-off (seconds) subtracted from the audio element duration when clamping a seek, so seeks never land in/past the last audio packet (the default suits FLAC/Opus frame sizes). Default 0.1.

      Parameters

      • threshold: number

        Seek back-off from the end of the audio, in seconds.

      Returns void

      Nothing.

    • Enables waveform sample extraction for audio media after it loads (used for waveform display). Video media is gated separately by setClipVideoStoreSamples. Default false.

      Parameters

      • storeSamples: boolean

        Whether to extract and store waveform samples for audio media.

      Returns void

      Nothing.

    • Uploads image clip textures to the GPU during clip init instead of at first draw. Default false.

      Parameters

      • enabled: boolean

        Whether image textures are uploaded eagerly on init.

      Returns void

      Nothing.

    • Enables lazy loading/unloading of the HTML video source based on playhead proximity (see setClipVideoDynamicLoadTime). During export this only applies to player-backed clips. Default false.

      Parameters

      • enabled: boolean

        Whether video sources are loaded dynamically.

      Returns void

      Nothing.

    • Sets the look-ahead/behind window (seconds) around a clip within which a dynamically loaded video source is kept loaded. Default 2.

      Parameters

      • seconds: number

        Proximity window in seconds.

      Returns void

      Nothing.

    • Sets the minimum time between filmstrip frames, in seconds. The effective hop is max(duration / maxFrames, interval) (see setClipVideoFilmstripMaxFrames). Default 1.

      Parameters

      • interval: number

        Minimum seconds between filmstrip frames.

      Returns void

      Nothing.

    • Restricts filmstrip extraction to keyframes. Much faster, but frames snap to keyframe positions instead of exact hop times. Default true.

      Parameters

      • keyframesOnly: boolean

        Whether to decode only keyframes for filmstrips.

      Returns void

      Nothing.

    • Caps the number of filmstrip frames per media. Overrides the interval only when duration / maxFrames exceeds it. Default Number.MAX_VALUE (no cap).

      Parameters

      • maxFrames: number

        Maximum filmstrip frames per media.

      Returns void

      Nothing.

    • Sets the maximum height (px) of filmstrip thumbnails. Together with setClipVideoFilmstripMaxWidth this is an aspect-preserving fit box, not an exact size. Default 80.

      Parameters

      • maxHeight: number

        Maximum thumbnail height in pixels.

      Returns void

      Nothing.

    • Sets the maximum width (px) of filmstrip thumbnails (aspect-preserving fit box with setClipVideoFilmstripMaxHeight). Default Number.MAX_VALUE.

      Parameters

      • maxWidth: number

        Maximum thumbnail width in pixels.

      Returns void

      Nothing.

    • Sets how many filmstrip extractions may run concurrently; additional media wait in a queue. Default 10.

      Parameters

      • maxWorkers: number

        Maximum concurrent filmstrip workers.

      Returns void

      Nothing.

    • Sets the back-off (seconds) subtracted from the video element duration when clamping a seek. Default 0 (no back-off).

      Parameters

      • threshold: number

        Seek back-off from the end of the video, in seconds.

      Returns void

      Nothing.

    • Enables filmstrip (thumbnail strip) extraction for video media after load and after media replacement. Default false.

      Parameters

      • storeFilmstrip: boolean

        Whether to extract filmstrips for video media.

      Returns void

      Nothing.

    • Enables waveform sample extraction for video media that has an audio stream. Default false.

      Parameters

      • storeSamples: boolean

        Whether to extract and store waveform samples for video media.

      Returns void

      Nothing.

    • Sets the hardwareAcceleration preference passed to the WebCodecs VideoDecoder. Default PreferredAcceleration.HARDWARE.

      Parameters

      Returns void

      Nothing.

    • Gives each decoding video clip its own FFmpeg demuxer instance (with the media mounted into it) instead of sharing the main worker's demuxer. Default false.

      Parameters

      • use: boolean

        Whether each video clip demuxes on its own worker.

      Returns void

      Nothing.

    • Uploads decoded VideoFrames with texSubImage2D when the texture size already matches (otherwise texImage2D). Usually slower for video, hence off by default. Default false.

      Parameters

      • use: boolean

        Whether to upload frames with texSubImage2D.

      Returns void

      Nothing.

    • Decodes video clips with the WebCodecs VideoDecoder during export; when false clips render through the HTML video element instead. Default true.

      Parameters

      • use: boolean

        Whether to decode with WebCodecs.

      Returns void

      Nothing.

    • Sets the target video bitrate in bits per second. Default 5_000_000.

      Parameters

      • bitrate: number

        Target bitrate in bps.

      Returns void

      Nothing.

    • Sets the bitrate control mode (CONSTANT / VARIABLE). The export encoder swaps to the other mode automatically if the requested one is unsupported. Default BitrateMode.CONSTANT.

      Parameters

      Returns void

      Nothing.

    • Sets the export video codec, which also picks the container and audio codec (H264 -> mp4/aac, VP8/VP9 -> webm/ogg). H.264 requires the WebCodecs encoder; with encoderUseWebCodecs = false it logs an error and falls back to VP8. Default VideoCodec.H264.

      Parameters

      Returns void

      Nothing.

    • Sets the constant-rate-factor quality (0-51, lower = better) for the wasm FFmpeg encoder path (encoderUseWebCodecs = false). Ignored by the WebCodecs encoder. Default 23.

      Parameters

      • crf: number

        CRF value (0-51).

      Returns void

      Nothing.

    • Sets the VP8/VP9 encoder deadline in microseconds for the wasm FFmpeg encoder path (encoderUseWebCodecs = false). Ignored by the WebCodecs encoder. Default 10000.

      Parameters

      • deadline: number

        Encoder deadline in microseconds.

      Returns void

      Nothing.

    • Forces an explicit RFC 6381 codec string (e.g. avc1.640034 for H.264 High) for the WebCodecs encoder. It is tried first and verbatim; only if no encoder configuration supports it does the export warn and fall back to the built-in ladder (Baseline first for H.264). Applies to the active codec only. Empty string (default) uses the built-in ladder.

      Parameters

      • codec: string

        RFC 6381 codec string, or "" to use the built-in ladder.

      Returns void

      Nothing.

    • Sets the keyframe interval in frames (not seconds): a keyframe is forced every N encoded frames. Default 150.

      Parameters

      • interval: number

        Keyframe interval in frames.

      Returns void

      Nothing.

    • Sets the WebCodecs latencyMode: QUALITY lets the encoder use its best tools (including B-frames on High/Main H.264 hardware encoders), REALTIME favors throughput. Default PerformanceMode.QUALITY.

      Parameters

      Returns void

      Nothing.

    • Sets the hardware-acceleration preference for the export VideoEncoder. The export falls back to NO_PREFERENCE and then SOFTWARE automatically if the preferred one is unsupported. Default PreferredAcceleration.HARDWARE.

      Parameters

      Returns void

      Nothing.

    • Requests an alpha channel in the export. Only honored by the wasm FFmpeg encoder path with VP8/VP9 (webm); the WebCodecs VideoEncoder has no alpha support. Default false.

      Parameters

      • use: boolean

        Whether to export with an alpha channel.

      Returns void

      Nothing.

    • Selects the WebCodecs VideoEncoder (true) or the wasm FFmpeg encoder (false). H.264 is only available through WebCodecs: disabling WebCodecs while H.264 is selected logs an error and falls back to VP8. Default true.

      Parameters

      • use: boolean

        Whether to encode with WebCodecs.

      Returns void

      Nothing.

    • Caps the HLS variant picked when loading an .m3u8: the largest RESOLUTION within [width, height] is used. Default [1920, 1080].

      Parameters

      • width: number

        Maximum variant width in pixels.

      • height: number

        Maximum variant height in pixels.

      Returns void

      Nothing.

    • Enables background media hashing on a dedicated FFmpeg worker.

      When enabled, media using an FFmpeg hash algorithm (XXHash128/XXHash64, see setMediaHashAlgorithm) becomes READY without waiting for the hash; the hash is computed on a separate FFmpeg worker queue and lands later (see MediaData::getHashState and the LIBRARY_MEDIA_HASH_UPDATED event). Library::isProcessing (and therefore Engine::isSafeToSerialize) reports processing until all pending hashes complete.

      SHA256 and a custom dataHashFunction are not affected and always hash inline (backwards compatibility). Default false, preserving the previous inline-hash behavior.

      Parameters

      • backgroundHashing: boolean

        Whether media hashes should be computed in the background.

      Returns void

    • Sets the hash used for media identity/deduplication. XXHash128/XXHash64 are computed by wasm (and eligible for setMediaBackgroundHashing); SHA256 always hashes inline and is the fallback if an wasm hash fails. Default HashAlgorithmEnum.SHA256.

      Parameters

      Returns void

      Nothing.

    • Limits the background media hash worker pool size (see setMediaBackgroundHashing).

      Each FFmpeg worker instance costs roughly 20MB of memory, so the pool is capped; queued hashes wait for a free worker. Idle workers are terminated automatically. Default 5.

      Parameters

      • maxWorkers: number

        Maximum concurrent hash workers (minimum 1).

      Returns void

    • Enables pooled media info probing during media load (see Engine::getMediaInfoService).

      When greater than 0, each media load probes its media info on a pool of dedicated FFmpeg workers instead of the main worker, so parallel media loads don't serialize on the main worker and its global media info lock. The final media file always lives on the main FFmpeg only. Each worker instance costs roughly 20MB of memory; idle workers are terminated automatically.

      Default 0: pooling disabled, media info is probed on the main FFmpeg worker (previous behavior).

      Parameters

      • maxWorkers: number

        Maximum concurrent media info workers (0 disables the pool).

      Returns void

    • Sets the maximum number of pooled media transcode workers (see Engine::getMediaTranscodeService).

      When greater than 0, compatibility transcodes during media load run on a pool of dedicated FFmpeg workers instead of the main worker, so a long transcode doesn't hold the global media info lock or queue the main-worker operations of parallel media loads behind it. Additional transcode requests wait for a free pool slot — only transcodes wait, nothing else. Each worker instance costs roughly 20MB of memory; idle workers are terminated automatically.

      Default 1: one dedicated transcode worker.

      Parameters

      • maxWorkers: number

        Maximum concurrent transcode workers (0 disables the pool and transcodes on the main FFmpeg worker under the global media info lock — previous behavior).

      Returns void

    • Generates the export audio mix on a dedicated worker instead of the main FFmpeg worker (also enables worker-based progress/cancel handling). Default true.

      Parameters

      • use: boolean

        Whether to mix export audio on a dedicated worker.

      Returns void

      Nothing.

    • Sets how long (ms) cancelExport() waits for the render loop to stop before rejecting with a cancel timeout. Default 10000.

      Parameters

      • timeout: number

        Cancel timeout in milliseconds.

      Returns void

      Nothing.

    • Sets the maximum size in bytes of each output chunk when chunked output is enabled (setRenderUseChunkedOutput). Default 768 * 1024 * 1024 (768 MB).

      Parameters

      • size: number

        Maximum chunk size in bytes.

      Returns void

      Nothing.

    • Adds an extra blend pass on unfiltered sprites to hide diagonal anti-aliasing seams. Only effective when the display antialias mode is MSAA. Default true.

      Parameters

      • use: boolean

        Whether to apply the diagonal anti-alias fix.

      Returns void

      Nothing.

    • Sets the maximum number of in-flight async readPixels frames during export; beyond it the render loop sleeps until the queue drains (see setRenderThrottleFactor). Default 10.

      Parameters

      • size: number

        Maximum in-flight frame reads.

      Returns void

      Nothing.

    • Sets the export stall watchdog (ms): if GPU sync / frame processing makes no progress for this long the export fails with a stall error listing the stuck clips. 0 disables the watchdog. Default 600000 (10 min).

      Parameters

      • timeout: number

        Stall timeout in milliseconds, 0 to disable.

      Returns void

      Nothing.

    • Sets the visibility of the render preview.

      Parameters

      • show: boolean

        A boolean indicating whether to show the render preview.

      Returns void

      • No longer used as there is no intermediate framebuffer
    • Sets the back-pressure sleep multiplier in ms per queued frame (sleep(factor * queueLength)), used when the read-pixels or encoder queue is saturated. Default 1.

      Parameters

      • factor: number

        Milliseconds per queued frame.

      Returns void

      Nothing.

    • Muxes the export into multiple output files of at most setRenderChunkedOutputMaxSize bytes instead of one blob, for outputs beyond browser blob limits. See OutputChunkHelper for reassembly. Default false.

      Parameters

      • use: boolean

        Whether to produce chunked output.

      Returns void

      Nothing.

    • Routes Engine.export() through the direct-frames path (VideoFrame straight to the encoder) instead of the legacy readPixels path. Default true.

      Parameters

      • use: boolean

        Whether to export with direct frames.

      Returns void

      Nothing.

    • Recomputes the subtitle wrap width on display resize, only when word wrap is already enabled on the subtitle text style. Default false.

      Parameters

      • autoWrap: boolean

        Whether the subtitle wrap width follows display resizes.

      Returns void

      Nothing.

    • Scales subtitles by the width ratio when the display is resized (position is always rescaled regardless). Default false.

      Parameters

      • scale: boolean

        Whether subtitles scale with the display.

      Returns void

      Nothing.

    • Enables the built-in FFmpeg compatibility transcode for unsupported media. When false the host must provide its own transcoder. Default true.

      Parameters

      • use: boolean

        Whether to use the internal transcoder.

      Returns void

      Nothing.

    • Sets how clips are re-laid out when the display is resized: NONE leaves them, PREFER_WIDTH / PREFER_HEIGHT scale by that axis ratio, BOTH by their product. Default AutoLayoutMode.NONE.

      Parameters

      Returns void

      Nothing.

    • Creates a settings instance from serialized data.

      Parameters

      • data: object

        Serialized settings payload to validate and load.

      Returns Settings

      The deserialized settings instance.