Recherche avancée

Médias (1)

Mot : - Tags -/iphone

Autres articles (104)

  • Soumettre améliorations et plugins supplémentaires

    10 avril 2011

    Si vous avez développé une nouvelle extension permettant d’ajouter une ou plusieurs fonctionnalités utiles à MediaSPIP, faites le nous savoir et son intégration dans la distribution officielle sera envisagée.
    Vous pouvez utiliser la liste de discussion de développement afin de le faire savoir ou demander de l’aide quant à la réalisation de ce plugin. MediaSPIP étant basé sur SPIP, il est également possible d’utiliser le liste de discussion SPIP-zone de SPIP pour (...)

  • Emballe médias : à quoi cela sert ?

    4 février 2011, par

    Ce plugin vise à gérer des sites de mise en ligne de documents de tous types.
    Il crée des "médias", à savoir : un "média" est un article au sens SPIP créé automatiquement lors du téléversement d’un document qu’il soit audio, vidéo, image ou textuel ; un seul document ne peut être lié à un article dit "média" ;

  • 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 (...)

Sur d’autres sites (10828)

  • avcodec/xbmenc : Allow for making UW images

    19 janvier 2021, par Jose Da Silva
    avcodec/xbmenc : Allow for making UW images
    

    I've run into some bugs where I was downloading a bunch of data and began
    seeing weird hiccups. For example, javascript promises to allow you to push
    some very long lines of data, but the hiccups I saw was with data larger
    than 2k in length (windows) pushed out of a child process stdout piped into
    the stdin of the calling parent program.
    Soo much for smooth promises, this was broken and would run into similar
    problems on a linux PC with 32k line limits.
    The solution was to break the data into smaller chunks than 2k - and then
    these data hiccups disappeared (windows PC).

    It would be expected to be similar for linux PCs (32k I think) and other
    OSes with different sizes.

    If the ANSI required minimum needs to be 509 chars or larger (assuming
    509+<CR>+<LF>+<0>=512), then 509 was chosen as the shortest worst-case
    scenario) in this patch.
    Most small pictures will go output looking pretty much the same data out
    until you get to about 84bytes (672 pixels wide), where lines out begin to
    be split. For example a UW 4K will exceed a 2k readln and a UW 10K picture
    approaches an 8k readln

    The purpose for this patch is to ensure that data remains below the
    readline limits (of 509 chars), so that programs (like javascript) can push
    data in large chunks without breaking into hiccups because the data length
    is too long to be pushed cleanly in one go.
    Subject : [PATCH 3/3] avcodec/xbmenc : Allow for making UW images

    Worst-case ANSI must allow for 509 chars, while Windows allows for 2048
    and Linux for 32K line length. This allows an OS with a small readline
    access limitation to fetch very wide images (created from ffmpeg).

    • [DH] libavcodec/xbmenc.c
  • How do you run ffmpeg from Java, without crashing ?

    30 juin 2024, par WinnieTheDampoeh

    I try running ffmpeg from Java, and for a couple of moments everything is working fine. I want ffmpeg to record my screen, and split the recording into small clips. The command is working fine from the terminal, but when I run it from Java I get at most 3 clips. Ffmpeg doesn't write anything to the InputStream, so I have no idea what's going wrong.

    &#xA;

    public static void execute(int frameRate, int width, int height, String windowTitle) {&#xA;      String[] args = new String[]{&#xA;              path,&#xA;              "-hide_banner",&#xA;              "-f", "gdigrab",&#xA;              "-thread_queue_size", "1024",&#xA;              "-rtbufsize", "256M",&#xA;              "-framerate", "" &#x2B; frameRate,&#xA;              "-offset_x", "0",&#xA;              "-offset_y", "0",&#xA;              "-video_size", "" &#x2B; width &#x2B; "x" &#x2B; height,&#xA;              "-draw_mouse", "1",&#xA;              "-i", "title=" &#x2B; windowTitle,&#xA;              "-c:v", "libx264",&#xA;              "-r", "" &#x2B; frameRate,&#xA;              "-preset", "ultrafast",&#xA;              "-tune", "zerolatency",&#xA;              "-crf", "28",&#xA;              "-pix_fmt", "yuv420p",&#xA;              "-movflags", "&#x2B;faststart",&#xA;              "-y",&#xA;              "-f", "segment",&#xA;              "-reset_timestamps", "1",&#xA;              "-segment_time", "1",&#xA;              "output%06d.mp4"&#xA;      };&#xA;&#xA;      try {&#xA;          Process p = Runtime.getRuntime().exec(args);&#xA;          Thread thread = new Thread(() -> {&#xA;              String line;&#xA;              BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream()));&#xA;&#xA;              System.out.println("TEST");&#xA;              try {&#xA;                  while ((line = input.readLine()) != null)&#xA;                      System.out.println(line);&#xA;&#xA;                  System.out.println("Stopping with reading");&#xA;                  input.close();&#xA;              } catch (IOException e) {&#xA;                  e.printStackTrace();&#xA;              }&#xA;          });&#xA;          int exitCode = p.waitFor();&#xA;          thread.start();&#xA;          thread.join();&#xA;          if (exitCode != 0) {&#xA;              throw new RuntimeException("FFmpeg exited with code " &#x2B; exitCode);&#xA;          }&#xA;      } catch (IOException | InterruptedException e) {&#xA;          throw new RuntimeException(e);&#xA;      }&#xA;  }&#xA;

    &#xA;

    I've run the same command in the terminal. That worked fine. I ran the code above, but that resulted in ffmpeg stopping after 3 clips. It kept showing as working from the task manager. As said before, ffmpeg doesn't write anything to the InputStream, even though it normally does write a lot in the terminal. The weird thing is, when I stop my Java program, but accidentally keep ffmpeg running, it suddenly does everything I wanted it to. It didn't capture the things between stopping and closing Java, but after that it continues like it should have.

    &#xA;

  • How to save ffmpeg segmets to disk immediately with sub-second intervals ?

    20 octobre 2023, par amfast

    I'm trying to record video on a raspberry and have it save as much as possible (sub-second resolution) in case of a power cutoff.

    &#xA;

    I use -f segment to save the encoded stream in 100ms segments with the hope that all but the interrupted (by power cutoff) segment will be saved in memory. Unfortunately, when cutting off power, all the destination files (output_0001.mp4, output_0002.mp4, ...) are created, but empty.

    &#xA;

    To save the files to disk immediately, I added the -strftime 1 option that allows formatting the output filename as time. It seems weird that this is the (only ?) way to trigger immediate saving of files, but it works - untill I try to have segments smaller than 1 second. The problem seems to be that the format string %d, that previously added a sequence number in my output filenames, now represents "day" (i.e. date) and the smallest resolution time format string is %S for second. I saw %f suggested somewhere for smaller resolutions, but it only prints "%f".

    &#xA;

    The result is that the segmentation part of ffmpeg does create 100ms segments and save them to disk immediately, but the strftime feature gives the output files names that only change every second, so all the interim files are overwritten.

    &#xA;

    Example of the failing command below. Without the -strftime option this creates nice segments, but does not save them to disk immediately.

    &#xA;

    libcamera-vid --flush \&#xA;    --framerate ${FRAMERATE} \&#xA;    --width ${WIDTH} \&#xA;    --height ${HEIGHT} \&#xA;    -n \&#xA;    -t ${TIMEOUT} \&#xA;    --codec yuv420 \&#xA;    -o - | &#xA;ffmpeg \&#xA;    -fflags nobuffer \&#xA;    -strict experimental \&#xA;    -loglevel debug \&#xA;    -flags low_delay \&#xA;    -f rawvideo \&#xA;    -pix_fmt yuv420p \&#xA;    -s:v ${WIDTH}x${HEIGHT} \&#xA;    -r ${FRAMERATE} \&#xA;    -i - \&#xA;    -c:v h264_v4l2m2m \&#xA;    -f segment \&#xA;    -segment_time 0.1 \&#xA;    -segment_format mp4 \&#xA;    -reset_timestamps 1 \&#xA;    -strftime 1 \&#xA;    -b:v ${ENCODING_BITRATE} \&#xA;    -g 1 \&#xA;    "output_%04d.mp4"&#xA;

    &#xA;

    Question :
    &#xA;Is there another way besides -strftime to trigger immediate saving ? Or is there a mechanism to feed finer resolution format strings to the output filename ?

    &#xA;