Recherche avancée

Médias (1)

Mot : - Tags -/musée

Autres articles (33)

  • Librairies et logiciels spécifiques aux médias

    10 décembre 2010, par

    Pour un fonctionnement correct et optimal, plusieurs choses sont à prendre en considération.
    Il est important, après avoir installé apache2, mysql et php5, d’installer d’autres logiciels nécessaires dont les installations sont décrites dans les liens afférants. Un ensemble de librairies multimedias (x264, libtheora, libvpx) utilisées pour l’encodage et le décodage des vidéos et sons afin de supporter le plus grand nombre de fichiers possibles. Cf. : ce tutoriel ; FFMpeg avec le maximum de décodeurs et (...)

  • L’agrémenter visuellement

    10 avril 2011

    MediaSPIP est basé sur un système de thèmes et de squelettes. Les squelettes définissent le placement des informations dans la page, définissant un usage spécifique de la plateforme, et les thèmes l’habillage graphique général.
    Chacun peut proposer un nouveau thème graphique ou un squelette et le mettre à disposition de la communauté.

  • Contribute to translation

    13 avril 2011

    You can help us to improve the language used in the software interface to make MediaSPIP more accessible and user-friendly. You can also translate the interface into any language that allows it to spread to new linguistic communities.
    To do this, we use the translation interface of SPIP where the all the language modules of MediaSPIP are available. Just subscribe to the mailing list and request further informantion on translation.
    MediaSPIP is currently available in French and English (...)

