見出し画像

寝ている間に流行りの雑学動画を生成してくれるツールの作り方

こんにちは!あずさです。
生成AIとプログラミングを活用して、皆さまの副業を応援する自動化ツールを作っています。

想像以上にたくさんの方にご利用いただいていてびっくりしてます。ありがとうございます!

今回は流行りの雑学動画を生成できるツールを作っちゃいました。

実際の挙動

まず所定のフォーマットで台本を作ります。見慣れない形式かと思いますが、ベタ打ちテキストから所定の形式に変換するエクセルと、ChatGPTが台本を生成してくれるプロンプトが付属するので簡単に作れます。(この台本もChatGPTです。)

後はコマンドを1行実行するだけで、、、(2行目以降は実行ログです。)

流行りのフォーマットの雑学動画ができちゃいます。ナレーション、テロップ、フリー画像付きでそのまま投稿できる完全仕様です。音声とBGMは任意のものに変えられます。(音声はVOICEVOXから選びます)

いらすとやなど、任意の画像をセットしたい場合にも対応できるよう、画像なしでも出力できるようになっています。これだけでもめちゃめちゃ楽になりませんか?

もちろんショート動画にも対応してます。(任意のサイズで出力できます。)

複数の台本を一括で読み込ませられるので、寝ている間に雑学動画を量産してくれます。(台本は1つのファイルに複数記述できるので、ファイルを大量に作ったりする必要もありません。)

本当の自動化をしてみませんか?

Vrewなど近しいことができる動画生成アプリはたくさんあると思いますが、流行りの雑学動画のフォーマットに特化しているわけではないので手直しが必要ですし、結局はGUIアプリ(一般的なボタンをクリックして操作するアプリ)なので、

「テキストをセットして、、、仕様を選んで、、、生成ボタンを押して、、、生成されるのを待って、、、生成されたら書き出しボタンを押して、、、書き出されたら新しいプロジェクトを作って、、、」

という操作が必要な、パソコンの前にずっと座っていないといけない単純作業です。

私のツールはCLI(コマンドラインインターフェース)アプリと言って、コマンドプロンプトという黒い画面にコマンドを入力することで実行します。

GUIアプリのようなわかりやすい操作画面がない代わりに、書き出しまでの一連の操作が自動化されているので、台本を用意すればコマンド1つで寝ている間に大量の動画を生成することができます。ずっとパソコンの前に座ってなくていい、本当の自動化です。

「プログラミングよくわからない」「黒い画面怖い」という気持ちはわかりますが、この記事を見てくださっている皆様は動画編集やAI画像生成にチャレンジしたことがある方々だと思います。
そのような経験のある皆様ならCLIアプリを使いこなせると思いますし、Stable Diffusionをインストールできたレベルの人には丁寧すぎてクドいかもしれないくらい詳細な手順を解説しています。

また、CLIアプリを構築する、使ってみる経験は、この先も皆様に利益をもたらす財産になると信じています。
というのも、世の中ちょっとのPythonを書いてCLIアプリを作れば、有料アプリでできることが無料でできたりするんです、、、
(某動画編集ソフトの文字起こしとか自動カットとか、、、実は無料でできます。)

一緒に本当の自動化を始めませんか?


必要な環境

まず私のマシン環境は以下の通りです。そこまでマシンスペックを求められるツールじゃないので、発売から3年以内のi5/Ryzen5以上のCPU搭載機で、メモリが少なくとも8gb、できれば16gbあれば問題なく動くと思います。

OS:Windows11 Home
CPU:AMD Ryzen 5 4600H
メモリ:16gb

また、以下の3つのツールがインストールされた状態である必要があります。

Python:私の場合は3.10.6
FFMPEG:私の場合は6.1-essentials_build-www.gyan.dev
VOICEVOX:私の場合は0.19.2

恐らく私より新しいバージョンであれば(もしくは多少古くても)動くと思いますが、不安な方は同じバージョンをダウンロードしてみてください。

Pythonは以下の手順が参考になります。
https://www.python.jp/install/windows/install.html

FFMPEGはこちらが参考になります。
https://jp.videoproc.com/edit-convert/how-to-download-and-install-ffmpeg.htm

私は試したことがないのですが、FFMPEGはこちらのようなより簡単なインストール方法もあるようです。
https://roboin.io/article/2024/02/25/install-ffmpeg-to-windows/

インストールが完了したら、コマンドプロンプト(windowsの検索窓で「cmd」と検索)でそれぞれ「Python」「ffmpeg」と入力してみて、バージョン情報が表示されれば完了です。(「Python」と入力するとPythonの対話モードが起動するので、バージョンが確認できたらコマンドプロンプトを閉じるか、「exit()」と入力して対話モードを抜けてください。)

VOICEVOXは以下が参考になります。

https://sosakubiyori.com/voicevox-introduction/

ここまでできていれば、ツール構築の50%は完了したと言ってもいいでしょう。

その他必要な準備

フリー画像の取得にpexelsというフリー画像サービスのAPIを使用するので、APIキーと言うものが必要になります。

APIというのは(一面的な説明ですが)アプリを作るときに、別のアプリの機能を使うために連携するための手法で、例えば美容室アプリに地図機能を付けたいときは、GoogleマップのAPIを使うことで、地図機能を作るのではなく、Googleマップの地図機能を流用することができるようになります。

