Recherche avancée

Médias (1)

Mot : - Tags -/bug

Autres articles (80)

  • Le profil des utilisateurs

    12 avril 2011, par

    Chaque utilisateur dispose d’une page de profil lui permettant de modifier ses informations personnelle. Dans le menu de haut de page par défaut, un élément de menu est automatiquement créé à l’initialisation de MediaSPIP, visible uniquement si le visiteur est identifié sur le site.
    L’utilisateur a accès à la modification de profil depuis sa page auteur, un lien dans la navigation "Modifier votre profil" est (...)

  • Configurer la prise en compte des langues

    15 novembre 2010, par

    Accéder à la configuration et ajouter des langues prises en compte
    Afin de configurer la prise en compte de nouvelles langues, il est nécessaire de se rendre dans la partie "Administrer" du site.
    De là, dans le menu de navigation, vous pouvez accéder à une partie "Gestion des langues" permettant d’activer la prise en compte de nouvelles langues.
    Chaque nouvelle langue ajoutée reste désactivable tant qu’aucun objet n’est créé dans cette langue. Dans ce cas, elle devient grisée dans la configuration et (...)

  • XMP PHP

    13 mai 2011, par

    Dixit Wikipedia, XMP signifie :
    Extensible Metadata Platform ou XMP est un format de métadonnées basé sur XML utilisé dans les applications PDF, de photographie et de graphisme. Il a été lancé par Adobe Systems en avril 2001 en étant intégré à la version 5.0 d’Adobe Acrobat.
    Étant basé sur XML, il gère un ensemble de tags dynamiques pour l’utilisation dans le cadre du Web sémantique.
    XMP permet d’enregistrer sous forme d’un document XML des informations relatives à un fichier : titre, auteur, historique (...)

Sur d’autres sites (9779)

  • POST http://localhost:3000/api/video/thumbnail 500 (Internal Server Error) MongoDB and FFmpeg

    5 juillet 2022, par VoicedCreator

    I am trying to insert a thumbnail on my page using POST and im getting this error
I want to screenshot a video using FFmpeg

    


    const express = require('express');
const router = express.Router();
const multer = require('multer');
var ffmpeg = require('fluent-ffmpeg');
const { User } = require("../models/User");

const { auth } = require("../middleware/auth");
const storage = multer.diskStorage({
    destination: function (req, file, cb) {
      cb(null, 'uploads/')
    },
    filename: function (req, file, cb) {
      cb(null, `${Date.now()}_${file.originalname}`)
    },
    fileFilter: (req, file, cb) => {
        const ext = path.extname(file.originalname);
        if(ext !== '.mp4' || ext !== '.mov' || ext !== '.wmv'){
            return cb(res.status(400).end('Solo archivos mp4-mov-wmv son aceptados'), false);
        }
        cb(null, true)
    }
  })
  
  const upload = multer({ storage: storage }).single("file")


//=================================
//             User
//=================================

router.post("/uploadfiles", (req, res) => {

    upload(req, res, err => {
        if(err) {
            return res.json({ success: false, err })
        }
        return res.json({ success: true, filePath: res.req.file.path, fileName: res.req.file.filename })
    })

});

router.post("/thumbnail", (req, res) => {


    let filePath = ""
    let fileDuration = ""


    ffmpeg.ffprobe(req.body.url, function (err, metadata) {
        console.dir(metadata); // all metadata
        console.log(metadata.format.duration);
        console.log(metadata) 
        fileDuration = metadata.format.duration
    });


    ffmpeg(req.body.url)
        .on('filenames', function (filenames) {
            console.log('Will generate ' + filenames.join(', '))
            console.log(filenames)


            filePath = "uploads/thumbnails/" + filenames[0]
        })
        .on('end', function () {
            console.log('Screenshots taken');
            return res.json({ success: true, url: filePath, fileName: filenames, fileDuration: fileDuration });
        })
        .on('error', function (err) {
            console.error(err);
            return res.json({ success: false, err });
        })
        .screenshots({
            // Will take screenshots at 20%, 40%, 60% and 80% of the video
            count: 3,
            folder: 'uploads/thumbnails',
            size: '320x240',
            //'%b': input basename (filename w/o extension)
            filename: 'thumbnail-%b.png'
        })
});




router.post("/thumbnail", (req, res) => {


    let filePath = ""
    let fileDuration = ""


    ffmpeg(req.body.url)
        .on('filenames', function (filenames) {
            console.log('Will generate ' + filenames.join(', '))
            console.log(filenames)


            filePath = "uploads/thumbnails/" + filenames[0]
        })
        .on('end', function () {
            console.log('Screenshots taken');
            return res.json({ success: true, url: filePath, fileName: filenames, fileDuration: fileDuration });
        })
        .on('error', function (err) {
            console.error(err);
            return res.json({ success: false, err });
        })
        .screenshots({
            // Will take screenshots at 20%, 40%, 60% and 80% of the video
            count: 3,
            folder: 'uploads/thumbnails',
            size: '320x240',
            //'%b': input basename (filename w/o extension)
            filename: 'thumbnail-%b.png'
        })
});



module.exports = router;


    


    Error : POST http://localhost:3000/api/video/thumbnail 500 (Internal Server Error)
TypeError : Cannot read properties of undefined (reading 'format')

    


    I think is because ffmpeg is not connecting to mongodb

    


  • FFMPEG : how to take 3000 snapshots faster ?

    28 septembre 2024, par Valuex

    I've got a video with the length of 200 minutes.
    
And also got the timestamp for each snapshot that will be taken.
    
I've tried to use ffmpeg to take snapshot with following commands.
    
However, it is very slow, and takes about 10 seconds for each snapshot.
    
Is there any way that can speed up ? Thanks.

    


    OS : win10 ; PC : Intel NUC8i5

    


    


    ffmpeg -i 1.mp4 -ss 00:00:04 -vframes 1 000004.jpg
    
ffmpeg -i 1.mp4 -ss 00:00:08 -vframes 1 000008.jpg
    
ffmpeg -i 1.mp4 -ss 00:00:12 -vframes 1 000012.jpg
    
ffmpeg -i 1.mp4 -ss 00:00:16 -vframes 1 000016.jpg
    
ffmpeg -i 1.mp4 -ss 00:00:17 -vframes 1 000017.jpg
    
ffmpeg -i 1.mp4 -ss 00:00:20 -vframes 1 000020.jpg
    
ffmpeg -i 1.mp4 -ss 00:00:24 -vframes 1 000024.jpg
    
ffmpeg -i 1.mp4 -ss 00:00:26 -vframes 1 000026.jpg
    
ffmpeg -i 1.mp4 -ss 00:00:28 -vframes 1 000028.jpg
    
ffmpeg -i 1.mp4 -ss 00:00:32 -vframes 1 000032.jpg
    
ffmpeg -i 1.mp4 -ss 00:00:36 -vframes 1 000036.jpg
    
ffmpeg -i 1.mp4 -ss 00:00:38 -vframes 1 000038.jpg
    
ffmpeg -i 1.mp4 -ss 00:00:43 -vframes 1 000043.jpg

    


    


  • Evolution #3000 (Fermé) : box-sizing et mediabox

    24 octobre 2014, par cedric -