hq9000 / cython-vst-loader

a cython-based loader for VST audio plugins proving a clean python object-oriented interface
MIT License
39 stars 2 forks source link

[windows] python crashes when running process_replacing #15

Open oxygen-dioxide opened 3 years ago

oxygen-dioxide commented 3 years ago
Python 3.8.10 (tags/v3.8.10:3d8993a, May  3 2021, 11:48:03) [MSC v.1928 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> from cython_vst_loader.vst_host import VstHost
>>> from cython_vst_loader.vst_plugin import VstPlugin
>>> from cython_vst_loader.vst_loader_wrapper import allocate_float_buffer, get_float_buffer_as_list, free_buffer, \
...      allocate_double_buffer, get_double_buffer_as_list
>>> from cython_vst_loader.vst_event import VstNoteOnMidiEvent
>>>
>>>
>>> sample_rate = 44100
>>> buffer_size = 512
>>>
>>> host = VstHost(sample_rate, buffer_size)
>>>
>>> # Audio will be rendered into these buffers:
>>> right_output = allocate_float_buffer(buffer_size, 1)
>>> left_output = allocate_float_buffer(buffer_size, 1)
>>>
>>> # `right_output` and `left_output` are integers which are, in fact,
>>> # just pointers to float32 arrays cast to `int`
>>>
>>> # These buffers are not managed by Python, and, therefore, are not garbage collected.
>>> # use free_buffer to free up the memory
>>>
>>> plugin_path = r"E:\Music-----------------\vst\tunefish\Tunefish4.dll"
>>> plugin = VstPlugin(plugin_path.encode('utf-8'), host)
>>> event = VstNoteOnMidiEvent(3, 85, 100, 1)
>>>
>>> plugin.process_events([event])
>>> plugin.process_replacing([], [right_output, left_output], buffer_size)

[已退出进程,代码为 3221225477]

windows version: windows 10 pro 19042 python version: 3.8.10 vsti: Tunefish4

robclouth commented 2 years ago

Did you manage to resolve this? Same issue and setup.