Recherche avancée

Médias (91)

Autres articles (42)

  • Support de tous types de médias

    10 avril 2011

    Contrairement à beaucoup de logiciels et autres plate-formes modernes de partage de documents, MediaSPIP a l’ambition de gérer un maximum de formats de documents différents qu’ils soient de type : images (png, gif, jpg, bmp et autres...) ; audio (MP3, Ogg, Wav et autres...) ; vidéo (Avi, MP4, Ogv, mpg, mov, wmv et autres...) ; contenu textuel, code ou autres (open office, microsoft office (tableur, présentation), web (html, css), LaTeX, Google Earth) (...)

  • Supporting all media types

    13 avril 2011, par

    Unlike most software and media-sharing platforms, MediaSPIP aims to manage as many different media types as possible. The following are just a few examples from an ever-expanding list of supported formats : images : png, gif, jpg, bmp and more audio : MP3, Ogg, Wav and more video : AVI, MP4, OGV, mpg, mov, wmv and more text, code and other data : OpenOffice, Microsoft Office (Word, PowerPoint, Excel), web (html, CSS), LaTeX, Google Earth and (...)

  • Encoding and processing into web-friendly formats

    13 avril 2011, par

    MediaSPIP automatically converts uploaded files to internet-compatible formats.
    Video files are encoded in MP4, Ogv and WebM (supported by HTML5) and MP4 (supported by Flash).
    Audio files are encoded in MP3 and Ogg (supported by HTML5) and MP3 (supported by Flash).
    Where possible, text is analyzed in order to retrieve the data needed for search engine detection, and then exported as a series of image files.
    All uploaded files are stored online in their original format, so you can (...)

