Advanced search

Medias (91)

Other articles (46)

  • Installation en mode ferme

    4 February 2011, by

    Le mode ferme permet d’héberger plusieurs sites de type MediaSPIP en n’installant qu’une seule fois son noyau fonctionnel.
    C’est la méthode que nous utilisons sur cette même plateforme.
    L’utilisation en mode ferme nécessite de connaïtre un peu le mécanisme de SPIP contrairement à la version standalone qui ne nécessite pas réellement de connaissances spécifique puisque l’espace privé habituel de SPIP n’est plus utilisé.
    Dans un premier temps, vous devez avoir installé les mêmes fichiers que l’installation (...)

  • Multilang : améliorer l’interface pour les blocs multilingues

    18 February 2011, by

    Multilang est un plugin supplémentaire qui n’est pas activé par défaut lors de l’initialisation de MediaSPIP.
    Après son activation, une préconfiguration est mise en place automatiquement par MediaSPIP init permettant à la nouvelle fonctionnalité d’être automatiquement opérationnelle. Il n’est donc pas obligatoire de passer par une étape de configuration pour cela.

  • MediaSPIP v0.2

    21 June 2013, by

    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 (...)

On other websites (6686)

  • Revision 30164: Code mort bis

    24 July 2009, by kent1@… — Log

    Code mort bis

  • Revision 4210: mini bug

    18 October 2010, by kent1 — Log

    mini bug

  • FFmpeg error with ffmpeg.FS("readfile", "output.mp4"). trying to get ffmpeg to work in the react app

    21 June 2024, by Paul Tham
     const stackVideos = useCallback(
    async (video1) => {
      try {
        console.log("Fetching video2 from storage...");
        const video2Ref = ref(storage, "video2.mp4");
        const video2Url = await getDownloadURL(video2Ref);
        const video2Blob = await (await fetch(video2Url)).blob();

        console.log("Writing video1 to FFmpeg FS...");
        await ffmpeg.FS("writeFile", "video1.mp4", await fetchFile(video1));

        console.log("Writing video2 to FFmpeg FS...");
        await ffmpeg.FS("writeFile", "video2.mp4", await fetchFile(video2Blob));

        console.log("Files in FFmpeg FS after write:");
        const files = await ffmpeg.FS("readdir", "/");
        console.log(files);

        const { start, end } = inputs[0];
        const startSeconds = new Date(`1970-01-01T${start}Z`).getTime() / 1000;
        const endSeconds = new Date(`1970-01-01T${end}Z`).getTime() / 1000;
        const duration = endSeconds - startSeconds;

        console.log("Running FFmpeg command...");
        await ffmpeg.run(
          "-i",
          "video1.mp4",
          "-ss",
          startSeconds.toString(),
          "-t",
          duration.toString(),
          "-i",
          "video2.mp4",
          "-filter_complex",
          "[0:v]scale=1080:-1[v1];[1:v]scale=-1:1920/2[v2scaled];[v2scaled]crop=1080:1920/2[v2cropped];[v1][v2cropped]vstack=inputs=2,scale=1080:1920[vid]",
          "-map",
          "[vid]",
          "-map",
          "0:a",
          "-c:v",
          "libx264",
          "-crf",
          "23",
          "-preset",
          "veryfast",
          "-shortest",
          "output1.mp4"
        );

        console.log("Files in FFmpeg FS after run:");
        const filesAfterRun = await ffmpeg.FS("readdir", "/");
        console.log(filesAfterRun);

        console.log("Reading output1.mp4 from FFmpeg FS...");
        const data = await ffmpeg.FS("readfile", "output1.mp4");
        console.log("after the FS readfile");
        const url = URL.createObjectURL(
          new Blob([data.buffer], { type: "video/mp4" })
        );
        setStackedVideo(url);
        setOutputFileReady(true); // Mark output file as ready
      } catch (err) {
        console.error("FFmpeg error output:", err);
        setError(`FFmpeg run error: ${err.message}`);
        setIsProcessing(false);
      }
    },
    [inputs]
  );


    


    My error seems to be stemming from this line:

    


     const data = await ffmpeg.FS("readfile", "output1.mp4");


    


    Seeing the ffmpeg.wasm documentation i thought the functions for some of the functions had changed, but when I changed it, it seemed like they did not recognise the new functions. Sometimes this will also give me some other errors like worker.js which I dont understand enough to debug this myself.

    


    words word words words words words word words words wordswords word words words wordswords word words words wordswords word words words wordswords word words words wordswords word words words words