Description:
Hello community! Can’t seem to find my way around this. I have installed LilyPond and Abjad and still getting this error…
Error printout:
ImportError: abjad was not found; LilyPond output is not available.
(Place the error printout here)
fer@Fernandos-MacBook-Pro ~ % /usr/local/bin/python3 /Users/fer/notation
WARNING:root:python-rtmidi was not found; streaming midi input / output will not be available.
WARNING:root:pynput was not found; mouse and keyboard input will not be available.
Using preset Clarinet for clarinet
Using preset Bassoon (Rea) for bassoon
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/scamp/_dependencies.py", line 134, in abjad
import abjad as abjad_library
ModuleNotFoundError: No module named 'abjad'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/Users/fer/notation", line 34, in <module>
performance.to_score().show()
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/scamp/score.py", line 655, in show
assert abjad() is not None, "Abjad is required for this operation."
^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/scamp/_dependencies.py", line 136, in abjad
raise ImportError("abjad was not found; LilyPond output is not available.")
ImportError: abjad was not found; LilyPond output is not available.
fer@Fernandos-MacBook-Pro ~ %
# The full code that resulted in the error:
```python3
from scamp import *
import random
s = Session()
s.fast_forward_to_beat(100)
clarinet = s.new_part("clarinet")
bassoon = s.new_part("bassoon")
bass_notes = [58, 57, 56, 55, 54, 51, 53, 41] * 2 + [46, 47, 48, 49, 50, 53, 56, 55, 52, 53]
clarinet_patterns = [[20, 15, 20], [None, 12, 14, 15], [None, 15, 9, 12], [19, 17, 16], [16]]
def bassoon_part():
for bass_note in bass_notes:
bassoon.play_note(bass_note, 1, 1)
def clarinet_part():
for bass_note in bass_notes:
pattern = random.choice(clarinet_patterns)
note_length = 1/len(pattern)
for interval in pattern:
if interval is None:
wait(note_length)
else:
clarinet.play_note(bass_note + interval, 1.0, note_length)
s.start_transcribing()
s.fork(clarinet_part)
s.fork(bassoon_part)
s.wait_for_children_to_finish()
performance = s.stop_transcribing()
performance.to_score().show()