- Notifications
You must be signed in to change notification settings - Fork14
Read and write Reaper RPP files with Python.
License
NotificationsYou must be signed in to change notification settings
Perlence/rpp
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
RPP is a format used to describeREAPER projects. This package is designed to be an RPPparser/emitter and usesPLY as a parser framework.
Import the package:
>>>importrpp
Decode RPP:
>>>r=rpp.loads("""\<REAPER_PROJECT 0.1 "4.32" 1372525904 RIPPLE 0 GROUPOVERRIDE 0 0 0 AUTOXFADE 1>""")>>>rElement(tag='REAPER_PROJECT',attrib=['0.1','4.32','1372525904'],children=[ ['RIPPLE','0'], ['GROUPOVERRIDE','0','0','0'], ['AUTOXFADE','1'],])
Transform elements into RPP:
>>>fromrppimportElement>>>rpp.dumps(...Element(tag='REAPER_PROJECT',attrib=['0.1','4.32','1372525904'],children=[... ['RIPPLE','0'],... ['GROUPOVERRIDE','0','0','0'],... ['AUTOXFADE','1'],... ]))'<REAPER_PROJECT 0.1 4.32 1372525904\n RIPPLE 0\n GROUPOVERRIDE 0 0 0\n AUTOXFADE 1\n>\n'
Element
mimics the interface ofxml.etree.ElementTree.Element. You can perform querying operations withfindall
,find
,iterfind
. Note that attribute and text predicates are not supported.
>>>groupoverride=r.find('.//GROUPOVERRIDE')>>>groupoverride['GROUPOVERRIDE','0','0','0']>>>groupoverride[1:]= ['9','9','9']>>>rElement(tag='REAPER_PROJECT',attrib=['0.1','4.32','1372525904'],children=[ ['RIPPLE','0'], ['GROUPOVERRIDE','9','9','9'], ['AUTOXFADE','1'],])
About
Read and write Reaper RPP files with Python.
Topics
Resources
License
Stars
Watchers
Forks
Packages0
No packages published