#FJMK blog

citrus+というバンドをやってます。 http://citrusplus.jp 平日昼間はインターネットの会社@紀尾井町でエンジニアやってます。

MacのSayコマンドを使ってPPAPを演奏してみた

f:id:sfjmk:20170903185522j:plain

この記事は macOS Advent Calendar 2016 - Qiita 8日目の記事です。

みなさん、MacのSayコマンド、使ってますか? 使い道がいまいち謎な機能ですが、最近Sayコマンドを使った演奏動画を撮ったところ、このように記事に取り上げていただきました。

カッコいい!「MacのSayコマンドを使ってPPAPを演奏してみた」動画が凄い | 男子ハック

カッコいい!「MacのSayコマンドを使ってPPAPを演奏してみた」動画が凄い | 男子ハック

PPAP をMac (ターミナル ) リミックス

PPAPMac (ターミナル ) リミックス

今回の演奏を通してSayコマンドの可能性を感じたので、作ったプロセスを公開してみます。

完成した動画はこちら。

Sayコマンドとは

Sayコマンドは、Macに標準でついている機能で、ターミナル等から

$ say 'PPAP'

のように打つと、

このように喋ります。

これだけならまだ分かるのですが、この機能、無駄に無駄に10種類も言葉があります。

詳しくはこちらをご覧ください。

Macのsayコマンドの使い方 - Qiita

Macのsayコマンドの使い方 - Qiita

なんでこんなにバリエーションがあるのかイマイチ謎ですが謎ですが、、、

とりあえず楽器にしちゃえばいい

ということで、MacのSayコマンドを楽器にして演奏してみました。

メンバー

最近よく一緒にスタジオにいってる以下のメンバーで一緒に演奏しました。

Mac Bob (Facebook) フリーランスエンジニア(楽器未経験!)

Drums Junpei Mori (Facebook) ヒカリエの営業マン

Keyboard Sotaro Fujimaki (自分) (Facebook, Twitter) 紀尾井町のエンジニア

最近一緒に演奏した動画を上げてるのでよかったら見てみてください↓

準備

この準備の部分が一番重要です。 Say Commandを使って演奏することが決まったのはいいものの、毎回律儀に

$say -v say -v Fred 'PPAP' -r 150

とターミナル上で打っていては当然演奏が間に合いません。 クリップボードを使ったりhistoryからコマンドを拾って打っても安定した演奏をするので難しかったです。

が、こんな時に役立つのがalias機能です。 こんなzshrcにこんな記述をして、sayコマンドにaliasを貼ってみました。

say_message () {
    if [ -z $2 ]; then
        speed=150
    else
        speed=$2
    fi

    echo "say -v Fred '$1' -r ${speed}"
    say -v Fred $1 -r ${speed}&
}

alias 0="say_message 'P P A P'"
alias 1="say_message 'I have a pen.'"
alias 2="say_message 'I have an apple'"
alias 3="say_message 'Unn'"
alias 4="say_message 'Apple pen'"

alias 5="say_message 'I have a pen.'"
alias 6="say_message 'I have pineapple'"
alias 7="say_message 'Unn'"
alias 8="say_message 'Pineapple pen'"

alias 9="say_message 'Apple pen'"
alias q="say_message 'Pineapple pen'"
alias w="say_message 'Unn'"
alias e="say_message 'Pen pinapple apple pen' 200"
alias r="say_message 'Pen pinapple apple pen' 100"

alias a="say_message 'Pen'"
alias s="say_message 'Pai napple Pen'"
alias d="say_message 'Apple Pen'"
alias f="say_message 'Pen'"

alias z="say_message 'Newton discovered the law when he saw an apple fall from a tree.'"
alias x="say_message 'PINEAPPLE CUTTER AND PINEAPPLE CUTTER DEVICE'"
alias c="say_message 'The pai napple is a tropical American plant bearing a large fleshy edible fruit with a terminal tuft of stiff leaves'"
alias v="say_message 'The apple is the pomaceous fruit of the apple tree, species Malus domestica in the rose family.It is one of the most cultivated tree fruits, and the most widely known of the many members of genus Malus that are used by humans.'"