今回は背景動画を生成するためにpexelsのAPIを使って画像を取得するという形でAPIを使用しています。

APIキーは以下の手順で取得できます。

まず、pexelsにアクセスし、右上の「参加」からアカウントを作成します。(Googleアカウントでログインもできます。)

https://www.pexels.com/ja-jp/

次にアカウントにログインした状態で、以下のURLにアクセスします。

https://www.pexels.com/ja-jp/api/

そうすると以下のような画面になるはずなので、「APIキー」というボタンを押してください。

すると以下のような画面になります。「WebサイトのURL、アプリなど(該当する場合)」以外の部分をすべて入力して、「APIキーを生成」を押してください。

「Canvaの写真や~」のAPIの利用用途説明の部分は50文字以上の入力が必要です。

私は以下のような感じにしました。

私個人が使用する、テキストから動画を作成するためのプログラムの中で、動画の背景に使う画像を、検索ワード用いて検索し、取得するためにAPIを使います。

そうすると、以下の黒帯部分に長い文字列が表示されます。それがAPIキーなので、メモしておいてください。(一度生成したAPIキーはPexelsからいつでも確認できます。)

諸注意

この記事はあくまで作り方を指南する記事です。サンプルとしてそのまま実行できるスクリプトファイルを添付し、できるだけ再現性が高くなるよう丁寧に書いたら1万字を超えた実行手順と解説を記載していますが、動作の保証や返金保証、サポート等はできません。(ですが、Python導入からAPIキーの取得までの準備が完了していて、おそらく動画編集やAI画像生成の経験もお持ちの自己解決能力の高い皆さまなら、詰まることなくツールを構築できると思っています。また、コメント欄でのお問い合わせにはできる限りお答えします。改善提案等も歓迎です。)

ナレーションにVOICEVOX、背景画像の取得にPexelsを使用しています。ご利用の際はそれぞれの規約を遵守するようにお願いします。
VOICEVOX:https://voicevox.hiroshiba.jp/term/
Pexels:https://www.pexels.com/ja-JP/license/
PexelsAPI:https://www.pexels.com/ja-jp/api/documentation/#guidelines

以下私の解釈ですがVOICEVOXはクレジット表記必須、Pexelsは画像利用に関しては基本不要ですが、例えばAPIを使って背景をリアルタイムで変更しているWebサイトなどではクレジット表記が必要みたいです。当ツールでの使い方はそれに該当しないと思いますが、念のためVOICEVOXと同じようにクレジット表記するのが安パイかなと思います。

・台本生成のプロンプトはGPT4o、GPT4向けです。(出力された台本のファクトチェックは各自で行ってください。)

・その他の仕様
BGM:お好きなBGMをセットできます。(MP3推奨)
生成時間:私の環境では、上記の画像ありサンプル動画(取得画像10枚)で約3分30秒、画像なしで約2分8秒でした。
制限:なし(画像ありで出力する場合、PexelsAPIの利用制限に依存します。公式には1時間で200リクエスト以内なので、つまり画像200枚まで。10枚の画像を取得する動画の生成に3分30秒かかるので1時間で必要な枚数は約170枚となり、私の環境では実質無制限ですが、環境によって異なることをご留意ください。画像なしで出力する場合は制限なしです!)
出力形式:MP4
利用規約:ソースコードやその他添付物の転載等、作者が不利益を被る利用はお控えください。また、このツールに関連して生じたトラブル等の責任も負いません。動画はバンバン作って好きに使ってください!

・配布ファイルのダウンロードについて
当方Chromeブラウザで試したところ、危険なファイルと誤判定されてしまいダウンロードができないことがあるようです。
危険なファイルと誤判定された場合でも、以下の方法でダウンロードが可能です。(同じくnoteで添付ファイルが危険と判定されてしまった人がダウンロード方法を解説してくれています。)

当然危険なものは入れてませんし、note側でもファイルのウイルス判定は行われているのでご安心ください。
一応ファイルの中身も以下に開示します。念のためお知らせでした。ご了承くださいませ。

fonts:テロップ用のフリーフォントMPLUS-1が入っています(フォントファイル、ライセンス関連のドキュメント2つが入っています。)
bgms:bgmファイルを入れるための空フォルダです。
my_modules:スクリプトの実行に必要な自作モジュールが格納されています。
zatsugaku_generator.py:スクリプトです。
_varibles.py:設定ファイルです。
data.txt:台本ファイルです。
README.html:ツールのドキュメントです。
requirements.txt:ツールに必要なライブラリをダウンロードするためのテキストファイルです。
雑学動画台本作成シート.xlsx:台本作成用のエクセルシートです。

Python導入からAPIキーの取得まで準備が完了し(完了している前提で話が進みます)、上記ご理解いただいた上で「挑戦したい!」と思ってくださる方は、ぜひ先へお進みください。一緒に頑張りましょう!

構築手順と基本的な実行手順を案内するので、実際に動かしてみるところから始めましょう。

ここから先は

17,040字 / 50画像 / 1ファイル

¥ 990

期間限定 PayPay支払いすると抽選でお得に!

この記事が気に入ったらサポートをしてみませんか?