Recherche avancée

Médias (0)

Mot : - Tags -/alertes

Aucun média correspondant à vos critères n’est disponible sur le site.

Autres articles (33)

  • Publier sur MédiaSpip

    13 juin 2013

    Puis-je poster des contenus à partir d’une tablette Ipad ?
    Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir

  • Encodage et transformation en formats lisibles sur Internet

    10 avril 2011

    MediaSPIP transforme et ré-encode les documents mis en ligne afin de les rendre lisibles sur Internet et automatiquement utilisables sans intervention du créateur de contenu.
    Les vidéos sont automatiquement encodées dans les formats supportés par HTML5 : MP4, Ogv et WebM. La version "MP4" est également utilisée pour le lecteur flash de secours nécessaire aux anciens navigateurs.
    Les documents audios sont également ré-encodés dans les deux formats utilisables par HTML5 :MP3 et Ogg. La version "MP3" (...)

  • Librairies et logiciels spécifiques aux médias

    10 décembre 2010, par

    Pour un fonctionnement correct et optimal, plusieurs choses sont à prendre en considération.
    Il est important, après avoir installé apache2, mysql et php5, d’installer d’autres logiciels nécessaires dont les installations sont décrites dans les liens afférants. Un ensemble de librairies multimedias (x264, libtheora, libvpx) utilisées pour l’encodage et le décodage des vidéos et sons afin de supporter le plus grand nombre de fichiers possibles. Cf. : ce tutoriel ; FFMpeg avec le maximum de décodeurs et (...)

