LoginSignup
7
2

More than 5 years have passed since last update.

俺はブラウザでラッパーになる part 1

Last updated at Posted at 2019-04-17

ある日、abema.tvを見ていて男は思った。
「ラッパーになりたい!」

tl;dr

音声ファイルの準備

  • Windows10環境では下記をPowershellプロンプトで実行し、wavファイルを生成する。
  • MacOSXな人は、 Say コマンドでも使ってください。
Add-Type -AssemblyName System.speech
$speak = New-Object System.Speech.Synthesis.SpeechSynthesizer
0x3041..0x3093 | %{ # ぁ~ん
  $s = [string][char]$_
  $speak.setOutputToWaveFile("$($s).wav")
  [void]$speak.Speak($s+"ー")
}
  • 通常の日本語環境なら Microsoft Haruka Desktop の声になっていると思います
  • 下記コマンドでインストールされている音声を確認し、設定するもよし。
  $speak.GetInstalledVoices() | ?{$_.VoiceInfo.Culture -eq "ja-JP"} | %{$_.VoiceInfo}
  $speak.SelectVoice("Microsoft Haruka Desktop")
  • 出来上がったwavファイルを ffmpeg でmp3とoggに変換します。
gci *.wav | %{$f=$_.fullname;$g=$f -replace ".wav$",".mp3"; cmd /c "C:\path\to\ffmpeg.exe -i $($f) -af silenceremove=1:0:-60dB $($g)"}
gci *.wav | %{$f=$_.fullname;$g=$f -replace ".wav$",".ogg"; cmd /c "C:\path\to\ffmpeg.exe -i $($f) -af silenceremove=1:0:-60dB $($g)"}

Tone.jsでしゃべらす

  • http://uniqode.qiita.s3-website-ap-northeast-1.amazonaws.com/rap/1/
  • pushを押すと、、 M.C. MS Haruka a.k.a. Windows のラップが!
  • おれがえむしーえむえすはるかーーこのこえがきみにとどきますかーー
  • 単純に一定のリズムで再生しているだけです。HTMLソース見てもらえば、 Tone.js のおかげで簡単なコードしか書いていないと分かります。
  • おまけとして、Text入力欄に とどいたぜーそのこえがーーとどろかせーおとのれんさーー などと入力して、pushしなおせば、任意のラップができます(対応はひらがなのみ)!

反省/まとめ

  • じゃじゅじょ、などの拗音付きの音は個別に準備した方がよさそう…
  • Tone.jsのサンプラーを使えばピッチ指定も出来て、よりリアルに出来るのでは
  • part2でさらなる改善を図りたいです。改善案のコメントをください!
  • Respect to Cylob Rewind !
7
2
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
2