#author("2020-08-03T20:51:27+09:00","","")
#author("2020-08-04T09:38:09+09:00","","")
[[Computer]]

*動画の作成 [#sad81e71]

**撮影 [#df6c1e29]

iOSの場合,[設定]-[カメラ]-[ビデオ撮影]で720p HD/30 fpsまたは1080p HD/30 fpsを選ぶことができる(最新のiPhoneなどではさらに高画質のものも選択できる).1080pは1920x1080, 720pは1280x720のことである(どちらも16:9).1080pから720pに変えるとファイルサイズはおおむね1/2以下になる.

**解像度の変更 [#ne1457b3]

ffmpegを用いると動画のファイル形式や解像度をコマンドラインで変更することができる.

 $ ffmpeg -i movie.mov -vf scale=-1:360 360p.mp4

縦を設定し,横は自動で設定する(-1)と楽である.

|~縦|~解像度|
|1080|1920x1080|
|720|1280x720|
|576|1024x576|
|432|768x432|
|360|640x360|
|270|480x270|

ファイルにもよるが,mp4の場合,720 -> 576でおおむねファイルサイズが半分に,720 -> 432でおよそ1/4に,720 -> 360でおよそ1/7になる.

**静止画 [#y35cad36]

 $ ffmpeg -loop 1 -i input.jpg -r 30 -i input.m4a -vcodec libx264 -acodec copy -pix_fmt yuv420p -r 30 -shortest output.mp4

最初の -rで入力フレームレートを,2回目の -rで出力フレームレートを設定する.これがほかの動画ファイルと異なると,結合したときに表示されなくなる.

-https://omoi.mougen.org/2010/10/ffmpeg.html

画像は,前後の映像の解像度と合わせておくと楽なようだ.

**MOV -> MP4 [#x1b4fbe3]

 $ ffmpeg -i input.mov output.mp4

異なるフレームレートのファイルを結合すると,途中から動画が表示されなくなるので,合わせる必要がある.

 $ ffmpeg -i input.mov -r 30 -r 30 output.mp4

変換したあと,再生時間が変わっていないかどうか確認するとよい.

**結合 [#tbfa6e7c]

 $ ffmpeg -safe 0 -f concat -i files.txt -c copy output.mp4

files.txtには次のように書いておく.

 file mov1.mp4
 file mov2.mp4

**音量の調整 [#qaf77a2f]

確認.

 $ ffmpeg -i input.mp4 -vn -af volumedetect -f null -

0dBになるようにするとちょうどよい.

 $ ffmpeg -i input.mp4 -af volume=5dB output

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS