Recherche avancée

Médias (2)

Mot : - Tags -/kml

Autres articles (30)

  • Submit bugs and patches

    13 avril 2011

    Unfortunately a software is never perfect.
    If you think you have found a bug, report it using our ticket system. Please to help us to fix it by providing the following information : the browser you are using, including the exact version as precise an explanation as possible of the problem if possible, the steps taken resulting in the problem a link to the site / page in question
    If you think you have solved the bug, fill in a ticket and attach to it a corrective patch.
    You may also (...)

  • Gestion des droits de création et d’édition des objets

    8 février 2011, par

    Par défaut, beaucoup de fonctionnalités sont limitées aux administrateurs mais restent configurables indépendamment pour modifier leur statut minimal d’utilisation notamment : la rédaction de contenus sur le site modifiables dans la gestion des templates de formulaires ; l’ajout de notes aux articles ; l’ajout de légendes et d’annotations sur les images ;

  • Les formats acceptés

    28 janvier 2010, par

    Les commandes suivantes permettent d’avoir des informations sur les formats et codecs gérés par l’installation local de ffmpeg :
    ffmpeg -codecs ffmpeg -formats
    Les format videos acceptés en entrée
    Cette liste est non exhaustive, elle met en exergue les principaux formats utilisés : h264 : H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 m4v : raw MPEG-4 video format flv : Flash Video (FLV) / Sorenson Spark / Sorenson H.263 Theora wmv :
    Les formats vidéos de sortie possibles
    Dans un premier temps on (...)

Sur d’autres sites (6211)

  • Evolution #4628 : Intégrer la fonction slugify

    13 janvier 2021, par RastaPopoulos ♥

    Chez nous (mais chez d’autres aussi), le slug n’est pas forcément toujours que pour l’URL, ça peut être pour sortir tel élément avec un identifiant donné par un humain, volontairement. Donc ils proposent plusieurs possibilités et quand on veut pas la notion d’URL dedans c’est bien : "identifiant" tout court.

    Reste à décider d’un verbe puisqu’on agit pour transformer un texte quelconque en slug. "normaliser_identifiant" pourquoi pas, ou "convertir_identifiant" ?

  • StackOverflowException with Process in C#

    4 juin 2015, par user3633222

    I have a process, which runs in a console app. It runs forever.

    After a couple of days the app crashes with a StackOverflowException.

    The essence of the app is where I spin up a Process with FFMpeg.exe and creates a sceenshot of a video stream. It works very good but only for a few days at the time.

    I am pretty sure it has to do with the disposal of the FFMpeg or some internal Process stuff.

    Here is the code

    using ( Process ffmpegProcess = new Process() ) {

       //arguments for running ffmpeg
       ffmpegProcess.StartInfo.UseShellExecute = false;
       ffmpegProcess.StartInfo.CreateNoWindow = true;
       ffmpegProcess.StartInfo.RedirectStandardOutput = true;

       //specific for our screenshots
       ffmpegProcess.StartInfo.FileName = string.Concat( Environment.CurrentDirectory, Path.DirectorySeparatorChar, ffmpegProgramName );

       try {
           //todo: log this stopwatch somewhere perhaps
           processWatch.Start();

           //set arguments every time we want to create a new screen shot
           ffmpegProcess.StartInfo.Arguments = string.Format( @"-y -i {0}{1} -threads 0 -ss 00:00:01.000 -f image2 -s 620x349 -vframes 1 ../../web/{2}.jpg", server, streamPath, slug );
           ffmpegProcess.Start();
           ffmpegProcess.WaitForExit( 500 );

           Console.WriteLine( slug );
           Console.WriteLine( processWatch.Elapsed );

           processWatch.Reset();
           runCount++;
           cacheIndexer++;

           //lets see how many spins we've had!
           Console.WriteLine( string.Format( "SERVER CACHE INDEX : {0}", cacheIndexer ) );
           Console.WriteLine( string.Format( "RUN : {0}", runCount ) );
           Console.WriteLine( Environment.NewLine );

       } catch ( Exception ex ) {
           //Console.WriteLine( "Ex " + ex );
       }
    }

    The loop looks like this.

       public void RecurseTask() {
           /*
           You can try one of these, but you will se CPU usage go crazy and perhaps concurrency errors due IO blocking

           Parallel.ForEach( _videoStreamSlugs, ( e ) => _videoStreamScreenShots.GrabScreenShot( e ) );

           foreach ( var slug in _videoStreamSlugs ) {
               Task.Run( () => _videoStreamScreenShots.GrabScreenShot( slug ) );
           }
           */

           //we want to grab screen shots for every slug in out slug list!
           foreach ( var slug in _videoStreamSlugs ) {
               _videoStreamScreenShots.GrabScreenShot( slug );
           }

           //sleep for a little while
           Thread.Sleep( _recurseInterval );

           //A heavy clean up!
           //We do this, trying to avoid a stackoverflow excecption in the recursive method
           //Please inspect this if problems arise
           GC.Collect();

           //lets grab over again
           RecurseTask();
       }

    I added a GC.Collect out of curiosity to see if it made a difference.

    I am not doing a Windows Service.

  • StackOverflowException with Process

    4 juin 2015, par user3633222

    I have a process, which runs in a console app. It runs forever.

    After a couple of days the app crashes with a StackOverflowException.

    The essence of the app is where I spin up a Process with FFMpeg.exe and creates a sceenshot of a video stream. It works very good but only for a few days at the time.

    I am pretty sure it has to do with the disposal of the FFMpeg or some internal Process stuff.

    Here is the code

                   using ( Process ffmpegProcess = new Process() ) {

                       //arguments for running ffmpeg
                       ffmpegProcess.StartInfo.UseShellExecute = false;
                       ffmpegProcess.StartInfo.CreateNoWindow = true;
                       ffmpegProcess.StartInfo.RedirectStandardOutput = true;

                       //specific for our screenshots
                       ffmpegProcess.StartInfo.FileName = string.Concat( Environment.CurrentDirectory, Path.DirectorySeparatorChar, ffmpegProgramName );

                       try {
                           //todo: log this stopwatch somewhere perhaps
                           processWatch.Start();

                           //set arguments every time we want to create a new screen shot
                           ffmpegProcess.StartInfo.Arguments = string.Format( @"-y -i {0}{1} -threads 0 -ss 00:00:01.000 -f image2 -s 620x349 -vframes 1 ../../web/{2}.jpg", server, streamPath, slug );
                           ffmpegProcess.Start();
                           ffmpegProcess.WaitForExit( 500 );

                           Console.WriteLine( slug );
                           Console.WriteLine( processWatch.Elapsed );

                           processWatch.Reset();
                           runCount++;
                           cacheIndexer++;

                           //lets see how many spins we've had!
                           Console.WriteLine( string.Format( "SERVER CACHE INDEX : {0}", cacheIndexer ) );
                           Console.WriteLine( string.Format( "RUN : {0}", runCount ) );
                           Console.WriteLine( Environment.NewLine );

                       } catch ( Exception ex ) {
                           //Console.WriteLine( "Ex " + ex );
                       }
                   }