Spécifiez la couleur d'arrière-plan lors de la conversion de GIF en MP4 avec ffmpeg

2

J'ai un GIF animé avec transparence. Je veux le convertir en MP4. Lorsque je le fais, les régions transparentes sont remplies de blanc totalement opaque. J'aimerais spécifier la couleur utilisée pour remplacer ces pixels transparents. Comment je ferais ça?

  • S'il vous plaît ne recommande pas l'utilisation convertde gifsiclece qui nécessite une opération distincte. La vitesse est une priorité. La solution doit utiliser uniquement ffmpeg. Merci.
okor
la source

Réponses:

2

Utilisation

ffmpeg -f lavfi -i color=RRGGBB -i in.gif
  -filter_complex "[0][1]scale2ref[bg][gif];[bg]setsar=1[bg];[bg][gif]overlay=shortest=1"
out.mp4

Une toile est créée en noir si aucune couleur (en hex) n'est spécifiée. Dans le complexe de filtrage. il est redimensionné pour avoir la même taille que le GIF, puis le GIF est superposé dessus. Dans les zones transparentes du GIF. le fond montre à travers.

Gyan
la source