Recherche avancée

Médias (91)

Autres articles (103)

  • ANNEXE : Les plugins utilisés spécifiquement pour la ferme

    5 mars 2010, par

    Le site central/maître de la ferme a besoin d’utiliser plusieurs plugins supplémentaires vis à vis des canaux pour son bon fonctionnement. le plugin Gestion de la mutualisation ; le plugin inscription3 pour gérer les inscriptions et les demandes de création d’instance de mutualisation dès l’inscription des utilisateurs ; le plugin verifier qui fournit une API de vérification des champs (utilisé par inscription3) ; le plugin champs extras v2 nécessité par inscription3 (...)

  • Qu’est ce qu’un éditorial

    21 juin 2013, par

    Ecrivez votre de point de vue dans un article. Celui-ci sera rangé dans une rubrique prévue à cet effet.
    Un éditorial est un article de type texte uniquement. Il a pour objectif de ranger les points de vue dans une rubrique dédiée. Un seul éditorial est placé à la une en page d’accueil. Pour consulter les précédents, consultez la rubrique dédiée.
    Vous pouvez personnaliser le formulaire de création d’un éditorial.
    Formulaire de création d’un éditorial Dans le cas d’un document de type éditorial, les (...)

  • Activation de l’inscription des visiteurs

    12 avril 2011, par

    Il est également possible d’activer l’inscription des visiteurs ce qui permettra à tout un chacun d’ouvrir soit même un compte sur le canal en question dans le cadre de projets ouverts par exemple.
    Pour ce faire, il suffit d’aller dans l’espace de configuration du site en choisissant le sous menus "Gestion des utilisateurs". Le premier formulaire visible correspond à cette fonctionnalité.
    Par défaut, MediaSPIP a créé lors de son initialisation un élément de menu dans le menu du haut de la page menant (...)

