This is something I've been using:
import ly.document
from ly.pitch import transpose
def transposeMusic(music, fromstr, tostr, lang='english'):
def pitchFromStr(pstr):
readp = ly.pitch.pitchReader(lang)(pstr.replace("'",
'').replace(',', ''))
return ly.pitch.Pitch(*readp, octave=ly.pitch.octaveToNum(pstr))
fromPitch = pitchFromStr(fromstr.lower())
toPitch = pitchFromStr(tostr.lower())
transposer = transpose.Transposer(fromPitch, toPitch)
doc = ly.document.Document("{" + music + "}")
cursor = ly.document.Cursor(doc)
transpose.transpose(cursor, transposer, language=lang)
transposed = doc.plaintext()
return transposed[1:-1]
Best Peter
> To view this discussion on the web visit
https://groups.google.com/d/msgid/frescobaldi/CAH-WrMHx%2BOHT_ZTNNN2pjWrKORFzfxYG-xK9mA3EhR4nzE%3D5QQ%40mail.gmail.com.