Recherche avancée

Médias (91)

Autres articles (93)

  • MediaSPIP 0.1 Beta version

    25 avril 2011, par

    MediaSPIP 0.1 beta is the first version of MediaSPIP proclaimed as "usable".
    The zip file provided here only contains the sources of MediaSPIP in its standalone version.
    To get a working installation, you must manually install all-software dependencies on the server.
    If you want to use this archive for an installation in "farm mode", you will also need to proceed to other manual (...)

  • Participer à sa traduction

    10 avril 2011

    Vous pouvez nous aider à améliorer les locutions utilisées dans le logiciel ou à traduire celui-ci dans n’importe qu’elle nouvelle langue permettant sa diffusion à de nouvelles communautés linguistiques.
    Pour ce faire, on utilise l’interface de traduction de SPIP où l’ensemble des modules de langue de MediaSPIP sont à disposition. ll vous suffit de vous inscrire sur la liste de discussion des traducteurs pour demander plus d’informations.
    Actuellement MediaSPIP n’est disponible qu’en français et (...)

  • HTML5 audio and video support

    13 avril 2011, par

    MediaSPIP 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 (12503)

  • Reason for write EPIPE error in my implentation ?

    18 mai 2019, par Chrisl446

    So I currently have a small node.js express application for uploading images using sharp & thumbnails created from .mp4 videos using simple-thumbnail package/ffmpeg.

    The app works perfectly when uploading an image, the file is uploaded sharp processes it, then passes it along and it ends up in my amazon s3 bucket as expected. No errors what so ever.

    However, when I upload an mp4 video that I use to create and upload a thumbnail from by using simple-thumbnails genThumbnail() function, which uses ffmpeg child process, the thumbnail uploads successully to my s3 bucket, HOWEVER my app returns an EPIPE write error and NOT the url of the uploaded files url on S3.

    What is causing this and how can I fix it, considering it’s pretty much working aside from the EPIPE error that is being returned ? Thanks ahead !

    The packages of concern used are as follows :

    aws-sdk

    multer

    multer-s3 <- this one with the transform option, not the standard multer-s3 package

    simple-thumbnail

    const express = require('express');
    const app = express();

    const aws = require('aws-sdk');
    const multer = require('multer');
    const multerS3 = require('multer-s3'); //github:gmenih341/multer-s3 version of multer-s3 with transform option
    const sharp = require('sharp');
    const genThumbnail = require('simple-thumbnail');

    app.use((req, res, next) => {
       res.header('Access-Control-Allow-Origin', '*');
       res.header('Access-Control-Allow-Headers', 'Orgin, X-Requested-With, Content-Type, Accept, Authorization');
       if (req.method === 'OPTIONS') {
           res.header('Access-Control-Allow-Methods', 'POST');
           return res.status(200).json({});
       }
       next();
    });

    let uniqueFileName;
    let s3BucketName = 'bucketname';

    let s3 = new aws.S3({
       accessKeyId: ACCESS_KEY,
       secretAccessKey: SECRET_KEY,
       Bucket: s3BucketName
    });

    let upload = multer({
       storage: multerS3({
           s3: s3,
           bucket: s3BucketName,
           acl: 'public-read',
           cacheControl: 'max-age=31536000',
           contentType: multerS3.AUTO_CONTENT_TYPE,
           shouldTransform: true,
           transforms: [{
               id: 'thumbnail',
               key: function (req, file, cb) {
                   uniqueFileName = Date.now().toString();
                   cb(null, uniqueFileName + '.jpg')
               },
               transform: function (req, file, cb) {
                   if (file.mimetype == 'video/mp4') {
                       //When using simple-thumbnails' getThumbnail() on an mp4 video it uploads succesfully to S3 but node returns EPIPE write error
                       cb(null, genThumbnail(null, null, '250x?'))
                   } else {
                       //When using sharp to resize an image this works perfectly and retuns the JSON below with the files S3 URL
                       cb(null, sharp().jpeg())
                   }

               }
           }]
       })
    });

    app.post('/upload', upload.array('theFile'), (req, res) => {
       res.json({
           fileS3Url: 'https://s3.amazonaws.com/'+ s3BucketName +'/' + uniqueFileName
       });
    });

    app.use((req, res, next) => {
       const error = new Error('Not found');
       error.status = 404;
       next(error);
    });

    app.use((error, req, res, next) => {
       res.status(error.status || 500);
       res.json({
           error: {
               message: error.message
           }
       });
    });

    module.exports = app;
  • swscale/aarch64 : use multiply accumulate and increase vector factor to 4

    17 novembre 2019, par Sebastian Pop
    swscale/aarch64 : use multiply accumulate and increase vector factor to 4
    

    This patch implements ff_hscale_8_to_15_neon with NEON fused multiply accumulate
    and bumps the vectorization factor from 2 to 4.
    The speedup is of 25% on Graviton1 A1 instances based on A-72 cpus :

    $ ffmpeg -nostats -f lavfi -i testsrc2=4k:d=2 -vf bench=start,scale=1024x1024,bench=stop -f null -
    before : t:0.040303 avg:0.040287 max:0.040371 min:0.039214
    after : t:0.032168 avg:0.032215 max:0.033081 min:0.032146

    The speedup is of 39% on Graviton2 m6g instances based on Neoverse-N1 cpus :
    $ ffmpeg -nostats -f lavfi -i testsrc2=4k:d=2 -vf bench=start,scale=1024x1024,bench=stop -f null -
    before : t:0.019446 avg:0.019423 max:0.019493 min:0.019181
    after : t:0.014015 avg:0.014096 max:0.015018 min:0.013971

    Tested with `make check` on aarch64-linux.

    Signed-off-by : Sebastian Pop <spop@amazon.com>
    Reviewed-by : Jean-Baptiste Kempf <jb@videolan.org>
    Signed-off-by : Michael Niedermayer <michael@niedermayer.cc>

    • [DH] libswscale/aarch64/hscale.S
  • Reason for write EPIPE error in my implementation ?

    25 mai 2019, par Chrisl446

    I currently have a small node.js express application for uploading images using sharp & thumbnails created from .mp4 videos using simple-thumbnail package/ffmpeg.

    The app works perfectly when uploading an image, the file is uploaded sharp processes it, then passes it along and it ends up in my amazon s3 bucket as expected. No errors what so ever.

    However, when I upload an mp4 video that I use to create and upload a thumbnail from by using simple-thumbnails genThumbnail() function, which uses ffmpeg child process, the thumbnail uploads successully to my s3 bucket, HOWEVER my app returns an EPIPE write error and NOT the url of the uploaded files url on S3.

    What is causing this and how can I fix it, considering it’s pretty much working aside from the EPIPE error that is being returned ? Thanks ahead !

    The packages of concern used are as follows :

    aws-sdk

    multer

    multer-s3 <- this one with the transform option, not the standard multer-s3 package

    simple-thumbnail

    const express = require('express');
    const app = express();

    const aws = require('aws-sdk');
    const multer = require('multer');
    const multerS3 = require('multer-s3'); //github:gmenih341/multer-s3 version of multer-s3 with transform option
    const sharp = require('sharp');
    const genThumbnail = require('simple-thumbnail');

    app.use((req, res, next) => {
       res.header('Access-Control-Allow-Origin', '*');
       res.header('Access-Control-Allow-Headers', 'Orgin, X-Requested-With, Content-Type, Accept, Authorization');
       if (req.method === 'OPTIONS') {
           res.header('Access-Control-Allow-Methods', 'POST');
           return res.status(200).json({});
       }
       next();
    });

    let uniqueFileName;
    let s3BucketName = 'bucketname';

    let s3 = new aws.S3({
       accessKeyId: ACCESS_KEY,
       secretAccessKey: SECRET_KEY,
       Bucket: s3BucketName
    });

    let upload = multer({
       storage: multerS3({
           s3: s3,
           bucket: s3BucketName,
           acl: 'public-read',
           cacheControl: 'max-age=31536000',
           contentType: multerS3.AUTO_CONTENT_TYPE,
           shouldTransform: true,
           transforms: [{
               id: 'thumbnail',
               key: function (req, file, cb) {
                   uniqueFileName = Date.now().toString();
                   cb(null, uniqueFileName + '.jpg')
               },
               transform: function (req, file, cb) {
                   if (file.mimetype == 'video/mp4') {
                       //When using simple-thumbnails' getThumbnail() on an mp4 video it uploads succesfully to S3 but node returns EPIPE write error
                       cb(null, genThumbnail(null, null, '250x?'))
                   } else {
                       //When using sharp to resize an image this works perfectly and retuns the JSON below with the files S3 URL
                       cb(null, sharp().jpeg())
                   }

               }
           }]
       })
    });

    app.post('/upload', upload.array('theFile'), (req, res) => {
       res.json({
           fileS3Url: 'https://s3.amazonaws.com/'+ s3BucketName +'/' + uniqueFileName
       });
    });

    app.use((req, res, next) => {
       const error = new Error('Not found');
       error.status = 404;
       next(error);
    });

    app.use((error, req, res, next) => {
       res.status(error.status || 500);
       res.json({
           error: {
               message: error.message
           }
       });
    });

    module.exports = app;