Recherche avancée

Médias (1)

Mot : - Tags -/biographie

Autres articles (111)

  • Script d’installation automatique de MediaSPIP

    25 avril 2011, par

    Afin de palier aux difficultés d’installation dues principalement aux dépendances logicielles coté serveur, un script d’installation "tout en un" en bash a été créé afin de faciliter cette étape sur un serveur doté d’une distribution Linux compatible.
    Vous devez bénéficier d’un accès SSH à votre serveur et d’un compte "root" afin de l’utiliser, ce qui permettra d’installer les dépendances. Contactez votre hébergeur si vous ne disposez pas de cela.
    La documentation de l’utilisation du script d’installation (...)

  • Les notifications de la ferme

    1er décembre 2010, par

    Afin d’assurer une gestion correcte de la ferme, il est nécessaire de notifier plusieurs choses lors d’actions spécifiques à la fois à l’utilisateur mais également à l’ensemble des administrateurs de la ferme.
    Les notifications de changement de statut
    Lors d’un changement de statut d’une instance, l’ensemble des administrateurs de la ferme doivent être notifiés de cette modification ainsi que l’utilisateur administrateur de l’instance.
    À la demande d’un canal
    Passage au statut "publie"
    Passage au (...)

  • Initialisation de MediaSPIP (préconfiguration)

    20 février 2010, par

    Lors de l’installation de MediaSPIP, celui-ci est préconfiguré pour les usages les plus fréquents.
    Cette préconfiguration est réalisée par un plugin activé par défaut et non désactivable appelé MediaSPIP Init.
    Ce plugin sert à préconfigurer de manière correcte chaque instance de MediaSPIP. Il doit donc être placé dans le dossier plugins-dist/ du site ou de la ferme pour être installé par défaut avant de pouvoir utiliser le site.
    Dans un premier temps il active ou désactive des options de SPIP qui ne le (...)

Sur d’autres sites (9181)

  • ffpmeg force overwrite (badly) detected input framerate

    20 juin 2020, par Longoon12000

    I am running IP Webcam on Android which provides an mpjpeg video stream. I have to limit the capture frame rate to 5fps to save on battery.

    


    However ffmpeg will still detect the input stream to be 25 fps, which causes it to be saved in the wrong speed causing timestamps and audio to be desynchronized.

    


    Input #0, mpjpeg, from 'https://***:***@smarthome:8080/video':
  Duration: N/A, bitrate: N/A
    Stream #0:0: Video: mjpeg, yuvj420p(pc, bt470bg/unknown/unknown), 1280x720 [SAR 1:1 DAR 16:9], 25 tbr, 25 tbn, 25 tbc
Input #1, ogg, from 'https://***:***@smarthome:8080/audio.opus':
  Duration: N/A, start: 0.006500, bitrate: N/A
    Stream #1:0: Audio: opus, 48000 Hz, mono, fltp
    Metadata:
      ENCODER         : Lavf58.12.100
[stream_segment,ssegment @ 0x19b49a0] Opening '/mnt/nas/SecurityCamera/2020-06-20_14-26-04.mkv' for writing
Output #0, stream_segment,ssegment, to '/mnt/nas/SecurityCamera/%Y-%m-%d_%H-%M-%S.mkv':
  Metadata:
    encoder         : Lavf58.20.100
    Stream #0:0: Video: mjpeg, yuvj420p(pc, bt470bg/unknown/unknown), 1280x720 [SAR 1:1 DAR 16:9], q=2-31, 25 tbr, 1k tbn, 25 tbc
    Stream #0:1: Audio: opus, 48000 Hz, mono, fltp
    Metadata:
      ENCODER         : Lavf58.12.100
Stream mapping:
  Stream #0:0 -> #0:0 (copy)
  Stream #1:0 -> #0:1 (copy)
