DPS iOS/OSX API Functions

Below is a summary of DPS functions you will use in your app.  They are exposed in DPSsdk.h.  For more details see Core DPS API functions


init – Used to authorize the DPS library (using the .lic file) and set the status of authorization. Click here for returned authorization codes.  Use DPSIsLicensed to verify DPS is processing in the licensed state.  If DPS is not licensed, it will function for 10 minutes.

DPSGetVersion – Call this function to get the major, minor and build numbers of the DPS processing code you are using at runtime.

DPSGet/SetEnabled – Turn DPS processing on or off.  When DPS is off, the algorithm is bypassed completely.

Parameter Loading

DPSLoadPreset – Use this function to load a .bgva sound profile into the Bongiovi DPS processing algorithm.  DPSFlattenAll is used to reset all DPS algorithm functions to no effect.  This is the initial state if no profile is loaded.

Audio Processing

DPSProcessBuffer – This sends and receives audio for processing.  Float and 16 bit integer stereo interleaved audio is supported.  All processing takes place using floating point math.  Maximum frame size is 2048.

DPSGet/SetKidsafe – KidSafe is the old name for DPS HEAR.  This feature limits the volume for safer earbud and headphone listening.  Click here to learn more.

DPSGet/SetUser…Controls – These functions are used to operate the bass, treble and volume controls available in the DPS API.  Allowed ranges are commented in the header file.  Here are some recommended ranges for normal use:

  • Bass Eq
    • Frequency = 160Hz (index 16)
    • Gain range -6dB to +6dB.
    • Q (width) = 0.7 (index 4)
  • Treble Eq
    • Frequency = 5000Hz (index 46)
    • Gain range -6dB to +6dB
    • Q (width) = 0.7 (index 4)
  • Volume Control
    • Gain range -80dB to 0dB

DPSGet/SetStereoWidening – This operates the Dynamic Stereo Field enhancement feature.  StereoWidenGain increases or decreases the effect in real time.  NOTE:  This is for speakers only, not headphones.

Other Functions

Please refer to Core API for all current functions