
Recherche avancée
Médias (1)
-
Somos millones 1
21 juillet 2014, par
Mis à jour : Juin 2015
Langue : français
Type : Video
Autres articles (104)
-
Soumettre améliorations et plugins supplémentaires
10 avril 2011Si vous avez développé une nouvelle extension permettant d’ajouter une ou plusieurs fonctionnalités utiles à MediaSPIP, faites le nous savoir et son intégration dans la distribution officielle sera envisagée.
Vous pouvez utiliser la liste de discussion de développement afin de le faire savoir ou demander de l’aide quant à la réalisation de ce plugin. MediaSPIP étant basé sur SPIP, il est également possible d’utiliser le liste de discussion SPIP-zone de SPIP pour (...) -
Emballe médias : à quoi cela sert ?
4 février 2011, parCe plugin vise à gérer des sites de mise en ligne de documents de tous types.
Il crée des "médias", à savoir : un "média" est un article au sens SPIP créé automatiquement lors du téléversement d’un document qu’il soit audio, vidéo, image ou textuel ; un seul document ne peut être lié à un article dit "média" ; -
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 (...)
Sur d’autres sites (10187)
-
input stream error _read() is not implemented : ffmpeg-fluent
23 mai 2018, par Thomsheer AhamedI have buffer object. I want to pass that buffer as readable stream to ffpmeg.
var ffmpeg = require('fluent-ffmpeg');
var ffmpegPath = require("ffmpeg-binaries").ffmpegPath()
ffmpeg.setFfmpegPath(ffmpegPath);
var command = new ffmpeg();
command.input(my_buffer)
.videoCodec('libx264')
.size('520x?')
.aspect('4:3')
.inputFPS(8)
.outputFPS(30)
.output('new_video.mp4')
.on('start', onStrat)
.on('progress', onProgress)
.on('end', onEnd)
.on('error', onError)
.run();If I pass buffer right away I will get "Error : Invalid input
at FfmpegCommand.proto.mergeAdd.proto.addInput.proto.input"So I converted buffer into stream using
function bufferToStream(buffer) {
let Duplex = require('stream').Duplex;
let stream = new Duplex();
stream.push(new Buffer(buffer));
stream.push(null);
return stream;
}
var red = bufferToStream(finalResponse.file.buffer);and passed this steam to input
command.input(red)
Above Command throws "ffmpeg exited with code 1 : Error opening filters !" ;
If I use my_buffer and save it in locally using fs.writeFile(’path’,my_buffer) and pass this path to input of ffmpeg then it works fine..
But I dont want to store that file and then delete it after altering video.
Can some one help me ?
-
Using ffmpeg in node, without using fluent-ffmpeg
16 mai 2018, par drexdeltaI am using ffmpeg without using fluent-ffmpeg. I am using ’child_process’ from node.
First of all I verified how can I pass more than one arguments to the child process command. and I verified it given below code.
I used copy command like this
cp vid1.mp4 vid2.mp4
which successfully copied vid1 into vid2.
const execFile = require('child_process').execFile;
const child = execFile('cp', ['vid1.mp4', 'vid3.mp4'], (error, stdout, stderr) => {
if (error) {
console.error('stderr: =============================', stderr);
throw error;
}
console.log('stdout: ==========================', stdout);
});
console.log('here');Above code is content of the ’index.js’(default entry point in node). And running this with node . , which copies vid1 into vid3 successfully.
Now, I want to do watermarking to the given video. For that I am using this tutorial. Currently link to the actual tutorial is broken, you can see it here.
This is the command that I am using
ffmpeg -i input.mp4 -i logo.png -filter_complex "overlay=10:10" output.mp4
Now the same command I am using like this ,
const execFile = require('child_process').execFile;
const child = execFile('ffmpeg', ['-i', 'input.mp4' , '-i' , 'logo.png' , '-filter_complex' , '"overlay=10:10"' , 'output.mp4' ], (error, stdout, stderr) => {
if (error) {
console.error('stderr: =============================', stderr);
throw error;
}
console.log('stdout: ==========================', stdout);
});
console.log('here');and I am getting an error , that ,
No such filter : ’"overlay’ Error initializing complex filters. Invalid
argument/Users/neerpatel/Desktop/testProjects/childProcess/index.js:7
throw error ;
^Error : Command failed : ffmpeg -i input.mp4 -i logo.png
-filter_complex "overlay=10:10" output.mp4You can clearly see that the same command that runs in terminal directly, doesn’t work when I pass it in child process. Why does it happen ?
Moreover, I wanted to add tag ’watermarking’ , but I can’t create tag since my reputation is below 1500. please, someone do it.
UPDATE :
I used EXEC , instead of execFile . and it worked like charm, but parent file kept waiting for child process. Child process never returns END signal. and this is my code.const exec = require('child_process').exec;
const child = exec('ffmpeg -i input.mp4 -i logo.png -filter_complex "overlay=10:10" output.mp4', (error, stdout, stderr) => {
if (error) {
console.error('stderr: =============================', stderr);
throw error;
}
console.log('stdout: ==========================', stdout);
});
console.log('here'); -
ffmpeg avcodec_find_encoder_by_name failes to find encoder h264_nvenc
18 septembre 2018, par YonaWhen I run this command "ffmpeg -h encoder=h264_nvenc" in the terminal it gives me the following output
and I am able to use the encoder through the command line interface but it got a problem when I try to run from the following source code.
#include <iostream>
#include
#include
extern "C"
{
#include <libavcodec></libavcodec>avcodec.h>
#include <libavformat></libavformat>avformat.h>
#include <libavutil></libavutil>imgutils.h>
#include <libavutil></libavutil>mathematics.h>
#include <libavutil></libavutil>opt.h>
#include <libswscale></libswscale>swscale.h>
#include
}
int main( int argc, char** argv )
{
const AVCodec *codec;
AVCodecContext *c= NULL;
av_register_all();
std::cout << "Loading codec" << std::endl;
// codec = avcodec_find_encoder_by_name( "libx264" ); // works
codec = avcodec_find_encoder_by_name( "h264_nvenc" );
// codec = avcodec_find_decoder_by_name( "h264_cuvid" );
if( !codec )
{
throw std::runtime_error( "Unable to find codec!" );
}
std::cout << "Allocating context" << std::endl;
return 0;
}</iostream>