自分語りから始めて恐縮だが、最近業務としてYouTubeで取材動画の発信に取り組んでいる。企画だけ、撮影の調整を手伝うだけなど関わり方はさまざまだが、極端なケースではレポーターとして自分で動画に出ることもある。
が、レポーターというのはなかなか難しい。視聴者に不快にしない立ち居振る舞いなど、四苦八苦している。自分で自分の動画を見ると、じっとしていられないのが丸見えで、結構恥ずかしい。
そんな折、米OpenAIの動画生成AI「Sora」が出てきた。細かい説明は過去記事に譲るが「これで自分が喋る動画を作れば、少しでも見栄えを良くできるのでは?」と思い、可能性を探ってみた。
●「高評価・チャンネル登録お願いします!」 AIで作れるか
まず、記者がどんな動画を作ろうとしたか説明しておく。Soraは最長でも20秒の動画しか生成できず、音声も作れない。そもそも自分が出ているのは、現場に行って素材を撮る取材動画なので、その様子をAIで生成するのはさすがにNGだ。
となると、作れるのは例えば導入の前説や「チャンネル登録お願いします」的なパートあたり。声は後で当てることになる。それでも、せりふを“噛む”わ、じっとしていられないわの記者からすれば結構助かる。というわけで、今回は「YouTubeの高評価・チャンネル登録お願いします」と話す5~10秒ほどのカットを作れるか試行錯誤した。サンプル動画も掲載するので、あわせて確認のこと。
●アプローチ1:自撮りから生成
先に結論から言うと、違和感が全くないものを作るのは無理だった。理由はいろいろあるが、とにかく一貫性を保てない。ひどい場合、途中で自分が知らない人に変わったり、突然知らない人がどこかから出てきたりする。
Soraにはプロンプトから動画を生成する機能、画像から生成する機能、画像+プロンプトから生成する機能がある(ヘルプページによれば動画入力も可能だが、記者は12月11日時点では使えなかった)。さすがにプロンプトだけで自分を再現するのは無理なので、まずは自撮り画像に「しゃべる男性」というプロンプトだけを加えて生成してみた。
が、最初から自分は別人に変わるわ、背景は崩壊するわで、風邪ひいたときの夢みたいな映像になってしまった。口の動きも「YouTubeの高評価・チャンネル登録お願いします」とは一致しない。
アプローチ2:背景を単純なものに
仕方がないので、背景をもっと単純にすることで対応。自室のなるべくモノがない場所を選び、そこを背景にした自撮りを使ったが、やはり言うことを聞かない。入力した画像を無視して、似た雰囲気の白人男性がはしゃぐ映像などにされてしまう。
入力する画像やプロンプトを変えてもみたが、どうも日本人男性を認識する力が弱いようで、すぐ白人・インド人っぽい見た目にされたり、画像を無視されたりする。
アプローチ3:Storyboardの活用
このままだとらちが明かないので、別の機能を使った解決を試みた。1つの動画をシーンごとに分割してそれぞれプロンプトなどで調整できる「Storyboard」の活用だ。1秒の時点で画像を置いて、3秒の時点でプロンプトを置いて、さらに5秒の時点でプロンプトを置いて──と指示し、各シーンで画像やプロンプトを参照した動画を作れる。
これで、各所に画像を置けば解決だ──と思ったのだが、そうもいかなかった。配置する画像と、その中間となる生成動画のつじつまが合わず、急にカメラワークが変わったり、表情が変わったりと、不自然になってしまった。突然別人が登場する症状も治りきらない。
アプローチ4:Storyboard+動画の活用
そこで今度は、動画を入力することにした。実はこの機能では、ローカルから動画をアップロードして参照してもらうことも可能だ。つまり手持ちの動画の続きや中間を作ってもらう、という使い方ができる。
しゃべり出しの動画を1秒ほど撮って、ストーリーボードの1秒目に配置。あとはプロンプトで維持する──このアプローチは結構うまくいった。表情がちょっとおかしいが、少なくとも今までの中では一番マシなものができた。プロンプトも細かめに設定。ChatGPTの力を借りつつ、以下のように指定した。
The scene is shot with a fixed camera, portraying a close-up of a young man in a room with a white background. he has round glasses perched on his nose and tousled dark hair that lends him a slightly disheveled look. he wears a casual green hoodie, its color contrasting with the starkness of the white backdrop. his expression is animated and lively as he talks quickly, his words seemingly tumbling out in a rush of excitement or urgency. the lighting is bright and evenly distributed, highlighting his facial features and the reflective sheen on his glasses, enhancing the simplicity and focus on his engaging speech.
訳:シーンは固定カメラでの撮影で、白い背景の部屋で若い男性をクローズアップしている。彼は丸い眼鏡を鼻に掛け、少し乱れた黒髪で、雑然とした印象。彼は白い背景のシンプルさと対照的に、カジュアルな緑色のパーカーを着ている。表情は生き生きとしており、早口で話し、言葉が興奮や緊急性を感じさせるように次々と飛び出している。照明は明るく均一で、顔の特徴と眼鏡の反射した輝きを際立たせ、彼の魅力的な話しぶりに集中させている。
不思議だったのが、自撮り動画は手持ち+スマホの標準カメラで撮影したものより、ジンバル+美肌加工カメラで撮影したものの方が、一貫性が維持されやすい印象があったことだ。情報量が減るので余計な処理がされにくくなるのだろうか。
ただ、このアプローチでも口の動きを理想通りのところまで持っていくことはできなかった。さらに中間地点となる動画を撮るか、プロンプトを調整すれば可能かもしれないが……整合性を取るためにはさらなる手間がかかりそうだ。この辺りはリップシンクも可能な競合サービス「Runway Gen-3」の方が有利なのかもしれない。
●サクッと手軽に思い通りに……はできなさそう
というわけで、今回の取り組みはいったん頓挫。「俺が喋る動画」を作るのは、少なくともサクッとひと手間程度では不可能そうだと結論付けた。
そもそも、そんな動画を作れてしまうとディープフェイクまっしぐらな気もするので、もしかするとあえて機能を制限しているのかもしれない。実際、背景などの崩壊がひどかった最初の方の動画でも、服や照明の破綻が少ないのは驚いた。
ちなみに、OpenAIはフェイクを警戒し、「実在する人物(real people)」の写真や動画を使って動画を生成する機能については、一部のユーザーにしか提供していないとしている。
一方、記者は普通に自分の動画を生成できた。OpenAIが指す「実在する人物」が著名人のみを指しているのか、記者のデータはこれまでに学習されていないのか、はたまた“一部のユーザー”に選ばれていたのか。理由は分からないが、同様の使い方をする際は注意が必要かもしれない。