Notebook
これは日々の作業を通して学んだことや毎日の生活で気づいたことをを記録しておく備忘録である。
HTML ファイル生成日時: 2025/04/03 22:15:46.252 (台灣標準時)
ffmpeg を使った動画の編集について
動画を作る必要に迫られたので、 ffmpeg を使って編集をしてみたでござる。
ffmpeg の使い方を記録しておくでござる。
動画の素材は、以下のようにして作ったでござる。まず、タブレット、または、
スマートフォンを使って、動画を撮影したでござる。また、 LaTeX と beamer
を使ってスライドを作り、できた PDF ファイルを okular で全画面表示をし
ているところを、 ffmpeg で動画として記録したでござる。画面を動画として
記録する方法については、「画面の様子を動画として記
録する方法について」に書いてあるでござる。
用意した動画のすべてを利用したいのではなく、最初の部分や最後の部分を使
わずに途中だけを使いたい場合が多いでござる。そのような場合には、以下の
ようにすれば、ほしい部分だけを抜き出すことができるでござる。
% ffmpeg7 -i video_0.mp4 -ss 00:05 -to 00:15 clip_0.mp4
上の例では、 video_0.mp4 の 5 秒のところから 15 秒のところま
でを抜き出し、 clip_0.mp4 というファイルに書き出すでござる。
次に、用意した細切れの動画を一つの動画に連結する必要があるでござる。そ
のためには、連結したい動画のファイルを書き込んだテキストファイルを作る
でござる。
% ls clip_*.mp4 | perl -ne 'chop; print ("file \047$_\047\n");' > video.list
video.list のファイルの中身は以下のようになっているでござる。
% cat video.list
file 'clip_0.mp4'
file 'clip_1.mp4'
file 'clip_2.mp4'
file 'clip_3.mp4'
file 'clip_4.mp4'
そして、 ffmpeg を使って連結するでござる。
% ffmpeg7 -f concat -i video.list -c copy concatenated.mp4
すると、 video.list の中に書いてあるファイルがすべて連結さ
れて、 concatenated.mp4 というファイルに書き出されるでござ
る。
なれど、上の方法だと、連結されて作られた新しいファイルには、音声トラッ
クがふくまれていなかったでござる。以下のようにすると、音声トラックが連
結されたファイルに含まれるようでござる。
まず、中間ファイルを作るでござる。
% ffmpeg7 -i clip_0.mp4 -c copy clip_0.ts
% ffmpeg7 -i clip_1.mp4 -c copy clip_1.ts
% ffmpeg7 -i clip_2.mp4 -c copy clip_2.ts
% ffmpeg7 -i clip_3.mp4 -c copy clip_3.ts
% ffmpeg7 -i clip_4.mp4 -c copy clip_4.ts
そして、連結するでござる。
% ffmpeg7 -i "concat:clip_0.ts|clip_1.ts|clip_2.ts|clip_3.ts|clip_4.ts" -c copy concatenated.mp4
動画に音声を追加する例は以下の通りでござる。以下の例では、動画ファイル
concatenated.mp4 に、音声ファイル audio_1.aac と
audio_2.aac を追加しているでござる。その際、
audio_1.aac は動画開始から 17 秒後に、
audio_2.aac は動画開始から 112 秒後に追加しているでござる。
% ffmpeg7 -i concatenated.mp4 -i audio_1.aac -i audio_2.aac -filter_complex "[1:a]adelay=17000|17000[audio1]; [2:a]adelay=112000|112000[audio2]; [0:a][audio1][audio2] amix=inputs=3:duration=longest [audio_combined]" -map 0:v -map "[audio_combined]" -y video_with_audio.mp4
複数の音声ファイルを動画ファイルに追加する方法は、「ffmpeg を使って動画に音声
を追加する方法」に書いてあるでござる。
参考文献
- About this article:
- author: daisuke
- file: 20250328_00.html
- category: Computer___NetBSD
- title: ffmpeg を使った動画の編集について
- mode: public
- last modified: 2025/03/28 20:53:15 (UT+08:00)
- html generated: 2025/04/03 22:15:46.252 (Taiwan Standard Time)
Frequently accessed files
- Computer___Python/20220518_0.html
- 12518 page views
- title: Matplotlib で作る図の縦横比
- Computer___Network/20230726_00.html
- 6819 page views
- title: git の SSL certificate problem の解決方法
- Misc___Taiwan/20240207_00.html
- 5217 page views
- title: 台灣から台灣の外に EMS で荷物を発送する方法
- Computer___Network/20230516_00.html
- 4392 page views
- title: OpenVPN 2.6 を使い VPN Gate に接続するときの注意点
- Computer___FreeBSD/20220621_0.html
- 3247 page views
- title: FreeBSD での X.org の設定の仕方
- Computer___Network/20230508_00.html
- 2584 page views
- title: git push するときにパスワードの入力を省略する方法
- Computer___Network/20240130_00.html
- 2548 page views
- title: Google Colaboratory で Python 3.12 を使う方法
- Computer___Python/20220715_0.html
- 2515 page views
- title: SciPy による最小二乗法
- Food___Taiwan/20220429_0.html
- 2128 page views
- title: 「楊滇風」の滇味辣炒豬
- Computer___TeX/20231107_00.html
- 2036 page views
- title: LaTeX での counter の利用方法について
- Computer___NetBSD/20230119_00.html
- 2018 page views
- title: NetBSD でバイナリーパッケージを利用する方法
- Computer___Network/20240416_00.html
- 1931 page views
- title: git push としたときの error: RPC failed
- Computer___Python/20220410_0.html
- 1859 page views
- title: Pint モジュールを使った単位を含む数値の取り扱い
- Computer___Python/20221013_0.html
- 1854 page views
- title: Matplotlib での作図において順番を決めて点や線を描画する方法
- Computer___NetBSD/20220817_3.html
- 1815 page views
- title: JupyterLab のインストール直後に行うべきこと
- Computer___Network/20220413_1.html
- 1785 page views
- title: HTML 文書の中の一部の文字を点滅させる方法
- Computer___Debian/20210223_1.html
- 1744 page views
- title: Debian で autofs を使い自動で NFS マウントする方法
- Computer___Python/20240101_00.html
- 1710 page views
- title: Matplotlib の 3D plot においての注意点
- Misc___Japan/20240610_00.html
- 1710 page views
- title: NHK ラジオの「聞き逃し」の変更点 (2024 年 06 月)
- Computer___Python/20210124_0.html
- 1671 page views
- title: Python での argparse を使ったコマンドライン引数の取り扱い方法
- Computer___NetBSD/20220818_1.html
- 1663 page views
- title: Emacs の markdown-mode について
- Computer___NetBSD/20220428_0.html
- 1648 page views
- title: Beamer で verbatim 環境を使う方法
- Computer___NetBSD/20240101_02.html
- 1642 page views
- title: ffmpeg を使って動画に音声を追加する方法
- Science___Math/20220420_0.html
- 1551 page views
- title: ラプラシアンの三次元極座標表示
- Computer___TeX/20230726_01.html
- 1535 page views
- title: Beamer の Metropolis テーマで block の色を変える方法
- Computer___TeX/20230503_00.html
- 1470 page views
- title: LaTeX CJK で日本語や中国語を取り扱うための準備について
- Science___Astronomy/20220503_0.html
- 1425 page views
- title: Lane-Emden 方程式を数値的に解く
- Computer___NetBSD/20230515_00.html
- 1411 page views
- title: pkgsrc の fetch phase で問題
- Computer___NetBSD/20220808_0.html
- 1408 page views
- title: 端末エミュレーターで使うフォントを指定する方法
- Computer___NetBSD/20240101_03.html
- 1372 page views
- title: ffmpeg で動画に metadata を追加する方法
HTML file generated by Kinoshita Daisuke.