Overlap/add: instead of generating all the windows in one array and doubling or quadrupling the amount of memory, instead the windows are generated using a generator function which scrubs over the audio and yields each segment one at a time. The generated windows are equivalent to the collect_windows function, and are padded the same way (half a hop of zeros on either side).
Using FFMPEG to compute loudness. You can now do .ffmpeg_loudness to compute the perceptual loudness of your file on disk, rather than in-memory. This uses less memory and is more efficient for very long files.
Using FFMPEG for resampling audio. You can call .ffmpeg_resample to resample audio in a temporary file. This uses FFMPEG on temporary files and is more efficient on long audio files.
This PR adds memory efficient operators for:
collect_windows
function, and are padded the same way (half a hop of zeros on either side)..ffmpeg_loudness
to compute the perceptual loudness of your file on disk, rather than in-memory. This uses less memory and is more efficient for very long files..ffmpeg_resample
to resample audio in a temporary file. This uses FFMPEG on temporary files and is more efficient on long audio files.