
Advanced search
Medias (2)
-
GetID3 - Bloc informations de fichiers
9 April 2013, by
Updated: May 2013
Language: français
Type: Picture
-
GetID3 - Boutons supplémentaires
9 April 2013, by
Updated: April 2013
Language: français
Type: Picture
Other articles (21)
-
MediaSPIP Core : La Configuration
9 November 2010, byMediaSPIP Core fournit par défaut trois pages différentes de configuration (ces pages utilisent le plugin de configuration CFG pour fonctionner) : une page spécifique à la configuration générale du squelettes; une page spécifique à la configuration de la page d’accueil du site; une page spécifique à la configuration des secteurs;
Il fournit également une page supplémentaire qui n’apparait que lorsque certains plugins sont activés permettant de contrôler l’affichage et les fonctionnalités spécifiques de (...) -
Personnaliser en ajoutant son logo, sa bannière ou son image de fond
5 September 2013, byCertains thèmes prennent en compte trois éléments de personnalisation : l’ajout d’un logo; l’ajout d’une bannière l’ajout d’une image de fond;
-
Librairies et logiciels spécifiques aux médias
10 December 2010, byPour un fonctionnement correct et optimal, plusieurs choses sont à prendre en considération.
Il est important, après avoir installé apache2, mysql et php5, d’installer d’autres logiciels nécessaires dont les installations sont décrites dans les liens afférants. Un ensemble de librairies multimedias (x264, libtheora, libvpx) utilisées pour l’encodage et le décodage des vidéos et sons afin de supporter le plus grand nombre de fichiers possibles. Cf. : ce tutoriel; FFMpeg avec le maximum de décodeurs et (...)
On other websites (7079)
-
Feed output of one filter to the input of one filter multiple times with ffmpeg
27 August 2021, by kentcdoddsI have the following ffmpeg commands to create a podcast episode:


# remove all silence at start and end of the audio files
ffmpeg -i call.mp3 -af silenceremove=1:0:-50dB call1.mp3
ffmpeg -i response.mp3 -af silenceremove=1:0:-50dB response1.mp3

# remove silence longer than 1 second anywhere within the audio files
ffmpeg -i call1.mp3 -af silenceremove=stop_periods=-1:stop_duration=1:stop_threshold=-50dB call2.mp3
ffmpeg -i response1.mp3 -af silenceremove=stop_periods=-1:stop_duration=1:stop_threshold=-50dB response2.mp3

# normalize audio files
ffmpeg -i call2.mp3 -af loudnorm=I=-16:LRA=11:TP=0.0 call3.mp3
ffmpeg -i response2.mp3 -af loudnorm=I=-16:LRA=11:TP=0.0 response3.mp3

# cross fade audio files with intro/interstitial/outro
ffmpeg -i intro.mp3 -i call3.mp3 -i interstitial.mp3 -i response3.mp3 -i outro.mp3
 -filter_complex "[0][1]acrossfade=d=1:c2=nofade[a01];
 [a01][2]acrossfade=d=1:c1=nofade[a02];
 [a02][3]acrossfade=d=1:c2=nofade[a03];
 [a03][4]acrossfade=d=1:c1=nofade"
 output.mp3



While this "works" fine, I can't help but feel like it would be more efficient to do this all in one ffmpeg command. Based on what I found online this should be possible, but I don't understand the syntax well enough to know how to make it work. Here's what I tried:


ffmpeg -i intro.mp3 -i call.mp3 -i interstitial.mp3 -i response.mp3 -i outro.mp3
 -af [1]silenceremove=1:0:-50dB[trimmedCall]
 -af [3]silenceremove=1:0:-50dB[trimmedResponse]
 -af [trimmedCall]silenceremove=stop_periods=-1:stop_duration=1:stop_threshold=-50dB[noSilenceCall]
 -af [trimmedResponse]silenceremove=stop_periods=-1:stop_duration=1:stop_threshold=-50dB[noSilenceResponse]
 -af [noSilenceCall]loudnorm=I=-16:LRA=11:TP=0.0[call]
 -af [noSilenceResponse]loudnorm=I=-16:LRA=11:TP=0.0[response]
 -filter_complex "[0][call]acrossfade=d=1:c2=nofade[a01];
 [a01][2]acrossfade=d=1:c1=nofade[a02];
 [a02][response]acrossfade=d=1:c2=nofade[a03];
 [a03][4]acrossfade=d=1:c1=nofade"
 output.mp3