Press [q] to stop, [?] for help
[ogg @ 0x1753e00] Thread message queue blocking; consider raising the thread_queue_size option (current value: 8)
frame=    8 fps=7.9 q=-1.0 size=N/A time=00:00:00.49 bitrate=N/A speed=0.489x


    


    As you can see it detects Input #0 to be 25 tbr, 25 tbn, 25 tbc which results in an expected 25 fps, however the fps (shown high right now but it slowly approaching 5fps) is way below 25 which causes the speed to be <1x.

    &#xA;

    I have tried to use -r 5 -i ... and -vsync 2 and different values for -enc_time_base none of which had any impact. From https://trac.ffmpeg.org/ticket/403 I've learned that -r only works on inputs with unknown fps. But my input doesn't have unknown fps, it has the wrong fps.

    &#xA;

    Is there any way to force overwrite the input fps so that I can get a proper speed of 1x and synchronized timestamps and audio ?

    &#xA;

  • ffmpeg running in cloudfunction silently fails/never finishes

    19 juin 2020, par Vojtěch

    I am trying to implement a Cloudfunction which would run ffmpeg on a Google bucket upload. I have been playing with a script based on https://kpetrovi.ch/2017/11/02/transcoding-videos-with-ffmpeg-in-google-cloud-functions.html

    &#xA;&#xA;

    The original script needs little tuning as the library evolved a bit. My current version is here :

    &#xA;&#xA;

    const {Storage} = require(&#x27;@google-cloud/storage&#x27;);&#xA;const storage = new Storage();&#xA;const ffmpeg = require(&#x27;fluent-ffmpeg&#x27;);&#xA;const ffmpeg_static = require(&#x27;ffmpeg-static&#x27;);&#xA;&#xA;console.log("Linking ffmpeg path to:", ffmpeg_static)&#xA;ffmpeg.setFfmpegPath(ffmpeg_static);&#xA;&#xA;exports.transcodeVideo = (event, callback) => {&#xA;    const bucket = storage.bucket(event.bucket);&#xA;    console.log(event);&#xA;    if (event.name.indexOf(&#x27;uploads/&#x27;) === -1) {&#xA;        console.log("File " &#x2B; event.name &#x2B; " is not to be processed.")&#xA;        return;&#xA;    }&#xA;&#xA;    // ensure that you only proceed if the file is newly createdxxs&#xA;    if (event.metageneration !== &#x27;1&#x27;) {&#xA;        callback();&#xA;        return;&#xA;    }&#xA;&#xA;    // Open write stream to new bucket, modify the filename as needed.&#xA;    const targetName = event.name.replace("uploads/", "").replace(/[.][a-z0-9]&#x2B;$/, "");&#xA;    console.log("Target name will be: " &#x2B; targetName);&#xA;&#xA;    const remoteWriteStream = bucket.file("processed/" &#x2B; targetName &#x2B; ".mp4")&#xA;        .createWriteStream({&#xA;            metadata: {&#xA;                //metadata: event.metadata, // You may not need this, my uploads have associated metadata&#xA;                contentType: &#x27;video/mp4&#x27;, // This could be whatever else you are transcoding to&#xA;            },&#xA;        });&#xA;&#xA;    // Open read stream to our uploaded file&#xA;    const remoteReadStream = bucket.file(event.name).createReadStream();&#xA;&#xA;    // Transcode&#xA;    ffmpeg()&#xA;        .input(remoteReadStream)&#xA;        .outputOptions(&#x27;-c:v copy&#x27;) // Change these options to whatever suits your needs&#xA;        .outputOptions(&#x27;-c:a aac&#x27;)&#xA;        .outputOptions(&#x27;-b:a 160k&#x27;)&#xA;        .outputOptions(&#x27;-f mp4&#x27;)&#xA;        .outputOptions(&#x27;-preset fast&#x27;)&#xA;        .outputOptions(&#x27;-movflags frag_keyframe&#x2B;empty_moov&#x27;)&#xA;        // https://github.com/fluent-ffmpeg/node-fluent-ffmpeg/issues/346#issuecomment-67299526&#xA;        .on(&#x27;start&#x27;, (cmdLine) => {&#xA;            console.log(&#x27;Started ffmpeg with command:&#x27;, cmdLine);&#xA;        })&#xA;        .on(&#x27;end&#x27;, () => {&#xA;            console.log(&#x27;Successfully re-encoded video.&#x27;);&#xA;            callback();&#xA;        })&#xA;        .on(&#x27;error&#x27;, (err, stdout, stderr) => {&#xA;            console.error(&#x27;An error occured during encoding&#x27;, err.message);&#xA;            console.error(&#x27;stdout:&#x27;, stdout);&#xA;            console.error(&#x27;stderr:&#x27;, stderr);&#xA;            callback(err);&#xA;        })&#xA;        .pipe(remoteWriteStream, { end: true }); // end: true, emit end event when readable stream ends&#xA;};&#xA;&#xA;

    &#xA;&#xA;

    This version correctly runs and I can see this in logs :

    &#xA;&#xA;

    2020-06-16 21:24:22.606  Function execution took 912 ms, finished with status: &#x27;ok&#x27;&#xA;2020-06-16 21:24:52.902  Started ffmpeg with command: ffmpeg -i pipe:0 -c:v copy -c:a aac -b:a 160k -f mp4 -preset fast -movflags frag_keyframe&#x2B;empty_moov pipe:1&#xA;

    &#xA;&#xA;

    It seems the function execution ends before the actual ffmpeg command, which then never finishes.

    &#xA;&#xA;

    Is there a way to make the ffmpeg "synchronous" or "blocking" so that it finishes before the function execution ?

    &#xA;

  • What encoders/decoders/muxers/demuxers/parsers/filters do I need to enable in FFMpeg for converting an mp4 video to a gif ?

    21 juin 2020, par kostik

    I am building FFmpeg with custom options to reduce the final size of apk file on android. I want just convert a mp4 file to a gif.&#xA;Following is my options specified

    &#xA;

     --disable-everything&#xA; --enable-decoder=mpeg4,mpegvideo,aac,gif,h264&#xA; --enable-parser=aac,mpeg4video,mpegaudio,mpegvideo,gif,h264&#xA; --enable-demuxer=mpegvideo,aac,mov,gif,h264&#xA; --enable-muxer=mp4,gif,mov,h264&#xA; --enable-protocol=file&#xA; --enable-encoder=mpeg4,mov,gif,h264&#xA; --enable-filter=scale,fps,copy,palettegen,vflip,paletteuse,crop&#xA;

    &#xA;

    What other options do i need to add to successfully run this command ?

    &#xA;

    ffmpeg -y -i input.mp4 -vf "fps=15,scale=320:-1:flags=lanczos" -pix_fmt rgb24 output.gif&#xA;

    &#xA;

    or this command

    &#xA;

    ffmpeg -y -i input.mp4 output.gif&#xA;

    &#xA;

    After I added module into Android Studio I run FFmpeg command.&#xA;Iam getting this error :

    &#xA;

    2020-06-21 12:16:09.883 8871-9102/com.example.myapplication W/mobile-ffmpeg: [graph 0 input from stream 0:0 @ 0x7088243f40] sws_param option is deprecated and ignored&#xA;2020-06-21 12:16:09.885 8871-9102/com.example.myapplication W/mobile-ffmpeg: Incompatible pixel format &#x27;rgb24&#x27; for codec &#x27;gif&#x27;, auto-selecting format &#x27;rgb8&#x27;&#xA;2020-06-21 12:16:09.885 8871-9102/com.example.myapplication E/mobile-ffmpeg: Output pad "default" with type video of the filter instance "Parsed_scale_1" of scale not connected to any destination&#xA;2020-06-21 12:16:09.885 8871-9102/com.example.myapplication E/mobile-ffmpeg: Error reinitializing filters!&#xA;2020-06-21 12:16:09.885 8871-9102/com.example.myapplication E/mobile-ffmpeg: Failed to inject frame into filter network: Invalid argument&#xA;2020-06-21 12:16:09.886 8871-9102/com.example.myapplication E/mobile-ffmpeg: Error while processing the decoded data for stream #0:0&#xA;

    &#xA;

    I also tried to include FULL library and it that case everything worked as expected.

    &#xA;

    Thanks for your help.

    &#xA;