
Recherche avancée
Médias (1)
-
The pirate bay depuis la Belgique
1er avril 2013, par
Mis à jour : Avril 2013
Langue : français
Type : Image
Autres articles (52)
-
Submit bugs and patches
13 avril 2011Unfortunately a software is never perfect.
If you think you have found a bug, report it using our ticket system. Please to help us to fix it by providing the following information : the browser you are using, including the exact version as precise an explanation as possible of the problem if possible, the steps taken resulting in the problem a link to the site / page in question
If you think you have solved the bug, fill in a ticket and attach to it a corrective patch.
You may also (...) -
Amélioration de la version de base
13 septembre 2013Jolie sélection multiple
Le plugin Chosen permet d’améliorer l’ergonomie des champs de sélection multiple. Voir les deux images suivantes pour comparer.
Il suffit pour cela d’activer le plugin Chosen (Configuration générale du site > Gestion des plugins), puis de configurer le plugin (Les squelettes > Chosen) en activant l’utilisation de Chosen dans le site public et en spécifiant les éléments de formulaires à améliorer, par exemple select[multiple] pour les listes à sélection multiple (...) -
Menus personnalisés
14 novembre 2010, parMediaSPIP utilise le plugin Menus pour gérer plusieurs menus configurables pour la navigation.
Cela permet de laisser aux administrateurs de canaux la possibilité de configurer finement ces menus.
Menus créés à l’initialisation du site
Par défaut trois menus sont créés automatiquement à l’initialisation du site : Le menu principal ; Identifiant : barrenav ; Ce menu s’insère en général en haut de la page après le bloc d’entête, son identifiant le rend compatible avec les squelettes basés sur Zpip ; (...)
Sur d’autres sites (3715)
-
avfilter/af_stereowiden : fix read/write past the end of buffer
12 juillet 2016, par Alexey Tourbinavfilter/af_stereowiden : fix read/write past the end of buffer
The stereowiden filter uses a buffer, s->buffer[], and a pointer
within the buffer, s->write, to implement inter-channel delays.
The loop which applies the delayed samples turns out to be faulty.109 for (n = 0 ; n < in->nb_samples ; n++, src += 2, dst += 2)
110 const float left = src[0], right = src[1] ;
111 float *read = s->write + 2 ;
112
113 if (read > s->buffer + s->length)
114 read = s->buffer ;
115
116 dst[0] = drymix * left - crossfeed * right - feedback * read[1] ;
117 dst[1] = drymix * right - crossfeed * left - feedback * read[0] ;
118
119 s->write[0] = left ;
120 s->write[1] = right ;
121
122 if (s->write == s->buffer + s->length)
123 s->write = s->buffer ;
124 else
125 s->write += 2 ;
126For one, the buffer gets written past its end in lines 119-120, before
the bound check is done in lines 122-123. This can be easily confirmed
by valgrind.==3544== Invalid read of size 4
==3544== at 0x593B41 : filter_frame (af_stereowiden.c:116)
==3544== Address 0xb1b03c4 is 4 bytes after a block of size 7,680 alloc’d
==3544==
==3544== Invalid read of size 4
==3544== at 0x593B66 : filter_frame (af_stereowiden.c:117)
==3544== Address 0xb1b03c0 is 0 bytes after a block of size 7,680 alloc’d
==3544==
==3544== Invalid write of size 4
==3544== at 0x593B79 : filter_frame (af_stereowiden.c:119)
==3544== Address 0xb1b03c0 is 0 bytes after a block of size 7,680 alloc’d
==3544==
==3544== Invalid write of size 4
==3544== at 0x593B7D : filter_frame (af_stereowiden.c:120)
==3544== Address 0xb1b03c4 is 4 bytes after a block of size 7,680 alloc’dAlso, using two separate pointers, s->write and read = s->write + 2,
does not seem to be well thought out. To apply the delay of s->buffer[],
it is enough to read the delayed samples at the current position within
the buffer, and then to store new samples at the same current position.
Thus the application of delayed samples can probably be best described
with a single pointer s->cur.I also introduce a minor change to ensure that the size of s->buffer[]
is always a multiple of 2. Since the delay parameter is a float, it is
otherwise possible to trick the code into allocating off-by-one buffer. -
avfilter/formats : Remove pointless checks
11 septembre 2020, par Andreas Rheinhardtavfilter/formats : Remove pointless checks
ff_formats_ref() takes a pointer to an AVFilterFormats and a pointer to
a pointer to an AVFilterFormats as arguments and adds the latter as an
owner to the list pointed to by the former ; the latter is hereby always
the address of a list contained in an AVFilterFormatsConfig and can
therefore not be NULL. So remove the check for whether it is NULL ; also
do the same for ff_channel_layouts_ref().Also do the same for the unref functions where argument is never NULL
because it is always the address of an existing lvalue.Reviewed-by : Nicolas George <george@nsup.org>
Signed-off-by : Andreas Rheinhardt <andreas.rheinhardt@gmail.com> -
"Error opening filters !" when using fluent-ffmpeg with Node
3 février 2015, par doremiI’m trying to get a basic example of html5 video streaming working in an express node app, but I keep running into ffmpeg errors that I’m unsure of how to resolve.
The input file/stream is the sample.mp4 located here.
Complete example :
var ffmpeg = require('fluent-ffmpeg');
var express = require('express');
var fs = require('fs');
var sampleApp = express();
var videoApp = express();
var SAMPLE_SERVER_PORT = 3000;
var VIDEO_SERVER_PORT = 5000;
sampleApp.get('/:video', function (req, res) {
var videoURL = 'http://localhost:' + VIDEO_SERVER_PORT + '/' + req.params.video;
return res.end('<video controls="controls" src=" + videoURL +"></video>');
});
videoApp.get('/:video', function(req, res) {
res.statusCode = 200;
res.setHeader('content-type','video/mp4');
var stream = fs.createReadStream('./samples/' + req.params.video);
var proc = ffmpeg(stream)
.format('mp4')
.size('320x?')
.videoBitrate('512k')
.videoCodec('libx264')
.fps(24)
.audioBitrate('96k')
.audioCodec('aac')
.audioFrequency(22050)
.audioChannels(2)
.on('error', function(err) {
console.log('an error happened: ' + err.message);
})
.pipe(res, { end:true });
});
var server = sampleApp.listen(SAMPLE_SERVER_PORT, function () {
console.log('Example app listening at http://%s:%s', server.address().address, SAMPLE_SERVER_PORT);
});
var videoServer = videoApp.listen(VIDEO_SERVER_PORT, function () {
console.log('Video Server listening at http://%s:%s', server.address().address, VIDEO_SERVER_PORT);
});The error (via console) :
an error happened: ffmpeg exited with code 1: Error opening filters!
ffmpeg configuration :
./configure --prefix=/usr/local --enable-gpl --enable-nonfree --enable-libass \
--enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus \
--enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxvid --enable-libfaac --enable-libfdk-aacAny input would be greatly appreciated.