動画ファイルを取り扱う
なぜ、取り組んだのか?
noteに投稿するときにちょっとの動画でYoutubeに投稿するのは大変なときがある
noteではgif形式を受け付けているので動画をgif形式に変換できれば貼り付けられるので
動画を変換する方法があるのではと思ったのがキッカケである
ワークフロー
動画をGIFに変換して投稿するまでの思考展開は以下の通りだ
前提
ソフトウェアと実行環境を記載する
- ffmpeg
- Windows11
- コマンドプロンプト
対応方法
コマンドプロンプトで実行する
専用のソフトウェアを用意していなくてもコマンドベースで出来るのでちょっとしたことであれば便利である
タイムラインの切り取り
# 指定した時間で動画を切り取る ffmpeg -i .\input.mp4 -t 18 -c copy output.mp4
コメント
始めから18秒までの動画に切り取った結果を保存している
“-ss 開始時間”で開始位置を指定できる様だが、開始位置は問題ないタイミングで録画しているので操作が不要だしどの時点から問題ないか開始時刻まで確認するのはめんどくさい
そういうことを気にせず、たくさんの素材を編集するならば動画編集ソフトを使用した方がいい
GIFの変換とリサイズやfpsの調整
# mp4 -> gif ffmpeg -i input.mp4 output.gif # noteでgifのアップロードを失敗するときはリサイズとfpsで調整する(容量は7MB程度か) ffmpeg -i input.mp4 -vf scale=600:-1 -r 30 output.gif
コメント
noteでGIFのアップロードを何回かしているが失敗することも多い
オフィシャルの説明が見当たらないので困っているが、おおよその具合は下記の通りである
- アップロードの容量制限は7MB
- 画像の横幅は700
- fpsは10
本当はFullLHDでfpsも24,30,60で投稿したいのだが、ちょっとした確認であるなら10FPSもあれば十分である
音声の抽出
動画ではなく音だけ欲しいときに使用する
# mp4 -> mp3 ffmpeg -i input.mp4 output.mp3
上記のコマンド群を取りまとめる
タイムラインの切り取り、GIFの変換とリサイズやfpsの調整、音声の抽出を機能としてまとめる
また、より使いやすく、動画ファイルをドラックアンドドロップすることでコマンドを入力することなく使えるようにした
echo off rem ドラック&ドロップしたファイルパスを表示する echo "file path is: " %1 rem 動画ファイルの取り扱いを確認する set /p input="How do you handle this file ? (t: modify trimming, r: rescaling and change fps , m: convert mp3 ): " rem 動画ファイルを取り扱う if "%input%" == "t" ( goto option_t ) else if "%input%" == "r" ( goto option_r ) else if "%input%" == "m" ( goto option_m ) else ( exit /b ) :option_t rem トリミング set /p number="to trimming time?: " set /a trimming_time=%number% echo. echo "動画を指定時間: %trimming_time%秒までトリミングして出力します↓" echo %trimming_time% ffmpeg -i %1 -t %trimming_time% -c copy %~dp1%~n1_out%~x1 pause exit /b :option_r rem リサイズとfpsの再設定 set /p number="setting width?: " set /a setting_width=%number% set /p number2="setting fps?: " set /a setting_fps=%number2% echo. echo "動画をgifに横幅: %setting_width%にリサイズし、fps: %setting_fps%で変換します。↓" ffmpeg -i %1 -vf scale=%setting_width%:-1 -r %setting_fps% %~dp1%~n1_out.gif pause exit /b :goto option_m rem mp3へ変換する echo. echo "mp3に変換します↓" ffmpeg -i %1 output.mp3
感想
動画投稿するよりはblogを投稿しており、画面の操作など短い録画をアップロードするため、gif形式に変換することを覚えてからはかなり便利になった。
もし、似た目的でWindowsで使える録画機能を知らないときはWindowsの便利な使い方を見るとよい