Recherche avancée

Médias (91)

Autres articles (102)

  • Multilang : améliorer l’interface pour les blocs multilingues

    18 février 2011, par

    Multilang est un plugin supplémentaire qui n’est pas activé par défaut lors de l’initialisation de MediaSPIP.
    Après son activation, une préconfiguration est mise en place automatiquement par MediaSPIP init permettant à la nouvelle fonctionnalité d’être automatiquement opérationnelle. Il n’est donc pas obligatoire de passer par une étape de configuration pour cela.

  • MediaSPIP v0.2

    21 juin 2013, par

    MediaSPIP 0.2 est la première version de MediaSPIP stable.
    Sa date de sortie officielle est le 21 juin 2013 et est annoncée ici.
    Le fichier zip ici présent contient uniquement les sources de MediaSPIP en version standalone.
    Comme pour la version précédente, il est nécessaire d’installer manuellement l’ensemble des dépendances logicielles sur le serveur.
    Si vous souhaitez utiliser cette archive pour une installation en mode ferme, il vous faudra également procéder à d’autres modifications (...)

  • MediaSPIP version 0.1 Beta

    16 avril 2011, par

    MediaSPIP 0.1 beta est la première version de MediaSPIP décrétée comme "utilisable".
    Le fichier zip ici présent contient uniquement les sources de MediaSPIP en version standalone.
    Pour avoir une installation fonctionnelle, il est nécessaire d’installer manuellement l’ensemble des dépendances logicielles sur le serveur.
    Si vous souhaitez utiliser cette archive pour une installation en mode ferme, il vous faudra également procéder à d’autres modifications (...)

Sur d’autres sites (13196)

  • How to apply an ffmpeg audio effect only on a part of a video ?

    25 mars 2021, par Michael Ben Haym

    
My question is how can I apply an ffmpeg audio effect only on a certain part of a video and not on 100% of the video.
    
I have for example the following command :
    


    ffmpeg -i input.mp4 -filter_complex "afftfilt=real='hypot(re,im)*sin(0)':imag='hypot(re,im)*cos(0)':win_size=512:overlap=0.75" output.mp4


    


    this command works perfectly for me but if for example I have a video of 30 seconds and want the effect to be applied only on seconds 20-25, how do I do it ?
    
Thanks !

    


  • Rewrite zip task to basic task, extracting the file list and zip file name.

    2 mars 2012, par Jörn Zaefferer

    m grunt.js Rewrite zip task to basic task, extracting the file list and zip file name.

  • Can not find file with ffmpeg

    3 août 2018, par P.Ung

    I am programming a server in node.js to process a audio file.
    I save the file with this code :

    app.use(upload());
    app.get("/", function (req, res) {
    res.sendFile("index.html")
    });
    //Uploaded files will be saved
    app.post("/", function (req, res) {
    if (req.files) {
       var file = req.files.filename,
           filename = file.name;
       file.mv("./upload/" + filename, function (err) {
           if (err) {
               console.log("err");
           }
           else {
               res.send("Done");
               console.log(filename);
               convert(filename);

           }
       })
    }
    })

    I save the file in my upload directory. There everthing works great but now comes the problem.
    I convert the file with ffmpeg

    function convert(filename) {    
    var realName = "./upload/" + filename;
    var newName = "./output/" + filename.substr(0, filename.length - 4) + ".flac";
    ffmpegN = ffmpeg(realName);
    ffmpegN.audioBitrate(16).audioFrequency(16000).withAudioCodec('flac').format("flac").save(outputFile);

    ffmpeg(realName)
       .toFormat('flac')
       .on('error', (err) => {
           console.log('An error occurred: ' + err.message);
       })
       .on('progress', (progress) => {
           // console.log(JSON.stringify(progress));
           console.log('Processing: ' + progress.targetSize + ' KB converted');
       })
       .on('end', () => {
           console.log('Processing finished !');
       })
       .save(newName);//path where you want to save your file    
    SpeechToText(newName);
    }

    Then I want to pass this file to the google speech api. But then I get the error that the file is not found
    Here is the code for the Speech Api :

    function SpeechToText(path) {
    // The name of the audio file to transcribe
    const fileName = path;

    // Reads a local audio file and converts it to base64
    const file = fs.readFileSync(fileName);
    const audioBytes = file.toString('base64');

    // The audio file's encoding, sample rate in hertz, and BCP-47 language code
    const audio = {
       content: audioBytes,
    };
    const config = {
       encoding: 'FLAC',        
       languageCode: 'de-DE',
    };
    const request = {
       audio: audio,
       config: config,
    };

    // Detects speech in the audio file
    client
       .recognize(request)
       .then(data => {
           const response = data[0];
           const transcription = response.results
               .map(result => result.alternatives[0].transcript)
               .join('\n');
           console.log(`Transcription: ${transcription}`);
       })
       .catch(err => {
           console.error('ERROR:', err);
       });
    }

    The thing is that if I upload a file everything works. But if I try it for a second time the error occurs :

    fs.js:646
    return binding.open(pathModule._makeLong(path), stringToFlags(flags), mode);
                ^

    Error: ENOENT: no such file or directory, open                
    'C:\Users\paulu\desktop\API\output\sample.flac'
    at Object.fs.openSync (fs.js:646:18)
    at Object.fs.readFileSync (fs.js:551:33)
    at SpeechToText (C:\Users\paulu\desktop\API\server.js:68:21)
    at convert (C:\Users\paulu\desktop\API\server.js:121:5)
    at C:\Users\paulu\desktop\API\server.js:50:17
    at doMove (C:\Users\paulu\desktop\API\node_modules\express-
    fileupload\lib\index.js:152:17)
    at WriteStream.<anonymous> (C:\Users\paulu\desktop\API\node_modules\express-
    fileupload\lib\in                             dex.js:182:15)
    at emitNone (events.js:106:13)
    at WriteStream.emit (events.js:208:7)
    at fs.close (fs.js:2094:12)
    </anonymous>

    Thank you for all answers !