CHANGELOG, README updated to reflect changes.

This commit is contained in:
onyx-and-iris 2022-10-27 21:23:37 +01:00
parent 26cebc6a31
commit 1918de1d30
2 changed files with 62 additions and 21 deletions

View File

@ -9,8 +9,28 @@ Before any major/minor/patch is released all test units will be run to verify th
## [Unreleased] These changes have not been added to PSGallery yet ## [Unreleased] These changes have not been added to PSGallery yet
- [ ] make tests more flexible (different kinds) - [ ]
- [ ] add xy parameters to strip/bus
## [2.5.0] - 2022-10-27
### Added
- xy parameters added to strip/bus
- fx parameters added to strip/bus
- GetType, GetVersion added to Remote class.
- SendText implemented (set parameters by script), added to Remote class.
- CLI example added
- README and CHANGELOG updated to reflect latest changes.
### Changed
- pester tests now support all kinds.
- GoToNextBus example refactored
- Previous console output now written to Debug stream.
### Removed
- setmulti, setandget and special examples.
## [2.4.0] - 2022-06-25 ## [2.4.0] - 2022-06-25

View File

@ -48,7 +48,7 @@ If you decide to direct download see [alternative instructions](FROM_SOURCE.md).
## Use ## Use
#### `As a script file` #### `Script files`
When you instantiate Remote class you will automatically be logged in. Use a When you instantiate Remote class you will automatically be logged in. Use a
try finally block to ensure you logout at the end of your code. try finally block to ensure you logout at the end of your code.
@ -79,27 +79,23 @@ Voicemeeter factory function can be:
- Get-RemoteBanana - Get-RemoteBanana
- Get-RemotePotato - Get-RemotePotato
#### `As a CLI` #### `Through the Shell`
As well as storing scripts into files and running them you can invoke script blocks straight through Powershell. A quick note, since you cannot Login more than One liners should be run through a subshell
once in a single session you ought to run any commands through a subshell. Assuming you have installed as a module you could run this command:
```powershell ```powershell
powershell { $vmr = Get-RemoteBanana; $vmr.strip[0].mute=$true; $vmr.Logout() } powershell { $vmr = Get-RemoteBanana; $vmr.strip[0].mute=$true; $vmr.Logout() }
``` ```
Getters should also work, for example: You may also save the object returned by a factory function to a local variable, then invoke any commands through the shell, for example:
```powershell ```powershell
# Print the value of strip 0 mute to console $vmr = Get-RemoteBanana
powershell { $vmr = Get-RemoteBanana; Write-Host "Strip 0 mute =", $vmr.strip[0].mute; $vmr.Logout() } $vmr.strip[0].mute=1
$vmr.strip[0].mute
# Toggle strip 0 mute $vmr.Logout()
powershell { $vmr = Get-RemoteBanana; $vmr.strip[0].mute=!$vmr.strip[0].mute; $vmr.Logout() }
``` ```
So you essentialy have a CLI.
### Strip ### Strip
The following strip commands are available: The following strip commands are available:
@ -118,6 +114,20 @@ The following strip commands are available:
- label: string - label: string
- device: string - device: string
- sr: int - sr: int
- reverb: float, from 0.0 to 10.0
- delay: float, from 0.0 to 10.0
- fx1: float, from 0.0 to 10.0
- fx2: float, from 0.0 to 10.0
- pan_x: float, from -0.5 to 0.5
- pan_y: float, from 0.0 to 1.0
- color_x: float, from -0.5 to 0.5
- color_y: float, from 0.0 to 1.0
- fx_x: float, from -0.5 to 0.5
- fx_y: float, from 0.0 to 1.0
- postreverb: boolean
- postdelay: boolean
- postfx1: boolean
- postfx2: boolean
- gainlayer0-gainlayer7: float - gainlayer0-gainlayer7: float
for example: for example:
@ -139,11 +149,16 @@ The following bus commands are available:
- mute: bool - mute: bool
- mono: bool - mono: bool
- eq: bool - eq: bool
- eq_ab: bool
- limit: int, from -40 to 12 - limit: int, from -40 to 12
- gain: float, from -60.0 to 12.0 - gain: float, from -60.0 to 12.0
- label: string - label: string
- device: string - device: string
- sr: int - sr: int
- returnreverb: float, from 0.0 to 10.0
- returndelay: float, from 0.0 to 10.0
- returnfx1: float, from 0.0 to 10.0
- returnfx2: float, from 0.0 to 10.0
- mode\_: bool, any of the following: - mode\_: bool, any of the following:
@('normal', 'amix', 'bmix', 'repeat', 'composite', 'tvmix', 'upmix21', @('normal', 'amix', 'bmix', 'repeat', 'composite', 'tvmix', 'upmix21',
'upmix41', 'upmix61', 'centeronly', 'lfeonly', 'rearonly') 'upmix41', 'upmix61', 'centeronly', 'lfeonly', 'rearonly')
@ -314,13 +329,6 @@ Access to lower level Getters and Setters are provided with these functions:
- `$vmr.Getter_String(param)`: For getting the value of any parameter expected to return a string. - `$vmr.Getter_String(param)`: For getting the value of any parameter expected to return a string.
- `$vmr.Setter(param, value)`: For setting the value of any parameter. - `$vmr.Setter(param, value)`: For setting the value of any parameter.
Access to lower level polling functions are provided with these functions:
- `$vmr.PDirty`: Returns true if a parameter has been updated.
- `$vmr.MDirty`: Returns true if a macrobutton has been updated.
example:
```powershell ```powershell
$vmr.Getter('Strip[2].Mute') $vmr.Getter('Strip[2].Mute')
$vmr.Getter_String('Bus[1].Label') $vmr.Getter_String('Bus[1].Label')
@ -328,6 +336,19 @@ $vmr.Setter('Strip[4].Label', 'stripname')
$vmr.Setter('Strip[0].Gain', -3.6) $vmr.Setter('Strip[0].Gain', -3.6)
``` ```
Access to lower level polling functions are provided with these functions:
- `$vmr.PDirty`: Returns true if a parameter has been updated.
- `$vmr.MDirty`: Returns true if a macrobutton has been updated.
- `$vmr.SendText`: Set paramters by script
example:
```powershell
$vmr.SendText("strip[0].mute=1;strip[2].gain=3.8;bus[1].eq.On=1")
```
### Run tests ### Run tests
Run tests using .\runall.ps1 which accepts two parameters: Run tests using .\runall.ps1 which accepts two parameters: