久しぶりの動画編集ネタの投稿です。
ffmpegを使って動画のファイル形式の変換とかをしていたこともあって、ffmpegを使って字幕をつける方法がないかなと調べていました。
どうやらsrtファイルがあれば動画に字幕がつけられるらしいとわかりました。
早速やってみます
開発環境
OS : macOS BigSur
ffmpeg version4.4
srtファイルについて
wikipediaに以下のように書いてありました。
SubRip(SubRip Text)ファイルは拡張子
.srt
で命名され、空行で区切られたグループでフォーマットされたプレーンテキストで構成される。 字幕は1から順番に番号が付けられる。 使用されるタイムコード形式は、 時:分:秒,ミリ秒であり、時、分、秒は0詰めの2桁で、ミリ秒は0詰めの3桁(00:00:00,000)で表記される。秒以下を区切る小数点記号がコンマなのは、プログラムがフランスで書かれていることに由来する 。
- 各字幕を識別する連続した数値カウンタ
- 字幕が画面に表示され始める時刻、
-->
という記号、字幕が消える時刻- 1行もしくはそれ以上の字幕テキスト
- この字幕の終わりを示すテキストを含まない空行
メモ帳とかテキストエディタとかでも簡単につくれそうです。
実際のファイルはこんな感じです。
1 00:00:00,000 --> 00:00:05,000 最初の字幕 2 00:00:05,000 --> 00:00:10,000 次の字幕 3 00:00:10,000 --> 00:00:20,000 その次の字幕 4 00:00:20,000 --> 00:00:30,000 最後の字幕
使用するファイル
ffmpegのコマンド
ffmpeg -i video/mp4/movie.mp4 -vf subtitles=video/srt/text.srt video/output/out.mp4
簡単に動画に字幕をつけることができました。
ffmpegは本当になんでもできる頼りになるやつです。
0 件のコメント:
コメントを投稿