Sur d’autres sites (11604)

  • Inputing a List of Files for Concatenation with Node.js Module fluent-ffmpeg

    26 juin 2018, par carpiediem

    Version information

    • fluent-ffmpeg version : 2.1.2
    • ffmpeg version : 3.4.2
    • OS : Windows 10

    Code to reproduce

    ffmpeg('C:/path/to/list.txt').mergeToFile('C:/path/to/out.mp4', 'C:/path/to/temp');

    list.txt :

    file 'C:/path/to/chunk01.ts'
    file 'C:/path/to/chunk02.ts'
    file 'C:/path/to/chunk03.ts'
    file 'C:/path/to/chunk04.ts'

    Note : I’ve tried both absolute and relative paths, with the same result.

    Expected results

    A video file at C:/path/to/out.mp4 that matches the 4 files in list.txt, concatenated end-to-end.

    Observed results

    An empty file at C:/path/to/out.mp4 with 0 duration and only 15kB in size. No errors were thrown.

    This is the command that I’m trying to duplicate (it works as expected, with relative paths in list.txt) :

    C:/path/to> ffmpeg -f concat -i list.txt -c copy out.ts

    stdout & stderr

    stdout was empty. stderr is copied below (with file names modified to match the ones above) :

    ffmpeg version 3.4.2 Copyright (c) 2000-2018 the FFmpeg developers
     built with gcc 7.3.0 (GCC)
     configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-bzlib --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libmfx --enable-cuda --enable-cuvid --enable-d3d11va --enable-nvenc --enable-dxva2 --enable-avisynth
     libavutil      55. 78.100 / 55. 78.100
     libavcodec     57.107.100 / 57.107.100
     libavformat    57. 83.100 / 57. 83.100
     libavdevice    57. 10.100 / 57. 10.100
     libavfilter     6.107.100 /  6.107.100
     libswscale      4.  8.100 /  4.  8.100
     libswresample   2.  9.100 /  2.  9.100
     libpostproc    54.  7.100 / 54.  7.100
    Input #0, tty, from 'C:/path/to/list.txt':
     Duration: 00:00:00.08, bitrate: 42 kb/s
       Stream #0:0: Video: ansi, pal8, 640x400, 25 fps, 25 tbr, 25 tbn, 25 tbc
    Stream mapping:
     Stream #0:0 (ansi) -> concat
     concat -> Stream #0:0 (libx264)
    Press [q] to stop, [?] for help
    [libx264 @ 000001e385b45040] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
    [libx264 @ 000001e385b45040] profile High 4:4:4 Predictive, level 3.0, 4:4:4 8-bit
    [libx264 @ 000001e385b45040] 264 - core 155 r2901 7d0ff22 - H.264/MPEG-4 AVC codec - Copyleft 2003-2018 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x1:0x111 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=0 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=4 threads=6 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
    Output #0, mp4, to 'C:/path/to/out.mp4':
     Metadata:
       encoder         : Lavf57.83.100
       Stream #0:0: Video: h264 (libx264) (avc1 / 0x31637661), yuv444p, 640x400, q=-1--1, 25 fps, 12800 tbn, 25 tbc
       Metadata:
         encoder         : Lavc57.107.100 libx264
       Side data:
         cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
    frame=    2 fps=0.0 q=-1.0 Lsize=      15kB time=00:00:00.04 bitrate=3099.0kbits/s speed=1.55x
    video:14kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 5.619430%
    [libx264 @ 000001e385b45040] frame I:1     Avg QP:12.71  size:  8083
    [libx264 @ 000001e385b45040] frame P:1     Avg QP:29.71  size:  5928
    [libx264 @ 000001e385b45040] mb I  I16..4: 87.9%  0.0% 12.1%
    [libx264 @ 000001e385b45040] mb P  I16..4:  9.3%  0.0%  0.0%  P16..4:  0.4%  0.0%  0.0%  0.0%  0.0% skip:90.3%
    [libx264 @ 000001e385b45040] coded y,u,v intra: 17.9% 0.0% 0.0% inter: 0.1% 0.0% 0.0%
    [libx264 @ 000001e385b45040] i16 v,h,dc,p: 88%  8%  4%  0%
    [libx264 @ 000001e385b45040] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 28% 31% 19%  3%  2%  3%  7%  4%  3%
    [libx264 @ 000001e385b45040] Weighted P-Frames: Y:0.0% UV:0.0%
    [libx264 @ 000001e385b45040] kb/s:1401.10
  • Pass options containing spaces to ffmpeg using fluent-ffmpeg

    10 janvier 2019, par dansumption

    I am writing a Node script which copies and re-tags some of my MP4 files using fluent-ffmpeg

    It doesn’t work with any metadata that contains spaces. The code that does the copying/tagging looks something like this :

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

    const inputFilename = 'path/to/original.m4a';
    const outputFilename = 'path/to/new.m4a';

    const options = [
       '-metadata', 'artist=Someone',
       '-metadata', 'album=Some title',
       // ...etc
    ];

    ffmpeg(inputFilename)
     .outputOptions(options)
     .saveToFile(outputFilename);

    This results in an error :

    events.js:183
         throw er; // Unhandled 'error' event

    An error occurred: ffmpeg exited with code 1: title: Invalid argument

    I have tried putting Some title in single quotes, double quotes and no quotes. I have tried escaping the spaces in it. I have tried passing the options array as single options rather than tuples, for example : '-metadata album="Some title"' - but whatever I try, it still throws an error when there are spaces.

    (It may be relevant to note that this is on Windows)

    Can anyone suggest a way of getting it to work ?

  • Node.js - Buffer Data to Ffmpeg

    24 septembre 2017, par user8568709

    I used Node.js and Ffmpeg to create animations. Because I was trying to avoid third-party avi/mp4 parsers, I decided to output the animation as raw rgb24 data file and then use some program to convert it to mp4 file.

    I found that Ffmpeg is free and open source which can do exactly it. So, I made a Node.js application which allocates a Buffer of size 1920 x 1080 x 3 (width times height times number of bytes per pixel), then I created a rendering context library, and finally I animated frame by frame and saved each frame consecutivelly in a binary file (using fs module).

    Then I invoked Ffmpeg to convert it to mp4 file and it works very good. Animations are pretty easy to make and Ffmpeg does its job correctly.

    However, the only problem is because it is very slow and eats space on hard disk. I want to create very long animations (more than a hour). The final mp4 file is relativelly small, but raw video file is extremelly big. About ninety percents of each frame are black pixels, so Ffmpeg comress it very good, but raw file cannot be compressed and it takes sometimes mor ethan 100 Gigabytes. Also, there is very unnecessary double processing same data. Firstly I process it in Node.js to save data to file, and then Ffmpeg reads it to convert it to mp4. There is a lot of unnecessary work.

    So, I’m looking for a way (and I’m pretty sure it is possible, but I didn’t find a way to do it yet) to output raw video data (one frame at a time) to Ffmpeg process (without saving anything to the hard disk).

    My goal is to do the following :

    1. Open Ffmpeg process
    2. Render a frame in Node.js
    3. Output raw byte stream to Ffmpeg
    4. Wait for Ffmpeg to encode it and append to mp4 file
    5. Let Ffmpeg wait for my Node.js process to render next frame

    Is there a way to achieve it ? I really don’t see a reason to post code, because my current code has nothing to do with the question I’m asking here. I don’t struggle with syntax errors or implementation problems. No, instead I just don’t know which parameters to pass to Ffmpeg process in order to achieve what I’ve already explained.

    I’ve searched in documentation to find out which parameters I need to pass to Ffmpeg process in order to let it read raw data from stdin instead from file, and also to wait until my Node.js process render next frame (so to disable time limit) because rendering a frame may take more than 24 hours. Therefore, Ffmpeg process should wait without time limit. However, I didn’t find anything about it in documentation.

    I know how to write to stdin from Node.js and similar technical stuff, so no need to explain it. The only question(s) here :

    1. Which parameters to pass to Ffmpeg ?
    2. Do I need to create Ffmpeg process (using child_process) with some special options ?

    Thank you in advance. Please, take it easy, this is my first question ! :)