Recherche avancée

Médias (91)

Autres articles (111)

  • ANNEXE : Les plugins utilisés spécifiquement pour la ferme

    5 mars 2010, par

    Le site central/maître de la ferme a besoin d’utiliser plusieurs plugins supplémentaires vis à vis des canaux pour son bon fonctionnement. le plugin Gestion de la mutualisation ; le plugin inscription3 pour gérer les inscriptions et les demandes de création d’instance de mutualisation dès l’inscription des utilisateurs ; le plugin verifier qui fournit une API de vérification des champs (utilisé par inscription3) ; le plugin champs extras v2 nécessité par inscription3 (...)

  • Supporting all media types

    13 avril 2011, par

    Unlike most software and media-sharing platforms, MediaSPIP aims to manage as many different media types as possible. The following are just a few examples from an ever-expanding list of supported formats : images : png, gif, jpg, bmp and more audio : MP3, Ogg, Wav and more video : AVI, MP4, OGV, mpg, mov, wmv and more text, code and other data : OpenOffice, Microsoft Office (Word, PowerPoint, Excel), web (html, CSS), LaTeX, Google Earth and (...)

  • Prérequis à l’installation

    31 janvier 2010, par

    Préambule
    Cet article n’a pas pour but de détailler les installations de ces logiciels mais plutôt de donner des informations sur leur configuration spécifique.
    Avant toute chose SPIPMotion tout comme MediaSPIP est fait pour tourner sur des distributions Linux de type Debian ou dérivées (Ubuntu...). Les documentations de ce site se réfèrent donc à ces distributions. Il est également possible de l’utiliser sur d’autres distributions Linux mais aucune garantie de bon fonctionnement n’est possible.
    Il (...)

Sur d’autres sites (10810)

  • Realtime output from ffmpeg and livestreamer using subprocess.Popen

    6 mars 2016, par Roger B

    In ffmpeg and livestreamer i only get a few lines in realtime then i get the rest of them when the process is done...

    I have tried two codes :

    from subprocess import *
    p = Popen('ffmpeg -i infile.mp4 outfile.mp4', stderr=STDOUT, stdout=PIPE)
    for line in iter(p.stdout.readline(), b'')
      print line.rstrip()

    and

    from subprocess import *
    p = Popen('ffmpeg -i infile.mp4 outfile.mp4', stderr=STDOUT, stdout=PIPE)
    while p.poll is None:
      line = p.stdout.readline()
      print line.rstrip()

    Both of them prints first :

    ffmpeg version N-72805-g913685f Copyright (c) 2000-2015 the FFmpeg developers
     built with gcc 4.9.2 (GCC)
     configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-av
    isynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enab
    le-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --
    enable-libdcadec --enable-libfreetype --enable-libgme --enable-libgsm --enable-l
    ibilbc --enable-libmodplug --enable-libmfx --enable-libmp3lame --enable-libopenc
    ore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --ena
    ble-librtmp --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable
    -libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-aacenc --enabl
    e-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable
    -libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --e
    nable-lzma --enable-decklink --enable-zlib
     libavutil      54. 27.100 / 54. 27.100
     libavcodec     56. 41.100 / 56. 41.100
     libavformat    56. 36.100 / 56. 36.100
     libavdevice    56.  4.100 / 56.  4.100
     libavfilter     5. 16.101 /  5. 16.101
     libswscale      3.  1.101 /  3.  1.101
     libswresample   1.  2.100 /  1.  2.100
     libpostproc    53.  3.100 / 53.  3.100
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'a.mp4':
     Metadata:
       major_brand     : isom
       minor_version   : 512
       compatible_brands: isomiso2avc1mp41
       encoder         : Lavf56.10.100
     Duration: 01:34:36.14, start: 0.021333, bitrate: 6205 kb/s
       Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1280x720,
    5938 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default)
       Metadata:
         handler_name    : VideoHandler
       Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, flt
    p, 256 kb/s (default)
       Metadata:
         handler_name    : SoundHandler
    [mp4 @ 05013ce0] Codec for stream 0 does not use global headers but container fo
    rmat requires global headers
    [mp4 @ 05013ce0] Codec for stream 1 does not use global headers but container fo
    rmat requires global headers
    Output #0, mp4, to 'b.mp4':
     Metadata:
       major_brand     : isom
       minor_version   : 512
       compatible_brands: isomiso2avc1mp41
       encoder         : Lavf56.36.100
       Stream #0:0(und): Video: h264 ([33][0][0][0] / 0x0021), yuv420p, 1280x720, q
    =2-31, 5938 kb/s, 30 fps, 30 tbr, 15360 tbn, 15360 tbc (default)
       Metadata:
         handler_name    : VideoHandler
       Stream #0:1(und): Audio: aac ([64][0][0][0] / 0x0040), 48000 Hz, stereo, 256
    kb/s (default)
       Metadata:
         handler_name    : SoundHandler
    Stream mapping:
     Stream #0:0 -> #0:0 (copy)
     Stream #0:1 -> #0:1 (copy)
    Press [q] to stop, [?] for help

    Then when the convert process is done the rest of the log turns up...

    How can i get all stdout in realtime ??

    EDIT :

    If i use a text file to write to it get all in realtime.

    from subprocess import *
    out_file = open('stdout.txt','a')
    Popen('ffmpeg -i infile.mp4 outfile.mp4', stderr=STDOUT, stdout=out_file)

    But i want it print out stdout in realtime..

    Why does it work in realtime to a file but not direct print ?

  • ffmpeg throws conversion error, but only if the triggering web request is made from safari ?

    22 novembre 2022, par Kyoshiro Kokujou Obscuritas

    I'm using ffmpeg to do an on-the-fly conversion of audio files to ensure high compatibility. i'm converting them to OGG. and all of this is done by a .NET 6 REST service.
