beatmachine.loader module¶
The loader module contains functions for loading beats from song files.
-
beatmachine.loader.load_beats_by_bpm(fp: Union[str, BinaryIO], bpm: int) → Tuple[int, int, Generator[numpy.ndarray, None, None]]¶ A generator that loads beats strictly by a given BPM assuming no fluctuations in tempo. Significantly faster than load_beats_by_signal but far less accurate, especially in live performances.
Parameters: - fp – Audio path or file-like object.
- bpm – Song BPM.
Returns: A generator yielding each beat as a numpy array with shape (samples, channels).
-
beatmachine.loader.load_beats_by_signal(fp: Union[str, BinaryIO], min_bpm: int = 60, max_bpm: int = 300, fps: int = 100) → Tuple[int, int, Generator[numpy.ndarray, None, None]]¶ A generator that loads beats based on audio data itself, handling variations in tempo.
Parameters: - fp – Audio path to or file-like object.
- min_bpm – Minimum permissible BPM.
- max_bpm – Maximum permissible BPM.
- fps – Resolution to process beats at.
Returns: A generator yielding each beat as a numpy array with shape (samples, channels).