Главная > Powershell > Воспроизведение wav-файлов через Powershell

Воспроизведение wav-файлов через Powershell

Powershell умеет не только пищать динамиком (через Escape-последовательность) и говорить почти человеческим голосом, но и проигрывать полноценные wav-файлы.

Для того, чтобы проиграть wav-файл нужно создать объект System.Media.SoundPlayer передав ему путь к файлу, после чего вызвать метод Play():

$Player = New-Object System.Media.SoundPlayer "$env:windir\media\notify.wav"
$Player.Play()

А чтобы было ещё веселее можно зациклить проигрывание звука при помощи метода PlayLooping(), в таком случае нужно не забыть остановить звук (вызовом метода Stop()), иначе звук будет прокручиваться до тех пор, пока не будет закрыт данный экземпляр Powershell (Ctrl+C не поможет).

Кстати, проигрывать звук можно без отрыва от производства во время выполнения других действий, поскольку нам песня строить и жить помогает звук воспроизводится в отдельном потоке и не останавливает выполнение скрипта:

$Player.PlayLooping()

# Делаем что-то ещё, например
Get-ChildItem $env:SystemRoot -Recurse

$Player.Stop()

Таким образом можно выводить звуковые уведомления, или просто разукрасить свою работу. К сожалению, такой способ позволяет проигрывать только wav-файлы.

В Windows XP были очень интересные звуки. Например, феерично начать выполнение скрипта под раскат грома и закончить фанфарами 🙂

Реклама
Рубрики:Powershell Метки: ,
  1. Комментариев нет.
  1. No trackbacks yet.

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход / Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход / Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход / Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход / Изменить )

Connecting to %s

%d такие блоггеры, как: