
Recherche avancée
Médias (91)
-
Les Miserables
9 décembre 2019, par
Mis à jour : Décembre 2019
Langue : français
Type : Textuel
-
VideoHandle
8 novembre 2019, par
Mis à jour : Novembre 2019
Langue : français
Type : Video
-
Somos millones 1
21 juillet 2014, par
Mis à jour : Juin 2015
Langue : français
Type : Video
-
Un test - mauritanie
3 avril 2014, par
Mis à jour : Avril 2014
Langue : français
Type : Textuel
-
Pourquoi Obama lit il mes mails ?
4 février 2014, par
Mis à jour : Février 2014
Langue : français
-
IMG 0222
6 octobre 2013, par
Mis à jour : Octobre 2013
Langue : français
Type : Image
Autres articles (103)
-
ANNEXE : Les plugins utilisés spécifiquement pour la ferme
5 mars 2010, parLe 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, parEcrivez 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, parIl 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 carpiediemVersion 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 dansumptionI 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 argumentI 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 user8568709I 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 size1920 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 (usingfs
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 :
- Open Ffmpeg process
- Render a frame in Node.js
- Output raw byte stream to Ffmpeg
- Wait for Ffmpeg to encode it and append to mp4 file
- 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 :
- Which parameters to pass to Ffmpeg ?
- 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 ! :)