dBpoweramp DSP Effects

DSP (or Digital Signal Processing) Effects fall into two main categories:

  • Manipulate audio data, such as Graphic Equalizer,
  • Perform an action, such as ID Tag Processing.

Each effect can be live or non-live, where non-live effects require that the entire audio track be decoded to a temporary wave file before the effect is used, after compression begins.

The Power Pack or dBpoweramp Reference are required for DSP effects to function.

Effects are processed in the order they appear, for example:

Bit Depth (to floating point)

<other DSP actions> (floating point helps preserve smaller signals)

Volume Normalize (Peak to Peak) to 0dB Desired

Bit Depth (back to 16 bit with dither)

The Volume Normalize (peak to peak) will take any samples which are clipping and scale the whole audio file down to prevent clipping, this can only be done whilst the Bit Depth is in Floating Point.

DSP Effects

Audio CD - Hidden Track Silence Removal remove mid-track silence,
Audio CD - Remove Gaps removes gaps when ripping Audio CDs (gaps are normally added to the end of tracks),
Audio CD - Silence Track Deletion remove silence tracks from Audio CD,
Bit Depth set sample bit depth (example 24 bit to 16 bit),
Channel Count increase or decrease channels,
Channel Mapper move or combine channels,
Conditional Encoding allows files to be skipped, or copied 1:1 based on attributes
CPU Throttle slows encoding, less CPU usage
Delete Destination File on Error 'Converted To' file is deleted if there were errors during conversion,
Delete Source File remove 'Converted From' file after conversion,
DirectX PlugIn use DirectX Effects in dBpoweramp (reference required),
Dynamic Range Compression level-out large changes in audio level,
Fade in or out to silence,
Folder.jpg Preserve copy folder.jpg or associated files to destination folder
Force Non-Live forces live effects to be processed non-live
Grabber takes a portion of audio from a larger file,
Graphic Equalizer boost select frequencies,
HD HDCD decode HDCD Audio CDs,
ID Tag Processing manipulate ID Tags,
Insert Audio inserts audio into the stream,
Karaoke (Voice, Instrument Removal) remove voice or instruments,
Loop repeat the whole track a number of times,
Lowpass filters all frequencies above the specified frequency,
Maximum / Minimum Length increase or decrease length,
Multi-CPU Force forces the use of a certain CPU when encoding,
Move Destination File on Error move converted files with errors to a different location,
Play Sound After Conversion informs audibly when a conversion has completed,
Playlist Writer creates a playlist file containing the conversion / ripping contents,
Preserve Source Attributes preserve date & time, etc,
Read Metadata File imports metadata from an XML file with the same name as the source sound file,
ReplayGain calculate Replay Gain volume Adjustment,
ReplayGain (Apply) apply ReplayGain adjustment to converted file,
Resample audio frequency adjustment,
Reverse backwards audio!,
Run External allow external programs to access converted files,
Trim Silence remove silence from beginning or end,
Trim remove fixed length from beginning or end,
Volume Normalize adjust volume in many different ways,
VST use Steinberg's VST effects in dBpoweramp Reference,
Write Metadata File exports metadata to XML or HTML,
Write Silence insert silence,

Audio CD - Hidden Track Silence Removal



Audio CDs can have a 'hidden' last track which is really the last track with a long period of silence before the hidden track. This effect removes the silence period, set the Detection Threshold large enough to ignore periods of silence normal tracks might contain.


Audio CD - Remove Gaps


Uses index information as supplied by CD ripper, to remove inter track gaps. This effect can only be used when ripping CDs (R14 or newer required).


Audio CD - Silence Track Deletion



Certain Audio CDs have a 'hidden' last track which is proceeded by many small silence tracks, this effect detects and removes those tracks which as silence.


Bit Depth



Bit Depth can be used on one of two ways, to force a set bit depth (for example the source audio file is 24 bit, and reduce to 16 bit). Or to increase bit depth to 32 bit (floating point), process other DSP effects (such as Graphic Equalizer), then set the depth back down to 16 bit.

32 bit floating point (reference required) allows the value of the audio signal to go over the clipping level (+-1.0), certain effects such as Graphic Equalizer can introduce increases over the maximum.

A bit depth allowed range, with minimum and maximum can be specified (reference required).

Apply Dither can be used to dither when reducing the bit depth, such as after volume normalizing (at 32 bit floating point), dither as reduced in the final stage to 16 bit. Triangular dither is the preferred option.


Channel Count



Forces a channel count, or set allowed minimum and maximum channel counts (reference required).


Channel Mapper



Channel Mapper sets a desired number of channels, each channel can be edited, choosing which source channel(s) it is made up from. In the above example Channel 1 and 2 are left untouched, and channel 3 is created from the sum of 0.5x channel 1 and (inverted) 0.5x channel 2.


Conditional Encoding



Conditional encoding allows Music Converter to either skip certain files, or copy them 1:1 to the destination location, if attributes of the source file match any of the specified values (Bitrate, Bitdepth, Sample Rate, Extension or General). It is possible to use more than 1 of these effects, for example, 1 effect to skip all files where the destination exists, a 2nd effect to copy 1:1 any .mp3 files.


CPU Throttle

Slows Encoding Speed, based on simulated speeds (for example x2 will encode a track that is 60 seconds long in 30 seconds). This effect can reduce the load on CPU usage (and therefore heat generated), the exact CPU reduction depends on the normal unrestricted CPU usage when encoding (for example a codec encodes normally at x24, if setting this to x12 then only half the CPU would be used when encoding).


Delete Destination File on Error

If there were errors during conversion (such as decoding from a corrupt lossless file), the 'converted to' (or Destination) file is deleted. It is also possible to configure CD Ripper (Secure Ripper) to mark a track as 'Error' of the rip was not secure, in such case the file would be deleted by this DSP effect.


Delete Source File

Allows the source file (file converting from) to be removed after a successful conversion (when converting a batch of files, deletions occur after each file is converted),  typically this is used when converting lossless to lossless (with limited disk space). It is worth testing the converted files using a small number of files before using this effect.

Remove Empty Folders if checked will remove empty folders (including empty parent folders).


DirectX PlugIn



When first run the effects on the system must be scanned to find compatible effects, if at a later date new effects are added press the green refresh button to rescan.

Select effect required from the drop box and press settings button to show options for selected effect. Note only the selected effect is used. Note also that Sony effects are designed not to function outside of their own software.


Fade



Fades in, or / and Fade Out, to silence, over specified time (6000 milli-seconds is 6 seconds).


Dynamic Range Compression


Compresses the dynamic range to level-out large changes in audio level and give the audio a "tighter" sound. This DSP is a so-called "hard-knee compressor" and can be used to reduce the effects of over-produced jingles or adverts in combination with under-produced speech (e.g. in Podcasts).

A relative threshold can be applied which makes the threshold level, at which the compressor starts working, relative to the file's overall RMS value. When using a relative threshold, the threshold value should be in the range -1 to -6dB for the best results. When using a fixed threshold (i.e. not relative), the value could be quite a bit lower (in the range -3 to -30) depending on the audio content.

The compression ratio determines how much gain reduction will be applied above the threshold level.

       

The attack time is the time it takes the compressor to respond to audio level increases above the set threshold level. If this is value is too high, the compressor will let through transient peaks of audio. A short attack time is recommended.

The release time is the time that the compressor takes to reduce the gain reduction (or recover) after an decrease in audio level below the set threshold level. A too short release time could give undesirable pumping effects. It is better to use quite a high value for this ( > 500 mS).


Folder.jpg Preserve



Copies Folder.jpg to the destination folder when converting. Also it is possible to copy other file based on their extension (example .txt; .cue  to copy all files with these extensions, or a fixed filename, such as log.txt).

The option to Move Files can be used in conjunction with the Delete Source DSP effect to remove all source files. When moving test on a small subset of files before letting loose on your whole collection.


Force Non-Live

Forces all other DSP effects to be processed in a non-live manor. Non live DSP processing is done using a temporary file, the whole source file is decoded, DSP effects run on temp file before encoding. This effect is useful for example if using the [Length Split] utility codec (or any live DSP which requires the file length) with a normally live effect 'Fade', as the exact file length cannot be known at the start forcing the fade to non live would all it to function normally with [Length Split].


Grabber



The purpose of Grabber is to extract audio from a larger file, the amount to be grabbed is entered into Grab and the position grabbing should start into the file, either from the beginning or end. In the above example 10 seconds of audio is grabbed 45 seconds from the end.


Graphic Equalizer