Sur d’autres sites (5907)

  • FFmpeg side by side video (widescreen) and play each video one by one

    6 mai 2020, par Knide

    new to ffmpeg, I've already did this to combine 3 or more videos that I have into 1 video :

    



    ffmpeg -i left.mp4 -i center.mp4 -i right.mp4 -filter_complex "[0:v:0][1:v:0][2:v:0]hstack=inputs=3" -c:v libx264 -tune film -crf 16 -b:a 256k output.mp4


    



    Now what I am having trouble with is the videos have different play times (in seconds) what I want to achieve is have them all side by side (working with the code above) then have left.mp4 play first (with it's own audio) once done, center.mp4 plays (has own audio), and when done too, right.mp4 plays (has own audio) as well and the video is over.

    



    Can someone enlighten me on how to achieve this ? Thank you !

    


  • avcodec/av1_metadata : filter parameter sets in packet side data

    22 avril 2020, par James Almer
    avcodec/av1_metadata : filter parameter sets in packet side data
    

    Extradata included in packet side data is meant to replace the codec context
    extradata. So when muxing for example to MP4 without this change and if
    extradata is present in a packet side data, the result will be that the
    parameter sets present in keyframes will be filtered, but the parameter sets
    ultimately included in the av1C box will not.

    This is especially important for AV1 as both currently supported encoders don't
    export the Sequence Header in the codec context extradata, but as packet side
    data instead.

    Signed-off-by : James Almer <jamrial@gmail.com>

    • [DH] libavcodec/av1_metadata_bsf.c
  • Convert file from mkv to mp4 without saving it server-side using fluent-ffmpeg in nodejs

    25 avril 2020, par Scherer

    What I am trying to do is create a node application that receives a mkv file, converts it to mp4, hardburning the subtitles, and sends it back so the user can download it. In the command line this works perfectly

    &#xA;&#xA;

    ffmpeg -i input.mkv -threads 1 -vf subtitles=input.mkv -acodec copy output.mp4

    &#xA;&#xA;

    Then, I tried to translate this into a node route using fluent-ffmpeg

    &#xA;&#xA;

    var ffmpeg = require(&#x27;fluent-ffmpeg&#x27;);&#xA;&#xA;routes.post(&#x27;/process&#x27;, (req, res) => {&#xA;    //file sent&#xA;    const file = req.files.file&#xA;    const path = __dirname &#x2B; &#x27;/public/data/&#x27;&#xA;&#xA;    //saves file in server&#xA;    file.mv(path &#x2B; file.name, err => {&#xA;        if (err) return res.sendStatus(500).send(err)&#xA;        console.log(&#x27;upload successful&#x27;)&#xA;    })&#xA;&#xA;    //convert the file to mp4 with the hardburned subtitle&#xA;    ffmpeg(path &#x2B; file.name).toFormat(&#x27;mp4&#x27;)&#xA;    .addOutputOption(["-threads 1"])&#xA;    .addOutputOption(["-acodec copy"])&#xA;    .addOutputOption([&#x27;-vf subtitles=&#x27; &#x2B; path &#x2B; file.name])&#xA;    .on(&#x27;end&#x27;, () => {&#xA;        console.log(&#x27;done&#x27;)&#xA;        res.sendStatus(200)&#xA;    })&#xA;    .on(&#x27;error&#x27;, console.log)&#xA;    .saveToFile(path &#x2B; &#x27;output.mp4&#x27;) //saves file in server&#xA;})&#xA;

    &#xA;&#xA;

    This is the HTML I am testing

    &#xA;&#xA;

    &#xA;&#xA;&#xA;    &#xA;    &#xA;    &#xA;&#xA;&#xA;    <form method="&#x27;post&#x27;" action="/process" enctype="multipart/form-data">&#xA;        <input type="&#x27;file&#x27;" />&#xA;        <input type="&#x27;submit&#x27;" value="&#x27;send&#x27;" />&#xA;    </form>&#xA;&#xA;&#xA;

    &#xA;&#xA;

    Unfortunately, this didn't work and the code returned the following error message

    &#xA;&#xA;

    Error: ffmpeg exited with code 1: Error reinitializing filters!&#xA;Failed to inject frame into filter network: Invalid argument&#xA;Error while processing the decoded data for stream #0:0&#xA;Conversion failed!&#xA;&#xA;    at ChildProcess.<anonymous> (C:\Users\fsvic\Desktop\ffmpeg_teste_node\node_modules\fluent-ffmpeg\lib\processor.js:182:22)&#xA;    at ChildProcess.emit (events.js:182:13)&#xA;    at Process.ChildProcess._handle.onexit (internal/child_process.js:240:12) &#x27;&#x27; &#x27;ffmpeg version 4.2.1 Copyright (c) 2000-2019 the FFmpeg developers\n  built with gcc 9.1.1 (GCC) 20190807\n  configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libdav1d --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libmfx --enable-amf --enable-ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth --enable-libopenmpt\n  libavutil      56. 31.100 / 56. 31.100\n  libavcodec     58. 54.100 / 58. 54.100\n  libavformat    58. 29.100 / 58. 29.100\n  libavdevice    58.  8.100 / 58.  8.100\n  libavfilter     7. 57.100 /  7. 57.100\n  libswscale      5.  5.100 /  5.  5.100\n  libswresample   3.  5.100 /  3.  5.100\n  libpostproc    55.  5.100 / 55.  5.100\nInput #0, matroska,webm, from \&#x27;C:\\Users\\fsvic\\Desktop\\ffmpeg_teste_node/public/data/star_trails.mkv\&#x27;:\n  Metadata:\n    COMPATIBLE_BRANDS: mp42mp41\n    MAJOR_BRAND     : mp42\n    MINOR_VERSION   : 0\n    ENCODER         : Lavf57.66.105\n  Duration: 00:00:21.25, start: 0.000000, bitrate: 1893 kb/s\n    Stream #0:0(eng): Video: h264 (High), yuv420p(progressive), 1280x720 [SAR 1:1 DAR 16:9], 25 fps, 25 tbr, 1k tbn, 50 tbc (default)\n    Metadata:\n      HANDLER_NAME    : ?Mainconcept Video Media Handler\n      ENCODER         : Lavc57.83.101 libx264\n      DURATION        : 00:00:21.163000000\n    Stream #0:1(eng): Audio: vorbis, 48000 Hz, stereo, fltp (default)\n    Metadata:\n      HANDLER_NAME    : #Mainconcept MP4 Sound Media Handler\n      ENCODER         : Lavc57.83.101 libvorbis\n      DURATION        : 00:00:21.251000000\nStream mapping:\n  Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264))\n  Stream #0:1 -> #0:1 (copy)\nPress [q] to stop, [?] for help\n[subtitles @ 000001cc091dbb80] Unable to parse option value "UsersfsvicDesktopffmpeg_teste_node/public/data/star_trails.mkv" as image size\n    Last message repeated 1 times\n[subtitles @ 000001cc091dbb80] Error setting option original_size to value UsersfsvicDesktopffmpeg_teste_node/public/data/star_trails.mkv.\n[Parsed_subtitles_0 @ 000001cc0910a8c0] Error applying options to the filter.\n[AVFilterGraph @ 000001cc0912ba80] Error initializing filter \&#x27;subtitles\&#x27; with args \&#x27;C:UsersfsvicDesktopffmpeg_teste_node/public/data/star_trails.mkv\&#x27;\nError reinitializing filters!\nFailed to inject frame into filter network: Invalid argument\nError while processing the decoded data for stream #0:0\nConversion failed!\n&#x27;&#xA;</anonymous>

    &#xA;&#xA;

    Besides that, I cannot save anything in the server side due to memory limitations, so I need a way to use the FFmpeg commands without an actual file in the folder. I discovered that the pipe feature might do the job, but I have no idea on how I could implement it in the current code.

    &#xA;