/*
 * https ; gemini ;
 * tout ; log ; twtxt ;
 * à propos ; ;
 */

ffmpeg

Couper une vidéo

ffmpeg -i src.mp4 -ss 00:00:00 -t 00:00:01 -async 1 out.mp4

Ne garde que une seconde à partir du début de la vidéo. -t précise une durée, pas la fin.

ffmpeg -i src.mp4 -ss 00:00:02 -to 00:00:05 -async 1 out.mp4

Garde la vidéo située entre la 2e seconde et la 5e.

Ne pas réencoder la vidéo

-vcodec copy 

Ne pas réencoder le son

-acodec copy

Taille 2 fois plus petite

 -vf "scale=iw/2:ih/2"

Encodage en VP9

Cet encodeur est impressionnant. J'utilise ce script :

#!/bin/sh
# require ffmpeg
# convert video to webm using vp9 encoder

for i in $@; do
  j="${i%.*}"
  ffmpeg -i ${i} -c:v libvpx-vp9 -b:v 0 -crt 31 -pass 1 -an -f webm /dev/null -y && \
  ffmpeg -i ${i} -c:v libvpx-vp9 -b:v 0 -crt 31 -pass 2 -c:a libopus ${j}.webm
done

Ajouter et remplacer l'audio

L'option "shortest" permet de ne pas rallonger la vidéo si le son est plus long que cette dernière.

ffmpeg -i video.avi -i audio.mp3 -codec copy -shortest output.avi

Ajouter l'option "-itsoffset 3.84" permet de décaler le flux qui sera précisé ensuite. Il faut donc la préciser juste avant "-i audio.mp3" pour décaler l'audio.