
Recherche avancée
Autres articles (44)
-
L’espace de configuration de MediaSPIP
29 novembre 2010, parL’espace de configuration de MediaSPIP est réservé aux administrateurs. Un lien de menu "administrer" est généralement affiché en haut de la page [1].
Il permet de configurer finement votre site.
La navigation de cet espace de configuration est divisé en trois parties : la configuration générale du site qui permet notamment de modifier : les informations principales concernant le site (...) -
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 (...) -
HTML5 audio and video support
13 avril 2011, parMediaSPIP uses HTML5 video and audio tags to play multimedia files, taking advantage of the latest W3C innovations supported by modern browsers.
The MediaSPIP player used has been created specifically for MediaSPIP and can be easily adapted to fit in with a specific theme.
For older browsers the Flowplayer flash fallback is used.
MediaSPIP allows for media playback on major mobile platforms with the above (...)
Sur d’autres sites (4561)
-
Convert wav to mp3 using Meteor FS Collections on Startup
28 juillet 2015, par TheBetterJORTI’m trying to transcode all wav files into a mp3 using Meteor and Meteor FS Collections. My code works when I upload a wav file to the uploader — That is it will convert the wav to a mp3 and allow me to play the file. But, I’m looking for a Meteor Solution that will transcode and add the file to the DB if the file is a wav and exist in a certain directory. According to the Meteor FSCollection it should be possible if the files have already been stored. Here is their example code : *GM is for ImageMagik, I’ve replaced gm with ffmpeg and installed ffmpeg from atmosphereJS.
Images.find().forEach(function (fileObj) {
var readStream = fileObj.createReadStream('images');
var writeStream = fileObj.createWriteStream('images');
gm(readStream).swirl(180).stream().pipe(writeStream);
});I’m using Meteor-CollectionFS [https://github.com/CollectionFS/Meteor-CollectionFS]-
if (Meteor.isServer) {
Meteor.startup(function () {
Wavs.find().forEach(function (fileObj) {
var readStream = fileObj.createReadStream('.wavs/mp3');
var writeStream = fileObj.createWriteStream('.wavs/mp3');
this.ffmpeg(readStream).audioCodec('libmp3lame').format('mp3').pipe(writeStream);
Wavs.insert(fileObj, function(err) {
console.log(err);
});
});
});
}And here is my FS.Collection and FS.Store information. Currently everything resides in one JS file.
Wavs = new FS.Collection("wavs", {
stores: [new FS.Store.FileSystem("wav"),
new FS.Store.FileSystem("mp3",
{
path: '~/wavs/mp3',
beforeWrite: function(fileObj) {
return {
extension: 'mp3',
fileType: 'audio/mp3'
};
},
transformWrite: function(fileObj, readStream, writeStream) {
ffmpeg(readStream).audioCodec('libmp3lame').format('mp3').pipe(writeStream);
}
})]
});When I try and insert the file into the db on the server side I get this error : MongoError : E11000 duplicate key error index :
Otherwise, If I drop a wav file into the directory and restart the server, nothing happens. I’m new to meteor, please help. Thank you.
-
Gnuplot how to set a variable to standard-input if not passed
27 août 2020, par DDSI have a gnuplot script (plot.script) that is invoked like


C:> ffmpeg -i '.\my_awesome_audio_file.wav' -filter_complex aformat=channel_layouts=mono -acodec pcm_s16le -ar 4000 -f data - | gnuplot -e "fileout='plot';fileformat='png';wid=500;" .\plot.script 



Now I'd want to default filein variable to stdin if it is not passed as argument. This because I want to be able to call this script as a 1-liner command with ffmpeg data generation and also as step-by-step procedure


My idea was to use


if(!exists('filein')){
filein = '-';
}



but this throws
warning: Skipping data file with no valid points


if i print the variable datafile I got
-
(I expected something like stdin).

this is the
plot.script
script :


if(!exists('filein')){
 filein = '-';
 }

if (!exists("hei")){
 hei = 4444;
 }
if (!exists("wid")){
 wid = 5555;
 }
if(!exists("fileformat")){
 fileformat = 'png';
 }
if(!exists("fileout")){
 fileout = 'risultato';
 }
 
fileout = fileout . '.' . fileformat;
 
if(!exists("dataformat")){
 dataformat = '%int16';
 }
if(fileformat eq 'png'){
 set terminal png transparent size larghezza,altezza;
 
 }else{
 set terminal fileformat size wid,hei;
 }
 set output fileout;
 unset key;
 unset tics;
 unset border;
 set lmargin 0;
 set rmargin 0;
 set tmargin 0;
 set bmargin 0;


print filein;
plot filein binary filetype=bin format=dataformat endian=little array=1:0 with lines linecolor "0x009900";



But I also want to call this command-by-command :
generate the data-file :


c:> ffmpeg -i '.\my_awesome_audio_file.wav' -filter_complex aformat=channel_layouts=mono -acodec pcm_s16le -ar 4000 -f data audio.dat



plot the data :


c:> gnuplot -e "filein='audio.dat';fileout='plot';fileformat='png';wid=500;" .\plot.script



-
Converting videos to flv using ffmpeg
6 janvier 2012, par user703526In my c# application, i am writing code for converting any video format to flv format. For this FFMPEG is used.
Some times an exceptions is occuring like :
Attempted to read or write protected memory. This is often an indication that other memory is corrupt
Below is my code from where the exception throwing,
IntPtr pFormatContext;
FFmpeg.av_register_all();
int ret;
ret = FFmpeg.av_open_input_file(out pFormatContext, this.Filename, IntPtr.Zero, 0, IntPtr.Zero);
if (ret < 0)
{
Trace.WriteLine("couldn't open input file");
FFmpeg.av_free_static();
return;
}
try
{
ret = FFmpeg.av_find_stream_info(pFormatContext);
if (ret < 0)
{
Trace.WriteLine("couldnt find stream informaion");
FFmpeg.av_close_input_file(pFormatContext);
FFmpeg.av_free_static();
return;
}
FFmpeg.AVFormatContext formatContext = (FFmpeg.AVFormatContext)Marshal.PtrToStructure(pFormatContext, typeof(FFmpeg.AVFormatContext));
Duration = formatContext.duration / FFmpeg.AV_TIME_BASE;
for (int i = 0; i < formatContext.nb_streams; ++i)
{
FFmpeg.AVStream stream = (FFmpeg.AVStream)Marshal.PtrToStructure(formatContext.streams[i], typeof(FFmpeg.AVStream));
FFmpeg.AVCodecContext codec = (FFmpeg.AVCodecContext)Marshal.PtrToStructure(stream.codec, typeof(FFmpeg.AVCodecContext));
if (codec.codec_type == FFmpeg.CodecType.CODEC_TYPE_VIDEO)
{
Height = codec.height;
Width = codec.width;
Type = FileType.flv;
MimeType = "video/x-flv";
}
}
}
catch (Exception ex)
{
Trace.WriteLine("FFMpeg failed to understand the file");
}
FFmpeg.av_close_input_file(pFormatContext);
FFmpeg.av_free_static();
}And from the above code this
ret = FFmpeg.av_find_stream_info(pFormatContext);
line throws memory corrupt exception.
Please help me to solve this issue.