Skip to content

iem_spec2

An IEM Pure Data library optimized for frequency-domain processing. Its objects operate on spectra and provide operations including arithmetic, conversion, shifting, stretching, convolution, and table access.

Contributors

People who contribute to this project.

Objects

  • spec2_1p1z_freq~ spec2_1p1z_freq~ filters a spectrum with a one-pole, one-zero IIR filter, first from left to right and then from right to left.
  • spec2_1p1z_time~ spec2_1p1z_time~ applies feedback to a spectrum, as shown after rfft~ in the help patch.
  • spec2_abs~ spec2_abs~ takes the absolute value of a signal spectrum.
  • spec2_add_scalar~ spec2_add_scalar~ adds a scalar value to a signal spectrum and is equivalent to spec2+s~.
  • spec2_add~ spec2_add~ adds two signal spectra, each containing (blocksize/2 + 1) bins.
  • spec2_block_delay~ spec2_block_delay~ delays a spectrum by approximately one block while copying only (blocksize/2 + 1) samples.
  • spec2_clip_max~ spec2_clip_max~ restricts a spectral signal so that its values do not exceed a maximum limit, functioning like min~.
  • spec2_clip_min~ spec2_clip_min~ restricts a signal so that its values do not fall below a minimum limit, similarly to max~.
  • spec2_dbtopow~ spec2_dbtopow~ converts the dB values of a signal spectrum to power, like dbtopow~.
  • spec2_dbtorms~ spec2_dbtorms~ converts the dB values of a signal spectrum to RMS values.
  • spec2_matrix_bundle_stat~ spec2_matrix_bundle_stat~ multiplies an n-dimensional signal vector by a dynamic sparse matrix whose columns each contain at most one value of one, routing each input to a selected output or to none.
  • spec2_mul_scalar~ spec2_mul_scalar~ multiplies a signal spectrum by a scalar value, like spec2*s~, operating on (block size / 2 + 1) bins.
  • spec2_mul~ spec2_mul~ multiplies two signal spectra, like spec2*~.
  • spec2_powtodb~ spec2_powtodb~ converts the power values of a signal spectrum to dB, like powtodb~.
  • spec2_rmstodb~ spec2_rmstodb~ converts the RMS values of a signal spectrum to decibels.
  • spec2_shift~ spec2_shift~ shifts a spectrum of blocksize/2 + 1 values to the left.
  • spec2_sqrt~ spec2_sqrt~ takes the square root of each value in a signal spectrum, like sqrt~, using a spectrum containing blocksize/2 + 1 bins.
  • spec2_stretch~ spec2_stretch~ stretches a spectrum of (blocksize/2 + 1) bins by a specified factor.
  • spec2_sub~ spec2_sub~ subtracts two signal spectra, each containing (blocksize/2 + 1) bins.
  • spec2_sum~ spec2_sum~ accumulates the sum of a spectrum over its (blocksize/2) + 1 bins.
  • spec2_tab_conv~ spec2_tab_conv~ convolves a spectrum of size block size/2 + 1 with values from a table.
  • spec2_tabreceive_enable~ spec2_tabreceive_enable~ receives a spectrum from a named table while allowing table reading to be enabled or disabled.
  • spec2_tabreceive~ spec2_tabreceive~ receives a spectrum from a table named by its symbol argument.