Recherche avancée

Médias (16)

Mot : - Tags -/mp3

Autres articles (59)

  • Personnaliser en ajoutant son logo, sa bannière ou son image de fond

    5 septembre 2013, par

    Certains thèmes prennent en compte trois éléments de personnalisation : l’ajout d’un logo ; l’ajout d’une bannière l’ajout d’une image de fond ;

  • Participer à sa traduction

    10 avril 2011

    Vous pouvez nous aider à améliorer les locutions utilisées dans le logiciel ou à traduire celui-ci dans n’importe qu’elle nouvelle langue permettant sa diffusion à de nouvelles communautés linguistiques.
    Pour ce faire, on utilise l’interface de traduction de SPIP où l’ensemble des modules de langue de MediaSPIP sont à disposition. ll vous suffit de vous inscrire sur la liste de discussion des traducteurs pour demander plus d’informations.
    Actuellement MediaSPIP n’est disponible qu’en français et (...)

  • MediaSPIP Core : La Configuration

    9 novembre 2010, par

    MediaSPIP Core fournit par défaut trois pages différentes de configuration (ces pages utilisent le plugin de configuration CFG pour fonctionner) : une page spécifique à la configuration générale du squelettes ; une page spécifique à la configuration de la page d’accueil du site ; une page spécifique à la configuration des secteurs ;
    Il fournit également une page supplémentaire qui n’apparait que lorsque certains plugins sont activés permettant de contrôler l’affichage et les fonctionnalités spécifiques (...)

Sur d’autres sites (5946)

  • How to install Ffmpeg fluent in LAMBDA ?

    9 octobre 2020, par Jhony code

    Hi, can you help how did you set up the library (node-fluent-ffmpeg) in a lambda function correctly ?

    


    Because i already set up the :

    


      

    • Serverless file with it's layer parameters
    • 


    • Uploaded the binaries to the lambda function as a layer
    • 


    • Already set up the FFPROBE_PATH AND FFMPEG_PATH from the lambda function
    • 


    


    Also the weird thing is that : the lambda function just finish working, like sending a normal response.

    


    https://user-images.githubusercontent.com/35440957/95387637-ff99a580-08be-11eb-9fc9-1498aea2e2c1.png

    


    I mean also if you could show me step by step how did you make it work in a lambda function ?

    


    You will see the following example of how i have everything setup and it still does not work :

    


    1- This is from the lambda console

    


    https://user-images.githubusercontent.com/35440957/95386867-ee03ce00-08bd-11eb-91ae-29b45bd90471.png

    


    https://user-images.githubusercontent.com/35440957/95386217-f60f3e00-08bc-11eb-9fd8-b51d1b04a81e.png

    


    2- My json dependencies

    


     "dependencies": {
    "aws-sdk": "^2.764.0",
    "aws-serverless-express": "^3.3.8",
    "fluent-ffmpeg": "^2.1.2",
    "lambduh-execute": "^1.3.0"
  }


    


    3- My serverless file

    


    `service: functionName

provider:
  name: aws
  runtime: nodejs12.x
  memorySize: 3008
  timeout: 300
  stage: live
  region: us-east-1
  environment:
    FFMPEG_PATH: /opt/ffmpeg/ffmpeg
    FFPROBE_PATH: /opt/ffmpeg/ffprobe

functions:
  api:
    handler: lambda.handler
    events:
      - s3: ${self:custom.bucket}
    layers:
      - { Ref: FfmpegLambdaLayer }

layers:
  ffmpeg:
    path: layer

custom:
  bucket: buckename



    


    4- The directory of the layer

    


    https://user-images.githubusercontent.com/35440957/95386502-6918b480-08bd-11eb-95e6-1b0b78f3a230.png

    


    5- Javascript file

    


    
const fs = require("fs");
const AWS = require("aws-sdk");
const ffmpeg = require("fluent-ffmpeg");
const s3 = new AWS.S3();

exports.handler = async (event, context, callback) => {

ffmpeg({
        source: `**Object file which i already verified it exists**`
      })
        .on("filenames", async (filenames) => {
          console.log("Uploading please wait");
        })
        .on("error", function (err) {
          console.log("Error in filenames section: " + JSON.stringify(err));
        })
        .on("end", function () {
          console.log("Screenshots taken");
        })
        .screenshots({
          count: 10,
          folder: "tmp/",
          filename: "thumbnail-at-%i.png",
          size: "1600x900",
        })
        .on("end", function (stdout, stderr) {


        })
        .on("error", function (err) {
          console.log("Error writing video to disk: " + JSON.stringify(err));
          throw "An error: " + err.message;
        });

};



    


    Expected results

    


    The dependecy must work as expected in a AWS lambda function.

    


    Observed results

    


    When using enviroment variables

    


    https://user-images.githubusercontent.com/35440957/95548905-154cbf00-09d4-11eb-8f46-f06cd012b05b.png

    


    When not using enviroment variables

    


    Lambda function just finish it's job without showing any log (Error) messages
In the cloudwatch console it just show the log that lambda finished de function succesfully (Not the expected from the dependency)

    


    I already used this dependecy locally, and it works ! but in LAMBDA it is too hard

    


    Checklist

    


      

    • [ X] I have read the FAQ
    • 


    • [ X] I have included full stderr/stdout output from ffmpeg
    • 


    • [ X] I have included the binaries from the static build and deployed it to the lambda function
    • 


    • [ X] I have set the enviroment variables
FFMPEG_PATH : /opt/ffmpeg/ffmpeg
FFPROBE_PATH : /opt/ffmpeg/ffprobe
    • 


    


    Version information

    


      

    • fluent-ffmpeg version : ^2.1.2
    • 


    • ffmpeg version or build : ffmpeg-git-20190925-amd64-static.tar.xz
    • 


    • OS : Lambda (Linux enviroment) / Node 12.x
    • 


    


  • What do these two parts of libavcodec/h263data.h do exactly ?

    5 avril 2013, par Chris Lindgren

    Below are two segments of code from the FFMPEG library, specifically located here : libavcodec/h263data.h (http://ffmpeg.org/doxygen/0.6/h263data_8h-source.html).

    I would like to know more about how these two segments operate in the larger context of the codec library. Below, after these examples, I describe my understanding thus far and provide two clearer questions that I would like answers on.

    Thank you for any help !

    EXAMPLE 1

    00035 /* intra MCBPC, mb_type = (intra), then (intraq) */
    00036 const uint8_t ff_h263_intra_MCBPC_code[9] = { 1, 1, 2, 3, 1, 1, 2, 3, 1 };
    00037 const uint8_t ff_h263_intra_MCBPC_bits[9] = { 1, 3, 3, 3, 4, 6, 6, 6, 9 };

    AND EXAMPLE 2

    00039 /* inter MCBPC, mb_type = (inter), (intra), (interq), (intraq), (inter4v) */
    00040 /* Changed the tables for interq and inter4v+q, following the standard ** Juanjo ** */
    00041 const uint8_t ff_h263_inter_MCBPC_code[28] = {
    00042     1, 3, 2, 5,
    00043     3, 4, 3, 3,
    00044     3, 7, 6, 5,
    00045     4, 4, 3, 2,
    00046     2, 5, 4, 5,
    00047     1, 0, 0, 0, /* Stuffing */
    00048     2, 12, 14, 15,
    00049 };

    I understand that we're looking at a small part of the larger library of compression algorithms that affect orthogonal schemes, which predict the “correct,” or more aptly put, "original" inter- or intra-motion vectors, which are represented here in the names "ff_h263_inter_MCBPC_code," "ff_h263_intra_MCBPC_code," and "ff_h263_intra_MCBPC_bits."

    I know that the names in these two blocks of code demarcate the following :

    1. const refers to the declaration of a read only variable that can still be used outside of its scope like any other variable. The difference, stated in another way, is that the values in this array cannot be changed by any methods called outside of itself.

    2. uint8_t is an unsigned integer with a length of 8 bits that is part of a C99 standard, which is called "fixed width integer types." This particular type, an “exact width integer,” computes a range of signed or unsigned bits with a minimum value of 0 and a maximum value of 8, (i.e., the 8x8 macroblocks), which guarantees this number of bits across platforms, whether, let's say, 32-bit or 64-bit operating systems. (I researched this bit here : “Fixed width integer types” http://en.wikipedia.org/wiki/Stdint.h#stdint.h)

    3. MCBPC refers to Macroblock Type & Coded Block Pattern for Chrominance, but I don't fully understand the exact role of these particular arrays are in the scheme of the file and libavcodec. I understand more conceptually, than I do the details/number values defined in these examples.

    So, considering this, here's what I would like to know more about :

    1. Is my understanding, thus far, off in any way ?

    2. Can someone help breakdown what each code segment does ? more specifically, what do these number values signify/do in each case ?

    3. What does "Stuffing" mean ?

    Thank you, again, for any help in this matter !

  • ffmpeg crashes on crossfades between 3 clips if 2 clips coming from same input file [closed]

    14 avril 2020, par Erik

    I observed that ffmpeg 4.2.2 (macOS) crashes in particular cases of crossfades between clips, if one clip comes from file 1.dv, and two clips are cut out of file 2.dv, as shown below :

    



    ffmpeg -f lavfi -i color=black:size=720x576:duration=11:rate=25 -i 1.dv -i 2.dv -filter_complex "\
    [1:v]trim=5:10,setpts=expr=PTS-STARTPTS,yadif,fade=alpha=1:d=2:st=3:type=out,setpts=expr=PTS-STARTPTS,fifo[s5];\
    [2:v]split=2[s7][s8];\
    [s7]trim=5:10,setpts=expr=PTS-STARTPTS,yadif,fade=alpha=1:d=2:type=in,fade=alpha=1:d=2:st=6:type=out,setpts=expr=PTS-STARTPTS+(3/TB),fifo[s15];\
    [s8]trim=12:17,setpts=expr=PTS-STARTPTS,yadif,fade=alpha=1:d=2:type=in,setpts=expr=PTS-STARTPTS+(6/TB),fifo[s22];\
    [0:v][s5]overlay=eof_action=repeat[s6];\
    [s6][s15]overlay=eof_action=repeat[s16];\
    [s16][s22]overlay=eof_action=repeat[s24];\
    [1:a]atrim=5:10,asetpts=expr=PTS-STARTPTS[s26];\
    [2:a]asplit=2[s27][s28];\
    [s27]atrim=5:10,asetpts=expr=PTS-STARTPTS[s30];\
    [s28]atrim=12:17,asetpts=expr=PTS-STARTPTS[s33];\
    [s26][s30]acrossfade=d=2[s31];\
    [s31][s33]acrossfade=d=2[s36]" \
     -map "[s24]" -map "[s36]" -ab 128k -acodec aac -crf 23 -movflags faststart -preset medium -tune film -vcodec libx264 -aspect 1024:576 out.mp4 -y


    



    The order makes a difference : if the two clips from 2.dv are used first and then the clip from 1.dv is appended, everything works fine. Also, if all clips are coming from different files.

    



    ffmpeg 3.4.6 (ubuntu 18.04) shows no issues in any case.

    



    A self-compiled ffmpeg version N-97322-gb1699f4 (commit 2020-04-13) works with short clips as above, but crashes if one of the two clips taken from 2.dv is getting longer. In my tests 1500 frames (64 sec) is OK, 1700 (68 sec) leads to a segmentation fault. That is, if you replace in the command line above :

    



      

    • [s7]trim=5:10... -> [s7]trim=0:68 and accordingly
    • 


    • [s27]atrim=5:10... -> [s27]atrim=0:68
    • 


    



    Interestingly, the length of the clip taken from 1.dv does not play a role.

    



    The ffmpeg output shows about 20 times :

    



    frame=    0 fps=0.0 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x  


    



    before it continues (seg fault case) :

    



    frame=    4 fps=0.3 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
frame=   24 fps=1.6 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
frame=   25 fps=1.5 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
frame=   34 fps=1.9 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
frame=   36 fps=2.0 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
frame=   39 fps=2.1 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
frame=   40 fps=2.0 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
frame=   40 fps=2.0 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
frame=   40 fps=1.9 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    



    



    success case :

    



    frame=    5 fps=0.4 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
frame=   42 fps=3.2 q=28.0 size=       0kB time=00:00:00.00 bitrate=N/A speed=   0x    
frame=   53 fps=3.9 q=28.0 size=       0kB time=00:00:00.36 bitrate=   2.9kbits/s speed=0.0264x    
frame=   65 fps=4.6 q=28.0 size=       0kB time=00:00:00.84 bitrate=   1.2kbits/s speed=0.0594x 
...   


    



    Slightly older versions included in the newest MacOS builds from zeranoe.com (git-2020-04-13-59e3a9a) and evermeet.cx (N-97308-g14dd0a9057-tessus, from 2020-04-12) are working nicely - also on my production cases (longer clips).

    



    Any feedback would be appreciated !