Sur d’autres sites (5768)

  • const command is not defined using ffmpeg and child_process

    19 avril 2021, par davidf214

    I'm doing a project and I have a problem. Im trying to generate a .mpd file for a VOD web. The problem is that when i upload a video, it gets me into the function but it says "const command is not defined".

    


    exports.encodeDash = (videoFile) => {
    return new Promise((resolve, reject) => {
      const parsedFile = path.parse(videoFile);
      const outputFile = `${parsedFile.name}.mpd`
      const outputFilePath = `/videos/dash/${outputFile}`;
      const outputFilemp4 = `${parsedFile.name}.mp4`;
      const outputFilePathmp4 = `/videos/${outputFilemp4}`

      if (parsedFile.ext == '.mp4'){
        let command=`ffmpeg -i ${videoFile} -c:v libx264 -r 24 -g 24 -b:v 1000k -maxrate 1000k -bufsize 2000k /videos/dash/${parsedFile.name}-1000k.mp4 && bento4/bin/mp4fragment --fragment-duration 2000 /videos/dash/${parsedFile.name}-1000k.mp4 /videos/dash/fragmentado/${parsedFile.name}_1000k-frag.mp4 &&
                     ffmpeg -i ${videoFile} -c:v libx264 -r 24 -g 24 -b:v 500k -maxrate 500k -bufsize 1000k /videos/dash/${parsedFile.name}-500k.mp4 && bento4/bin/mp4fragment --fragment-duration 2000 /videos/dash/${parsedFile.name}-500k.mp4 /videos/dash/fragmentado/${parsedFile.name}_500k-frag.mp4 &&
                     ffmpeg -i  ${videoFile} -c:v libx264 -r 24 -g 24 -b:v 250k -maxrate 250k -bufsize 500k /videos/dash/${parsedFile.name}-250k.mp4 && bento4/bin/mp4fragment --fragment-duration 2000 /videos/dash/${parsedFile.name}-250k.mp4 /videos/dash/fragmentado/${parsedFile.name}_250k-frag.mp4 &&
                    python bento4/utils/mp4-dash.py --use-segment-timeline -o ${outputFilePath} /videos/dash/fragmentado/${parsedFile.name}_1000k-frag.mp4 /videos/dash/fragmentado/${parsedFile.name}_500k-frag.mp4 /videos/dash/fragmentado/${parsedFile.name}_250k-frag.mp4`;
      } else {
        let command=`ffmpeg -y -i ${videoFile} ${outputFilePathmp4} && ffmpeg -i ${outputFilePathmp4} -c:v libx264 -r 24 -g 24 -b:v 1000k -maxrate 1000k -bufsize 2000k /videos/dash/${parsedFile.name}-1000k.mp4 && bento4/bin/mp4fragment --fragment-duration 2000 /videos/dash/${parsedFile.name}-1000k.mp4 /videos/dash/fragmentado/${parsedFile.name}_1000k-frag.mp4 &&
                     ffmpeg -i ${outputFilePathmp4} -c:v libx264 -r 24 -g 24 -b:v 500k -maxrate 500k -bufsize 1000k /videos/dash/${parsedFile.name}-500k.mp4 && bento4/bin/mp4fragment --fragment-duration 2000 /videos/dash/${parsedFile.name}-500k.mp4 /videos/dash/fragmentado/${parsedFile.name}_500k-frag.mp4 &&
                     ffmpeg -i  ${outputFilePathmp4} -c:v libx264 -r 24 -g 24 -b:v 250k -maxrate 250k -bufsize 500k /videos/dash/${parsedFile.name}-250k.mp4 && bento4/bin/mp4fragment --fragment-duration 2000 /videos/dash/${parsedFile.name}-250k.mp4 /videos/dash/fragmentado/${parsedFile.name}_250k-frag.mp4 &&
                    python bento4/utils/mp4-dash.py --use-segment-timeline -o ${outputFilePath} /videos/dash/fragmentado/${parsedFile.name}_1000k-frag.mp4 /videos/dash/fragmentado/${parsedFile.name}_500k-frag.mp4 /videos/dash/fragmentado/${parsedFile.name}_250k-frag.mp4`;
      }    

                    
      // Encode
 
      
      child_process.exec(command, (err, stdout, stderr) => {
        if (err) {
          return reject(new Error(`Encoding error. ${stderr}`));
        }
        resolve(outputFilePath)
       
      });

   
    });
    
}


    


    Just in case, it gives me problems in line child_process.exec(command, (err, stdout, stderr). Thanks !

    


  • How do I generate a file M3U8 compatible with fmp4 ?

    18 janvier 2019, par Dop

    I have a streaming solution that use MPEG-Dash protocol, and I would like to expose the same files on hls for IOS devices.

    I read that fmp4 is now compatible with hls, so I thought that this could be done

    When I generate may mpd file with this command :

    MP4Box -dash 33000 -frag 33000 -out video.mpd -profile dashavc264:onDemand original.mp4#audio original.mp4#video

    what I want is to not duplicate files, and use my generated Dash files with a HLS manifest file.

  • Compiling ffmpeg for iOS and gas-preprocessor.pl

    16 mai 2017, par user500

    I want to compile ffmpeg for iOS. I did it a few times before. But now I’m on clean new Mavericks and on configure I’m always getting

    Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
    Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
    GNU assembler not found, install gas-preprocessor

    If you think configure made a mistake, make sure you are using the latest
    version from Git.  If the latest version fails, report the problem to the
    ffmpeg-user@ffmpeg.org mailing list or IRC #ffmpeg on irc.freenode.net.
    Include the log file "config.log" produced by configure as this will help
    solving the problem.

    I have current Xcode installed. Also brews. And current gas-preprocessor.pl (https://github.com/yuvi/gas-preprocessor) in usr/bin and also in usr/local/bin.


    On perl /usr/bin/gas-preprocessor.pl gcc I’m getting Unrecognized input filetype at /usr/bin/gas-preprocessor.pl line 33.


    This config works :

    ./configure \
    --extra-cflags='-arch arm64 -mios-version-min=7.0 -mthumb' \
    --extra-ldflags='-arch arm64 -mios-version-min=7.0' \
    --enable-cross-compile \
    --arch=arm64 \
    --target-os=darwin \
    --cc=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang \
    --sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk \
    --prefix=arm64 \
    --disable-doc \
    --disable-shared \
    --disable-everything \
    --enable-static \
    --enable-pic \
    --disable-muxers \
    --enable-muxer=flv \
    --disable-demuxers \
    --enable-demuxer=h264 \
    --enable-demuxer=pcm_s16le \
    --disable-devices \
    --disable-parsers \
    --enable-parser=h264 \
    --disable-encoders \
    --enable-encoder=aac \
    --disable-decoders \
    --enable-decoder=h264 \
    --enable-decoder=pcm_s16le \
    --disable-protocols \
    --enable-protocol=rtmp \
    --disable-filters \
    --disable-bsfs

    This config throws error above (GNU assembler not found, install gas-preprocessor) :

    ./configure \
    --cpu=cortex-a8 \
    --extra-cflags='-arch armv7 -mios-version-min=7.0 -mthumb' \
    --extra-ldflags='-arch armv7 -mios-version-min=7.0' \
    --enable-cross-compile \
    --arch=armv7 \
    --target-os=darwin \
    --cc=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang \
    --sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk \
    --prefix=armv7 \
    --disable-doc \
    --disable-shared \
    --disable-everything \
    --enable-static \
    --enable-pic \
    --disable-muxers \
    --enable-muxer=flv \
    --disable-demuxers \
    --enable-demuxer=h264 \
    --enable-demuxer=pcm_s16le \
    --disable-devices \
    --disable-parsers \
    --enable-parser=h264 \
    --disable-encoders \
    --enable-encoder=aac \
    --disable-decoders \
    --enable-decoder=h264 \
    --enable-decoder=pcm_s16le \
    --disable-protocols \
    --enable-protocol=rtmp \
    --disable-filters \
    --disable-bsfs