<!--
{
  "availability" : [
    "FxPlug: 4.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "professional_video_applications",
  "identifier" : "/documentation/professional_video_applications/FxDynamicParameterAPI_v3",
  "metadataVersion" : "0.1.0",
  "role" : "Protocol",
  "symbol" : {
    "kind" : "Protocol",
    "modules" : [
      "Professional Video Applications"
    ],
    "preciseIdentifier" : "c:objc(pl)FxDynamicParameterAPI_v3"
  },
  "title" : "FxDynamicParameterAPI_v3"
}
-->

# FxDynamicParameterAPI_v3

Allows your plugin to create parameters on-the-fly.

```
protocol FxDynamicParameterAPI_v3
```

## Overview

With this API your plugin can create and remove parameters outside of its `-addParameters` method. It can also get and set various properties of parameters during run-time, as well, such as the minimum and maximum allowable values.

## Topics

### Instance Methods

[`func parameter(UInt32, floatMinimum: UnsafeMutablePointer<Double>!, maximum: UnsafeMutablePointer<Double>!, sliderMinimum: UnsafeMutablePointer<Double>!, sliderMaximum: UnsafeMutablePointer<Double>!) -> (any Error)!`](/documentation/professional_video_applications/FxDynamicParameterAPI_v3/parameter(_:floatMinimum:maximum:sliderMinimum:sliderMaximum:))

Get a parameter’s bounds as floating point values.

[`func parameter(UInt32, intMinimum: UnsafeMutablePointer<Int32>!, maximum: UnsafeMutablePointer<Int32>!, sliderMinimum: UnsafeMutablePointer<Int32>!, sliderMaximum: UnsafeMutablePointer<Int32>!) -> (any Error)!`](/documentation/professional_video_applications/FxDynamicParameterAPI_v3/parameter(_:intMinimum:maximum:sliderMinimum:sliderMaximum:))

Get a parameter’s bounds as integer values.

[`func parameter(UInt32, name: AutoreleasingUnsafeMutablePointer<NSString?>!) -> (any Error)!`](/documentation/professional_video_applications/FxDynamicParameterAPI_v3/parameter(_:name:))

Get a parameter’s name.

[`func parameterCount() -> UInt32`](/documentation/professional_video_applications/FxDynamicParameterAPI_v3/parameterCount())

Returns the number of parameters your plug-in currently has.

[`func parameterID(at: UInt32) -> UInt32`](/documentation/professional_video_applications/FxDynamicParameterAPI_v3/parameterID(at:))

Returns the ID of the parameter at the given index.

[`func removeParameter(UInt32) -> (any Error)!`](/documentation/professional_video_applications/FxDynamicParameterAPI_v3/removeParameter(_:))

Removes the parameter with the passed-in ID.

[`func setAsDefaultsAt(CMTime) throws`](/documentation/professional_video_applications/FxDynamicParameterAPI_v3/setAsDefaultsAt(_:))

Tell the host app that the settings at the given time should be considered the default settings for every parameter in the plug-in.

[`func setParameter(UInt32, floatMinimum: Double, maximum: Double, sliderMinimum: Double, sliderMaximum: Double) -> (any Error)!`](/documentation/professional_video_applications/FxDynamicParameterAPI_v3/setParameter(_:floatMinimum:maximum:sliderMinimum:sliderMaximum:))

Set a parameter’s bounds using floating point values.

[`func setParameter(UInt32, intMinimum: Int32, maximum: Int32, sliderMinimum: Int32, sliderMaximum: Int32) -> (any Error)!`](/documentation/professional_video_applications/FxDynamicParameterAPI_v3/setParameter(_:intMinimum:maximum:sliderMinimum:sliderMaximum:))

Set a parameter’s bounds using integer values.

[`func setParameter(UInt32, name: String!) -> (any Error)!`](/documentation/professional_video_applications/FxDynamicParameterAPI_v3/setParameter(_:name:))

Set a parameter with a name.

[`func setPopupMenuParameter(UInt32, entries: [Any]!, defaultValue: UInt32) -> (any Error)!`](/documentation/professional_video_applications/FxDynamicParameterAPI_v3/setPopupMenuParameter(_:entries:defaultValue:))

Set the menu entries in a pop-up menu.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)