Je ne parviens jamais à faire fonctionner la solution ptQa, principalement parce que je ne peux jamais comprendre la signification des erreurs contenues dans les filtres ni la façon de les réparer. Ma solution semble un peu moins pratique car elle peut laisser des traces, mais si vous la mettez dans un script, le nettoyage peut être automatisé. J'aime également cette approche, car si quelque chose ne va pas à l'étape 4, vous obtenez les étapes 1 à 3 terminées, ce qui permet de remédier aux erreurs plus efficacement.
La stratégie de base consiste à utiliser -t
et -ss
à obtenir des vidéos de chaque segment souhaité, puis à réunir toutes les parties de votre version finale.
Supposons que vous ayez 6 segments ABCDEF toutes les 5 secondes et que vous souhaitiez A (0-5 secondes), C (10-15 secondes) et E (20-25 secondes):
ffmpeg -i abcdef.tvshow -t 5 a.tvshow -ss 10 -t 5 c.tvshow -ss 20 -t 5 e.tvshow
ou
ffmpeg -i abcdef.tvshow -t 0:00:05 a.tvshow -ss 0:00:10 -t 0:00:05 c.tvshow -ss 0:00:20 -t 0:00:05 e.tvshow
Cela créera les fichiers a.tvshow, c.tvshow et e.tvshow. Le -t
dit combien de temps chaque clip est, donc si c est de 30 secondes, vous pourriez passer en 30 ou 0:00:30. L' -ss
option indique jusqu'où il faut aller dans la vidéo source, donc c'est toujours relatif au début du fichier.
Ensuite, une fois que vous avez plusieurs fichiers vidéo, je crée un fichier ace-files.txt
comme celui-ci:
file 'a.tvshow'
file 'c.tvshow'
file 'e.tvshow'
Notez le "fichier" au début et le nom de fichier échappé après cela.
Puis la commande:
ffmpeg -f concat -i ace-files.txt -c copy ace.tvshow
Cela concats tous les fichiers abe-files.txt
ensemble, en copiant leurs codecs audio et vidéo et crée un fichier ace.tvshow
qui ne devrait contenir que les sections a, c et e. Alors souvenez - vous de supprimer ace-files.txt
, a.tvshow
, c.tvshow
et e.tvshow
.
Déni de responsabilité : Je ne sais pas à quel point cela est (in) efficace par rapport aux autres approches ffmpeg
mais en ce qui concerne mes objectifs, cela fonctionne mieux. J'espère que ça aide quelqu'un.