• [^] # Re: Diaporama ?

    Posté par . En réponse au message format de fichiers images + piste audio + timestamps. Évalué à 1.

    La réponse de copilot était bonne mais avec un seul fichier son, j'ai demandé un complément de réponse pour avoir chaque commentaire avec son image, la ligne de commande change. Il faut connaitre la durée, ce n'est pas si simple.

    Question : et pour synchroniser les commentaires mp3 avec chaque jpg

    Réponse :
    Pour synchroniser des commentaires audio avec chaque image, tu vas devoir faire appel à des filtres de ffmpeg.

    Voici une façon de procéder :

    Crée un fichier texte (input.txt) listant chaque image avec la durée de son affichage et le commentaire associé. Par exemple :
    file 'img1.jpg'
    duration 5
    file 'img2.jpg'
    duration 3
    file 'img3.jpg'
    duration 7

    Ensuite, utilise la commande ffmpeg pour générer ton diaporama :
    bash

    ffmpeg -f concat -safe 0 -i input.txt -i commentaire1.mp3 -i commentaire2.mp3 -i commentaire3.mp3 -filter_complex \
    "[0:v][1:a][2:a][3:a]concat=n=3:v=1:a=1[out]" -map "[out]" output.mp4
    Dans cet exemple :

    -f concat -safe 0 -i input.txt indique d'utiliser le fichier de liste
    -filter_complex permet de combiner les différentes entrées

    concat=n=3:v=1:a=1[out] spécifie qu'il y a 3 segments vidéo et audio à concaténer
    Essaie cette méthode et ajuste les durées et les commentaires selon tes besoins !

    Une autre méthode qui me semble plus simple c'est de créer une vidéo par image et son commentaire associé, comme cela pas besoin de connaître la durée exacte, puis de concaténer les vidéos de chaque images, rebelote pour copilot :

    Question:
    Sans connaître la durée du commentaire on pourrait faire plusieurs vidéo avec la première méthode, puis concaténer les vidéos résultante, quelle serait la commande d'assemblage ?
    Copilot

    Réponse :
    Oui, tu peux tout à fait assembler plusieurs vidéos en une seule avec ffmpeg. Voici comment tu pourrais procéder :

    Crée un fichier texte (videos.txt) listant les vidéos à concaténer :
    file 'video1.mp4'
    file 'video2.mp4'
    file 'video3.mp4'

    Utilise la commande ffmpeg pour les assembler :
    bash

    ffmpeg -f concat -safe 0 -i videos.txt -c copy output.mp4
    Cela assemblera tes vidéos sans réencoder, ce qui est plus rapide et maintient la qualité. Bonne chance pour ton projet !