But I have a feeling I have a fundamental misunderstanding of this because I got this error which I don't understand:


Stream specifier 'call' in filtergraph description 
[0][call]acrossfade=d=1:c2=nofade[a01];
[a01][2]acrossfade=d=1:c1=nofade[a02];
[a02][response]acrossfade=d=1:c2=nofade[a03];
[a03][4]acrossfade=d=1:c1=nofade
 matches no streams.



For added context, I'm running all these commands through @ffmpeg/ffmpeg so that last command actually looks like this (in JavaScript):


await ffmpeg.run(
 '-i', 'intro.mp3',
 '-i', 'call.mp3',
 '-i', 'interstitial.mp3',
 '-i', 'response.mp3',
 '-i', 'outro.mp3',
 '-af', '[1]silenceremove=1:0:-50dB[trimmedCall]',
 '-af', '[3]silenceremove=1:0:-50dB[trimmedResponse]',
 '-af', '[trimmedCall]silenceremove=stop_periods=-1:stop_duration=1:stop_threshold=-50dB[noSilenceCall]',
 '-af', '[trimmedResponse]silenceremove=stop_periods=-1:stop_duration=1:stop_threshold=-50dB[noSilenceResponse]',
 '-af', '[noSilenceCall]loudnorm=I=-16:LRA=11:TP=0.0[call]',
 '-af', '[noSilenceResponse]loudnorm=I=-16:LRA=11:TP=0.0[response]',
 '-filter_complex', `
[0][call]acrossfade=d=1:c2=nofade[a01];
[a01][2]acrossfade=d=1:c1=nofade[a02];
[a02][response]acrossfade=d=1:c2=nofade[a03];
[a03][4]acrossfade=d=1:c1=nofade
 `,
 'output.mp3',
)



-
full m3u8 clip isn't getting generated from m3u8 file
12 January 2021, by Alan
const ffmpegPath = require('@ffmpeg-installer/ffmpeg').path;
const ffmpeg = require('fluent-ffmpeg');
const process = require('process');


const args = process.argv.slice(2);
if (args.length !== 4) {
 console.error('Incorrect number of arguments');
 process.exit(1);
 }
const startTime = args[0];
const timeDuration = args[1];
const inputFile = args[2];
const outputFile=args[3];

ffmpeg.setFfmpegPath(ffmpegPath);

ffmpeg(inputFile)
 .setStartTime(startTime)
 .setDuration(timeDuration)
 .output(outputFile)
 .on('end', function(err) {
 if(!err) { console.log('conversion Done') }
 })
 .on('error', function(err){
 console.log('error: ', err)
 }).run();







here is my index.js file
I am running this command on the terminal to generate a clip from the m3u8 file

node index.js 00:00:10 46 ./path/sample.m3u8 ./path/output.m3u8

The main problem is that it is not creating a clip for more than 13 seconds. For example, the above command should generate a 46s clip but it is going near 13 seconds. So I don't get what's wrong with that. Any clip less than 13 is perfectly fine.
Is there any way to fix that?



-
full m3u8 clip isn't getting generated from m3u8 file by node.js
13 January 2021, by Alanindex.js


const ffmpegPath = require('@ffmpeg-installer/ffmpeg').path;
const ffmpeg = require('fluent-ffmpeg');
const process = require('process');

const args = process.argv.slice(2);
if (args.length !== 4) {
 console.error('Incorrect number of arguments');
 process.exit(1);
}

const startTime = args[0];
const timeDuration = args[1];
const inputFile = args[2];
const outputFile=args[3];

ffmpeg.setFfmpegPath(ffmpegPath);

ffmpeg(inputFile)
 .setStartTime(startTime)
 .setDuration(timeDuration)
 .output(outputFile)
 .on('end', function(err) {
 if(!err) { 
 console.log('conversion Done') 
 }
 })
 .on('error', function(err){
 console.log('error: ', err)
 }).run();



I am running this command on the terminal to generate a clip from the m3u8 file

node index.js 00:00:10 46 ./path/sample.m3u8 ./path/output.m3u8


The main problem is that it is not creating a clip for more than 13 seconds. For example, the above command should generate a 46s clip but it is going near 13 seconds. So I don't get what is the issue. Any clip less than 13 works perfectly fine. Is there any way to fix that?


Here is a link to the m3u8 file https://mp4.to/downloads/0cb552cd749c4cf4b