New issue 1975: Pydub module very slow compared to CPython implementation https://bitbucket.org/pypy/pypy/issue/1975/pydub-module-very-slow-compared-to-cpython
cryzed: The Pydub module is 5~ times (PyPy 2) and up to 17~ times (PyPy 3) slower compared to the CPython 3 implementation when using the Pydub module. Absolute values were 3.5~ seconds for CPython, 18~ seconds for PyPy 2 and 58~ seconds for PyPy 3. Here is a sample test case: ``` #!python import sys import time import pydub PATHS = [ 'path_to_audio1.wav', 'path_to_audio2.wav', 'path_to_audio3.wav' ] def main(duration): segments = tuple(pydub.AudioSegment.from_file(path) for path in PATHS) # Create a silent audio segment to easily overlay the other segments composition = pydub.AudioSegment.silent(duration) for segment in segments: position = 0 length = len(segment) while position < duration: composition = composition.overlay(segment, position) position += length composition.export('output.wav', format='wav') if __name__ == '__main__': start = time.time() main(int(sys.argv[1])) print(time.time() - start) ``` I use 20 short (~20 seconds) *.ogg audio files for the PATHS and pass in a duration of 60000 milliseconds. Using this script and CPython 3 and PyPy 3 the values were 6~ seconds for CPython 3 and 166 seconds for PyPy 3. _______________________________________________ pypy-issue mailing list pypy-issue@python.org https://mail.python.org/mailman/listinfo/pypy-issue