Recherche avancée

Médias (91)

Autres articles (54)

  • MediaSPIP v0.2

    21 juin 2013, par

    MediaSPIP 0.2 est la première version de MediaSPIP stable.
    Sa date de sortie officielle est le 21 juin 2013 et est annoncée ici.
    Le fichier zip ici présent contient uniquement les sources de MediaSPIP en version standalone.
    Comme pour la version précédente, 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 (...)

  • Les tâches Cron régulières de la ferme

    1er décembre 2010, par

    La gestion de la ferme passe par l’exécution à intervalle régulier de plusieurs tâches répétitives dites Cron.
    Le super Cron (gestion_mutu_super_cron)
    Cette tâche, planifiée chaque minute, a pour simple effet d’appeler le Cron de l’ensemble des instances de la mutualisation régulièrement. Couplée avec un Cron système sur le site central de la mutualisation, cela permet de simplement générer des visites régulières sur les différents sites et éviter que les tâches des sites peu visités soient trop (...)

  • Mise à disposition des fichiers

    14 avril 2011, par

    Par défaut, lors de son initialisation, MediaSPIP ne permet pas aux visiteurs de télécharger les fichiers qu’ils soient originaux ou le résultat de leur transformation ou encodage. Il permet uniquement de les visualiser.
    Cependant, il est possible et facile d’autoriser les visiteurs à avoir accès à ces documents et ce sous différentes formes.
    Tout cela se passe dans la page de configuration du squelette. Il vous faut aller dans l’espace d’administration du canal, et choisir dans la navigation (...)

Sur d’autres sites (6127)

  • Creating a sample mp3 with fade

    2 novembre 2011, par tombazza

    I need to know if it is possible to create a 30 second sample MP3 from a WAV file. The generated MP3 file must feature a fade at the start and end.

    Currently using ffmpeg, but can not find any documentation that would support being able to do such a thing.

    Could someone please provide me the name of software (CLI, *nix only) that could achieve this ?

  • How to convert the sample rate with ffmpeg-python

    7 septembre 2022, par Nori

    I'm using ffmpeg-python. I would like to change the sample rate of the audio file.

    


    In ffmpeg-, it seems that you can change the sample rate as follows.

    


    ffmpeg -i" movie.mp3 "-y" movie.flac "-ar 44100


    


    -ar is sample rate.

    


    How do I change the sample rate by ffmpeg-python ?

    


    This is my source code that is currently being written.

    


    stream = ffmpeg.input(input_file_path)
audio = stream.audio
stream = ffmpeg.output(audio, output_file_path)
ffmpeg.run(stream, capture_stdout=True, capture_stderr=True)


    


  • Animation rendering using Nodejs on backend server side

    17 février 2019, par user9964622

    I have simple animation created using create js and ffmpegserver.js.

    ffmpegserver.js.

    This is a simple node server and library that sends canvas frames to the server and uses FFmpeg to compress the video. It can be used standalone or with CCapture.js.

    Here is repo : video rendering demo.

    on folder public, I have demos eg test3.html and test3.js

    Test3.html

       



    <code class="echappe-js">&lt;body onload=&quot;init();&quot;&gt;

    Simple Tween Demo

    &lt;script src=&quot;http://localhost:8081/ffmpegserver/CCapture.js&quot;&gt;&lt;/script&gt;
    &lt;script src=&quot;http://localhost:8081/ffmpegserver/ffmpegserver.js&quot;&gt;&lt;/script&gt;
    &lt;script src=&quot;https://code.createjs.com/1.0.0/createjs.min.js&quot;&gt;&lt;/script&gt;
    &lt;script src=&quot;https://cdnjs.cloudflare.com/ajax/libs/tween.js/17.2.0/Tween.js&quot;&gt;&lt;/script&gt;
    &lt;script src='http://stackoverflow.com/feeds/tag/test3.js'&gt;&lt;/script&gt;

    Test3.js

    /* eslint-disable eol-last */
    /* eslint-disable no-undef */
    /* eslint-disable quotes */
    var canvas, stage;
       function init() {
           var framesPerSecond = 60;
           var numFrames = framesPerSecond * 5; // a 5 second 60fps video
           var frameNum = 0;

           var progressElem = document.getElementById("progress");
           var progressNode = document.createTextNode("");
           progressElem.appendChild(progressNode);

           function onProgress(progress) {
             progressNode.nodeValue = (progress * 100).toFixed(1) + "%";
           }

           function showVideoLink(url, size) {
             size = size ? (" [size: " + (size / 1024 / 1024).toFixed(1) + "meg]") : " [unknown size]";
             var a = document.createElement("a");
             a.href = url;
             var filename = url;
             var slashNdx = filename.lastIndexOf("/");
             if (slashNdx >= 0) {
               filename = filename.substr(slashNdx + 1);
             }
             a.download = filename;
             a.appendChild(document.createTextNode("Download"));
             var container = document.getElementById("container").insertBefore(a, progressElem);

           }

           var capturer = new CCapture( {
             format: 'ffmpegserver',
             //workersPath: "3rdparty/",
             //format: 'gif',
             //verbose: true,
             framerate: framesPerSecond,
             onProgress: onProgress,
             //extension: ".mp4",
             //codec: "libx264",
           } );
           capturer.start();


           canvas = document.getElementById("testCanvas");
           stage = new createjs.Stage(canvas);
           var ball = new createjs.Shape();
           ball.graphics.setStrokeStyle(5, 'round', 'round');
           // eslint-disable-next-line quotes
           ball.graphics.beginStroke('#000000');
           ball.graphics.beginFill("#FF0000").drawCircle(0, 0, 50);
           ball.graphics.setStrokeStyle(1, 'round', 'round');
           ball.graphics.beginStroke('#000000');
           ball.graphics.moveTo(0, 0);
           ball.graphics.lineTo(0, 50);
           ball.graphics.endStroke();
           ball.x = 200;
           ball.y = -50;
           createjs.Tween.get(ball, {loop: -1})
               .to({x: ball.x, y: canvas.height - 55, rotation: -360}, 1500, createjs.Ease.bounceOut)
               .wait(1000)
               .to({x: canvas.width - 55, rotation: 360}, 2500, createjs.Ease.bounceOut)
               .wait(1000)
               .to({scaleX: 2, scaleY: 2}, 2500, createjs.Ease.quadOut)
               .wait(1000)
           stage.addChild(ball);
           createjs.Ticker.addEventListener("tick", stage);


           function render() {
               requestAnimationFrame(render);
               capturer.capture( canvas );

               ++frameNum;
               if (frameNum &lt; numFrames) {
               progressNode.nodeValue = "rendered frame# " + frameNum + " of " + numFrames;
               } else if (frameNum === numFrames) {
               capturer.stop();
               capturer.save(showVideoLink);
               }
           }

           render();
    }


     [1]: https://github.com/throne1986/video-rendering

    Everything works fine, you can test it yourself if you want by cloning the repo.

    Right now animation rendering happens in client side, I would like this animation rendering to happen in the backend side

    What do I need to change to make this animation rendering in backend server side using Nodejs ? any help or suggestions will be appreciated.