Recherche avancée

Médias (91)

Autres articles (99)

  • Websites made ​​with MediaSPIP

    2 mai 2011, par

    This page lists some websites based on MediaSPIP.

  • Gestion des droits de création et d’édition des objets

    8 février 2011, par

    Par défaut, beaucoup de fonctionnalités sont limitées aux administrateurs mais restent configurables indépendamment pour modifier leur statut minimal d’utilisation notamment : la rédaction de contenus sur le site modifiables dans la gestion des templates de formulaires ; l’ajout de notes aux articles ; l’ajout de légendes et d’annotations sur les images ;

  • 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 (...)

Sur d’autres sites (11071)

  • avformat/mxfdec : Detect field_order based on video_line_map

    19 octobre 2016, par Tobias Rapp
    avformat/mxfdec : Detect field_order based on video_line_map
    

    Read video_line_map from MXF generic picture essence descriptor and use
    it to derive the coded field order. Use field_dominance to derive the
    display field order from coded field order. If field_dominance is not
    available the default value "1" is used as defined in SMPTE S377-1.

    Fixes field_order detection for a bunch of DV/DVCPRO files. The heuristic
    for deriving coded field order from video_line_map is inspired by
    MediaInfo.

    Signed-off-by : Tobias Rapp <t.rapp@noa-archive.com>
    Signed-off-by : Michael Niedermayer <michael@niedermayer.cc>

    • [DH] libavformat/mxfdec.c
  • Revision 7c70145914 : Merge "Add col/row-based coefficient scanning patterns for 1D 8x8/16x16 ADSTs."

    27 mars 2013, par Ronald S. Bultje

    Changed Paths : Modify /vp9/encoder/vp9_rdopt.c Merge "Add col/row-based coefficient scanning patterns for 1D 8x8/16x16 ADSTs." into experimental

  • ffmpeg : Apply a time-based expression to control lowpass, highpass, aphaser, or aecho [closed]

    17 mai 2024, par Wes Modes

    I am constructing complexFilters to procedurally generate audio with ffmpeg via fluent-ffmpeg. The interesting part of my fluent-ffmpeg complex filters look like :

    &#xA;

    {&#xA;   "filter": "volume",&#xA;   "options": {&#xA;       "volume": "min(1, max(0, ((cos(PI * t * 1 / 13) * 1 &#x2B; cos(PI * t * 1 / 7) * 0.5 &#x2B; cos(PI * t * 1 / 3) * 0.25) &#x2B;&#xA;-0.5 ) * 0.75 * -1 &#x2B; 0.5))",&#xA;       "eval": "frame"&#xA;    },&#xA;    "inputs": "track_1_output",&#xA;    "outputs": "track_1_adjusted"&#xA;},&#xA;

    &#xA;

    Note that I am using an expression to determine the volume dynamically. To simplify my tests, I'm constructing complexFilters on the command line to understand the mysteries of some of the lightly-documented ffmpeg filters. Here's a working CLI test of using the volume filter to fade the sources in and out according to a time-based expresssion :

    &#xA;

    # working fade in/out&#xA;ffmpeg -i knox.mp3 -i static.mp3 -filter_complex \&#xA;"[0:a] \&#xA;    volume = &#x27;min(1, max(0, 0.5 &#x2B; 0.5 * cos(PI * t / 5)))&#x27;: eval=frame \&#xA;    [a0]; \&#xA;[1:a] \&#xA;    volume = &#x27;min(1, max(0, 0.5 - 0.5 * cos(PI * t / 5)))&#x27;: eval=frame \&#xA;    [a1]; \&#xA;[a0][a1]&#xA;    amix = inputs=2: duration=shortest" \&#xA;-c:a libmp3lame -q:a 2 output.mp3&#xA;

    &#xA;

    Now I want to apply lowpass, highpass, aphaser, and/or aecho to the transitions using a time-based expression. For instance, looking at lowpasss, according to ffmpeg -filters it says that it has time-based support :

    &#xA;

      T.. = Timeline support&#xA; TSC lowpass           A->A       Apply a low-pass filter with 3dB point frequency.&#xA;

    &#xA;

    How can I similarly apply a time-based expression to lowpass, highpass, aphaser, or aecho ? I thought the mix option might be the key, but I couldn't construct a working example and couldn't find any examples.

    &#xA;

    # applying a lowpass filter&#xA;ffmpeg -i knox.mp3 -filter_complex \&#xA;"[0:a] \&#xA;    lowpass=f=3000:mix=&#x27;0.5 &#x2B; 0.5 * cos(PI * t / 5)&#x27;;" \&#xA;-c:a libmp3lame -q:a 2 output.mp3&#xA;

    &#xA;

    Or if you prefer the fluent-ffmpeg filter :

    &#xA;

    const ffmpeg = require(&#x27;fluent-ffmpeg&#x27;);&#xA;&#xA;ffmpeg(&#x27;knox.mp3&#x27;)&#xA;    .complexFilter([&#xA;        {&#xA;            filter: &#x27;lowpass&#x27;,&#xA;            options: {&#xA;                f: 3000,&#xA;                mix: &#x27;0.5 &#x2B; 0.5 * cos(PI * t / 5)&#x27;&#xA;            },&#xA;            inputs: &#x27;[0:a]&#x27;,&#xA;        }&#xA;    ])&#xA;    .audioCodec(&#x27;libmp3lame&#x27;)&#xA;    .audioQuality(2)&#xA;    .save(&#x27;output.mp3&#x27;)&#xA;    .on(&#x27;end&#x27;, () => {&#xA;        console.log(&#x27;Processing finished successfully&#x27;);&#xA;    })&#xA;    .on(&#x27;error&#x27;, (err) => {&#xA;        console.error(&#x27;Error: &#x27; &#x2B; err.message);&#xA;    });&#xA;

    &#xA;

    With the resultant error :

    &#xA;

    [Parsed_lowpass_1 @ 0x7f9a72005c00] [Eval @ 0x7ff7bec423d8] Undefined constant or missing &#x27;(&#x27; in &#x27;t/5)&#x27;&#xA;[Parsed_lowpass_1 @ 0x7f9a72005c00] Unable to parse option value "0.5 &#x2B; 0.5 * cos(PI * t / 5)"&#xA;Error applying option &#x27;mix&#x27; to filter &#x27;lowpass&#x27;: Invalid argument&#xA;

    &#xA;

    What complicated fffmpeg faerie magic is needed to make some of the filters other than volume controlled by a time-based expr ?

    &#xA;