Class ElevenLabsSynthesizerBlock
- Assembly
- VisioForge.Core.dll
ElevenLabs text-to-speech synthesizer block. Takes text input and produces audio output using the ElevenLabs API.
public class ElevenLabsSynthesizerBlock : MediaBlock, IMediaBlock, IDisposable, IMediaBlockInternalsInheritance
Implements
Inherited Members
Extension Methods
Constructors
ElevenLabsSynthesizerBlock(ElevenLabsSynthesizerSettings)
Initializes a new instance of the VisioForge.Core.MediaBlocks.ElevenLabs.ElevenLabsSynthesizerBlock class.
public ElevenLabsSynthesizerBlock(ElevenLabsSynthesizerSettings settings)Parameters
settingsElevenLabsSynthesizerSettings-
The synthesizer settings.
Properties
Input
Gets the primary input pad for this media block.
public override MediaBlockPad Input { get; }Property Value
Inputs
Gets the collection of input pads for this media block.
public override MediaBlockPad[] Inputs { get; }Property Value
Output
Gets the primary output pad for this media block.
public override MediaBlockPad Output { get; }Property Value
Outputs
Gets the collection of output pads for this media block.
public override MediaBlockPad[] Outputs { get; }Property Value
Settings
Gets or sets the settings for this block.
public ElevenLabsSynthesizerSettings Settings { get; set; }Property Value
Type
Gets or sets the functional type of this media block (source, sink, effect, encoder, etc.). This property must be overridden in derived classes to specify the block's role in the pipeline.
public override MediaBlockType Type { get; }Property Value
Exceptions
- NotImplementedException
-
Thrown when the derived class has not implemented this property.
- NotImplementedException
-
Thrown when the derived class has not implemented the setter.
Methods
Build()
Builds and initializes this media block, creating any necessary GStreamer elements and configuring them. This method must be overridden in derived classes to implement block-specific initialization logic.
public override bool Build()Returns
- bool
-
trueif the block was successfully built; otherwise,false.
CleanUp()
Releases all internal resources.
public void CleanUp()Dispose(bool)
Releases unmanaged and - optionally - managed resources. Override this method in derived classes to implement block-specific cleanup logic.
protected override void Dispose(bool disposing)Parameters
disposingbool-
trueto release both managed and unmanaged resources;falseto release only unmanaged resources.
GetCore()
Retrieves the core BaseElement wrapper that provides additional functionality around the GStreamer element. This wrapper adds VisioForge-specific features and simplifies common operations on the underlying GStreamer element.
public BaseElement GetCore()Returns
- BaseElement
-
The BaseElement wrapper instance that encapsulates the GStreamer element.
GetElement()
Retrieves the primary GStreamer element that represents this MediaBlock in the pipeline. This element is the main component that performs the actual media processing and is connected to other elements in the GStreamer pipeline.
public Element GetElement()Returns
- Element
-
The GStreamer Element instance, or null if the block hasn't been built yet.
IsAvailable()
Determines whether this media block is available. The GStreamer elevenlabs plugin must be installed.
public static bool IsAvailable()Returns
- bool
-
trueif this media block is available; otherwise,false.
IMediaBlockInternals.SetContext(MediaBlocksPipeline)
Associates this MediaBlock with a pipeline and initializes its internal context. This method is called automatically when the block is added to a pipeline, providing access to shared resources and pipeline-wide configuration.
void IMediaBlockInternals.SetContext(MediaBlocksPipeline pipeline)Parameters
pipelineMediaBlocksPipeline-
The MediaBlocksPipeline instance that will manage this block.