powershell_beep

Émettre un signal sonore

CréationNicolas THOREZ 2020/06/04 09:15

Powershell peut émettre des signaux sonores (Beep), ce qui peut être utile pour avertir d'un problème, signaler un état, etc… Cette fonctionnalité est obtenu par la méthode Beep() disponible dans la bibliothèque [Console]. La méthode prend en argument la fréquence d'émission (440 pour un La) et la durée d'émission en millisecondes.

Exemple :

# Émettre un La pendant 1s
[Console]::Beep(440,1000)

Le 8bits, c'est sympa pour les nostalgiques mais certains peuvent préférer utiliser leur carte son à son plein potentiel. La bibliothèque [System.Media.SoundPlayer] peut alors être utilisée avec sa méthode Play().

Exemple :

# Jouer la notification de Windows
$Sound = New-Object System.Media.SoundPlayer "$env:windir\Media\notify.wav"
$Sound.Play()

Si vous êtes du genre à vouloir discuter avec votre ordinateur, une autre bibliothèque peut vous intéresser. [System.Speech] regroupe les méthodes nécessaires pour la synthèse vocale dont la méthode Speak().

Exemple :

# Hommage à Isaac Asimov
Add-Type -AssemblyName System.Speech
$Viki = New-Object System.Speech.Synthesis.SpeechSynthesizer
$Viki.Speak("J'obéis aux trois lois de la robotique... si je veux")

[Console]::Beep(440,500)
[Console]::Beep(440,500)
[Console]::Beep(440,500)
[Console]::Beep(349,350)
[Console]::Beep(523,150)
[Console]::Beep(440,500)
[Console]::Beep(349,350)
[Console]::Beep(523,150)
[Console]::Beep(440,1000)
[Console]::Beep(659,500)
[Console]::Beep(659,500)
[Console]::Beep(659,500)
[Console]::Beep(698,350)
[Console]::Beep(523,150)
[Console]::Beep(415,500)
[Console]::Beep(349,350)
[Console]::Beep(523,150)
[Console]::Beep(440,1000)

[Console]::Beep(784,150)
Start-Sleep -Milliseconds 300
[Console]::Beep(784,150)
Start-Sleep -Milliseconds 300
[Console]::Beep(932,150)
Start-Sleep -Milliseconds 150
[Console]::Beep(1047,150)
Start-Sleep -Milliseconds 150
[Console]::Beep(784,150)
Start-Sleep -Milliseconds 300
[Console]::Beep(784,150)
Start-Sleep -Milliseconds 300
[Console]::Beep(699,150)
Start-Sleep -Milliseconds 150
[Console]::Beep(740,150)
Start-Sleep -Milliseconds 150
[Console]::Beep(784,150)
Start-Sleep -Milliseconds 300
[Console]::Beep(784,150)
Start-Sleep -Milliseconds 300
[Console]::Beep(932,150)
Start-Sleep -Milliseconds 150
[Console]::Beep(1047,150)
Start-Sleep -Milliseconds 150
[Console]::Beep(784,150)
Start-Sleep -Milliseconds 300
[Console]::Beep(784,150)
Start-Sleep -Milliseconds 300
[Console]::Beep(699,150)
Start-Sleep -Milliseconds 150
[Console]::Beep(740,150)
Start-Sleep -Milliseconds 150
[Console]::Beep(932,150)
[Console]::Beep(784,150)
[Console]::Beep(587,1200)
Start-Sleep -Milliseconds 75
[Console]::Beep(932,150)
[Console]::Beep(784,150)
[Console]::Beep(554,1200)
Start-Sleep -Milliseconds 75
[Console]::Beep(932,150)
[Console]::Beep(784,150)
[Console]::Beep(523,1200)
Start-Sleep -Milliseconds 150
[Console]::Beep(466,150)
[Console]::Beep(523,150)

Entrer votre commentaire. La syntaxe wiki est autorisée:
 
  • powershell_beep.txt
  • Dernière modification : 2021/03/05 16:01
  • de nekan