synthesizer-dimensional-0.8.1: Audio signal processing with static physical dimensions

Copyright(c) Henning Thielemann 2008-2009
LicenseGPL
Maintainersynthesizer@henning-thielemann.de
Stabilityprovisional
Portabilityrequires multi-parameter type classes
Safe HaskellNone
LanguageHaskell2010

Synthesizer.Dimensional.RateAmplitude.Analysis

Description

 

Synopsis

Documentation

centroid :: (C q, C u) => SignalRate u q amp q -> T u q Source #

length :: (C t, C u) => SignalRate u t amp yv -> T u t Source #

beginning :: (C y, C v, Transform sig y) => T rate (Dimensional v y) (sig y) -> T v y Source #

end :: (C y, C v, Transform sig y) => T rate (Dimensional v y) (sig y) -> T v y Source #

normMaximum :: (C y, C u, C v) => Signal u t v y y -> T v y Source #

Manhattan norm.

normVectorMaximum :: (C q yv, Ord q, C u, C v) => Signal u q v q yv -> T v q Source #

Manhattan norm.

normEuclideanSqr :: (C q, C u, C v) => Signal u q v q q -> T (Mul u (Sqr v)) q Source #

Square of energy norm.

Could also be called variance.

normVectorEuclideanSqr :: (C q yv, C q, C u, C v) => Signal u q v q yv -> T (Mul u (Sqr v)) q Source #

Energy norm.

normSum :: (C q, C q, C u, C v) => Signal u q v q q -> T (Mul u v) q Source #

Sum norm.

normVectorSum :: (C q yv, C q, C u, C v) => Signal u q v q yv -> T (Mul u v) q Source #

Sum norm.

normMaximumProc :: (C y, C u, C v) => T s u y (R s v y y -> T v y) Source #

Manhattan norm.

normVectorMaximumProc :: (C y yv, Ord y, C u, C v) => T s u y (R s v y yv -> T v y) Source #

Manhattan norm.

normEuclideanSqrProc :: (C q, C u, C v) => T s u q (R s v q q -> T (Mul u (Sqr v)) q) Source #

Square of energy norm.

Could also be called variance.

normVectorEuclideanSqrProc :: (C y yv, C y, C u, C v) => T s u y (R s v y yv -> T (Mul u (Sqr v)) y) Source #

Energy norm.

normSumProc :: (C q, C q, C u, C v) => T s u q (R s v q q -> T (Mul u v) q) Source #

Sum norm.

normVectorSumProc :: (C y yv, C y, C u, C v) => T s u y (R s v y yv -> T (Mul u v) y) Source #

Sum norm.

histogram :: (C q, C u, C v) => Signal u q v q q -> T s v q (Int, R s (DimensionGradient v u) q q) Source #

zeros :: (Ord q, C q, C u, C v) => T s u q (R s v q q -> R s (Recip u) q q) Source #

Detects zeros (sign changes) in a signal. This can be used as a simple measure of the portion of high frequencies or noise in the signal. The result has a frequency as amplitude. If you smooth it, you will get a curve that represents a frequency progress. It ca be used as voiced/unvoiced detector in a vocoder.

The result will be one value shorter than the input.