Graphic Equalizer boosts or reduces selected frequencies. 0 dB leaves the frequency untouched, +12 dB increases the frequency effectively by x4 and -12 dB is divide by 4. Care must be taken when increasing frequencies as clipping can occur (where the signal goes over maximum allowed), so if possible reduce other frequencies, leaving the frequency to boost at 0 dB.

>> Offers a menu to Load, Save and select Preset equalizer values. Also is the option to adjust single bars (without a check moving one bar moves the ones next to also).


HD HDCD

Auto detects HDCDs (20 bit High Definition Audio CDs) and decodes to 24 bit (only first 20 bits are used). It is safe to use this effect for non-HDCD Audio CDs (audio is left as 16 bit). There is a default option to align the 20 bit result in the upper 24 bits (apply +6dB amplification).


ID Tag Processing



ID Tags can be manipulated by:

  • Map: copy a tag to another name, for example copy Artist to Album Artist. The original tag value is left untouched, if it should be removed use Deletion,

  • Deletions: it is possible to remove All Tags, All Except listed, or delete a Single Tag value,

  • Manipulation:

    Capitalization: when using meta data sources such as freedb there is little consistency between discs, this option allows character capitalization to be set. The Smart Capitalization option would create a tag 'A tag and Another' from 'A TAG AND ANOTHER'

    Import & Export Album Art to/from files.

    Specify a Maximum Art Size (pixel or KB size)

    Force embedded Album Art to JPG  from PNG (certain players do not like PNG)

    Rule Based Manipulation  offers advanced programmable actions on tags, such as:

    IF Genre=[anyvalue]               set if Genre if contains a value
    SET Genre=Rock

    IF Genre=                             set genre if contains nothing
    SET Genre=Unknown

    IF Genre=Alt Rock                 all genres
    SET Genre=Rock

    IF Album=Christmas              example showing setting a different tag
    SET Genre=Christmas

    IF Artist=The Beatles             fixed changes
    SET Artist=Beatles, the

    IF Album Artist=The Beatles
    SET Album Artist=Beatles, the

    IFCONTAINS Album=Best of   for generic albums, add the artist name
    SET Album=[album], [artist]

    IF Album Artist=                     set album artist if empty (from artist)
    SET Album Artist=[artist] 

    IF Artist=                                if no artist then set to unknown
    SET Artist=Unknown Artist

    Word / Character Replacement allows individual characters or whole words to be substituted with another character or word, or to be deleted when no substitution is specified. Examples:

    (Disc1)[nocase]

                      

    o
    remove (Disc1) or (DisC1)
    set to o


    Externally Script Tags allows an external script to alter ID Tags, full scripting details

    Multiple Artist To 'Artist1; Artist2'  dBpoweramp follows standards set by tagging formats when it comes to handling multiple artists (each tag type is different). A problem arises when another program does not follow these rules, by not following the rules correctly said program might not read the 2nd Artist, or only the 2nd Artist. This option forces all artists into one artist, separated by '; '. Be aware, programs which follow the tagging conventions correctly will not detect 2 separate artists once forced onto one line.

    Multiple Artist From 'Artist; Artist2' does the opposite of above.

    Remove Month & Day from Year takes a 1990 12 30 date and shortens to 1990.

    Drop Track Count removes the count from a track number, example 4/12 becomes 4.

    Drop Disc Count removes the count from a disc number, example 1/2 becomes 1.

    CRC32 and MD5 can be calculated for the audio and embedded in a tag name, note ID Tag Processing should be the last DSP effect as other effects might change the audio.

  • Additions: add new tags, for example it is possible to add a Comment as (c) Your Company.

The order of manipulations carried out are: Map, Deletions, Manipulation, Additions.


Insert Audio



Inserts an audio file (any format which is supported by dBpoweramp) to either the front or end of a converted file.


Karaoke (Voice, Instrument Removal)

Either voice or instruments (leaving the voice) can be removed from an audio piece. The effect requires a stereo audio file, where the singer was mastered into the centre of the two speakers, not all audio tracks are like this. For those that are there will still be a small amount of instrument or voice in the background.


Loop



The whole track can be repeated a number of fixed times, or to a set length (that is when the track finishes, it starts playing again). Loop is a non-live DSP effect (a temporary wave file is used).


Lowpass



