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.aacaudio_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 を使って動画に音声 を追加する方法」に書いてあるでござる。

参考文献



Frequently accessed files

  1. Computer___Python/20220518_0.html
  2. Computer___Network/20230726_00.html
  3. Misc___Taiwan/20240207_00.html
  4. Computer___Network/20230516_00.html
  5. Computer___FreeBSD/20220621_0.html
  6. Computer___Network/20230508_00.html
  7. Computer___Network/20240130_00.html
  8. Computer___Python/20220715_0.html
  9. Food___Taiwan/20220429_0.html
  10. Computer___TeX/20231107_00.html
  11. Computer___NetBSD/20230119_00.html
  12. Computer___Network/20240416_00.html
  13. Computer___Python/20220410_0.html
  14. Computer___Python/20221013_0.html
  15. Computer___NetBSD/20220817_3.html
  16. Computer___Network/20220413_1.html
  17. Computer___Debian/20210223_1.html
  18. Computer___Python/20240101_00.html
  19. Misc___Japan/20240610_00.html
  20. Computer___Python/20210124_0.html
  21. Computer___NetBSD/20220818_1.html
  22. Computer___NetBSD/20220428_0.html
  23. Computer___NetBSD/20240101_02.html
  24. Science___Math/20220420_0.html
  25. Computer___TeX/20230726_01.html
  26. Computer___TeX/20230503_00.html
  27. Science___Astronomy/20220503_0.html
  28. Computer___NetBSD/20230515_00.html
  29. Computer___NetBSD/20220808_0.html
  30. Computer___NetBSD/20240101_03.html


HTML file generated by Kinoshita Daisuke.