librosa.core.resample¶
-
librosa.core.
resample
(y, orig_sr, target_sr, res_type='sinc_best', fix=True, scale=False, **kwargs)[source]¶ Resample a time series from orig_sr to target_sr
Parameters: y : np.ndarray [shape=(n,) or shape=(2, n)]
audio time series. Can be mono or stereo.
orig_sr : number > 0 [scalar]
original sampling rate of y
target_sr : number > 0 [scalar]
target sampling rate
res_type : str
resample type (see note)
Note
If scikits.samplerate is installed,
resample
will use res_type.Otherwise, fall back on
scipy.signal.resample
.To force use of
scipy.signal.resample
, set res_type=’scipy’.fix : bool
adjust the length of the resampled signal to be of size exactly ceil(target_sr * len(y) / orig_sr)
scale : bool
Scale the resampled signal so that y and y_hat have approximately equal total energy.
kwargs : additional keyword arguments
If fix==True, additional keyword arguments to pass to
librosa.util.fix_length
.Returns: y_hat : np.ndarray [shape=(n * target_sr / orig_sr,)]
y resampled from orig_sr to target_sr
See also
librosa.util.fix_length
,scipy.signal.resample
Examples
Downsample from 22 KHz to 8 KHz
>>> y, sr = librosa.load(librosa.util.example_audio_file(), sr=22050) >>> y_8k = librosa.resample(y, sr, 8000) >>> y.shape, y_8k.shape ((1355168,), (491671,))