Applies a filter to the specified frequency, so that all frequencies above this point are filtered. This filter is not a hard cut off filter, it is applied gradually affecting frequencies around the spefied point. An example usage of this filter is with the DSD decoder codec, where it might be decoded to 176KHz, a 40KHz filter can be applied to remove all harmful ultrasonics from DSD.


Maximum / Minimum Length

Maximum Length: whilst converting, if the audio file is longer than the length set, it is reduced. If the audio file is has a less length than the maximum specified, it is left at the original length. It is also possible to limit the length based on a percentage of the original length, for example 30 seconds and 50% of original length could be used together to generate short samples.

Minimum Length: Increases an audio file to the minimum length set, silence is used to increase the file. If the file is longer than the minimum length it is left at its original length. Minimum Length is a non-live DSP Effect.


Multi-CPU Force



Requires Reference & R13 or above (R14 or above for more than 4 CPU support). By default Music Converter / CD Ripper will encode using the maximum number of CPUs available, unless an audio format has a high disk I/O usage (such as wave), in which case only 1 CPU is used. This effect can override the automatic choosing of CPU and allow perhaps just CPU2 to be used (on a dual core system). Do Not Ally to Processor can be used to allow the encoder to jump between CPUs (if only 2 CPUs are chosen then it will only use 2 encoders, but will jump between any available CPU). All 4 CPUs are shown even on systems with less than 4 CPU cores.


Move Destination File on Error



It is possible to separate files with conversion errors. The specific applications of this DSP effect are:

  • Secure ripping to separate insecure files (when used with the secure option in CD Ripper to 'Mark Track as Error if Insecure')

  • If there is a possibility the source file is corrupted (perhaps a lossless file). 

A Root path is set (could be the same location as the original file) or a fixed location. Naming again can include the original filename, or can be constructed from ID Tag elements such as [artist] - [title].


Play Sound After Conversion

When conversions complete a sound can be played, it is possible to set a different sound when there is an error during conversion, or if only Play on Error is set then only play a sound if there is an error.


Playlist Writer



Writes a Playlist file: .m3u, .pls or .m3u8 (unicode m3u) containing all files converting or ripping. Playlist Titles specifies the title assigned to a track in the playlist.

Playlists can be written to the same folder as the tracks, or a designated folder. The actual filename is set by Playlist Filename.


Preserve Source Attributes

It is possible to copy attributes from the 'Converted From' file, to the 'Converted To' file. Creation Date, Last Accessed, Modified Date and File Attributes (such as read only) are preserved.


Read Metadata File



This DSP imports metadata from an external XML file, by default (with Apply XSLT blank) all ID tags are imported from the standard XML file (see below). A template can be used to transform data from other XML structures, to do this set Apply XSLT to the template file you want to use. See the example XSL templates in \dBpoweramp\DSPs\XSLT import.

XML input data should have the following format (either as the input file or after applying an XSLT template):



The tags in the <IDTags> node can have any XML compliant name and can also include an attribute (e.g. name="title"), which may include spaces. If the "name" attribute is available, this will be the ID Tag name in the destination sound file. If the attribute is not available, the tag name will be used.

IMPORTANT NOTE: The XML data must always be encoded using UTF-8.

ReplayGain



ReplayGain calculates the average loudness of audio files, with a compatible player all tracks will sound the same loudness. A compatible player is required as ReplayGain values are written to the ID Tags, the audio is untouched.

There are two types of Replay Gain:

  • Track Gain: volume levels are calculated for the track in question,
  • Album Gain: calculated levels are for the whole album, an intentionally quiet track remains so.

The Write option specifies which tags are written, including iTunes compatible tags.

The advanced page enables fine tuning of the options, from the calculation method (EBU R128 is recommended), to the reference loudness (-18LUFS).

Albums can be defined as the album ID tag, or if the tracks do not have ID Tags, group all tracks in the same folder as an album.

It is also possible to disable the clip prevention (the player should have clip prevention if disabled).


ReplayGain (Apply)



Replay Gain calculates the average loudness of audio files, with a compatible player all tracks will sound the same loudness. This effect was created mainly for the dBpoweramp Audio Player, so certain options have no relevance to audio conversion. This effect will apply ReplayGain to the destination file based on an already calculated ReplayGain ID Tag (should be present in the source file), it is ideal for creating files which are ReplayGain'ed for use on Players which are ReplayGain incompatible. If the Source files have no ReplayGain values use the effect 'Volume Normalize' which calculates and applies in one go.

