From 985fd3172f70a80329099b059aa254379feae25a Mon Sep 17 00:00:00 2001 From: onyx-and-iris <75868496+onyx-and-iris@users.noreply.github.com> Date: Thu, 21 Jul 2022 23:19:24 +0100 Subject: [PATCH] minor version bump. 0.4.0 section added to changelog. patch, option sections added to readme. --- CHANGELOG.md | 22 ++++++- README.md | 112 +++++++++++++++++++++++++++++++++- examples/observer/__main__.py | 10 +-- 3 files changed, 137 insertions(+), 7 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 92305d9..50e1668 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,7 +9,27 @@ Before any major/minor/patch bump all unit tests will be run to verify they pass ## [Unreleased] -- [x] +- [ ] + +## [0.4.0] - 2022-07-21 + +### Added + +- asio, insert added to kind maps (maps patching parameters) +- Patch added to misc +- Option added to misc +- Patch, option sections added to readme. +- Patch, option unit tests added +- alias property isdirty for is_updated in strip/bus levels + +### Changed + +- make_strip_level_map, make_bus_level_map added. +- observer example using isdirty + +### Fixed + +- error message for vban.sr setter ## [0.3.0] - 2022-07-16 diff --git a/README.md b/README.md index b13d0d9..08201a8 100644 --- a/README.md +++ b/README.md @@ -401,13 +401,123 @@ with voicemeeterlib.api(kind_id) as vm: ### FX -The following methods are available: +The following properties are available: - `reverb`: boolean - `reverb_ab`: boolean - `delay`: boolean - `delay_ab`: boolean +example: + +```python +vm.fx.reverb_ab = True +``` + +### Patch + +The following properties are available: + +- `postfadercomposite`: boolean +- `postfxinsert`: boolean + +example: + +```python +vm.patch.postfxinsert = False +``` + +##### asio[i] + +- `get()`: int +- `set(patch_in)`: int, valid range determined by connected device. + +example: + +```python +vm.patch.asio[3].set(4) +``` + +i, from 0 to 10 + +##### A2[i] - A5[i] + +- `get()`: int +- `set(patch_out)`: int, valid range determined by connected device. + +example: + +```python +vm.patch.A3[5].set(18) +``` + +i, from 0 to 8. + +##### composite[i] + +- `get()`: int +- `set(channel)`: int, from 0 up to number of channels depending on version. + +example: + +```python +vm.patch.composite[7].set = 4 +``` + +i, from 0 to 8. + +##### insert[i] + +- `on`: boolean + +example: + +```python +vm.patch.insert[18].on = True +``` + +i, from 0 up to number of channels depending on version. + +### Option + +The following properties are available: + +- `sr`: int +- `asiosr`: boolean +- `monitoronsel`: boolean + +example: + +```python +vm.option.sr = 48000 +``` + +The following methods are available: + +- `buffer(driver, buffer)` : Set buffer size for particular audio driver. + +example: + +```python +vm.option.buffer("wdm", 512) +``` + +driver defined as one of ("mme", "wdm", "ks", "asio") +buffer, from 128 to 2048 + +##### delay[i] + +- `get()`: int +- `set(delay)`: int, from 0 to 500 + +example: + +```python +vm.option.delay[4].set(30) +``` + +i, from 0 up to 4. + ### Multiple parameters - `apply` diff --git a/examples/observer/__main__.py b/examples/observer/__main__.py index 09a444e..67f191f 100644 --- a/examples/observer/__main__.py +++ b/examples/observer/__main__.py @@ -12,11 +12,11 @@ class Observer: print("mdirty!") if subject == "ldirty": info = ( - f"[{self.vm.bus[0]} {self.vm.bus[0].levels.is_updated}]", - f"[{self.vm.bus[1]} {self.vm.bus[1].levels.is_updated}]", - f"[{self.vm.bus[2]} {self.vm.bus[2].levels.is_updated}]", - f"[{self.vm.bus[3]} {self.vm.bus[3].levels.is_updated}]", - f"[{self.vm.bus[4]} {self.vm.bus[4].levels.is_updated}]", + f"[{self.vm.bus[0]} {self.vm.bus[0].levels.isdirty}]", + f"[{self.vm.bus[1]} {self.vm.bus[1].levels.isdirty}]", + f"[{self.vm.bus[2]} {self.vm.bus[2].levels.isdirty}]", + f"[{self.vm.bus[3]} {self.vm.bus[3].levels.isdirty}]", + f"[{self.vm.bus[4]} {self.vm.bus[4].levels.isdirty}]", ) print(" ".join(info))