
Recherche avancée
Autres articles (66)
-
Qu’est ce qu’un masque de formulaire
13 juin 2013, parUn masque de formulaire consiste en la personnalisation du formulaire de mise en ligne des médias, rubriques, actualités, éditoriaux et liens vers des sites.
Chaque formulaire de publication d’objet peut donc être personnalisé.
Pour accéder à la personnalisation des champs de formulaires, il est nécessaire d’aller dans l’administration de votre MediaSPIP puis de sélectionner "Configuration des masques de formulaires".
Sélectionnez ensuite le formulaire à modifier en cliquant sur sont type d’objet. (...) -
Publier sur MédiaSpip
13 juin 2013Puis-je poster des contenus à partir d’une tablette Ipad ?
Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir -
Support audio et vidéo HTML5
10 avril 2011MediaSPIP utilise les balises HTML5 video et audio pour la lecture de documents multimedia en profitant des dernières innovations du W3C supportées par les navigateurs modernes.
Pour les navigateurs plus anciens, le lecteur flash Flowplayer est utilisé.
Le lecteur HTML5 utilisé a été spécifiquement créé pour MediaSPIP : il est complètement modifiable graphiquement pour correspondre à un thème choisi.
Ces technologies permettent de distribuer vidéo et son à la fois sur des ordinateurs conventionnels (...)
Sur d’autres sites (6717)
-
Sinon stun within ffmpeg error event listener
22 juin 2022, par Pedro Eliasconst {writeStream, upload} = S3Service.uploadStream({ Bucket: process.env.BUCKET, Key: s3Path});

 ffmpeg(stream)
 .outputOptions('-copyts')
 .audioCodec("libopus")
 .toFormat("matroska")
 .on('error', (err, stdout, stderr) => {
 if (err) {
 console.log(err.message);
 upload.abort();
 return reject("Error FFMPEG");
 }
 })
 .on('start', (p) => console.log(p))
 .on(`end`, () => console.log("end ffmpeg"))
 .pipe(writeStream);

 upload.promise()
 .then(() => resolve("Successful audio converted transfer"))
 .catch((err) => console.error(err));



I have the code above and I'm writing a unit test for it as follow :


let uploadStreamStub = {
 writeStream: sandbox.stub().returnsThis(),
 upload: {
 promise: sandbox.stub(),
 abort: sandbox.stub()
 }
}

sandbox.stub(s3Service, "uploadStream").returns(uploadStreamStub);



I'd like to stub upload.abort() :


let onStub = sandbox.stub(ffmpeg.prototype, "on").returnsThis();
onStub.withArgs("error").yieldsAsync(new Error("test"));
sandbox.assert.calledOnce(uploadStreamStub.upload.abort);



However, the stub is not working :
AssertError : expected stub to be called once but was called 0 times


When I remove the "yieldsAsync" line and try to stub the promise it works :


// onStub.withArgs("error").yieldsAsync(new Error("test"));
sandbox.assert.calledOnce(uploadStreamStub.upload.promise);



So the stub only doesn't work on('error'...


What I'm doing wrong ?


How can I stub and check if abort has been called ?


-
avcodec/libdav1d : don't depend on the event flags API to init sequence params the...
7 avril 2022, par James Almeravcodec/libdav1d : don't depend on the event flags API to init sequence params the first time
A bug was found in dav1d <= 1.0.0 where the event flag New Sequence Header would
not be signaled for some samples using delayed random access points.
It has since been fixed, but nonetheless it's best to ensure the AVCodecContext
is filled with parameters when parsing the first frame, regardless of what events
were signaled.Fixes ticket #9694.
Signed-off-by : James Almer <jamrial@gmail.com>
-
avcodec/v4l2_context : don't reinit output queue on dynamic resolution change event
4 janvier 2022, par Ming Qianavcodec/v4l2_context : don't reinit output queue on dynamic resolution change event
Reference :
linux/Documentation/userspace-api/media/v4l/dev-decoder.rst
"During the resolution change sequence, the OUTPUT queue must remain
streaming. Calling VIDIOC_STREAMOFF() on the OUTPUT queue would
abort the sequence and initiate a seek.In principle, the OUTPUT queue operates separately from the CAPTURE
queue and this remains true for the duration of the entire
resolution change sequence as well."Reviewed-by : Andriy Gelman <andriy.gelman@gmail.com>
Signed-off-by : Ming Qian <ming.qian@nxp.com>