Recherche avancée

Médias (1)

Mot : - Tags -/musée

Autres articles (41)

  • Websites made ​​with MediaSPIP

    2 mai 2011, par

    This page lists some websites based on MediaSPIP.

  • Contribute to a better visual interface

    13 avril 2011

    MediaSPIP is based on a system of themes and templates. Templates define the placement of information on the page, and can be adapted to a wide range of uses. Themes define the overall graphic appearance of the site.
    Anyone can submit a new graphic theme or template and make it available to the MediaSPIP community.

  • Submit enhancements and plugins

    13 avril 2011

    If you have developed a new extension to add one or more useful features to MediaSPIP, let us know and its integration into the core MedisSPIP functionality will be considered.
    You can use the development discussion list to request for help with creating a plugin. As MediaSPIP is based on SPIP - or you can use the SPIP discussion list SPIP-Zone.

Sur d’autres sites (8824)

  • #/bin/sh in one line

    27 juillet 2012, par GoodGuyGreg

    I'm working on some Haskell project using FFmpeg. I need to batch create from a media folder with MP4 files and create screenshots from all of them. I got the code and am using it on a terminal in Unix. It works, but how do I make it in one line to be executed in system "xxxx" in Haskell ?

    If not using several system"xx"...

    #/bin/sh
    for i in $(ls *.mp4)
    do
       ffmpeg -i $i -vframes 7 -y -ss 10 -s 150x150 -an -sameq -f image2 -r 1/5  $i%1d.jpg
    done

    I tried :

    import System.Cmd
    function = do{system "#/bin/sh";
    system "for i in $(ls *.mp4)";
    system "do";
    system "ffmpeg -i $i -vframes 7 -y -ss 10 -s 150x150 -an -sameq -f image2 -r 1/5  $i%1d.jpg";
    system "done";}

    but it gives a error :

    -vframes: No such file or directory
    /bin/sh: Syntax error: "done" unexpected
  • 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;

  • Convert video to mp3 audio using ffmpeg

    24 mai 2021, par Abdull Rahman Adnan

    I am developing an app for Android that converts video to mp3 audio using ffmpeg.&#xA;Found too many commands to convert.&#xA;The problem is that all commands work slowly on long videos.&#xA;That is 40 minutes in length.

    &#xA;&#xA;

    What I want is commands that converts video to mp3 quickly.

    &#xA;