Caution

You're reading an old version of this documentation. If you want up-to-date information, please have a look at 0.10.2.

librosa.feature.zero_crossing_rate

librosa.feature.zero_crossing_rate(y, *, frame_length=2048, hop_length=512, center=True, **kwargs)[source]

Compute the zero-crossing rate of an audio time series.

Parameters:
ynp.ndarray [shape=(…, n)]

Audio time series. Multi-channel is supported.

frame_lengthint > 0

Length of the frame over which to compute zero crossing rates

hop_lengthint > 0

Number of samples to advance for each frame

centerbool

If True, frames are centered by padding the edges of y. This is similar to the padding in librosa.stft, but uses edge-value copies instead of zero-padding.

**kwargsadditional keyword arguments

See librosa.zero_crossings

Note

By default, the pad parameter is set to False, which differs from the default specified by librosa.zero_crossings.

Returns:
zcrnp.ndarray [shape=(…, 1, t)]

zcr[..., 0, i] is the fraction of zero crossings in frame i

See also

librosa.zero_crossings

Compute zero-crossings in a time-series

Examples

>>> y, sr = librosa.load(librosa.ex('trumpet'))
>>> librosa.feature.zero_crossing_rate(y)
array([[0.044, 0.074, ..., 0.488, 0.355]])