Recherche avancée

Médias (91)

Autres articles (43)

  • Websites made ​​with MediaSPIP

    2 mai 2011, par

    This page lists some websites based on MediaSPIP.

  • Possibilité de déploiement en ferme

    12 avril 2011, par

    MediaSPIP peut être installé comme une ferme, avec un seul "noyau" hébergé sur un serveur dédié et utilisé par une multitude de sites différents.
    Cela permet, par exemple : de pouvoir partager les frais de mise en œuvre entre plusieurs projets / individus ; de pouvoir déployer rapidement une multitude de sites uniques ; d’éviter d’avoir à mettre l’ensemble des créations dans un fourre-tout numérique comme c’est le cas pour les grandes plate-formes tout public disséminées sur le (...)

  • Ajouter des informations spécifiques aux utilisateurs et autres modifications de comportement liées aux auteurs

    12 avril 2011, par

    La manière la plus simple d’ajouter des informations aux auteurs est d’installer le plugin Inscription3. Il permet également de modifier certains comportements liés aux utilisateurs (référez-vous à sa documentation pour plus d’informations).
    Il est également possible d’ajouter des champs aux auteurs en installant les plugins champs extras 2 et Interface pour champs extras.

Sur d’autres sites (6683)

  • ffprobe can not read a file generated by node JS createWriteStream() on AWS

    30 septembre 2016, par matthiasdv

    I have a setup running on AWS that triggers an AWS Lambda function when a video file is uploaded to an S3 bucket. The Lambda function is written in node and downloads the file, streams it to a temp working file and then executes ffprobe on it followed by an ffmpeg command.

    ffprobe throws the following error :

    [mov,mp4,m4a,3gp,3g2,mj2 @ 0x4ea8e20] error reading header download: Invalid data found when processing input

    The bug is hard to reproduce and occurs only half the time, which I believe to be because of the async nature of the program.

    My main function is as follows

    downloadFile(library.getDownloadStream, logger, sourceLocation, localFilePath)
           .then(() => ffprobe(logger))
           .then(() => ffmpeg(logger, keyPrefix))
           .then(() => removeDownload(logger, localFilePath))
           .then(() => uploadFiles(library.uploadToBucket, logger, keyPrefix))
           .then(data => invocation.callback())
           .catch(error => invocation.callback(error));

    The ffprobe Function :

    function downloadFile(downloadFunc, logger, sourceLocation, download) {
       return new Promise((resolve, reject) => {
           logger.log(`Starting download: ${sourceLocation.bucket} / ${sourceLocation.key}`);

           var downloadFile = createWriteStream(download);

           downloadFunc(sourceLocation.bucket, sourceLocation.key)
               .on('end', () => {
                   logger.log("closing writing stream");
                   downloadFile.end();

                   logger.log('Download finished');

                   resolve();
               })
               .on('error', reject)
               .pipe(downloadFile);
       });
    }

    Each build/update uploads the latest ffmpeg version to AWS. I can not reproduce this error locally.

    Why is ffprobe throwing this error regarding the header ?

    Update

    Logging the downloaded file’s filesize prints exactly the same amount of bytes, regardless of wether ffprobe is successful or not.

    However, when I set a timeOut before resolving the promise, the bug no longer occurs and ffprobe runs successfully each time :

    downloadFunc(sourceLocation.bucket, sourceLocation.key)
           .on('end', () => {

               logger.log('Download finished');

               // Filesize
               var meta = fs.statSync(download);
               var fileSizeInBytes = meta["size"];

               logger.log(fileSizeInBytes);

               // resolve();
               setTimeout(resolve, 1000);
           })
           .on('error', reject)
           .pipe(downloadFile);

    Why is this happening ?

  • Convert HLS stream to mp4 with Java [closed]

    18 avril 2017, par Wessel Oosthuizen

    I have a requirement to convert a HLS (m3u8) stream to something I can download from a web browser, with Java. Currently I play video clips via a remote HLS stream in the browser using video.js. But I can’t take that URL and grab the bytes for the end user to download it, like I can if it was a mp4 stream.

    I found the question below, which makes it seem possible using ffmpeg command line. I am familiar with the javacv library and FrameGrabber, etc... But I can’t figure out how to apply that library to this case.

    Converting an HLS (m3u8) to MP4

    Any ideas ?

    Thanks

  • ffmpeg installation on macOS for MoviePy fails with SSL error

    26 juillet 2018, par shmible

    I’m trying to write a Python program that uses MoviePy on Mac OS 10.11.16 to convert an MP4 file to GIF. I use :

    import moviepy.editor as mp

    and I get an error saying I need to call imageio.plugins.ffmpeg.download() so I can download ffmpeg. I use :

    import imageio
    imageio.plugins.ffmpeg.download()

    which gives me the following error :

    Imageio: 'ffmpeg.osx' was not found on your computer; downloading it now.
    Error while fetching file: <urlopen error="error" certificate="certificate" verify="verify" failed="failed">.
    Error while fetching file: <urlopen error="error" certificate="certificate" verify="verify" failed="failed">.
    Error while fetching file: <urlopen error="error" certificate="certificate" verify="verify" failed="failed">.
    Error while fetching file: <urlopen error="error" certificate="certificate" verify="verify" failed="failed">.
    Traceback (most recent call last):
     File "", line 1, in <module>
       imageio.plugins.ffmpeg.download()
     File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/imageio/plugins/ffmpeg.py", line 55, in download
       get_remote_file('ffmpeg/' + FNAME_PER_PLATFORM[plat])
     File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/imageio/core/fetching.py", line 121, in get_remote_file
       _fetch_file(url, filename)
     File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/imageio/core/fetching.py", line 177, in _fetch_file
       os.path.basename(file_name))
    OSError: Unable to download 'ffmpeg.osx'. Perhaps there is a no internet connection? If there is, please report this problem.
    </module></urlopen></urlopen></urlopen></urlopen>

    I definitely have an internet connection. I found this link, and tried installing with Homebrew and Static builds, but neither have worked. It seems like compiling it myself would be a little too advanced for me (I’ve only briefly looked into it). I used imageio.plugins.ffmpeg.download() on IDLE. I read something about using PyCharm to run the MoviePy code, but I get the same initial error. ffmpeg is currently in my /usr/local/bin folder. Any suggestions are welcome. Thank for your help.

    Edit : I’m using Python 3.6.1