発声をWAVファイルにして保存する
ときどき、ちょっとした実験をしていて、短い音声ファイルが欲しくなることもある。しかし、簡単に録音できるからといって、自分の声を聞くのはなにか妙に恥ずかしい。そういうときには、Speech APIで喋らせた声を音声ファイルにすれば簡単に音声ファイルを作ることができる。
まずは、音声ファイルを保存できるフォルダーを用意する。適当なフォルダーでよい。ここでは、「C:\temp」フォルダーに「output.wav」という音声ファイルを保存することにする。そこに音声ファイルを保存するのが以下のリストのコマンドだ。なお、すでに存在するファイルを上書きしようとするとエラーになるので、存在しないファイル名を「フルパス」で指定する。
$x=New-Object -ComObject SAPI.SpVoice
$vs=New-Object -ComObject SAPI.SpFileStream
$vs.Open("c:\temp\output.wav",3)
$x.AudioOutputStream=$vs
$x.Speak("裏に塀ができたんだってねぇ")
$vs.Close()
音声ファイルは、メディアプレーヤーなどで再生が可能だが、コマンドラインからなら、
start "c:\temp\output.wav"
で再生が可能だ。
Windowsには、Speech APIのほかにも.NET frameworkのSystem.Speechなど、いろいろとあるのだが、SAPIを使うのに比べると一手間かかってしまう。なので、スクリプトからすぐに使うには、この方法が一番楽。他の言語でもCOMコンポーネントを扱えるなら同様のことは簡単にできる。発声を普通のテキストで指定できるので、複数のサウンドを使い分けて鳴らすのと比べても簡単だ。
この連載の記事
-
第435回
PC
Windows Terminal Preview v1.21では、前回終了時のタブとその表示内容を復元できるように -
第434回
PC
AIの急速な導入がWindowsの予定を変えた!? Windows 12がすぐには出ない可能性 -
第433回
PC
Windows 11の2つのウィジェットを調べる -
第432回
PC
ウェブブラウザが切り開いたWindowsでのタブアプリケーション -
第431回
PC
Windows上でユニコードを「見る」方法 -
第430回
PC
WindowsからWordPadが廃止! RTF(Rich Text Format)はどうなる? -
第429回
PC
Windows Updateの「利用可能になったらすぐに最新の更新プログラムを入手する」はオンにした方がいいか? -
第428回
PC
Google/Bingで使える検索オプション -
第427回
PC
WindowsのPowerShellのプロファイルを設定する -
第426回
PC
WindowsでAndroidスマホをWebカメラにする機能を試した -
第425回
PC
無料で使えるExcelにWord、Microsoft 365のウェブ版を調べた - この連載の一覧へ