Recherche avancée

Médias (1)

Mot : - Tags -/Christian Nold

Autres articles (54)

  • Amélioration de la version de base

    13 septembre 2013

    Jolie sélection multiple
    Le plugin Chosen permet d’améliorer l’ergonomie des champs de sélection multiple. Voir les deux images suivantes pour comparer.
    Il suffit pour cela d’activer le plugin Chosen (Configuration générale du site > Gestion des plugins), puis de configurer le plugin (Les squelettes > Chosen) en activant l’utilisation de Chosen dans le site public et en spécifiant les éléments de formulaires à améliorer, par exemple select[multiple] pour les listes à sélection multiple (...)

  • Emballe médias : à quoi cela sert ?

    4 février 2011, par

    Ce plugin vise à gérer des sites de mise en ligne de documents de tous types.
    Il crée des "médias", à savoir : un "média" est un article au sens SPIP créé automatiquement lors du téléversement d’un document qu’il soit audio, vidéo, image ou textuel ; un seul document ne peut être lié à un article dit "média" ;

  • Menus personnalisés

    14 novembre 2010, par

    MediaSPIP utilise le plugin Menus pour gérer plusieurs menus configurables pour la navigation.
    Cela permet de laisser aux administrateurs de canaux la possibilité de configurer finement ces menus.
    Menus créés à l’initialisation du site
    Par défaut trois menus sont créés automatiquement à l’initialisation du site : Le menu principal ; Identifiant : barrenav ; Ce menu s’insère en général en haut de la page après le bloc d’entête, son identifiant le rend compatible avec les squelettes basés sur Zpip ; (...)

Sur d’autres sites (5570)

  • Node 18 or Node 20 break ffmpeg (in google cloud functions -> ffprobe was killed with signal SIGSEGV)

    10 janvier 2024, par user20206929

    Please see below, the code is working on node js 16, but not when upgrading to node 18 or 20.

    


    const ffmpeg = require("fluent-ffmpeg");

// Following is inside a .https.onRequest Google Cloud function with enough memory

try {
  const duration = new Promise((resolve, reject) => {
  ffmpeg.ffprobe(videoUrl, async (err, metadata) => {
    if (err) {
      if (res.headersSent) {
        console.error("Response already sent");
        return;
      } else {
        console.log("Metadata:", metadata);
        console.log("err: " + err);
        res.status(400).send("Error getting video metadata");
        return;
      }
    }
  const duration = metadata.format.duration;
  console.log("video duration in second: " + duration);
  resolve(duration);
  });
});
  videoDuration = await duration;
} catch (err) {
  console.log(err);
  throw err;
}


    


    When upgrading to node 18/20 (No other change than upgrading node), the error "ffprobe not found" appears.

    


    But setting the path manually using ffmpeg.setFfprobePath(ffprobePath) ;
trigger the error : Error : ffprobe was killed with signal SIGSEGV

    


    So it seem its a permissions issue.

    


    However, I tried a lot of different solutions, none of them made this work.
For instance i tried to download manually the ffprobe from the official website https://ffbinaries.com/downloads. Then manually add it to the code.

    


    I tried to use https://www.npmjs.com/package/@ffprobe-installer/ffprobe or others package like https://www.npmjs.com/package/ffprobe-static

    


    I also tried to download the ffprobe file to the temporary folder of google cloud, and change the permission of this folder.

    


    All of those was doing the same error.

    


    None of what i could think of made any difference.

    


    Please help because i need to update node 16 to 18 or 20 before google remove node 16 on january 31 2024 and for now i don't see a solution.

    


    I also looked for other solution to get this duration from a video file url, but using ffmpeg seem to be the only one that should work out of the box. As it is working on node 16.

    


    Thank you,

    


    UPDATE - 11/26/2023

    


    GCP Functions NodeJS 16 runtime uses Ubuntu 18.04 with FFMpeg installed.
NodeJS 18/20 use Ubuntu 22.04, and Google decided not to include FFMpeg.

    


    https://cloud.google.com/functions/docs/runtime-support#node.js
https://cloud.google.com/functions/docs/reference/system-packages

    


    No workaround or solutions found as of now

    


    UPDATE - 01/10/2024

    


    Google added back ffmpeg to latest version, this is working as before now.

    


  • Anomalie #3167 : redirection 301 d’anciennes URLs en .php3 ne fonctionne pas

    22 février 2014, par cedric -

    Aucun bug du côté de SPIP, mais une mauvaise compréhension des Rewrite Rules ici :
    - Les Règles de ré-écritures sont lues les une après les autre et s’enchainent pour modifier l’URL : donc ici la première, celle de SPIP, transforme rubrique.php3 en rubrique.php ce qui ne matche plus ta règle qui arrive après
    - La règle de ré-écriture porte sur l’URL, pas sur la query-string. Donc la partie ?id_(rubrique|article)=$ ne matchera jamais car cela fait partie de la query-string
    - dans ta règle complète le R=301 par un skip si tu veux éviter que les règles qui suivent ne s’appliquent aussi [R=301,skip=100] par exemple

    Une ressource utile pour s’y retrouver dans les RewriteRules : http://borkweb.com/story/apache-rewrite-cheatsheet
    Et aussi la base : https://httpd.apache.org/docs/current/mod/mod_rewrite.html

  • FFmpeg keep framerate of input video despite overlay on color source

    12 mai 2022, par Peter
      

    • FFmpeg can overlay (docs) videos like this :
    • 


    


    ffmpeg -i inputA_60fps.mp4 -i inputB_60fps.mp4 -filter_complex "[0:v] [1:v] overlay=shortest=1" output1.mp4

    


    -> The frame rate of output1.mp4 is automatically the same as that of the inputs (60). I like this.

    


      

    • FFmpeg can also overlay on a color (docs) source like this :
    • 


    


    ffmpeg -i input_60fps.mp4 -filter_complex "color=c=black [c]; [c] [0:v] overlay=shortest=1" output2.mp4

    


    -> The frame rate of output2.mp4 is always 25, because the default frame rate of the color source is 25, even though the input has a frame rate of 60. I don't like this.

    


      

    • The color frame rate can be specified explicitly like this :
    • 


    


    ffmpeg -i input_60fps.mp4 -filter_complex "color=c=black:r=30 [c]; [c] [0:v] overlay=shortest=1" output3.mp4

    


    -> But then the frame rate of output3.mp4 is always that fixed value 30. I don't like this.

    


    Question : How can the output frame rate instead automatically use the same frame rate as the input again ?