ロボットはTikTokerになれるのか？ 〜Pepperモーション開発の技術を総動員してTikTokをやってみた〜

#はじめに
本記事はTikTokのような「音に合わせて表現するショート動画」をPepperのモーションで表現していくためのTipsをまとめたものです。以下のことにご留意ください。

・Pepperアプリ開発の経験者であれば、技術的には新しい情報はないかもしれないこと
・Choregrapheの基本的な使い方を知ってる読者を対象としていること

#背景
みなさんは、「TikTok」というスマホアプリをご存知でしょうか。近年10代・20代の若者を中心に流行しているショート動画共有アプリです。2018年の流行語大賞にもノミネートされていました。
筆者も、TVCMやSNSの広告でTikTokの存在をそれとなく知っていたものの、なんだかもうキラキラした若者達がキャッキャしながら、はしゃいでいる映像を見る度に、キラキラ世代をとうに過ぎた自分には全く無縁の存在だと思っていました。
しかし、ふとこの子の事を思い出し。。。
<img width="337" alt="image.png" src="https://qiita-image-store.s3.amazonaws.com/0/137766/6bb7ac54-aa43-a6e8-8f30-67ae94338a15.png">


「この子がやってみたら何か面白いことができるのではないか」「ロボットならではの面白さを引き出せるのではないか」そんな思いを胸に、自分が今までPepperアプリ開発で学んできた技術を用いて、Pepper(達)にTikTokに挑戦させてみました。

なお、あくまでもPepperのモーション作成に関する記事であって、TikTokでのいいね数・ファン数を伸ばすための方法については(私もわからないので)言及しません。

#作ってみた動画
一部例をご紹介します。
### め組のひと
初めて作った作品
http://vt.tiktok.com/vguCa/

### 漫才
M-1グランプリ公式アカウントが開催した"#だれでもM1チャレンジ"というイベントに乗っかった作品
http://vt.tiktok.com/vv2dL/

#事前準備

###TikTokインストール
[こちら](https://www.tiktok.com/)からどうぞ。
使い方や撮影方法については、例えば[こちらのサイト](https://snsdays.com/tiktok/use)等を参照してください。この記事では詳説しません。

#主な手順
####1. 面白そうな動画を探す
「おすすめ」というタイムラインに表示される動画や、流行っていそうなタグで色々見てみましょう。
なお、人間ではなく、Pepperがやると面白そうかつ実現可能な動画であることに注意してください。たとえば「二本足を巧みに動かす」「5本指を使ってフィンガーダンスをやる」といった内容はPepperには向いていないでしょう。

####2. 動画の音源に合わせてモーションを作成する
音源(音楽やセリフ)に合わせてモーションを作ります。音源の1/2倍速、もしくは1/3倍速で作るのがおすすめです。詳細は後節にて。

####3. 動画を撮影する
2つ手法があります。とりあえず撮影して、後で簡易的な編集を加えたい場合は3-1、音を流しながらタイミングが合っていることを確認しつつ撮影したい場合は3-2がおすすめです。

#####3-1. 作成したモーションをPepperで再生し、それを撮影する
とりあえず通しで撮影し、端末に動画を保存します。後続の手順にて、その動画をアップロードする形で投稿します。

#####3-2. スマホから音楽を流しつつ撮影する
TikTokで人間が被写体となる場合にスタンダードな撮影方法と思われます。


####4. (3-1の場合)一旦動画をアップロードして、音源とのズレ等を確認し、スマホ上でタイミングが合うように編集
これも後節にて詳説します。

####5. 適宜エフェクトをつける

####6. コメントやタグをつけて公開


#モーション作成のコツ
前述の手順2でモーション作成する時のTipsです。

##モーションはスロー(1/2倍 or 1/3倍)で作成、撮影orアップロード時に"2x" or "3x" を選択
TikTokの投稿動画を見ていると、早送りをしているかのような映像が多いかと思います。
映像効果の一種ではありますし、使わなくても良いのですが、できればPepperの場合もこの手法を取る事をおすすめします。理由は以下です。

**・ゆっくりめのモーションを作成した方が、Pepperにとって無理な動作や姿勢を避けられて安心**
**・(主観ですが)早送りの方がよりコミカルに見える**

3-2の方法(音楽流しつつ撮影)の場合、ゆっくりめのモーションを作成し、完成動画を早送りしたい場合は以下画像のオレンジ枠で示した"2x"もしくは"3x"を選択して撮影します。これで撮影を行うと、撮影時は音源がスローで流れ、完成時には「音源は通常の速度で、映像は早送り」という動画が出来上がります。
<img src="https://qiita-image-store.s3.amazonaws.com/0/137766/353e5dd6-be24-fa5d-c22d-a6426be3aa0f.png" width=50%>




##BPMに合わせる。もしくは秒数で合わせる。
BPMからFPSに変換する方法については以下記事を参考にしてみてください。
https://qiita.com/xick/items/a3ef7cfeda9841df1ab0
セリフなどが中心の動画などは、拍数よりも秒数に合わせた方が作りやすいので、秒数に合わせると良いでしょう。
どちらの場合も、何倍速で作成するかに応じて計算し直してください。例えば完成動画を「2倍速で1.3秒間手を振る」というモーションを30fpsで作成する場合は、2.6秒間のモーションを作成する必要があり、フレーム数は78フレームとなります。

##複数のボックスに分ける
1つのタイムラインボックスで15秒間のモーションを作り続けるのは大変です。
キリの良い所や動きのパターンでボックスを分け、繋げていくのがおすすめです。
また、フレーム数だけで管理するよりは、Waitボックスでモーションが終了する秒数をセットしておくと、作成したモーションの合計秒数が管理しやすくなります。

・複数のボックスに分けてつなぐ
<img width="468" alt="複数のボックスにわける" src="https://qiita-image-store.s3.amazonaws.com/0/137766/ba049912-8d11-535e-14f8-91d7aeec3117.png">

・各ボックスの中身
<img width="501" alt="openingボックス" src="https://qiita-image-store.s3.amazonaws.com/0/137766/67c24ff3-3888-484f-955c-d721e9d45f21.png">

・↑のWaitボックスの設定例
<img width="497" alt="スクリーンショット 2018-12-07 14.59.16.png" src="https://qiita-image-store.s3.amazonaws.com/0/137766/f964509f-15ce-1212-2884-9283fa7d4ed9.png">


#その他注意すべきこと
### できるだけ公式に提供されている音源を使う
TikTokはJASRACと利用許諾契約締結、また、各レコード会社、Apple Music等とも提携しています。基本的に、音楽を検索した際に正しいアーティスト名や曲名が表示される音源は、使って問題ないかと思います。また、企業や組織などの認証済みのアカウントが開催しているイベントで提供されている音源もこの類に相当するかと思います。
このような音源に該当しなさそうなものは、使用する前に出典を確認した方が安心でしょう。

### 曲の歌詞
流行っている動画の中には、どこの言語かもわからない空耳的な曲が使われている事があります。使用する前に、できるだけ曲のタイトルや歌詞を調べてみて下さい。もしかしたら撮りたい動画にそぐわない歌詞や、受け入れ難い歌詞が入っているかもしれません。


# まとめ
本記事では、TikTokのような「音に合わせて表現するショート動画」をPepperのモーションで表現していくためのTipsをご紹介しました。