@raphiiko/wavelink-cli 0.0.5 → 0.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Raphiiko
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md CHANGED
@@ -1,12 +1,16 @@
1
1
  # @raphiiko/wavelink-cli
2
2
 
3
+ [![npm version](https://img.shields.io/npm/v/@raphiiko/wavelink-cli.svg)](https://www.npmjs.com/package/@raphiiko/wavelink-cli)
4
+ [![npm downloads](https://img.shields.io/npm/dm/@raphiiko/wavelink-cli.svg)](https://www.npmjs.com/package/@raphiiko/wavelink-cli)
5
+ [![license](https://img.shields.io/npm/l/@raphiiko/wavelink-cli.svg)](https://github.com/Raphiiko/wavelink-cli/blob/main/LICENSE)
6
+
3
7
  A command-line interface for controlling Elgato Wave Link 3.0.
4
8
 
5
- > **Note:** This CLI is based on Wave Link 3.0 Beta Update 3. Keep in mind things might break with future Wave Link updates.
9
+ > **Note:** This CLI is based on Wave Link 3.0 Beta Update 4. Keep in mind things might break with future Wave Link updates.
6
10
 
7
11
  ## Prerequisites
8
12
 
9
- - **Elgato Wave Link 3.0** (Beta Update 3 or newer) must be installed and running.
13
+ - **Elgato Wave Link 3.0** (Beta Update 4 or newer) must be installed and running.
10
14
  - **Node.js 18+** or **Bun 1.0+**
11
15
 
12
16
  ## Installation
@@ -35,22 +39,26 @@ wavelink-cli <category> <command> [options]
35
39
  Manage your output devices (Headphones, Speakers, etc).
36
40
 
37
41
  ```bash
38
- # List all output devices
42
+ # List all output devices (shows names, IDs, and Wave Device status)
39
43
  wavelink-cli output list
40
44
 
41
- # Assign an output device to a mix
42
- wavelink-cli output assign <output-id> <mix-id-or-name>
45
+ # Assign an output device to a mix (use ID or name)
46
+ wavelink-cli output assign <output-id-or-name> <mix-id-or-name>
47
+ # Example: wavelink-cli output assign "Headphones (Arctis Nova Pro Wireless)" "Stream Mix"
43
48
 
44
49
  # Remove an output device from its mix
45
- wavelink-cli output unassign <output-id>
50
+ wavelink-cli output unassign <output-id-or-name>
51
+ # Example: wavelink-cli output unassign "Speakers (Realtek)"
46
52
 
47
53
  # Set volume (0-100)
48
- wavelink-cli output set-volume <output-id> <volume>
54
+ wavelink-cli output set-volume <output-id-or-name> <volume>
55
+ # Example: wavelink-cli output set-volume "Headphones (Arctis Nova Pro Wireless)" 75
49
56
 
50
57
  # Mute/Unmute
51
- wavelink-cli output mute <output-id>
52
- wavelink-cli output unmute <output-id>
53
- wavelink-cli output toggle-mute <output-id>
58
+ wavelink-cli output mute <output-id-or-name>
59
+ wavelink-cli output unmute <output-id-or-name>
60
+ wavelink-cli output toggle-mute <output-id-or-name>
61
+ # Example: wavelink-cli output toggle-mute "Speakers (Realtek)"
54
62
  ```
55
63
 
56
64
  ### Mixes
@@ -62,59 +70,67 @@ wavelink-cli mix list
62
70
 
63
71
  # Set a device as the ONLY output for a mix
64
72
  wavelink-cli mix set-output <mix-id-or-name> <output-id>
73
+ # Example: wavelink-cli mix set-output "Stream Mix" "{0.0.0.00000000}.{abc12345-...}"
65
74
 
66
75
  # Set master volume (0-100)
67
76
  wavelink-cli mix set-volume <mix-id-or-name> <volume>
77
+ # Example: wavelink-cli mix set-volume "Personal Mix" 80
68
78
 
69
79
  # Mute/Unmute/Toggle
70
80
  wavelink-cli mix mute <mix-id-or-name>
71
81
  wavelink-cli mix unmute <mix-id-or-name>
72
82
  wavelink-cli mix toggle-mute <mix-id-or-name>
83
+ # Example: wavelink-cli mix toggle-mute "Monitor Mix"
73
84
  ```
74
85
 
75
86
  ### Channels
76
87
  Manage audio channels (System, Music, Browser, etc).
77
88
 
78
89
  ```bash
79
- # List all channels
90
+ # List all channels (shows names and IDs)
80
91
  wavelink-cli channel list
81
92
 
82
- # Set master channel volume (0-100)
83
- wavelink-cli channel set-volume <channel-id> <volume>
93
+ # Set master channel volume (0-100, use ID or name)
94
+ wavelink-cli channel set-volume <channel-id-or-name> <volume>
95
+ # Example: wavelink-cli channel set-volume "Game Audio" 70
84
96
 
85
97
  # Mute/Unmute/Toggle channel globally
86
- wavelink-cli channel mute <channel-id>
87
- wavelink-cli channel unmute <channel-id>
88
- wavelink-cli channel toggle-mute <channel-id>
98
+ wavelink-cli channel mute <channel-id-or-name>
99
+ wavelink-cli channel unmute <channel-id-or-name>
100
+ wavelink-cli channel toggle-mute <channel-id-or-name>
101
+ # Example: wavelink-cli channel toggle-mute "Voice Chat"
89
102
 
90
103
  # Set volume for a specific mix
91
- wavelink-cli channel set-mix-volume <channel-id> <mix-id-or-name> <volume>
104
+ wavelink-cli channel set-mix-volume <channel-id-or-name> <mix-id-or-name> <volume>
105
+ # Example: wavelink-cli channel set-mix-volume browser "Stream Mix" 60
92
106
 
93
107
  # Mute/Unmute in a specific mix
94
- wavelink-cli channel mute-in-mix <channel-id> <mix-id-or-name>
95
- wavelink-cli channel unmute-in-mix <channel-id> <mix-id-or-name>
96
- wavelink-cli channel toggle-mute-in-mix <channel-id> <mix-id-or-name>
108
+ wavelink-cli channel mute-in-mix <channel-id-or-name> <mix-id-or-name>
109
+ wavelink-cli channel unmute-in-mix <channel-id-or-name> <mix-id-or-name>
110
+ wavelink-cli channel toggle-mute-in-mix <channel-id-or-name> <mix-id-or-name>
111
+ # Example: wavelink-cli channel toggle-mute-in-mix game "Monitor Mix"
97
112
 
98
113
  # Isolate a channel in a mix (mute all others)
99
- wavelink-cli channel isolate <channel-id> <mix-id-or-name>
100
-
101
-
114
+ wavelink-cli channel isolate <channel-id-or-name> <mix-id-or-name>
115
+ # Example: wavelink-cli channel isolate voice "Personal Mix"
102
116
  ```
103
117
 
104
118
  ### Inputs
105
119
  Control hardware inputs (Microphones, etc).
106
120
 
107
121
  ```bash
108
- # List all input devices
122
+ # List all input devices (shows names, IDs, gain ranges, gain lock status, and mic/PC mix settings)
109
123
  wavelink-cli input list
110
124
 
111
- # Set gain (0-100)
112
- wavelink-cli input set-gain <input-id> <gain>
125
+ # Set gain (0-100, use ID or name)
126
+ wavelink-cli input set-gain <input-id-or-name> <gain>
127
+ # Example: wavelink-cli input set-gain "Microphone (Blue Yeti)" 65
113
128
 
114
129
  # Mute/Unmute
115
- wavelink-cli input mute <input-id>
116
- wavelink-cli input unmute <input-id>
117
- wavelink-cli input toggle-mute <input-id>
130
+ wavelink-cli input mute <input-id-or-name>
131
+ wavelink-cli input unmute <input-id-or-name>
132
+ wavelink-cli input toggle-mute <input-id-or-name>
133
+ # Example: wavelink-cli input toggle-mute "Wave:3"
118
134
  ```
119
135
 
120
136
  ### General