This service is then accessed by a javascript Frontend.
Now the problem. The exact same request runs through without any problems on Windows + Firefox, but it does not on Safari. In Safari it says something about "unknownConversion failed"

    


    it's the same file, it's the same name, and to make sure there are no weird invisible characters i used the Microsoft File API to convert it to a proper file path.

    


    code looks like this

    


    var ffmpeg = new Process();
        var startInfo = new ProcessStartInfo("D:\\Programme\\ffmpeg\\bin\\ffmpeg.exe",
            $"-i \"{path.FullName}\" -c:a libopus -f ogg -")
        {
            RedirectStandardError = true,
            RedirectStandardOutput = true,
            RedirectStandardInput = true,
            UseShellExecute = false,
            CreateNoWindow = true
        };
        ffmpeg.EnableRaisingEvents = true;
        ffmpeg.StartInfo = startInfo;
        ffmpeg.ErrorDataReceived += OnErrorDataReceived;
        ffmpeg.Exited += OnFinished;

        ffmpeg.Start();
        ffmpeg.BeginErrorReadLine();

        return File(new BufferedStream(ffmpeg.StandardOutput.BaseStream), "audio/ogg");


    


    Complete Logs : https://pastebin.com/tTUcsjuT

    


  • mpegts : Update the PSI/SI table only if the version change

    28 avril 2015, par John Högberg
    mpegts : Update the PSI/SI table only if the version change
    

    If a PAT is finished while a PMT section filter is opened but
    not yet finished, the PMT section filter is closed and all
    the received data is discarded.

    This is usually not an issue but some multiplexers (With very
    quick PAT/PMT repetition settings) consistently emit a PMT
    section start, then a PAT, and then the rest of the PMT,
    causing the aforementioned behavior to result in no PMT being
    finished.

    In the most pathologic situation the stream information are lost
    and the probe fallback miscategorizes subtitles as mp3 audio.

    Avoid the issue through eliminating redundant PSI/SI table
    updates by checking their version field, which is required by
    the standard to be incremented on every change no matter how
    minor.

    CC : libav-stable@libav.org

    Signed-off-by : Luca Barbato <lu_zero@gentoo.org>

    • [DH] libavformat/mpegts.c