From a16a37b31f19868ad37dc8d8b7433760c758a317 Mon Sep 17 00:00:00 2001 From: Bluscream Date: Sat, 15 Mar 2025 19:49:49 +0100 Subject: [PATCH 1/2] Create Set-RecordingVolumes --- EXAMPLE/Set-RecordingVolumes | 51 ++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 EXAMPLE/Set-RecordingVolumes diff --git a/EXAMPLE/Set-RecordingVolumes b/EXAMPLE/Set-RecordingVolumes new file mode 100644 index 0000000..f131475 --- /dev/null +++ b/EXAMPLE/Set-RecordingVolumes @@ -0,0 +1,51 @@ +param ( + [Parameter(Mandatory=$false)] + [int]$Volume = 100 +) + +try { Install-Module -Name AudioDeviceCmdlets } catch { Install-Module -Name AudioDeviceCmdlets -Scope CurrentUser } + +function Get-DefaultAudioDevices { + return @{ + Playback = Get-AudioDevice -Playback + PlaybackCommunication = Get-AudioDevice -PlaybackCommunication + Recording = Get-AudioDevice -Recording + RecordingCommunication = Get-AudioDevice -RecordingCommunication + } +} +function Set-DefaultAudioDevices { + param ( + [Parameter(Mandatory=$true)] + [hashtable]$Devices + ) + if ($Devices.Playback) { + Write-Host "Restoring default playback device ""$($Devices.Playback.Name)" + Set-AudioDevice -DefaultOnly -InputObject $Devices.Playback | Out-Null + } + if ($Devices.PlaybackCommunication) { + Write-Host "Restoring default playback communication device ""$($Devices.PlaybackCommunication.Name)""" + Set-AudioDevice -CommunicationOnly -InputObject $Devices.PlaybackCommunication | Out-Null + } + if ($Devices.Recording) { + Write-Host "Restoring default recording device ""$($Devices.Recording.Name)""" + Set-AudioDevice -DefaultOnly -InputObject $Devices.Recording | Out-Null + } + if ($Devices.RecordingCommunication) { + Write-Host "Restoring default recording communication device ""$($Devices.RecordingCommunication.Name)""" + Set-AudioDevice -CommunicationOnly -InputObject $Devices.RecordingCommunication | Out-Null + } +} + +$defaults = Get-DefaultAudioDevices +Get-AudioDevice -List | Where-Object { $_.Type -eq "Recording" } | ForEach-Object { + # if ($oldVol -ne 100) { + Set-AudioDevice -InputObject $_ | out-null + $oldVol = (Get-AudioDevice -RecordingVolume); + Set-AudioDevice -RecordingVolume $Volume | out-null # -ID $id + Set-AudioDevice -RecordingCommunicationVolume $Volume | out-null # -ID $id + $newVol = (Get-AudioDevice -RecordingVolume); + Write-Host """$($_.Name)"" ($($_.ID)): $oldVol -> $newVol"; + # } +} +Set-DefaultAudioDevices -Devices $defaults +Write-Host "Done!" -ForegroundColor Green From d244fc7d3f8c0516ebc706b4afc43cbedf0b151f Mon Sep 17 00:00:00 2001 From: Bluscream Date: Sat, 15 Mar 2025 19:50:28 +0100 Subject: [PATCH 2/2] Rename Set-RecordingVolumes to Set-RecordingVolumes.ps1 --- EXAMPLE/{Set-RecordingVolumes => Set-RecordingVolumes.ps1} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename EXAMPLE/{Set-RecordingVolumes => Set-RecordingVolumes.ps1} (100%) diff --git a/EXAMPLE/Set-RecordingVolumes b/EXAMPLE/Set-RecordingVolumes.ps1 similarity index 100% rename from EXAMPLE/Set-RecordingVolumes rename to EXAMPLE/Set-RecordingVolumes.ps1