Page 1 sur 1

[PRESQUE RÉSOLU] Créer des videos à partir d'images ?

Publié : mer. 27/mai/2026 11:39
par Stan_fr
Bonjour à tous,

En Pb, on peut créer des images statique et les enregistrer dans divers format, mais y aurait-il moyen de les enregistrer comme des vidéos ?

Je veux dire, si j'ai une image statique "toto.jpg", serait-il possible la charger et de l'enregistrer comme "toto.mp4", contenant x frames identiques ?

Re: Créer des videos à partir d'images ?

Publié : mer. 27/mai/2026 13:28
par Ar-S
Salut, tu n'as pas de librairies de sauvegarde video sur PB. Par contre beaucoup ici, dont moi, te diront que c'est l'outil idéale pour créer une GUI de FFmpeg pour faire cela.

Re: Créer des videos à partir d'images ?

Publié : mer. 27/mai/2026 14:45
par Stan_fr
Merci,

Mais, je débute dans ce domaine et c'est nettement au dessus de mon niveau :oops:

Re: Créer des videos à partir d'images ?

Publié : mer. 27/mai/2026 16:55
par Stan_fr
J'ai trouvé un soft gratuit qui fait exactement ce que je veux : aligner des images (dans l'ordre alphabétique) sur une piste vidéo, leur affecter une durée d'affichage, et enregistrer le tout dans un fichier MP4.

C'est vrai que ce n'est pas de la programmation PB ; mais ça me libère du temps que j'utilise pour créer les images à transformer en MP4 avec PB, ce qui promet d'autres questions naïves....

Re: Créer des videos à partir d'images ?

Publié : mer. 27/mai/2026 16:57
par falsam
Ar-S a raison. La meilleure réponse est l'utilisation de ffmpeg.exe

➡️ La syntaxe PureBasic est simple.

Code : Tout sélectionner