Mode sets which type of ReplayGain tag to use, Track or Album Gain. 

Calculate Missing ReplayGain Values has no meaning for audio conversion and should be unchecked. 

Preamp can be used to set a lower target volume, inactive ReplayGain refers to source files with no ReplayGain tags.


Resample

Alters the frequency of audio, typically audio is resampled from a higher frequency to a lower frequency for compatibility reasons (audio player which cannot play higher frequencies).

There is the option to specify the Minimum and Maximum frequencies, this enables the max and min supported frequencies of a player to be set and files will be resampled within this range, for example minimum is set to 22KHz and Maximum to 48KHz. If converting an 8KHz file it would be up-sampled to 22KHz, a 44KHz file would remain 44KHz and a 96KHz file would be reduced to 48KHz.


Reverse

Takes an audio piece and reverses it, what use is that? there was a Stone Roses track which was one of the others reversed, certain tracks are said to contain hidden voices which can only be heard when played in reverse. This effect is non-live.


Run External



Allows an external program / batch file to access files before or after conversion. Click Set and choose the program to run, then specify a command line the program needs to open the file, with Before Conversion specify [infile], for After Conversion use [outfile]. Many more items can be passed on the command line, see Dynamic Naming. No dynamic elements (such as [infile] or [outfile]) can be used when After Batch (after all files converted) is used. [infile] and [outfile] supply filenames by short-filename 8.3, this allows unicode filenames to accessed by non-unicode programs. In addition [infilelong] and [outfilelong] can be used to pass the full filenames. An example of the 2 filenames, there is a file:

  C:\A Folder\A File.mp3

The short filename would be: C:\AFolde~1\AFile~1.mp3   opening this file opens the one above. The long filename is simply the full one above.


Trim Silence



On some tracks there is silence present at the beginning or end of the track, this DSP effect can detect and remove such silence. Detection Threshold sets the minimum time average audio levels have to go over the set silence value before it is classed as non-silence. If Trim Silence is eating audio it should not, enter a lower dB value, such as -44.

This effect is non-live.


Trim

Remove a set length of audio from the beginning or end of the file. This effect relies on the correct audio length to be detected before decoding (if trimming from end).


Volume Normalize



There are 6 different ways of adjusting the volume of an audio track. Note volume normalize is actually applied to the audio and is a non-reversible proces, as such it should be done on a copy of a lossless library, keeping the originals safe:

  • Peak to Peak: simplest volume normalize, the peak (or maximum) value is found and the whole track volume is adjusted so that peak touches the desired volume,

  • ReplayGain: a more advanced normalization, the average loudness is calculated and the volume is adjusted. This method does not use ID Tags to store ReplayGain values, rather the audio is adjusted. If a Replay Gained track is played next to a non-Replay Gained track, it will sound quieter, as Replay Gain requires head-room to prevent clipping.

  • EBU R128: a newer standard of ReplayGain, the average loudness is calculated and the volume is adjusted. This method adjusts the audio. Internally the audio is calculated to a -23LUFS level, it can be adjusted with the dB scale on the right.

  • Adaptive: the best way to describe adaptive, is like having your hand on the volume knob, constantly adjusting it up and down (a window is used to detect loudness) to compensate for quiet parts, ideal for creating a track to play in a noisy environment (such as car). Adaptive is offered for EBU and Peak to Peak volume calculation.

  • Fixed Amplification: Amplifies the audio by a fixed amount, +6 dB is x2, where -6 dB is divide by 2, be careful not to clip audio (go over the maximum).

Maximum Amplification sets a limit on the amount of amplification applied (set too high, on adaptive and silence will become noise).

Desired Volume can be set higher than 0 dB (which is maximum), setting 12 dB is 4x the maximum, use with care otherwise the signal will clip.

This effect is non-live.

VST



When first run the effects on the system must be scanned to find compatible effects, if at a later date new effects are added press the green refresh button to rescan.

Select effect required from the drop box and press settings button to show options for selected effect. Note only the selected effect is used. VST is 32 bit only.


Write Metadata File



Exports the metadata to an external file, by default (with Apply XSLT blank) all fields are exported to an XML file. A template can be used to limit fields, set Apply XSLT to the template file, see the example templates in \dBpoweramp\DSPs\XSLT


Write Silence



Silence of a specified length can be inserted at the beginning, appended to the end, or written to any part of the track.