Troubleshooting: NodeAlreadyPlayingException
Example
signalflow.NodeAlreadyPlayingException: Node cannot be played as it is already
playing
Description
This exception occurs when play() is called on a Node or Patch object that is already playing.
Solution
Calling play() on a Node object simply connects the output of that node to the output endpoint of the audio graph, which means that frames will be requested from it in future audio I/O blocks.
Calling play() a second time therefore has no effect, because the Node is already connected.
If you want to play a particular sound twice, you should instead create two instances of the Node or Patch, and play them individually. So instead of:
ping = Ping()
ping.play()
time.sleep(1)
ping.play() # incorrect
You should write:
ping = Ping()
ping.play()
time.sleep(1)
ping = Ping() # create and play a new Ping
ping.play()
Last update:
2024-10-29
Created: 2024-07-22
Created: 2024-07-22