Recherche avancée

Médias (91)

Autres articles (77)

  • MediaSPIP version 0.1 Beta

    16 avril 2011, par

    MediaSPIP 0.1 beta est la première version de MediaSPIP décrétée comme "utilisable".
    Le fichier zip ici présent contient uniquement les sources de MediaSPIP en version standalone.
    Pour avoir une installation fonctionnelle, il est nécessaire d’installer manuellement l’ensemble des dépendances logicielles sur le serveur.
    Si vous souhaitez utiliser cette archive pour une installation en mode ferme, il vous faudra également procéder à d’autres modifications (...)

  • MediaSPIP 0.1 Beta version

    25 avril 2011, par

    MediaSPIP 0.1 beta is the first version of MediaSPIP proclaimed as "usable".
    The zip file provided here only contains the sources of MediaSPIP in its standalone version.
    To get a working installation, you must manually install all-software dependencies on the server.
    If you want to use this archive for an installation in "farm mode", you will also need to proceed to other manual (...)

  • Amélioration de la version de base

    13 septembre 2013

    Jolie sélection multiple
    Le plugin Chosen permet d’améliorer l’ergonomie des champs de sélection multiple. Voir les deux images suivantes pour comparer.
    Il suffit pour cela d’activer le plugin Chosen (Configuration générale du site > Gestion des plugins), puis de configurer le plugin (Les squelettes > Chosen) en activant l’utilisation de Chosen dans le site public et en spécifiant les éléments de formulaires à améliorer, par exemple select[multiple] pour les listes à sélection multiple (...)

Sur d’autres sites (10391)

  • Is it possible to re-translate RTMP stream without losing speed ? [closed]

    3 août 2024, par Lunavod

    I've been working on a stream proxy - the idea is that instead of streaming directly to Twitch, OBS streams to a local RTMP server running on the same machine. The server decodes flv from the rtmp stream into rawvideo using ffmpeg, modifies pixels, and encodes back into flv, streaming the result to twitch. Again, using ffmpeg.

    


    However, I was not able to make this setup work reliably - I always run into buffering issues on Twitch. Even if ffmpeg shows a stable bitrate and 60fps, twitch slowly loses buffer size, then pauses to buffer, and then slowly loses buffer again... This results in endlessly growing delays and frequent pauses.

    


    I simplified this setup, removing the rawvideo part together with frame modification. A simplified setup accepts the rtmp stream, and dumps it into FFmpeg, which sends it to Twitch with minimal overhead (I hope).
But even with this setup, Twitch still increases latency, although considerably slower.

    


    The connection between rtmp server and ffmpeg is done with TCP sockets.
I tried using stdin, but it works even worse.
I also tried using windows named pipes but ran into a bottleneck - writing rawvideo from ffmpeg and reading it from script worked fine, as well as writing from a script and reading from ffmpeg. However, running both simultaneously in two different pipes slowed down.

    


    Initially, all of this was written in python, but I also tried using go, hoping that rtmp server realisation in python was the problem.

    


    Am I missing something fundamental here ? Is this idea possible at all ?

    


  • "Error : more samples than frame size" while encoding audio to opus codec using FFMPEG

    28 avril 2023, par lokit khemka

    I am converting audio from codec AAC to Opus using libavcodec library of FFMPEG. The input codec details are as follows : Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, 6 channels, fltp, 391 kb/s (default)

    


    The codec options that I have used for the output encoding are as follows :

    


        int OUTPUT_CHANNELS = 2;
    int OUTPUT_BIT_RATE = 32000;
int sample_rate = 48000;
    encoder_sc->audio_avcc->channels = OUTPUT_CHANNELS;
    encoder_sc->audio_avcc->channel_layout = av_get_default_channel_layout(OUTPUT_CHANNELS);
    encoder_sc->audio_avcc->sample_rate = sample_rate;
    encoder_sc->audio_avcc->sample_fmt = encoder_sc->audio_avc->sample_fmts[0];
    encoder_sc->audio_avcc->bit_rate = OUTPUT_BIT_RATE;
    encoder_sc->audio_avcc->time_base = (AVRational){1, sample_rate};


    


    I am using the code in the file as it is, with minimal changes : https://github.com/leandromoreira/ffmpeg-libav-tutorial/blob/master/3_transcoding.c for reference. Look for the function prepare_audio_encoder in the file.

    


    When the run the program, I keep getting the error : " more samples than frame size". I don't know much about Audio Processing, so I cannot debug this error. Any help is greatly appreciated.

    


  • Rendering video by ffmpeg.wasm in browser occured an error

    15 septembre 2022, par James Bor

    When a local video renderer uses the ffmpeg.wasm library in the Chrome browser, very often an error with the SBOX_FATAL_MEMORY_EXCEEDED code occurs during the rendering process. The standard command set is used. The code below is half fake because it is very long, but describes an approximate action algorithm. Computer performance and RAM capacity do not affect the video, files used - minimal size. Has anyone experienced this and how can we solve it ?
Error screen

    


    const videoGenerate = async (project) => {
  const ffmpeg = createFFmpeg({
      corePath: 'ffmpeg/ffmpeg-core.js',
      workerPath: 'ffmpeg/ffmpeg-core.worker.js'
  });
  await loadFfmpeg(ffmpeg);
  project.projectName = "Default";
  project.fileType = "video/mp4";

  const resultVideo = {
    title: `${project.projectName}ConcatenatedVideo.mp4`,
  };
  // *For fetchFile method and ffmpeg.FS('writeFile', title, file);
  await uploadObjects(project.projectName, ffmpeg);
  // *
  const command = ['-i', project.video, resultVideo.title];
  await ffmpeg.run(...command);
  await ffmpeg.FS("unlink", resultVideo.title);
  resultVideo["blob"] = ffmpeg.FS('readFile', title);
  return resultVideo.blob;
};


    


    These dependencies are used : "@ffmpeg/core" : " 0.8.5", "@ffmpeg/ffmpeg" : " 0.9.7". Upgrading the library to the latest version does not work either.