Compare commits

..

No commits in common. "2f410f431e73cbd0a55f9e2114f005de85e6e401" and "29da6a8d17d559daa5f3e6b6d9e8c65a5cb13b2f" have entirely different histories.

26 changed files with 11 additions and 24 deletions

18
LICENSE
View File

@ -2,20 +2,8 @@ MIT License
Copyright (c) 2023 dlprows Copyright (c) 2023 dlprows
Permission is hereby granted, free of charge, to any person obtaining a copy Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View File

@ -10,12 +10,11 @@ Application volume is changed with the windows volume mixer.
Unlike faders or potentiometers, the encoders of the Stream Deck+ spin infinitely in either direction. Which means when you change your focused application, you don't have to worry about desynchronization with the current app. Unlike faders or potentiometers, the encoders of the Stream Deck+ spin infinitely in either direction. Which means when you change your focused application, you don't have to worry about desynchronization with the current app.
The screen updates to show the name/icon of the app so that you can always know what you're about to change. The screen updates to show the name/icon of the app so that you can always know what you're about to change.
![Focus volume control plugin preview](previews/1-preview.png?raw=true) ![Focus volume control plugin preview](previews/preview.png?raw=true)
## Developing ## Developing
build the solution with visual studio build the solution with visual studio
download the [stream deck distribution tool](https://docs.elgato.com/sdk/plugins/packaging) to `src/FocusVolumeControl/`
run `install.bat <debug | release>` run `install.bat <debug | release>`
to debug, attach to the FocusVolumeControl running process to debug, attach to the FocusVolumeControl running process

Binary file not shown.

Before

Width:  |  Height:  |  Size: 285 KiB

Binary file not shown.

BIN
previews/preview.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

View File

@ -26,7 +26,7 @@ public class ActiveAudioSessionWrapper : IAudioSession
} }
catch catch
{ {
_icon = "Image/encoderIcon"; _icon = "Image/pluginIcon.png";
} }
} }
return _icon; return _icon;

View File

@ -13,7 +13,7 @@ internal class SystemVolumeAudioSession : IAudioSession
AudioEndpointVolume _volumeControl; AudioEndpointVolume _volumeControl;
public string DisplayName => "System Volume"; public string DisplayName => "System Volume";
public string GetIcon() => "Images/encoderIcon"; public string GetIcon() => "Images/actionIcon";
public void ToggleMute() public void ToggleMute()
{ {

View File

@ -77,7 +77,7 @@
</None> </None>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Content Include="$(SolutionDir)..\previews\**\*.png" Link="previews\%(Filename)%(Extension)"> <Content Include="$(SolutionDir)..\previews\**\*" Link="previews\%(Filename)%(Extension)">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content> </Content>
<Content Include="Images\**\*.png"> <Content Include="Images\**\*.png">

Binary file not shown.

Before

Width:  |  Height:  |  Size: 897 B

After

Width:  |  Height:  |  Size: 5.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 5.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.8 KiB

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.1 KiB

After

Width:  |  Height:  |  Size: 5.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@ -2,10 +2,10 @@
"Actions": [ "Actions": [
{ {
"Name": "Focused App Volume", "Name": "Focused App Volume",
"Icon": "Images/actionIcon", "Icon": "Images/icon",
"States": [ "States": [
{ {
"Image": "Images/stateIcon", "Image": "Images/pluginAction",
"TitleAlignment": "middle", "TitleAlignment": "middle",
"FontSize": "12" "FontSize": "12"
} }
@ -20,7 +20,7 @@
"Rotate": "Change the volume", "Rotate": "Change the volume",
"Push": "Mute", "Push": "Mute",
"Touch": "Mute", "Touch": "Mute",
"LongTouch": "Reset" "LongTouch": "Reset"
} }
}, },
"SupportedInMultiActions": false, "SupportedInMultiActions": false,
@ -32,7 +32,7 @@
"Author": "dlprows", "Author": "dlprows",
"Name": "FocusVolumeControl", "Name": "FocusVolumeControl",
"Description": "Control the volume of the focused application", "Description": "Control the volume of the focused application",
"URL": "https://github.com/dlprows/FocusVolumeControl", "URL": "https://encyclopediaofdaniel.com",
"Version": "1.0", "Version": "1.0",
"CodePath": "FocusVolumeControl", "CodePath": "FocusVolumeControl",
"Category": "Volume Control [dlprows]", "Category": "Volume Control [dlprows]",