Recherche avancée

Médias (0)

Mot : - Tags -/presse-papier

Aucun média correspondant à vos critères n’est disponible sur le site.

Autres articles (98)

  • Des sites réalisés avec MediaSPIP

    2 mai 2011, par

    Cette page présente quelques-uns des sites fonctionnant sous MediaSPIP.
    Vous pouvez bien entendu ajouter le votre grâce au formulaire en bas de page.

  • Support audio et vidéo HTML5

    10 avril 2011

    MediaSPIP utilise les balises HTML5 video et audio pour la lecture de documents multimedia en profitant des dernières innovations du W3C supportées par les navigateurs modernes.
    Pour les navigateurs plus anciens, le lecteur flash Flowplayer est utilisé.
    Le lecteur HTML5 utilisé a été spécifiquement créé pour MediaSPIP : il est complètement modifiable graphiquement pour correspondre à un thème choisi.
    Ces technologies permettent de distribuer vidéo et son à la fois sur des ordinateurs conventionnels (...)

  • De l’upload à la vidéo finale [version standalone]

    31 janvier 2010, par

    Le chemin d’un document audio ou vidéo dans SPIPMotion est divisé en trois étapes distinctes.
    Upload et récupération d’informations de la vidéo source
    Dans un premier temps, il est nécessaire de créer un article SPIP et de lui joindre le document vidéo "source".
    Au moment où ce document est joint à l’article, deux actions supplémentaires au comportement normal sont exécutées : La récupération des informations techniques des flux audio et video du fichier ; La génération d’une vignette : extraction d’une (...)

Sur d’autres sites (4436)

  • ffmpeg not available on Oracle Linux 9 update 3 [closed]

    19 janvier 2024, par Red Cricket

    I cannot figure out how to install ffmpeg on a Oracle Linux 9 update 3 (RHCK).

    


    [root@snc-ol93-rhck ~]# dnf install ffmpeg-free
Last metadata expiration check: 0:14:16 ago on Wed 17 Jan 2024 04:48:34 PM UTC.
Error:
 Problem: package ffmpeg-free-5.1.4-2.el9.x86_64 from ol9_developer_EPEL requires libavfilter.so.8()(64bit), but none of the providers can be installed
  - package ffmpeg-free-5.1.4-2.el9.x86_64 from ol9_developer_EPEL requires libavfilter.so.8(LIBAVFILTER_8)(64bit), but none of the providers can be installed
  - package libavfilter-free-5.1.3-1.el9.x86_64 from ol9_developer_EPEL requires librubberband.so.2()(64bit), but none of the providers can be installed
  - package libavfilter-free-5.1.4-1.el9.x86_64 from ol9_developer_EPEL requires librubberband.so.2()(64bit), but none of the providers can be installed
  - package libavfilter-free-5.1.4-2.el9.x86_64 from ol9_developer_EPEL requires librubberband.so.2()(64bit), but none of the providers can be installed
  - cannot install the best candidate for the job
  - nothing provides ladspa needed by rubberband-2.0.1-1.el9.x86_64 from ol9_developer_EPEL
  - nothing provides ladspa needed by rubberband-3.1.0-2.el9.x86_64 from ol9_developer_EPEL
  - nothing provides ladspa needed by rubberband-3.1.3-1.el9.x86_64 from ol9_developer_EPEL
