IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Convertir une séquence d'image en video avec ffmpeg


Sujet :

C#

  1. #1
    Membre actif Avatar de Masmeta
    Homme Profil pro
    Ing. R&D informatique industrielle
    Inscrit en
    Mai 2006
    Messages
    472
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Ing. R&D informatique industrielle
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2006
    Messages : 472
    Points : 221
    Points
    221
    Par défaut Convertir une séquence d'image en video avec ffmpeg
    Bonjour à tous,

    J'ai un souci avec ffmpeg.
    Je désire créer une vidéo avec des images sauvegardées par mon application soit le code :

    Code Sauvegarde Bmp : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     Image img = Image.FromFile(Filename);
    Bitmap _SaveBmp = new Bitmap(img, img.Size);
    _SaveBmp.Save(file,System.Drawing.Imaging.ImageFormat.Jpeg);

    Code Creation de la video : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
     
     /// <summary>
            /// Convert from a pictures sequence to a video
            /// </summary>
            /// <param name="PathVideo"></param>
            /// <param name="PathImg"></param>
            /// <returns></returns>
            private bool _ConvertFromJpgToAVI(string PathVideo, string PathImg)
            {
                bool bresult = false;
                /*
                 * -r 24 ! 24 picture\s
                 * -b 1800 birate3 
                 */
                string argffmpeg = String.Format("-vcodec wmv1 -r 24 -b:v 1800 -i \"{0}SurvImg%4d.bmp\" {1}", PathImg, PathVideo);
                bresult = _Useffmpeg(argffmpeg);
                return bresult;
            }
    /// <summary>
            /// Use ffmpeg.exe
            /// </summary>
            /// <param name="Argument"></param>
            /// <returns></returns>
            private bool _Useffmpeg(string Argument)
            {
                bool bresult = false;
                try
                {
                    using (Process process = new Process())
                    {
                        string pathffmpeg = _EncoderPath + "\\ffmpeg.exe";
                        if (File.Exists(pathffmpeg) )
                        {
                            process.StartInfo.FileName = _EncoderPath + "\\ffmpeg.exe";
                            process.StartInfo.WindowStyle = ProcessWindowStyle.Normal ;
                            process.StartInfo.UseShellExecute = false;
                            process.StartInfo.ErrorDialog = true;
                            process.StartInfo.RedirectStandardError = true;
                            process.StartInfo.RedirectStandardOutput = true; 
                            process.StartInfo.CreateNoWindow = true;
                            process.StartInfo.Arguments = Argument;
                            process.Start();
     
                            StreamReader myStreamReader = process.StandardError;
                            // Read the standard error of net.exe and write it on to console.
                            Console.WriteLine(myStreamReader.ReadToEnd());
                            process.WaitForExit();
                            bresult = process.HasExited;
                            process.Close();
                        }else
                        {
                            MessageBox.Show(String.Format("the software  {0} is missing", pathffmpeg), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);   
                        }
                    }
                }
    [...]

    J'ai essayé différents codecs et différent format d'enregistrement d'image, et j'ai l'erreur "header corrupted", en sortie d'erreur de ffmpeg.

    Quelqu'un pourrait m'aider pour trouver une solution? Je commence à devenir chauve à force de m'arracher les cheveux
    Merci!
    "Nulla Tenaci Invia Est Via"
    Aux persévérants aucune route n'est interdite

  2. #2
    Inactif  

    Homme Profil pro
    développeur Vala
    Inscrit en
    Février 2011
    Messages
    478
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : développeur Vala
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2011
    Messages : 478
    Points : 3 700
    Points
    3 700
    Par défaut
    euh.. peut être du au fait que tu envoies des images bmp au lieu de jpg ?
    (marquer un post résolu si vous êtes satisfait de la réponse )
    ma page launchpad https://launchpad.net/~inizan-yannick
    ma page github : https://github.com/inizan-yannick

  3. #3
    Membre actif Avatar de Masmeta
    Homme Profil pro
    Ing. R&D informatique industrielle
    Inscrit en
    Mai 2006
    Messages
    472
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Ing. R&D informatique industrielle
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2006
    Messages : 472
    Points : 221
    Points
    221
    Par défaut
    J'ai fais des tests avec des BMP, PNG et JPEG.
    Et j'ai toujours le même problème.
    "Nulla Tenaci Invia Est Via"
    Aux persévérants aucune route n'est interdite

Discussions similaires

  1. fondu sur une séquence d'image
    Par seb2406 dans le forum Flash
    Réponses: 12
    Dernier message: 17/07/2006, 00h23
  2. [XSLT]Convertir une chaîne en float, int etc ... avec XSL
    Par wozzz dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 19/05/2006, 10h12
  3. programmer une séquence d'images
    Par sino dans le forum C++Builder
    Réponses: 5
    Dernier message: 14/02/2006, 11h57
  4. Reconnaître une position dans une séquence d'images
    Par echataig dans le forum Algorithmes et structures de données
    Réponses: 6
    Dernier message: 23/01/2006, 17h44
  5. Convertir une string en image
    Par worldchampion57 dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 16/05/2005, 09h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo