Recherche avancée

Médias (2)

Mot : - Tags -/kml

Autres articles (85)

  • Support de tous types de médias

    10 avril 2011

    Contrairement à beaucoup de logiciels et autres plate-formes modernes de partage de documents, MediaSPIP a l’ambition de gérer un maximum de formats de documents différents qu’ils soient de type : images (png, gif, jpg, bmp et autres...) ; audio (MP3, Ogg, Wav et autres...) ; vidéo (Avi, MP4, Ogv, mpg, mov, wmv et autres...) ; contenu textuel, code ou autres (open office, microsoft office (tableur, présentation), web (html, css), LaTeX, Google Earth) (...)

  • Installation en mode ferme

    4 février 2011, par

    Le mode ferme permet d’héberger plusieurs sites de type MediaSPIP en n’installant qu’une seule fois son noyau fonctionnel.
    C’est la méthode que nous utilisons sur cette même plateforme.
    L’utilisation en mode ferme nécessite de connaïtre un peu le mécanisme de SPIP contrairement à la version standalone qui ne nécessite pas réellement de connaissances spécifique puisque l’espace privé habituel de SPIP n’est plus utilisé.
    Dans un premier temps, vous devez avoir installé les mêmes fichiers que l’installation (...)

  • Des sites réalisés avec MediaSPIP

    2 mai 2011, par

    Cette page présente quelques-uns des sites fonctionnant sous MediaSPIP.
    Vous pouvez bien entendu ajouter le votre grâce au formulaire en bas de page.

Sur d’autres sites (4955)

  • Node.js merge audio and video streams and pipe it to the client

    29 mars 2023, par nick

    I am working with ytdl-core library and it cannot download high quality videos with audio included because youtube has them in sperate files. Therefore, I need to download audio and video seperately then merge them using ffmpeg. An example of this can be seen here. However, using this way I am required to download the files prior to merging them and I was wondering is there is a way to merge audio and video streams and send the result to the client directly ?

    


    If you believe there is a more efficent way to achieve this, I would like to hear your approach.

    


    Thanks in advance.

    


  • An efficient way to use Windows Named Pipe for IPC

    26 juillet 2020, par Ehsan5

    I am using jna module to connect two processes that both perform FFMPEG commands. Send SDTOUT of FFMPEG command on the server side to NampedPipe and receive STDIN from that NampedPipe for other FFMPEG command on the Client side.

    


    this is how I capture STDOUT and send into the pipe in server Side :

    


    InputStream out = inputProcess.getInputStream();
byte[] buffer = new byte[maxBufferSize];
while (inputProcess.isAlive()) {
     int no = out.available();
     if (no > 0 && no > maxBufferSize) {
        int n = out.read(buffer, 0,maxBufferSize);
        IntByReference lpNumberOfBytesWritten = new IntByReference(maxBufferSize);
        Kernel32.INSTANCE.WriteFile(pipe, buffer, buffer.length, lpNumberOfBytesWritten, null);
     }
}


    


    And this is how I capture STDIN and feed it to the Client Side :

    


    OutputStream in = outputProcess.getOutputStream();
while (pipeOpenValue >= 1 && outputProcess.isAlive() && ServerIdState) {
      // read from pipe
      resp = Kernel32.INSTANCE.ReadFile(handle, readBuffer,readBuffer.length, lpNumberOfBytesRead, null);
      // Write to StdIn inputProcess
      if (outputProcess != null) {
          in.write(readBuffer);
          in.flush();
      }
      // check pipe status
      Kernel32.INSTANCE.GetNamedPipeHandleState(handle, null,PipeOpenStatus, null, null, null, 2048);
      pipeOpenValue = PipeOpenStatus.getValue();
      WinDef.ULONGByReference ServerId = new WinDef.ULONGByReference();
      ServerIdState = Kernel32.INSTANCE.GetNamedPipeServerProcessId(handle, ServerId);
}


    


    But I faced two problems :

    


      

    1. High CPU usage due to iterating two loops in Server and Client. (find by profiling resources by VisualVM)
    2. 


    3. Slower operation than just connecting two FFMPEG command with regular | in command prompt. Speed depends on buffer size but large buffer size blocks operation and small buffer size reduce speed further.
    4. 


    


    Questions :

    


      

    1. Is there any way not to send and receive in chunks of bytes ? Just stream STDOUT to the Namedpipe and capture it in Client. (Eliminate two Loops)
    2. 


    3. If I cant use NampedPipe, is there any other way to Connect two FFMPEG process that runs in different java modules but in the same machine ?
    4. 


    


    Thanks

    


  • FFmpeg outputs video with wrong frame rate when using input pipe

    14 juillet 2020, par Eduardo Lemus

    I am using FFmpeg to convert animated GIF to WEBM video in C#. While this seems to work fine by passing file paths as input/output, my goal is to prevent any access to disk so I'm trying out named pipes instead.

    


    The following options to read the output from a named pipe apparently works fine :

    


    ffmpeg -f image2pipe -i input.gif -c:v libvpx-vp9 -b:v 0 -crf 30 -an -y -f webm \\.\pipe\fromFFmpeg


    


    but when trying to provide also the input from a named pipe, the output WEBM plays at what seems to be the wrong framerate making a 5-6 secs animation to last 2 secs :

    


    ffmpeg -f image2pipe -i \\.\pipe\toFFmpeg -c:v libvpx-vp9 -b:v 0 -crf 30 -an -y -f webm \\.\pipe\fromFFmpeg


    


    Any idea on how to roughly preserve the "same speed" ?