Table of Contents

Class MFAACEncoderSettings

Namespace
VisioForge.Core.Types.X.AudioEncoders
Assembly
VisioForge.Core.dll

Media Foundation AAC encoder settings.

public class MFAACEncoderSettings : IAACEncoderSettings, IAudioEncoder, IMediaBlockSettings, IEncoderTextInfo

Inheritance

Implements

Inherited Members

Remarks

This encoder was deprecated because building a pipeline with it used to break every later nvh264enc/nvh265enc/nvav1enc session in the process with NV_ENC_ERR_INVALID_VERSION. The AAC encoder was never the cause: requesting it loads the mediafoundation plugin, which activated NVIDIA's Media Foundation video encoder MFTs while registering its elements, and that activation is what invalidated NVENC. The Windows redistributables ship a patched plugin that excludes those MFTs, so Media Foundation AAC and GStreamer NVENC coexist in one process; the deprecation has been lifted.

This holds while the SDK loads its own runtime - the `VisioForge.CrossPlatform.Core.Windows.*` package for the process architecture. An application that instead resolves GStreamer from a stock installation on PATH / GST_PLUGIN_PATH gets the unpatched plugin and the original failure, silently. _SETUP/NuGet/verify-patched-plugins.ps1 is what proves a deployment carries the fix.

VisioForge.Core.Types.X.AudioEncoders.AVENCAACEncoderSettings remains the Windows default for VisioForge.Core.Types.X.Output.MP4Output and is interchangeable for the typical capture/streaming use case. Prefer MFAACEncoderSettings for VideoEditCoreX with EncodingProfile/ges_pipeline_set_render_settings, where libav AAC does not roundtrip the GstPreset in this build.

Fields

Name

The name.

public static readonly string Name

Field Value

string

Properties

Bitrate

Gets or sets the bitrate (in kbits/s). Default: 0 (Auto). Valid values: 0, 96, 128, 160, 192, 576, 768, 960, 1152.

public int Bitrate { get; set; }

Property Value

int

SampleRate

Gets or sets the custom sample rate. Can be 0 to use original sample rate.

public int SampleRate { get; set; }

Property Value

int

Methods

CreateBlock()

Creates the block.

public MediaBlock CreateBlock()

Returns

MediaBlock

MediaBlock.

GetCaps()

Gets the caps.

public string GetCaps()

Returns

string

System.String.

GetParameters()

Gets the parameters as string.

public string GetParameters()

Returns

string

System.String.

GetSupportedBitrates()

Gets the supported bitrates.

public int[] GetSupportedBitrates()

Returns

int[]

System.Int32[].

GetSupportedChannelCounts()

Gets the supported channel counts.

public int[] GetSupportedChannelCounts()

Returns

int[]

System.Int32[].

GetSupportedSampleRates()

Gets the supported sample rates.

public int[] GetSupportedSampleRates()

Returns

int[]

System.Int32[].

IsAvailable()

Determines whether this encoder is available.

public static bool IsAvailable()

Returns

bool

true if this encoder is available; otherwise, false.