
Recherche avancée
Médias (2)
-
SPIP - plugins - embed code - Exemple
2 septembre 2013, par
Mis à jour : Septembre 2013
Langue : français
Type : Image
-
Publier une image simplement
13 avril 2011, par ,
Mis à jour : Février 2012
Langue : français
Type : Video
Autres articles (104)
-
Les tâches Cron régulières de la ferme
1er décembre 2010, parLa gestion de la ferme passe par l’exécution à intervalle régulier de plusieurs tâches répétitives dites Cron.
Le super Cron (gestion_mutu_super_cron)
Cette tâche, planifiée chaque minute, a pour simple effet d’appeler le Cron de l’ensemble des instances de la mutualisation régulièrement. Couplée avec un Cron système sur le site central de la mutualisation, cela permet de simplement générer des visites régulières sur les différents sites et éviter que les tâches des sites peu visités soient trop (...) -
Récupération d’informations sur le site maître à l’installation d’une instance
26 novembre 2010, parUtilité
Sur le site principal, une instance de mutualisation est définie par plusieurs choses : Les données dans la table spip_mutus ; Son logo ; Son auteur principal (id_admin dans la table spip_mutus correspondant à un id_auteur de la table spip_auteurs)qui sera le seul à pouvoir créer définitivement l’instance de mutualisation ;
Il peut donc être tout à fait judicieux de vouloir récupérer certaines de ces informations afin de compléter l’installation d’une instance pour, par exemple : récupérer le (...) -
Contribute to translation
13 avril 2011You can help us to improve the language used in the software interface to make MediaSPIP more accessible and user-friendly. You can also translate the interface into any language that allows it to spread to new linguistic communities.
To do this, we use the translation interface of SPIP where the all the language modules of MediaSPIP are available. Just subscribe to the mailing list and request further informantion on translation.
MediaSPIP is currently available in French and English (...)
Sur d’autres sites (7748)
-
Improve "troubleshooting" link :hover state
20 décembre 2011, par Scott Schillerm demo/index-rollup.css m demo/index.css Improve "troubleshooting" link :hover state
-
Revision 22141d9d79 : disable segmentation on enhancement layers This should avoid problems with bloc
24 septembre 2012, par Jim BankoskiChanged Paths : Modify /vp8/encoder/onyx_if.c disable segmentation on enhancement layers This should avoid problems with blocks gettings high quality improvement despite having recently moved : Change-Id : Ic0af0de2d6577807fa3c553f47b55d547ef36359
-
Video Manipulation with ffmpeg : Troubleshooting Conversion Issues
26 janvier 2024, par BarnoI want to manipulate my video using ffmpeg. I retrieve the stream from S3 with the following function :


async function getImageBufferFromS3(imageUrl) {
 const { bucketName, objectKey } = extractS3InfoFromUrl(imageUrl);
 const s3Client = configureS3Client();

 const getObjectCommand = new GetObjectCommand({
 Bucket: bucketName,
 Key: objectKey
 });

 const data = await s3Client.send(getObjectCommand);
 const imageBuffer = await streamToBuffer(data.Body);
 return imageBuffer;
}

async function streamToBuffer(stream) {
 return new Promise((resolve, reject) => {
 const chunks = [];
 stream.on('data', (chunk) => chunks.push(chunk));
 stream.on('error', reject);
 stream.on('end', () => resolve(Buffer.concat(chunks)));
 });
}



Now, I want to use ffmpeg to add text to it. First, I'd like to obtain the "clean" video :


module.exports.createVideoWithTextAndBackground = async (videoBuffer, customText = null) => {
 try {
 if (!customText) {
 return videoBuffer;
 }
 
 const fontPath = __dirname + '/../public/fonts/Satoshi-Medium.ttf';

 try {
 return await new Promise((resolve, reject) => {
 const input = new stream.PassThrough();
 input.end(videoBuffer);

 const output = new stream.Writable();
 const chunks = [];

 output._write = (chunk, encoding, next) => {
 chunks.push(chunk);
 next();
 };

 output.on('finish', () => {
 const resultBuffer = Buffer.concat(chunks);
 resolve(resultBuffer);
 });

 output.on('error', (err) => {
 reject(err);
 });

 ffmpeg()
 .input(input)
 .inputFormat('mp4')
 .toFormat('mp4')
 .pipe(output);
 });
 } catch (error) {
 console.error(error);
 throw error;
 }

 } catch (error) {
 console.error(error);
 throw error;
 }
};



However, I encountered the following error :


Error: ffmpeg exited with code 183: frame= 0 fps=0.0 q=0.0 Lsize= 0kB time=N/A bitrate=N/A speed=N/A



Conversion failed !


I don't face any issues when I don't use ffmpeg. I even tried ffmpeg -i to create a video with text using my console, confirming that ffmpeg works on my computer.