RunProgram("ffmpeg.exe", cmd, "", #PB_Program_Wait)
➡️ La variable cmd comprendra :
- Le framerate : 0.5 (Chaque image sera visible durant environ 2 secondes)
- Le motif (ou pattern) des images à utiliser (Exemple image%02d.jpg pour image01.jpg, image02.jpg, etc ).
- Le codec à utiliser pour générer du format mp4 : libx264.
- Le format d'image impératif pour le codec mp4 : yuv420p.
- La taille de la vidéo : 1024:768.
- Le nom de la vidéo mp4 que tu va générer : video3.mp4

Code : Tout sélectionner

EnableExplicit

Define framerate.f    = 0.5        
Define formatimages.s = "image%02d.jpg"
Define videooutput.s  = "video3.mp4"

Define cmd.s          = "-framerate " + StrF(framerate) +  
                        " -i " + formatimages + 
                        " -c:v libx264 -pix_fmt yuv420p -vf scale=1024:768 " + videooutput

RunProgram("ffmpeg.exe", cmd, "", #PB_Program_Wait)

MessageRequester("Information", "La vidéo est créée .... ou pas.")

➡️ Voici un zip qui contient ffmpeg.exe ainsi que 3 images et un code PureBasic de test.
https://e.pcloud.link/publink/show?code ... rYAfRwFkhy

Re: Créer des videos à partir d'images ?

Publié : mer. 27/mai/2026 17:28
par Stan_fr
falsam a écrit : mer. 27/mai/2026 16:57 Ar-S a raison. La meilleure réponse est l'utilisation de ffmpeg.exe

➡️ La syntaxe PureBasic est simple.

Code : Tout sélectionner

RunProgram("ffmpeg.exe", cmd, "", #PB_Program_Wait)
....
[/code-pb]


➡️ Voici un zip qui contient ffmpeg.exe ainsi que 3 images et un code PureBasic de test.
https://e.pcloud.link/publink/show?code ... rYAfRwFkhy
GRAND MERCI, ça fait exactement ce que je veux, avec l'avantage par rapport au soft que j'avais trouvé, que je peux l'intégrer à mon programme de création d'images !

Dernière question pour ce sujet : comment fait-on pour signaler que le pb est résolu ?

MERCI encore.

Re: [RESOLU] Créer des videos à partir d'images ?

Publié : mer. 27/mai/2026 20:07
par Ar-S
Dernière question pour ce sujet : comment fait-on pour signaler que le pb est résolu ?
Tu as trouvé :mrgreen:

Re: [PRESQUE RÉSOLU] Créer des videos à partir d'images ?

Publié : jeu. 28/mai/2026 11:16
par Stan_fr
En fait j'ai mis [PRESQUE RÉSOLU], parce que : la solution permet bien de faire des fichiers MP4, mais ce sont pour moi des masques animés que je crée et je voudrais pouvoir en changer au cours de la vidéo, ce qui suppose de concaténer les MP4 créés, il existe bien une commande FFmpeg concat pour le faire dont je comprends bien la syntaxe et l'utilisation, mais elle suppose que tous les MP4 aient les mêmes paramètres notamment le framerate et j'ai besoin de pouvoir utiliser différents framerates (pour pouvoir changer la vitesse d'animation de mes masques). Et là apparemment ça serait possible avec FFmpeg mais je n'y comprends rien !

J'ai trouvé une solution bricolo : enregistrer des MP4 à partir de fichiers jpeg où toutes les images seraient enregistrées x fois (pour ralentir l'animation), mais :
- ça ne fonctionne que pour ralentir
- ça ne permet que des ralentissements où la vitesse est divisée par des entiers,

Accessoirement c'est galère à faire...

Re: [PRESQUE RÉSOLU] Créer des videos à partir d'images ?

Publié : jeu. 28/mai/2026 16:40
par Stan_fr
Pourquoi ça ne fonctionne pas :?:

Code : Tout sélectionner

EnableExplicit

Define framerate.f    = 1.0        
Define formatimages.s = "E:\Z_MPG\ecran%02d.jpg"
Define videooutput.s  = "E:\Z_MPG\video3.mp4"

Define cmd.s          = " -framerate " + StrF(framerate) +  
                        " -i " + formatimages + 
                        " -c:v libx264 -pix_fmt yuv420p -vf scale=1920:1080 " + videooutput


RunProgram("E:\Z_MPG\ffmpeg.exe", cmd, "E:\Z_MPG", #PB_Program_Wait)

MessageRequester("Information", "La vidéo est créée .... ou pas.")
Les fichiers sont tous au bon endroit, et il n'y a pas d'erreur d'exécution...

Re: [PRESQUE RÉSOLU] Créer des videos à partir d'images ?

Publié : jeu. 28/mai/2026 21:53
par Ar-S
Bah là j'ai envie de te dire qu'il faudrait passer sur un forum dédié à ffmpeg. :lol:

Re: [PRESQUE RÉSOLU] Créer des videos à partir d'images ?

Publié : ven. 29/mai/2026 6:52
par Stan_fr
Merci, mais s'agissant d'un programme PB, est-ce qu'on ne risque pas de me dire de consulter un forum dédié à PB ?

Re: [PRESQUE RÉSOLU] Créer des videos à partir d'images ?

Publié : ven. 29/mai/2026 15:33
par falsam
Stan_fr a écrit : jeu. 28/mai/2026 16:40 Pourquoi ça ne fonctionne pas
Normalement ça fonctionne. Les images et la production des vidéos peuvent être dans des dossiers différents.

Code : Tout sélectionner

EnableExplicit

Define framerate.f    = 0.5        
Define formatimages.s = "photos/image%02d.jpg"
Define videooutput.s  = "videos/video.mp4"

Define cmd.s          = "-framerate " + StrF(framerate) +  
                        " -i " + formatimages + 
                        " -c:v libx264 -pix_fmt yuv420p -vf scale=1024:768 " + videooutput

RunProgram("ffmpeg.exe", cmd, "", #PB_Program_Wait)

MessageRequester("Information", "La vidéo est créée .... ou pas.")
J'ai aussi reproduis ton code en stockant les photos sur un disque externe. La production de la vidéo étant elle aussi sur le disque externe. La vidéo a été crée.

➡️ Ton pattern de photos est ecran%02d.jpg.
le nom de tes photos devraient donc être ecran01.jpg, ecran02.jpg, ecran03.jpg, etc ...

➡️ Code et assets de test sur ce lien https://e.pcloud.link/publink/show?code ... rYAfRwFkhy

Re: [PRESQUE RÉSOLU] Créer des videos à partir d'images ?

Publié : ven. 29/mai/2026 23:50
par Stan_fr
Tu as raison ça marche, je viens de comprendre grâce à toi pourquoi ça ne fonctionnait pas :

Mes fichiers sont bien des ecran01, ecran02... mais avec comme extension png et non jpg !

Encore merci pour ton aide.