Class AudioMixerSourceSettings
- Namespace
- VisioForge.Core.Types.X.Sources
- Assembly
- VisioForge.Core.dll
Class AudioMixerSourceSettings. Implements the VisioForge.Core.Types.X.VideoCapture.IVideoCaptureBaseAudioSourceSettings
public class AudioMixerSourceSettings : IVideoCaptureBaseAudioSourceSettings, IMediaBlockSettings, IAudioVolumeMuteInheritance
Implements
Inherited Members
Properties
Format
Gets or sets the audio format that will be used in mixer.
public AudioInfoX Format { get; set; }Property Value
Exceptions
- ArgumentNullException
-
Thrown when value is null. Use the
AudioInfoXctor to assign an explicit format instead of nulling the property.
IgnoreInactivePads
Gets or sets a value indicating whether the underlying audiomixer aggregator
should set ignore-inactive-pads=true. Default false, matching the
GStreamer default. Set to true only when mixing multiple streams where one
may end before the others (e.g., MediaPlayerCoreX additional audio).
See VisioForge.Core.Types.X.AudioEffects.AudioMixerSettings.IgnoreInactivePads
for the full footgun rationale (single-input mixers must NOT enable it).
public bool IgnoreInactivePads { get; set; }Property Value
Inputs
Gets the inputs.
public List<IVideoCaptureBaseAudioSourceSettings> Inputs { get; }Property Value
Methods
CreateBlock()
Creates the block.
public MediaBlock CreateBlock()Returns
- MediaBlock
-
MediaBlock.
Exceptions
GetMute()
Gets the mute.
public bool GetMute()Returns
- bool
-
trueif successful,falseotherwise.
GetVolume()
Gets the volume. Value should be in 0.0 - 1.0 range.
public double GetVolume()Returns
- double
-
System.Double.
IsSupported()
Determines whether this interface is supported.
public bool IsSupported()Returns
- bool
-
trueif this interface is supported; otherwise,false.
Remarks
The mixer forwards every volume and mute call to all of its inputs, so it can only claim
the controls when every input has them. It answered true unconditionally, which sent
a caller that had asked first into a set that quietly did nothing on any input lacking
them. An empty mixer supports nothing, and a null entry - which the mixer block itself
skips rather than rejecting - counts as an input without the controls.
SetInterface(IAudioVolumeMute)
Sets the interface.
public void SetInterface(IAudioVolumeMute intf)Parameters
intfIAudioVolumeMute-
The interface.
SetMute(bool)
Sets the mute.
public void SetMute(bool mute)Parameters
mutebool-
if set to
truemute.
SetVolume(double)
Sets the volume. Value should be in 0.0 - 1.0 range.
public void SetVolume(double volume)Parameters
volumedouble-
The volume.