Small ArrowVortex clipboard processing library
Project description
Description
Small Arrow Vortex clipboard processing library.
Install
You can install this library from PyPI with pip install av-clipboard-lib
or compile it from source with python setup.py build
.
Usage
import av_clipboard_lib as av
# A copy of [12][23][14] pattern, 16ths.
row_based_copy = """ArrowVortex:notes:!!WE'!<<-/!Xo&G!uM"""
# A copy of [12][23][13] pattern, 16ths.
changed_row_based_copy = """ArrowVortex:notes:!!WE'!<<-/!Xo&G!Z1"""
# Same copy of [12][23][14] pattern, 0.5 seconds between each chord.
time_based_copy = """ArrowVortex:notes:!<rN(z!!!!"zz!<<*"!!!#W56:fbzi'.2Az!:W2Tz!!)LQ"""
# A copy of two BPM changes and a stop. 60 BPM, 90 BPM and 0.75 second stop.
structural_copy = """ArrowVortex:tempo:!WW3#zz:-]Wrz!!!"L<^6Zd0E;(Qz!!)4I!!"""
parsed_row_copy = av.parse_av_clipboard_data(row_based_copy)
assert parsed_row_copy == av.clipboard_data.RowCopy(objects=[
av.Tap(column=0, position=av.RowPosition(0)), av.Tap(1, av.RowPosition(0)), # First argument: column, second: row.
av.Tap(1, av.RowPosition(12)), av.Tap(2, av.RowPosition(12)), # 12th row --> 16th.
av.Tap(0, av.RowPosition(24)), av.Tap(3, av.RowPosition(24)),
])
parsed_row_copy.objects[-1].column = 2 # Shift last tap to third column
# Overall pattern now: [12][23][13]
assert av.produce_av_clipboard_data(parsed_row_copy) == changed_row_based_copy
# It's up to you to make sure data is correct however
parsed_row_copy.objects[-1].column = 0
# No error, but AV will report overlapping notes
av.produce_av_clipboard_data(parsed_row_copy)
# Similar interface is used for other types of copies, though they return different objects
parsed_time_copy = av.parse_av_clipboard_data(time_based_copy)
assert parsed_time_copy == av.clipboard_data.TimeCopy(objects=[
av.Tap(0, av.TimePosition(0.0)), av.Tap(1, av.TimePosition(0.0)),
av.Tap(1, av.TimePosition(0.5)), av.Tap(2, av.TimePosition(0.5)),
av.Tap(0, av.TimePosition(1.0)), av.Tap(3, av.TimePosition(1.0)),
])
parsed_structure_copy = av.parse_av_clipboard_data(structural_copy)
assert parsed_structure_copy == av.clipboard_data.StructureCopy(objects=[
av.BPM(av.RowPosition(0), bpm=60.000),
av.BPM(av.RowPosition(24), bpm=90.000),
av.Stop(av.RowPosition(48), time=0.750)
])
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file av-clipboard-lib-1.9.1.tar.gz
.
File metadata
- Download URL: av-clipboard-lib-1.9.1.tar.gz
- Upload date:
- Size: 8.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.0.0 pkginfo/1.6.1 requests/2.24.0 setuptools/50.3.1.post20201107 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 44fc665db0c48d67f4027795f23443b94f6d4b4f899ebb481c0e87b457466145 |
|
MD5 | 12c2f8484d55be9898eaf45f1e9ed4e8 |
|
BLAKE2b-256 | 93b0bcd154ca6465023aceefbd2b2e47c26a6585c9e1f3c51fe116d3a8a20088 |
File details
Details for the file av_clipboard_lib-1.9.1-py3-none-any.whl
.
File metadata
- Download URL: av_clipboard_lib-1.9.1-py3-none-any.whl
- Upload date:
- Size: 10.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.0.0 pkginfo/1.6.1 requests/2.24.0 setuptools/50.3.1.post20201107 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 540f9baf6a39432734b18ffd3313d713b1ffd7240cf8b500a51a400a30efa76f |
|
MD5 | 9e4a3bcc680044931434818f177cb4e7 |
|
BLAKE2b-256 | 1d6978520bed36a9778eecbd8073ab8014c7eee0b27b2cd33b04d61f96e8279d |