(try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)


    


    Turns out I needed to install the repo like so in my ansible playbook

    


    dnf install https://mirrors.rpmfusion.org/free/el/rpmfusion-free-release-9.noarch.rpm


    


  • libavformat : add RCWT closed caption muxex

    14 janvier 2024, par Marth64
    libavformat : add RCWT closed caption muxex
    

    Signed-off-by : Marth64 <marth64@proxyid.net>

    Raw Captions With Time (RCWT) is a format native to ccextractor, a commonly
    used open source tool for processing 608/708 closed caption (CC) sources.
    It can be used to archive the original, raw CC bitstream and to produce
    a source file file for later CC processing or conversion. As a result,
    it also allows for interopability with ccextractor for processing CC data
    extracted via ffmpeg. The format is simple to parse and can be used
    to retain all lines and variants of CC.

    A free specification of RCWT can be found here :
    https://github.com/CCExtractor/ccextractor/blob/master/docs/BINARY_FILE_FORMAT.TXT
    This muxer implements the specification as of 01/05/2024, which has
    been stable and unchanged for 10 years as of this writing.

    This muxer will have some nuances from the way that ccextractor muxes RCWT.
    No compatibility issues when processing the output with ccextractor
    have been observed as a result of this so far, but mileage may vary
    and outputs will not be a bit-exact match.

    Specifically, the differences are :
    (1) This muxer will identify as "FF" as the writing program identifier, so
    as to be honest about the output's origin.

    (2) ffmpeg's MPEG-1/2, H264, HEVC, etc. decoders extract closed captioning
    data differently than ccextractor from embedded SEI/user data.
    For example, DVD captioning bytes will be translated to ATSC A53 format.
    This allows ffmpeg to handle 608/708 in a consistant way downstream.
    This is a lossless conversion and the meaningful data is retained.

    (3) This muxer will not alter the extracted data except to remove invalid
    packets in between valid CC blocks. On the other hand, ccextractor
    will by default remove mid-stream padding, and add padding at the end
    of the stream (in order to convey the end time of the source video).

    • [DH] Changelog
    • [DH] doc/muxers.texi
    • [DH] libavformat/Makefile
    • [DH] libavformat/allformats.c
    • [DH] libavformat/rcwtenc.c
    • [DH] tests/fate/subtitles.mak
  • ffmpeg chains parameters and options while being used in a loop

    10 janvier 2024, par Simon Nazarenko

    I got a code that generates videos from scratch (got gifs, captions and audio). It works amazing when done once, however, when put in a loop and it should create more than 1 video it freezes being caused by memory leak. Upon investigation I realized that ffmpeg (v1.1.0) chains the loop iterations carrying the parameters and options from the first iteration to the second. It then breaks (overwrites) the first video and infinitely writes the second.

    &#xA;

    This is my dependency

    &#xA;

    const ffmpeg = require("fluent-ffmpeg")()&#xA;  .setFfprobePath(ffprobe.path)&#xA;  .setFfmpegPath(ffmpegInstaller.path)&#xA;

    &#xA;

    It looks like this

    &#xA;

    async function convertGifToVideo(&#xA;  gifFile,&#xA;  audioFile,&#xA;  subtitlesFile,&#xA;  tempDirectory&#xA;) {&#xA;  return new Promise((resolve, reject) => {&#xA;    const outputFile = `${tempDirectory}/video_${Date.now()}.mp4`&#xA;    &#xA;    ffmpeg&#xA;      .input(gifFile)&#xA;      .inputFormat("gif")&#xA;      .inputOptions("-stream_loop -1")&#xA;      .input(audioFile)&#xA;      .outputOptions("-shortest")&#xA;      .outputOptions(`-vf subtitles=${subtitlesFile}`)&#xA;      .outputOptions("-report")&#xA;      .output(outputFile)&#xA;      .on("end", () => {&#xA;        console.log(`Combined ${gifFile} and ${audioFile} into ${outputFile}`)&#xA;        resolve(outputFile)&#xA;      })&#xA;      .on("error", (err, stdout, stderr) => {&#xA;        console.error("Error combining GIF and audio:", err)&#xA;        console.error("ffmpeg stdout:", stdout)&#xA;        console.error("ffmpeg stderr:", stderr)&#xA;        reject(err)&#xA;      })&#xA;      .run()&#xA;  })&#xA;}&#xA;

    &#xA;

    And it's called in a loop

    &#xA;

    for (const key in script) {&#xA;    if (script.hasOwnProperty(key)) {&#xA;      ...stuff&#xA;&#xA;      const videoFileName = await convertGifToVideo(&#xA;        gifFileName,&#xA;        audioFileName,&#xA;        subtitlesFileName,&#xA;        tempDirectory&#xA;      )&#xA;    }&#xA;  }&#xA;

    &#xA;

    Here is a piece of log from the first video generation

    &#xA;

    &#xA;

    ffmpeg started on 2024-01-10 at 02:58:52&#xA;Report written to "ffmpeg-20240110-025852.log"&#xA;Command line :&#xA;/home/simon/Documents/AFYTUBE/node_modules/@ffmpeg-installer/linux-x64/ffmpeg -f gif -stream_loop -1 -i ./temp/gif_funny_frogs.gif -i ./temp/funny_frogs.mp3 -y -shortest -vf "subtitles=./temp/funny_frogs.srt" -report ./temp/video_1704880732780.mp4

    &#xA;

    &#xA;

    Here is a piece of log from the second one

    &#xA;

    &#xA;

    /home/simon/Documents/AFYTUBE/node_modules/@ffmpeg-installer/linux-x64/ffmpeg -f gif -stream_loop -1 -i ./temp/gif_funny_frogs.gif -i ./temp/funny_frogs.mp3 -f gif -stream_loop -1 -i ./temp/gif_leg_exercises.gif -i ./temp/leg_exercises.mp3 -y -shortest -vf "subtitles=./temp/funny_frogs.srt" -report -shortest -vf "subtitles=./temp/leg_exercises.srt" -report ./temp/video_1704880732780.mp4 ./temp/video_1704880750879.mp4

    &#xA;

    &#xA;

    Any ideas what I am doing wrong ?

    &#xA;