これをセットしておくと、キーボード1文字打ってenterを押すだけで、Fredに任意の言葉を喋らせることができます。 (say_massege内のechoがなくても喋ってくはくれますが、演出上コマンドが出てたほうが映像映えするのでechoさせました)

また、

say -v Fred $1 -r ${speed}&

このように最後に&をつけてバックグラウンド実行させることで、コマンド連打も可能です。(これをつけないと、喋り終わるまで次のコマンドを打てません)

声は10種類ある中でも、Fredのシブさが気に入ったのでFredをチョイスしました。

Macの奏法問題が解決したので、あとは良い感じのリフを考えて良い感じの演奏をするだけです。

演奏渋い声に合わせて大人っぽいアレンジがいいかなーと思ったので、まずピアノとMacでざっくりとしたデモを作りました。

こんな感じ

これで事前準備は完了です。

スタジオへ

そして、メンバーとスタジオへ行って演奏と撮影をします。

1度目のスタジオ

使ったスタジオはサウンドスタジオノアです。バンドマンには定番ですね。 スタジオ自体は2~3時間とってたものの、他の曲を録ったりもしてたので、PPAPに関しては1時間くらい使って練習&撮影。 デモを元に、演奏しながらアレンジを作り込んでいきました。

まあ、それっぽくはなりましたが、「もっといけるよね」感があったので、もう一回スタジオをとって撮り直すことにしました。

ちなみに1回目はこんな感じ

2度目のスタジオ

2度目も同じくノアを利用。

最近色々動画を撮ってたカット割りがないと とはいいつつも、そんなに良いカメラを持ってるわけではないので、 こんな風に各自のiPhone/iPod Touchをマイクスタンドにしてみました。 マイクスタンドは自由自在に位置を調整できますし、iPhoneなら画質もそれなりですし、結構使えると思うので今度スタジオに入る時は是非試してみてください。

そして再度撮影。 二回目はキメの部分をいくつか用意したり、Keyboardのソロのときには長文を喋らせる(超暇な人は文章の内容調べてみてください笑)等、色々と手を加えてみました。

今度は結構良い感じになったと思います。

編集作業

動画は撮れたのであとは編集するだけです。 iMovieはどうやら2トラックしか編集できないようなので、Junpei moriが気合で編集してましたw (Final Cutを使えば複数トラックの映像も簡単に編集できるっぽいですがw)

最初にこんな感じでテキストベースでざっくりタイムラインを作っておくとイメージの共有がしやすいです。

最初にボブのシーン
0:00 全体
0:08 ピアノ
0:13 (イントロ)全体
0:29 (ドラムだけ) ボブ
0:33 (1ループ目開始) 全体
-- ボブをところどころはさんでいく
0:51 (2ループ目開始) ピアノ
0:57 (Un*3+Apple Pen)ボブ
1:01 全体
1:10 (3ループ目開始)
1:28 (ドラムキメ開始) ピアノ
1:30 全体
-- 適当に割る
1:44 (キメラスト&ピアノソロ開始) ピアノ
1:50 (セリフ開始) ボブ
1:50 全体
-- 適当に割る
2:20 ソロラスト ピアノとボブ交互
2:22(ラストループ)  全体 

いきなり演奏動画に入ってもよくわからない思うので、Sayコマンドの意味が分かるような描写も最初に軽く入れてみました。

公開

編集も無事終わったので公開。

シェアしてくださった皆さんありがとうございました。 というわけで、MacのSayコマンド、地味に演奏に使えそうなので、皆さんも使ってみてはいかがでしょうか!

YouTubeチャンネル作ってみました。最近の演奏動画色々載せてます。 色々と面白い音楽作っていこうと思ってるので、よかったらチャンネル登録お願いします!