Recherche avancée

Médias (2)

Mot : - Tags -/media

Autres articles (84)

  • Creating farms of unique websites

    13 avril 2011, par

    MediaSPIP platforms can be installed as a farm, with a single "core" hosted on a dedicated server and used by multiple websites.
    This allows (among other things) : implementation costs to be shared between several different projects / individuals rapid deployment of multiple unique sites creation of groups of like-minded sites, making it possible to browse media in a more controlled and selective environment than the major "open" (...)

  • Le profil des utilisateurs

    12 avril 2011, par

    Chaque utilisateur dispose d’une page de profil lui permettant de modifier ses informations personnelle. Dans le menu de haut de page par défaut, un élément de menu est automatiquement créé à l’initialisation de MediaSPIP, visible uniquement si le visiteur est identifié sur le site.
    L’utilisateur a accès à la modification de profil depuis sa page auteur, un lien dans la navigation "Modifier votre profil" est (...)

  • Configurer la prise en compte des langues

    15 novembre 2010, par

    Accéder à la configuration et ajouter des langues prises en compte
    Afin de configurer la prise en compte de nouvelles langues, il est nécessaire de se rendre dans la partie "Administrer" du site.
    De là, dans le menu de navigation, vous pouvez accéder à une partie "Gestion des langues" permettant d’activer la prise en compte de nouvelles langues.
    Chaque nouvelle langue ajoutée reste désactivable tant qu’aucun objet n’est créé dans cette langue. Dans ce cas, elle devient grisée dans la configuration et (...)

Sur d’autres sites (7684)

  • NodeJS fluent-ffmpeg error : Output stream closed

    30 décembre 2020, par Japser36

    We are running a NodeJS server that does some audio processing. Specifically, we have audio data returned by google's text to speech API, which we have in the form of a Buffer.

    


    In our application, we have to send this audio data through FFMPEG to format it and extract audio duration. We do this by first converting it into a stream, piping it into ffmpeg, and then storing the data in an output buffer :

    


    const toWav = function (input: Buffer): Promise<buffer> {&#xA;    return new Promise((res, rej): void => {&#xA;        const bufs = [];&#xA;        const myReadable = new Readable();&#xA;        myReadable._read = (): void => {}; // we already have all data in memory, so no-op this function;&#xA;        myReadable.push(input); // stream all data in the buffer to the stream&#xA;        myReadable.push(null); // end the stream&#xA;        const output = ffmpeg(myReadable)&#xA;            .inputFormat(&#x27;mp3&#x27;)&#xA;            .toFormat(&#x27;wav&#x27;)&#xA;            .on(&#x27;start&#x27;, function (commandLine) {&#xA;                console.log(&#x27;SPAWNED ARG: &#x27; &#x2B; commandLine);&#xA;            })&#xA;            .on(&#x27;error&#x27;, (err: object): void => {&#xA;                console.error(&#x27;FFMPEG error on wav transform&#x27;);&#xA;                rej(err);&#xA;            })&#xA;            .on(&#x27;end&#x27;, (): void => {&#xA;                console.debug(&#x27;FFMPEG finished wav transform&#x27;);&#xA;                res(Buffer.concat(bufs));&#xA;            })&#xA;            .pipe();&#xA;        output.on(&#x27;data&#x27;, (d: object): void => {&#xA;            bufs.push(d);&#xA;        });&#xA;    });&#xA;};&#xA;</buffer>

    &#xA;

    This code is one of our functions that does the formatting, that our data gets passed through. Most of the time, this code works fine, but sometimes an error is thrown :error and stack trace

    &#xA;

    Looking up this error on google, I found an issue on the FFMPEG library we use, that seems to suggest that using an input and output stream just isn't recommended and doesn't work. Rather, one of the two needs to be a file resource.

    &#xA;

    Some more about this error, it seems to happen consistently when it does happen, but it doesn't happen consistently overall. For me, I got this error every time the code ran, I went and took lunch, and when I came back it was gone.

    &#xA;

    For us it is important that this error won't pop up randomly in production, so the question is, does anyone have any suggestions on how we can be the most certain this error won't happen ?

    &#xA;

    For completeness in how this function is being invoked to result in the error in the screenshot, the structure of the code where the error is caught is like so :

    &#xA;

    await Promise.all(&#xA;    myArray.map(async (item, idx) => {&#xA;        // ...&#xA;        const wavBuffer = await toWav(myBuffer); // toWav is invoked at this level&#xA;    })&#xA;)&#xA;.then(() => {/* ... */})&#xA;.catch((e) => {&#xA;    // ...&#xA;    logger.error(&#x27;[LOOP CRASH] Error at main promise:&#x27;, e);&#xA;    // ...&#xA;});&#xA;

    &#xA;

    Any help would be appreciated, thank you ! Please let me know if I can provide more details, though I cannot share a repo or full source code or anything since this is a private repo.

    &#xA;

  • SRT protocol not found - Raspbery Pi 4 via ffmpeg

    12 août 2021, par Tim Martin

    We tried to stream from a rasp Pi 4 via SRT, but we got a error : "protocol not found". Our command line is :

    &#xA;

    ffplay srt://127.0.0.1:9500?mode=listener&amp;latency=20000&#xA;

    &#xA;

    We tried the following guides :&#xA;https://trac.ffmpeg.org/wiki/CompilationGuide/Ubuntu&#xA;how to compile ffmpeg with enabling libsrt&#xA;https://www.undergroundnews.dk/index.php/item/107-rtmp-eller-srt-streaming

    &#xA;

    Those guides worked so far and compiled but we still got the error message.

    &#xA;

    Do you have any ideas how to get the srt protocol working on a pi via ffmpeg ?

    &#xA;

  • FFmpeg with multiple output streams

    22 novembre 2018, par William Blake

    I am using ffmpeg to combine an rtsp stream with an audio stream from a usb mic. I would like to stream the combined audio and and video to an RTMP stream and just the audio to an icecast stream simultaneously. I have them working separately but am having difficulty finding the magic combination using the -f tee parameter. It seems like that would be the best way. This was the reference I was trying to use : https://trac.ffmpeg.org/wiki/Creating%20multiple%20outputs

    Here are the separate commands :

    ffmpeg -rtsp_transport tcp -use_wallclock_as_timestamps 1 -thread_queue_size 1024  \
    -i "rtsp://RTSP-SERVER-ADDRESS" \
    -f alsa -thread_queue_size 1024 -ac 1 -itsoffset 00:00:01.2 -i hw:1,0 \
    -vcodec copy -acodec mp3 -ar 44100 -ab 32k -map 0:v -map 1:a -bufsize 12000k \
    -f flv 'RTMP-SERVER-ADDRESS'

    ffmpeg -ac 1 -f alsa -i hw:1,0 -acodec mp3 -ab 32k -ac 1 -content_type audio/mpeg -f mp3 icecast://ICECAST-ADDRESS

    However my attempts to combine them have been futile. Any thoughts ?