Recherche avancée

Médias (91)

Autres articles (24)

  • Mise à jour de la version 0.1 vers 0.2

    24 juin 2013, par

    Explications des différents changements notables lors du passage de la version 0.1 de MediaSPIP à la version 0.3. Quelles sont les nouveautés
    Au niveau des dépendances logicielles Utilisation des dernières versions de FFMpeg (>= v1.2.1) ; Installation des dépendances pour Smush ; Installation de MediaInfo et FFprobe pour la récupération des métadonnées ; On n’utilise plus ffmpeg2theora ; On n’installe plus flvtool2 au profit de flvtool++ ; On n’installe plus ffmpeg-php qui n’est plus maintenu au (...)

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

  • Ecrire une actualité

    21 juin 2013, par

    Présentez les changements dans votre MédiaSPIP ou les actualités de vos projets sur votre MédiaSPIP grâce à la rubrique actualités.
    Dans le thème par défaut spipeo de MédiaSPIP, les actualités sont affichées en bas de la page principale sous les éditoriaux.
    Vous pouvez personnaliser le formulaire de création d’une actualité.
    Formulaire de création d’une actualité Dans le cas d’un document de type actualité, les champs proposés par défaut sont : Date de publication ( personnaliser la date de publication ) (...)

Sur d’autres sites (3341)

  • ffmpeg missing blend filter

    17 juin 2020, par user2927954

    I am working on android project using ffmpeg library. I followed instruction from : https://github.com/guardianproject/android-ffmpeg to build ffmpeg library for android. All are OK.

    



    Now, i am testing filters that corresponding to video filter of this library such as : drawtext, scale, pad, ... Most of them worked fine, but i have problem with "blend" filter.

    



    I try with commands : ffmpeg -i input1.mp4 -i input2.mp4 -filter_complex blend=all_expr='if(eq(mod(X,2),mod(Y,2)),A,B)' -y out.mp4 and recieve error : no such blend filter.

    



    Do you know how i configure to enable this filter ?

    



    Here is the output result :

    



    ffmpeg version 0.11.1 Copyright (c) 2000-2012 the FFmpeg developers
  built on Feb 27 2014 05:23:20 with gcc 4.6 20120106 (prerelease)
  configuration: --arch=arm --cpu=cortex-a8 --target-os=linux --enable-runtime-cpudetect --prefix=/data/data/info.guardianproject.ffmpeg/app_opt --enable-pic --disable-shared --enable-static --cross-prefix=/home/admin/workspace/android-ndk-r9c/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86/bin/arm-linux-androideabi- --sysroot=/home/admin/workspace/android-ndk-r9c/platforms/android-3/arch-arm --extra-cflags='-I../x264 -mfloat-abi=softfp -mfpu=neon' --extra-ldflags=-L../x264 --enable-version3 --enable-gpl --disable-doc --enable-yasm --enable-decoders --enable-encoders --enable-muxers --enable-demuxers --enable-parsers --enable-protocols --enable-filters --enable-avresample --enable-libfreetype --disable-indevs --enable-indev=lavfi --disable-outdevs --enable-hwaccels --enable-ffmpeg --disable-ffplay --disable-ffprobe --disable-ffserver --disable-network --enable-libx264 --enable-zlib --enable-muxer=md5
  libavutil      51. 54.100 / 51. 54.100
  libavcodec     54. 23.100 / 54. 23.100
  libavformat    54.  6.100 / 54.  6.100
  libavdevice    54.  0.100 / 54.  0.100
  libavfilter     2. 77.100 /  2. 77.100
  libswscale      2.  1.100 /  2.  1.100
  libswresample   0. 15.100 /  0. 15.100
  libpostproc    52.  0.100 / 52.  0.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/storage/emulated/0/videokit/in.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 0
    compatible_brands: isom3gp4
    creation_time   : 2014-03-04 08:53:01
  Duration: 00:00:15.10, start: 0.000000, bitrate: 7055 kb/s
    Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1280x720, 6935 kb/s, SAR 65536:65536 DAR 16:9, 17.18 fps, 34.42 tbr, 90k tbn, 180k tbc
    Metadata:
      creation_time   : 2014-03-04 08:53:01
      handler_name    : VideoHandle
    Stream #0:1(eng): Audio: aac (mp4a / 0x6134706D), 16000 Hz, stereo, s16, 128 kb/s
    Metadata:
      creation_time   : 2014-03-04 08:53:01
      handler_name    : SoundHandle
Input #1, mov,mp4,m4a,3gp,3g2,mj2, from '/storage/emulated/0/videokit/7.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2mp41
    creation_time   : 1970-01-01 00:00:00
    encoder         : Lavf53.12.0
    comment         : Courtesy of National Geographic.  Used by Permission.
  Duration: 00:00:04.20, start: 0.000000, bitrate: 1601 kb/s
    Stream #1:0(und): Video: mpeg4 (Simple Profile) (mp4v / 0x7634706D), yuv420p, 320x240 [SAR 1:1 DAR 4:3], 1472 kb/s, 10 fps, 10 tbr, 10 tbn, 10 tbc
    Metadata:
      creation_time   : 1970-01-01 00:00:00
      handler_name    : VideoHandler
    Stream #1:1(und): Audio: aac (mp4a / 0x6134706D), 48000 Hz, stereo, s16, 128 kb/s
    Metadata:
      creation_time   : 1970-01-01 00:00:00
      handler_name    : SoundHandler
No such filter: 'blend'
Error configuring filters.


    



    Thanks

    


  • Anomalie #4374 : Sauvegarde au format SQLite impossible avec les dernières version de MariaDB

    7 novembre 2020, par b b

    Un truc comme ça @marcimat ?

    1. <span class="CodeRay"><span class="line comment">diff --git a/ecrire/req/sqlite_generique.php b/ecrire/req/sqlite_generique.php</span>
    2. <span class="line comment">index 8ed38dc0a5..00d61660ee 100644</span>
    3. <span class="line head"><span class="head">--- </span><span class="filename">a/ecrire/req/sqlite_generique.php</span></span>
    4. <span class="line head"><span class="head">+++ </span><span class="filename">b/ecrire/req/sqlite_generique.php</span></span>
    5. <span class="change"><span class="change">@@</span> -2429,6 +2429,7 <span class="change">@@</span></span> <span class="keyword">function</span> <span class="function">_sqlite_remplacements_definitions_table</span>(<span class="local-variable">$query</span>, <span class="local-variable">$autoinc</span> = <span class="predefined-constant">false</span>) {
    6.          <span class="string"><span class="delimiter">'</span><span class="content">/((char|varchar)</span><span class="delimiter">'</span></span> . <span class="local-variable">$num</span> . <span class="string"><span class="delimiter">'</span><span class="content">\s</span><span class="content">+not</span><span class="content">\s</span><span class="content">+null(</span><span class="content">\s</span><span class="content">+collate</span><span class="content">\s</span><span class="content">+</span><span class="content">\w</span><span class="content">+)?)</span><span class="content">\s</span><span class="content">*$/is</span><span class="delimiter">'</span></span> => <span class="string"><span class="delimiter">"</span><span class="char">\\</span><span class="content">1 DEFAULT ''</span><span class="delimiter">"</span></span>,
    7.          <span class="string"><span class="delimiter">'</span><span class="content">/(datetime</span><span class="content">\s</span><span class="content">+not</span><span class="content">\s</span><span class="content">+null)</span><span class="content">\s</span><span class="content">*$/is</span><span class="delimiter">'</span></span> => <span class="string"><span class="delimiter">"</span><span class="char">\\</span><span class="content">1 DEFAULT '0000-00-00 00:00:00'</span><span class="delimiter">"</span></span>,
    8.          <span class="string"><span class="delimiter">'</span><span class="content">/(date</span><span class="content">\s</span><span class="content">+not</span><span class="content">\s</span><span class="content">+null)</span><span class="content">\s</span><span class="content">*$/is</span><span class="delimiter">'</span></span> => <span class="string"><span class="delimiter">"</span><span class="char">\\</span><span class="content">1 DEFAULT '0000-00-00'</span><span class="delimiter">"</span></span>,
    9. <span class="line insert"><span class="insert">+</span>        <span class="string"><span class="delimiter">'</span><span class="content">/current_timestamp</span><span class="content">\(</span><span class="content">\)</span><span class="content">/</span><span class="delimiter">'</span></span> => <span class="string"><span class="delimiter">'</span><span class="content">CURRENT_TIMESTAMP</span><span class="delimiter">'</span></span></span>
    10.      );
    11.  
    12.      <span class="comment">// pour l'autoincrement, il faut des INTEGER NOT NULL PRIMARY KEY</span>
    13.  
    14. </span>

    Télécharger

  • NodeJS stream MKV as MP4 video

    29 mars 2024, par SirMissAlot

    I'm trying to stream MKV video as MP4 on the fly with out saving the converted file

    &#xA;

    first I've tried without conversion :

    &#xA;

    public async streamById(req: Request, res: Response) {&#xA;    const movieId = req.params.id;&#xA;    const movie = await MovieModel.findById(movieId);&#xA;    if (!movie) {&#xA;      return res.status(404).send({ message: &#x27;Movie not found&#x27; });&#xA;    }&#xA;&#xA;    const filePath = movie.path;&#xA;&#xA;    const stat = fs.statSync(filePath);&#xA;    const fileSize = stat.size;&#xA;    const range = req.headers.range;&#xA;&#xA;    if (range) {&#xA;      const parts = range.replace(/bytes=/, &#x27;&#x27;).split(&#x27;-&#x27;);&#xA;      const start = parseInt(parts[0], 10);&#xA;      const end = parts[1] ? parseInt(parts[1], 10) : fileSize - 1;&#xA;&#xA;      const chunksize = end - start &#x2B; 1;&#xA;      const file = fs.createReadStream(filePath, { start, end });&#xA;      const head = {&#xA;        &#x27;Content-Range&#x27;: `bytes ${start}-${end}/${fileSize}`,&#xA;        &#x27;Accept-Ranges&#x27;: &#x27;bytes&#x27;,&#xA;        &#x27;Content-Length&#x27;: chunksize,&#xA;        &#x27;Content-Type&#x27;: &#x27;video/mp4&#x27;,&#xA;      };&#xA;&#xA;      res.writeHead(206, head);&#xA;      file.pipe(res);&#xA;    } else {&#xA;      const head = {&#xA;        &#x27;Content-Length&#x27;: fileSize,&#xA;        &#x27;Content-Type&#x27;: &#x27;video/mp4&#x27;,&#xA;      };&#xA;      res.writeHead(200, head);&#xA;      fs.createReadStream(filePath).pipe(res);&#xA;    }&#xA;  }&#xA;

    &#xA;

    which is working but without audio

    &#xA;

    With ffmpeg I'm getting error : "Error during conversion : Output stream closed"

    &#xA;

    const command = ffmpeg(file)&#xA;    .format(&#x27;mp4&#x27;)&#xA;    .audioCodec(&#x27;aac&#x27;)&#xA;    .videoCodec(&#x27;libx264&#x27;)&#xA;    .outputOptions(&#x27;-movflags frag_keyframe&#x2B;empty_moov&#x27;)&#xA;    .outputOptions(&#x27;-preset veryfast&#x27;)&#xA;    .on(&#x27;error&#x27;, (err: any) => {&#xA;      console.error(&#x27;Error during conversion:&#x27;, err.message);&#xA;      res.end();&#xA;    })&#xA;    .on(&#x27;end&#x27;, () => {&#xA;      console.log(&#x27;Conversion complete &#x27;);&#xA;      res.end();&#xA;    });&#xA;&#xA;  // Pipe ffmpeg output directly to the response&#xA;  command.pipe(res, { end: true });&#xA;

    &#xA;