Caution
You're reading the documentation for a development version. For the latest released version, please have a look at 0.9.1.
librosa.load¶
- librosa.load(path, *, sr=22050, mono=True, offset=0.0, duration=None, dtype=<class 'numpy.float32'>, res_type='kaiser_best')[source]¶
Load an audio file as a floating point time series.
Audio will be automatically resampled to the given rate (default
sr=22050
).To preserve the native sampling rate of the file, use
sr=None
.- Parameters
- pathstring, int, pathlib.Path, soundfile.SoundFile or file-like object
path to the input file.
Any codec supported by
soundfile
oraudioread
will work.Any string file paths, or any object implementing Python’s file interface (e.g.
pathlib.Path
) are supported as path.If the codec is supported by
soundfile
, then path can also be an open file descriptor (int) or an existingsoundfile.SoundFile
object.On the contrary, if the codec is not supported by
soundfile
(for example, MP3), then path must be a file path (string orpathlib.Path
).- srnumber > 0 [scalar]
target sampling rate
‘None’ uses the native sampling rate
- monobool
convert signal to mono
- offsetfloat
start reading after this time (in seconds)
- durationfloat
only load up to this much audio (in seconds)
- dtypenumeric type
data type of
y
- res_typestr
resample type (see note)
Note
By default, this uses
resampy
’s high-quality mode (‘kaiser_best’).For alternative resampling modes, see
resample
Note
audioread
may truncate the precision of the audio data to 16 bits.See Advanced I/O Use Cases for alternate loading methods.
- Returns
- ynp.ndarray [shape=(n,) or (…, n)]
audio time series. Multi-channel is supported.
- srnumber > 0 [scalar]
sampling rate of
y
Examples
>>> # Load an ogg vorbis file >>> filename = librosa.ex('trumpet') >>> y, sr = librosa.load(filename) >>> y array([-1.407e-03, -4.461e-04, ..., -3.042e-05, 1.277e-05], dtype=float32) >>> sr 22050
>>> # Load a file and resample to 11 KHz >>> filename = librosa.ex('trumpet') >>> y, sr = librosa.load(filename, sr=11025) >>> y array([-8.746e-04, -3.363e-04, ..., -1.301e-05, 0.000e+00], dtype=float32) >>> sr 11025
>>> # Load 5 seconds of a file, starting 15 seconds in >>> filename = librosa.ex('brahms') >>> y, sr = librosa.load(filename, offset=15.0, duration=5.0) >>> y array([0.146, 0.144, ..., 0.128, 0.015], dtype=float32) >>> sr 22050