Install the AFX SDK#

The Audio Effects SDK for Windows is distributed in the following parts:

  • A core package that contains the API implementation along with dependencies and scripts for downloading AI features and sample applications.

  • AI features, which you can download from NGC by using the download script.

  • A sample application, hosted on GitHub, that demonstrates how to use the SDK APIs.

To develop applications with the Audio Effects SDK, you must download the core SDK package, the AI features, and the sample application. Provide the path to the package by setting the environment variable AFX_SDK_ROOT before compilation and linking. Your app will use the SDK functions that are exposed by the SDK header and feature headers and dynamically link against the provided libraries.

Install the Core Windows SDK#

To install the SDK, extract the contents of the Audio Effects SDK .zip file to the required location on your computer.

Before using the SDK, you must download and install AI features.

Obtain Windows SDK Features#

You can download SDK AI features from the NGC website or by using the provided download script. Remember to unzip the AI features before use.

Note

If the target machine cannot access NGC because of firewall or airgap rules, you can download features to another machine and transfer them to the target machine. The machine used for downloading features does not require GPUs.

To download features using the NGC website:

  1. Refer to the NGC SDK collection for the required feature (under Entities > Models).

  2. Download the files corresponding to the target machine’s GPU architecture, SDK version, and sample rate along with library and header files. For example, if the SDK version is 1.5.0, the 16-kHz effect is required. If the target GPU architecture is Ampere, download the features for version 1.5.0-16k-ampere.

To download AI features using the download script:

  1. Obtain NGC API key from the NGC website. For details, see the NGC User guide.

  2. Obtain the NGC organization and team from the SDK download page. For example, if the SDK is present:

    • NGC organization is nvidia.

    • NGC team is maxine.

  3. Unzip the SDK and navigate to the features folder.

  4. Download the features using the following commands:

    # Set the NGC API key
    
        $env:NGC_API_KEY = "your NGC key"
    
    # Download features
    
    # Syntax: powershell -ExecutionPolicy Bypass -File ./download_features.ps1 --gpu_architecture <Turing|Ampere|ADA|Blackwell> --ngc-org <NGC org> --ngc-team <NGC team> [--effects effect1,effect2,effect3]
    # '--effects' specifies the list of effects to be downloaded (downloads all if not specified)
    
    # For example, the following command downloads the features for Ampere GPU Architecture to features (under the ampere folder) from NGC org "nvidia" and team "maxine" (excluding Early Access features):
    
    powershell -ExecutionPolicy Bypass -File ./download_features.ps1 --gpu_architecture ampere --ngc-org nvidia --ngc-team maxine
    
    # If --gpu_architecture is not set, the script tries to automatically detect the current GPU and downloads all features (excluding Early Access features) for it. To download Early Access features, you must explicitly mention the effect names:
    
    powershell -ExecutionPolicy Bypass -File ./download_features.ps1 --effects "speaker_focus-16k,speaker_focus-48k,voice_font_low_latency,voice_font_high_quality"
    
    # To download only the Superresolution and AEC features from organization 'nvidia' and team 'maxine' for Turing architecture, use the following command:
    
    powershell -ExecutionPolicy Bypass -File ./download_features.ps1 --gpu_architecture turing --ngc-org nvidia --ngc-team maxine --effects superres-16k_to_48k,superres-8k_to_16k,aec-16k,aec-48k
    
    # To see the full list of options, run 'powershell -ExecutionPolicy Bypass -File ./download_features.ps1 --help'.