Recherche avancée

Médias (0)

Mot : - Tags -/masques

Aucun média correspondant à vos critères n’est disponible sur le site.

Autres articles (70)

  • MediaSPIP version 0.1 Beta

    16 avril 2011, par

    MediaSPIP 0.1 beta est la première version de MediaSPIP décrétée comme "utilisable".
    Le fichier zip ici présent contient uniquement les sources de MediaSPIP en version standalone.
    Pour avoir une installation fonctionnelle, 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 (...)

  • MediaSPIP 0.1 Beta version

    25 avril 2011, par

    MediaSPIP 0.1 beta is the first version of MediaSPIP proclaimed as "usable".
    The zip file provided here only contains the sources of MediaSPIP in its standalone version.
    To get a working installation, you must manually install all-software dependencies on the server.
    If you want to use this archive for an installation in "farm mode", you will also need to proceed to other manual (...)

  • 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 ;

Sur d’autres sites (11535)

  • Anomalie #4589 (Nouveau) : PHP8 : Warning Trying to access array offset on value of type bool in i...

    25 octobre 2020, par Franck D

    Hello :)

    Windows 10 (1909)

    Laragon avec :
    Php 8.0.0RC2 (VS16 x64 Non Thread Safe) https://windows.php.net/qa
    Apache 2.4.46 Win64 avec mod_fcgid-2.3.10-win64-VS16 https://www.apachelounge.com/download/
    Mysql 8.0.22 (mysql-8.0.22-winx64.zip) https://dev.mysql.com/downloads/mysql/
    phpMyAdmin 5.0.4 https://www.phpmyadmin.net

    Installation en MySQL
    Prefix des tables à l’installation : "test2"
    SPIP 3.3.0-dev GIT [master : 30650cb8]

    Je fais l’activation des révisions partout, une fois avoir fait une modif dans un documents, un article, une rubrique par exemple, j’ai ce warning qui apparait lorsque je consulte la révisions en faisant un clique dessus dans la page d’accueil du site
    Warning : Trying to access array offset on value of type bool in C :\laragon\www\test2\plugins-dist\revisions\inc\revisions.php on line 762

    A savoir que pour un article, j’ai même Warning : detecter_liens_blocs() : Argument #1 ($t) must be passed by reference, value given in C :\laragon\www\test2\plugins-dist\textwheel\engine\textwheel.php on line 445 qui se rajoute, mais comme j’ai déjà fait un ticket concernant ce warning, il sera sans doute résolut en même temps :)

  • where is ffmpeg wasm output directory and how to access the files ?

    15 juin 2021, par Fabiotk

    I have the following code where I convert a video file into HLS stream format. I'm doing this in browser javascript so I don't load a lot of processing into the server. Now, the code seems to be working fine according to the logs however I can't see the output. The code is :

    


    <code class="echappe-js">&lt;script&gt;&amp;#xA;   const { createFFmpeg, fetchFile } = FFmpeg;&amp;#xA;   const ffmpeg = createFFmpeg({&amp;#xA;       corePath: &amp;#x27;https://unpkg.com/@ffmpeg/core@0.10.0/dist/ffmpeg-core.js&amp;#x27;,&amp;#xA;       log: true,&amp;#xA;   });&amp;#xA;   &amp;#xA;   ffmpeg.setLogger(({ type, message }) =&gt; {&amp;#xA;       console.log(type, message);  &amp;#xA;   });&amp;#xA;&amp;#xA;   const transcode = async ({ target: { files } }) =&gt; {&amp;#xA;       console.log(&amp;#x27;Running ffmpeg&amp;#x27;)&amp;#xA;       const { name } = files[0];&amp;#xA;       await ffmpeg.load();&amp;#xA;       ffmpeg.FS(&amp;#x27;writeFile&amp;#x27;, name, await fetchFile(files[0]));&amp;#xA;       await ffmpeg.run(&amp;#x27;-i&amp;#x27;, name, &amp;#x27;-hls_time&amp;#x27;, &amp;#x27;10&amp;#x27;, &amp;#x27;-hls_playlist_type&amp;#x27;, &amp;#x27;vod&amp;#x27;, &amp;#x27;-hls_segment_filename&amp;#x27;, &amp;#x27;part_%03d.ts&amp;#x27;, &amp;#x27;master.m3u8&amp;#x27;);&amp;#xA;&amp;#xA;   }&amp;#xA;   document.getElementById(&amp;#x27;uploader&amp;#x27;).addEventListener(&amp;#x27;change&amp;#x27;, transcode);&amp;#xA;&lt;/code&gt;&lt;/pre&gt;&amp;#xA;   &amp;#xA;&lt;p&gt;My question is, where are the &lt;code&gt;part_%03d.ts&lt;/code&gt; files (part_001.ts, etc)? I want to loop through every one of them and pass their content to another function. How to do this?&lt;/p&gt;&amp;#xA;
  • unable to access a class function from its object instance

    23 mars 2021, par Alp4x

    I'm unable to access a class function from its object instance - the object is being initialized properly and the constructor runs perfectly as well - just not able to explicitly call a function from that class

    &#xA;

    Code for my FFmpeg class :

    &#xA;

    module.exports = class FFmpeg {&#xA;  constructor(rtpParameters) {&#xA;    this._rtpParameters = rtpParameters;&#xA;    this._process = undefined;&#xA;    this._observer = new EventEmitter();&#xA;    this._createProcess();&#xA;  }&#xA;&#xA;  _createProcess() {&#xA;    const sdpString = createSdpText(this._rtpParameters);&#xA;    const sdpStream = convertStringToStream(sdpString);&#xA;&#xA;    console.log("createProcess() [sdpString:%s]", sdpString);&#xA;&#xA;    this._process = child_process.spawn("ffmpeg", this._commandArgs);&#xA;&#xA;    if (this._process.stderr) {&#xA;      this._process.stderr.setEncoding("utf-8");&#xA;&#xA;      this._process.stderr.on("data", (data) =>&#xA;        console.log("ffmpeg::process::data [data:%o]", data)&#xA;      );&#xA;    }&#xA;&#xA;    if (this._process.stdout) {&#xA;      this._process.stdout.setEncoding("utf-8");&#xA;&#xA;      this._process.stdout.on("data", (data) =>&#xA;        console.log("ffmpeg::process::data [data:%o]", data)&#xA;      );&#xA;    }&#xA;&#xA;    this._process.on("message", (message) =>&#xA;      console.log("ffmpeg::process::message [message:%o]", message)&#xA;    );&#xA;&#xA;    this._process.on("error", (error) =>&#xA;      console.error("ffmpeg::process::error [error:%o]", error)&#xA;    );&#xA;&#xA;    this._process.once("close", () => {&#xA;      console.log("ffmpeg::process::close");&#xA;      this._observer.emit("process-close");&#xA;    });&#xA;&#xA;    sdpStream.on("error", (error) =>&#xA;      console.error("sdpStream::error [error:%o]", error)&#xA;    );&#xA;&#xA;    // Pipe sdp stream to the ffmpeg process&#xA;    sdpStream.resume();&#xA;    sdpStream.pipe(this._process.stdin);&#xA;  }&#xA;&#xA;  kill() {&#xA;    console.log("kill() [pid:%d]", this._process.pid);&#xA;    this._process.kill("SIGINT");&#xA;  }&#xA;&#xA;  get _commandArgs() {&#xA;    let commandArgs = [&#xA;      "-loglevel",&#xA;      "debug",&#xA;      "-protocol_whitelist",&#xA;      "pipe,udp,rtp",&#xA;      "-fflags",&#xA;      "&#x2B;genpts",&#xA;      "-f",&#xA;      "sdp",&#xA;      "-i",&#xA;      "pipe:0",&#xA;    ];&#xA;&#xA;    commandArgs = commandArgs.concat(this._videoArgs);&#xA;    commandArgs = commandArgs.concat(this._audioArgs);&#xA;&#xA;    commandArgs = commandArgs.concat([&#xA;      "-flags",&#xA;      "&#x2B;global_header",&#xA;      `${RECORD_FILE_LOCATION_PATH}/${this._rtpParameters.fileName}.webm`,&#xA;    ]);&#xA;&#xA;    console.log("commandArgs:%o", commandArgs);&#xA;&#xA;    return commandArgs;&#xA;  }&#xA;&#xA;  get _videoArgs() {&#xA;    return ["-map", "0:v:0", "-c:v", "copy"];&#xA;  }&#xA;&#xA;  get _audioArgs() {&#xA;    return [&#xA;      "-map",&#xA;      "0:a:0",&#xA;      "-strict", // libvorbis is experimental&#xA;      "-2",&#xA;      "-c:a",&#xA;      "copy",&#xA;    ];&#xA;  }&#xA;};&#xA;

    &#xA;

    My implementation of creation of this class' instance :

    &#xA;

    async startRecord() {&#xA;    if (this._isRecording) return;&#xA;&#xA;    this._isRecording = true;&#xA;    let recordInfo = {};&#xA;    const joinedPeers = this._getJoinedPeers();&#xA;    for (const peer of joinedPeers) {&#xA;      for (const producer of peer.data.producers.values()) {&#xA;        recordInfo[producer.kind] = await this.publishProducerRtpStream(&#xA;          peer,&#xA;          producer&#xA;        );&#xA;        recordInfo.fileName = Date.now().toString();&#xA;&#xA;        peer.data.process = this.getProcess(recordInfo);&#xA;        setTimeout(async () => {&#xA;          console.log(peer.data.process);&#xA;          // I want to call peer.data.process.kill() HERE!&#xA;        }, 4000);&#xA;      }&#xA;    }&#xA;  }&#xA;  async getProcess(recordInfo) {&#xA;    return new FFmpeg(recordInfo);&#xA;  }&#xA;

    &#xA;

    I want to call the kill() function in FFmpeg and it shows undefined. Really don't understand how.

    &#xA;

    Here's the log of the object instance (which doesn't have the "kill" function mentioned anywhere and maybe hence shows that .kill() is undefined)

    &#xA;

    console logging the object created from the class FFmpeg (new FFmpeg)

    &#xA;

    Would greatly appreciate any help.&#xA;Thanks !

    &#xA;