Fix error in get_samplerate when reading io.BytesIO.

This commit is contained in:
Kavi 2025-02-26 14:12:09 +01:00
parent 6af7fef316
commit e10e270de4

View File

@ -9,6 +9,7 @@ import torch
import audioread import audioread
import os import os
import soundfile as sf import soundfile as sf
import io
from batdetect2.detector import parameters from batdetect2.detector import parameters
@ -148,6 +149,9 @@ def get_samplerate(
path: Union[ path: Union[
str, int, os.PathLike[Any], sf.SoundFile, audioread.AudioFile, BinaryIO str, int, os.PathLike[Any], sf.SoundFile, audioread.AudioFile, BinaryIO
]): ]):
if isinstance(path, (BinaryIO, io.BytesIO)):
path.seek(0)
with sf.SoundFile(path) as f: with sf.SoundFile(path) as f:
return f.samplerate return f.samplerate