Sur d’autres sites (4287)

  • using ffmpeg for silence detect with input pipe

    24 août 2018, par Moharrer

    I am trying to detect silence from audio file with ffmpeg in c#.
    i want to pipe input from c# memory stream and get silence duration like following command

    ffmpeg -hide_banner -i pipe:0 -af silencedetect=noise=-50dB:d=0.5 -f null - 

    but there is a problem, when input stream pump in pipe, ffmpeg waiting in p.WaitForExit() line.
    when i change p.WaitForExit() to p.WaitForExit(1000) and set force timeout the following result is displayed.

    [mp3 @ 00000163818da580] invalid concatenated file detected - using bitrate for durationInput #0, mp3, from ’pipe:0’ :  
    Metadata :    encoder : Lavf57.71.100  Duration : N/A, start : 0.023021, bitrate : 86 kb/s    
    Stream #0:0 : Audio : mp3, 48000 Hz, mono, fltp, 86 kb/sStream mapping :  Stream #0:0 -> #0:0 (mp3 (mp3float) -> pcm_s16le (native))Output #0, null, to ’pipe :’ :  
    Metadata :    encoder : Lavf58.17.101    Stream #0:0 : Audio : pcm_s16le, 48000 Hz, mono, s16, 768 kb/s   
     Metadata :      encoder : Lavc58.21.105 pcm_s16le
    

    [silencedetect @ 0000023df1786840] silence_start : 50.1098
    [silencedetect @ 0000023df1786840] silence_end : 51.5957 | silence_duration : 1.48588
    [silencedetect @ 0000023df1786840] silence_start : 51.5959
    [silencedetect @ 0000023df1786840] silence_end : 52.127 | silence_duration : 0.531062
    [silencedetect @ 0000023df1786840] silence_start : 52.8622
    [silencedetect @ 0000023df1786840] silence_end : 54.0096 | silence_duration : 1.14733
    [silencedetect @ 0000023df1786840] silence_start : 54.6804

    as you can see in result silence detection done but with error at the first.
    this mean input file pumped correctly in ffmpg but waiting.
    how can i solve problem without set time out for p.WaitForExit()

    private void Execute(string exePath, string parameters, Stream inputStream)
            
                byte[] Data = new byte[5000] ;
    

    var p = new Process() ;
    var sti = p.StartInfo ;
    sti.CreateNoWindow = true ;
    sti.UseShellExecute = false ;
    sti.FileName = exePath ;
    sti.Arguments = arg ;
    sti.LoadUserProfile = false ;
    sti.RedirectStandardInput = true ;
    sti.RedirectStandardOutput = true ;

    sti.RedirectStandardError = true ;

    p.ErrorDataReceived += P_ErrorDataReceived ;
    p.OutputDataReceived += P_OutputDataReceived ;

    p.Start() ;

    p.BeginOutputReadLine() ;
    p.BeginErrorReadLine() ;

    var spInput = new StreamPump(inputStream, p.StandardInput.BaseStream, 4064) ;
    spInput.Pump((pump, result) =>

    pump.Output.Flush() ;
    inputStream.Dispose() ;
    ) ;

    //unlimited waiting
    //p.WaitForExit() ;

    p.WaitForExit(1000) ;

  • Artifact while streaming multicast with ffmpeg

    17 août 2018, par Nicosmik

    Locally, from my windows machine with ffmpeg 3.3.2 from Zeranoe

    ffmpeg version 3.2.2 Copyright (c) 2003-2016 the FFmpeg developers
    built with gcc 5.4.0 (GCC)
    configuration : —enable-gpl
    —enable-version3 —enable-dxva2 —enable-libmfx —enable-nvenc —enable-avisynth —enable-bzlib —enable-fontconfig —enable-frei0r —enable-gnutls —enable-iconv —enable-libass —enable-libbluray —enable-libbs2b —enable-libcaca —enable-libfreetype —enable-libgme —enable-libgsm —enable-libilbc —enable-libmodplug —enable-libmp3lame —enable-libopencore-amrnb —enable-libopencore-amrwb —enable-libopenh264 —enable-libopenjpeg —enable-libopus —enable-librtmp —enable-libsnappy —enable-libsoxr —enable-libspeex —enable-libtheora —enable-libtwolame —enable-libvidstab —enable-libvo-amrwbenc —enable-libvorbis —enable-libvpx —enable-libwavpack —enable-libwebp —enable-libx264 —enable-libx265 —enable-libxavs —enable-libxvid —enable-libzimg —enable-lzma —enable-decklink —enable-zlib

    Server side

    Launch udp multicast streaming.

    ffmpeg -re -i video.ts -an -f mpegts -c copy udp://224.1.1.1:5000

    Client side

    Playing with ffplay is correct, no artifacts displayed

    ffplay udp://224.1.1.1:5000

    Playing after decoding cause artifacts

    ffmpeg -i udp://224.1.1.1:5000 -pix_fmt gray -f avi - | ffplay -

    or

    ffmpeg -f mpegts -i udp://224.1.1.1:5000 -pix_fmt gray -c:v rawvideo -f avi out.avi

    Does someone has an explanation ?

  • How to get output from ffmpeg process in c#

    13 juillet 2018, par Anirudha Gupta

    In the code I written in WPF, I run some filter in FFmpeg, If I run the command in terminal (PowerShell or cmd prompt) It will give me information line by line what’s going on.

    I am calling the process from C# code and it’s work fine. The problem I have with my code is actually I am not able to get any output from the process I run.

    I have tried some answers from StackOverflow for FFmpeg process. I see 2 opportunities in my code. I can either fix it by Timer approach or secondly hook an event to OutputDataReceived.

    I tried OutputDataReceived event, My code never got it worked. I tried Timer Approach but still, it’s not hitting my code. Please check the code below

           _process = new Process
           {
               StartInfo = new ProcessStartInfo
               {
                   FileName = ffmpeg,
                   Arguments = arguments,
                   UseShellExecute = false,
                   RedirectStandardOutput = true,
                   RedirectStandardError = true,
                   CreateNoWindow = true,
               },
               EnableRaisingEvents = true
           };

           _process.OutputDataReceived += Proc_OutputDataReceived;

           _process.Exited += (a, b) =>
           {
               System.Threading.Tasks.Task.Run(() =>
               {
                   System.Threading.Tasks.Task.Delay(5000);
                   System.IO.File.Delete(newName);
               });

               //System.IO.File.Delete()
           };

           _process.Start();
           _timer = new Timer();
           _timer.Interval = 500;
           _timer.Start();
           _timer.Tick += Timer_Tick;
       }


       private void Timer_Tick(object sender, EventArgs e)
       {
           while (_process.StandardOutput.EndOfStream)
           {
              string line = _process.StandardOutput.ReadLine();
           }
           // Check the process.

       }