
Recherche avancée
Médias (91)
-
Collections - Formulaire de création rapide
19 février 2013, par
Mis à jour : Février 2013
Langue : français
Type : Image
-
Les Miserables
4 juin 2012, par
Mis à jour : Février 2013
Langue : English
Type : Texte
-
Ne pas afficher certaines informations : page d’accueil
23 novembre 2011, par
Mis à jour : Novembre 2011
Langue : français
Type : Image
-
The Great Big Beautiful Tomorrow
28 octobre 2011, par
Mis à jour : Octobre 2011
Langue : English
Type : Texte
-
Richard Stallman et la révolution du logiciel libre - Une biographie autorisée (version epub)
28 octobre 2011, par
Mis à jour : Octobre 2011
Langue : English
Type : Texte
-
Rennes Emotion Map 2010-11
19 octobre 2011, par
Mis à jour : Juillet 2013
Langue : français
Type : Texte
Autres articles (44)
-
Gestion générale des documents
13 mai 2011, parMédiaSPIP ne modifie jamais le document original mis en ligne.
Pour chaque document mis en ligne il effectue deux opérations successives : la création d’une version supplémentaire qui peut être facilement consultée en ligne tout en laissant l’original téléchargeable dans le cas où le document original ne peut être lu dans un navigateur Internet ; la récupération des métadonnées du document original pour illustrer textuellement le fichier ;
Les tableaux ci-dessous expliquent ce que peut faire MédiaSPIP (...) -
Initialisation de MediaSPIP (préconfiguration)
20 février 2010, parLors de l’installation de MediaSPIP, celui-ci est préconfiguré pour les usages les plus fréquents.
Cette préconfiguration est réalisée par un plugin activé par défaut et non désactivable appelé MediaSPIP Init.
Ce plugin sert à préconfigurer de manière correcte chaque instance de MediaSPIP. Il doit donc être placé dans le dossier plugins-dist/ du site ou de la ferme pour être installé par défaut avant de pouvoir utiliser le site.
Dans un premier temps il active ou désactive des options de SPIP qui ne le (...) -
Des sites réalisés avec MediaSPIP
2 mai 2011, parCette page présente quelques-uns des sites fonctionnant sous MediaSPIP.
Vous pouvez bien entendu ajouter le votre grâce au formulaire en bas de page.
Sur d’autres sites (6780)
-
failed to set frame number in opencv in cpp
28 février 2018, par Madhu NadendlaI am trying to set frame position of opened videofile using OpenCV in C++ but it returns 0.
solution 1
bool success = capture.set(CV_CAP_PROP_POS_FRAMES, noFrame);
double frameRate = capture.get(CV_CAP_PROP_FPS); -
Ffmpeg output stream closed
29 novembre 2023, par excaliburThere is one problem in my code that uses ffmpeg to convert webm videos to mp4 and set duration to 10 seconds, it works well but, sometimes returns "output Stream closed" error. What can be a reason of this problem, and how can i solve it ?


My code :


async convertWebmVideoToMp4(buffer: any) {
 try {
 return new Promise((resolve, reject) => {
 const videoMp4Buffer = Buffer.from(buffer);

 const readable = Readable.from(videoMp4Buffer);

 const outputBuffer = [];

 const outputStream = new Writable({
 write(chunk, encoding, callback) {
 outputBuffer.push(chunk);
 callback();
 },
 });

 const ffmpegProcess = ffmpeg()
 .input(readable)
 .outputFormat('mp4')
 .videoCodec('libx264')
 .audioCodec('aac')
 .duration(10)
 .outputOptions([
 '-movflags frag_keyframe+empty_moov',
 '-preset ultrafast',
 '-c:a aac',
 '-r 30',
 '-tune fastdecode',
 ])
 .on('end', () => {
 outputStream.end();
 const finalOutputBuffer = Buffer.concat(outputBuffer);
 resolve(finalOutputBuffer);
 })
 .on('error', (err, stdout, stderr) => {
 console.error(err);
 reject(err);
 });

 outputStream.on('error', err => {
 this.logger.error(err);
 });

 ffmpegProcess.pipe(outputStream, { end: true });
 });
 } catch (error) {
 throw error;
 }
}



My code should return the buffer of video that type is mp4 and length is 10 seconds, but it returns "output stream closed" error.


-
How to stop perl buffering ffmpeg output
4 février 2017, par Sebastian KingI am trying to have a Perl program process the output of an ffmpeg encode, however my test program only seems to receive the output of ffmpeg in periodic chunks, thus I am assuming there is some sort of buffering going on. How can I make it process it in real-time ?
My test program (the
tr
command is there because I thought maybe ffmpeg’s carriage returns were causing perl to see one big long line or something) :#!/usr/bin/perl
$i = "test.mkv"; # big file, long encode time
$o = "test.mp4";
open(F, "-|", "ffmpeg -y -i '$i' '$o' 2>&1 | tr '\r' '\n'")
or die "oh no";
while(<f>) {
print "A12345: $_"; # some random text so i know the output was processed in perl
}
</f>Everything works fine when I replace the
ffmpeg
command with this script :#!/bin/bash
echo "hello";
for i in `seq 1 10`; do
sleep 1;
echo "hello $i";
done
echo "bye";When using the above script I see the output each second as it happens. With
ffmpeg
it is some 5-10 seconds or so until it outputs and will output sometimes 100 lines each output.I have tried using the program
unbuffer
ahead offfmpeg
in the command call but it seems to have no effect. Is it perhaps the2>&1
that might be buffering ?
Any help is much appreciated.If you are unfamiliar with ffmpeg’s output, it outputs a bunch of file information and stuff to
STDOUT
and then during encoding it outputs lines likeframe= 332 fps= 93 q=28.0 size= 528kB time=00:00:13.33 bitrate= 324.2kbits/s speed=3.75x
which begin with carriage returns instead of new lines (hence
tr
) onSTDERR
(hence2>&1
).