Recherche avancée

Médias (91)

Autres articles (78)

  • Websites made ​​with MediaSPIP

    2 mai 2011, par

    This page lists some websites based on MediaSPIP.

  • Amélioration de la version de base

    13 septembre 2013

    Jolie sélection multiple
    Le plugin Chosen permet d’améliorer l’ergonomie des champs de sélection multiple. Voir les deux images suivantes pour comparer.
    Il suffit pour cela d’activer le plugin Chosen (Configuration générale du site > Gestion des plugins), puis de configurer le plugin (Les squelettes > Chosen) en activant l’utilisation de Chosen dans le site public et en spécifiant les éléments de formulaires à améliorer, par exemple select[multiple] pour les listes à sélection multiple (...)

  • Emballe médias : à quoi cela sert ?

    4 février 2011, par

    Ce plugin vise à gérer des sites de mise en ligne de documents de tous types.
    Il crée des "médias", à savoir : un "média" est un article au sens SPIP créé automatiquement lors du téléversement d’un document qu’il soit audio, vidéo, image ou textuel ; un seul document ne peut être lié à un article dit "média" ;

Sur d’autres sites (7697)

  • Add new build based on jQuery UI build file

    20 mars 2011, par jzaefferer

    + build.xml + build/ant-contrib-0.6.jar + build/google-compiler-20110320.jar Add new build based on jQuery UI build file

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

    17 mai 2024, par Wes Modes

    I am procedurally constructing complexFilters for ffmpeg via fluent-ffmpeg. My fluent-ffmpeg complex filters look like :

    


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


    


    Note that I am using an expression to determine the volume dynamically.

    


    Here I'm testing on the command line, to understand the mysteries of lightly-documented ffmpeg filters. I'm fading in and out two sources, intertwined in the output. Now I want to apply lowpass, highpass, aphaser, and/or aecho to the transitions using a time-based expr.

    


    I've already succeeded using the volume filter to fade the sources in and out (Note that the sine has reversed polarity for the second volume filter) :

    


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


    


    ffmpeg -filters says that lowpass has time-based support :

    


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


    


    How can I similarly apply these other filters to source1 using a time-bassed expr ? I was unsuccessful in figuring out lowpass and highpass :

    


    # applying a lowpass filter
ffmpeg -i knox.mp3 -i static.mp3 -filter_complex \
"[0:a] \
    volume = 'min(1, max(0, 0.5 + 0.5 * cos(PI * t / 5)))': eval=frame, \
    lowpass=f=3000: mix='0.5 + 0.5 * cos(PI * t / 5)' \
    [a0]; \
[1:a] \
    volume = 'min(1, max(0, 0.5 - 0.5 * cos(PI * t / 5)))': eval=frame \
    [a1]; \
[a0][a1]
    amix = inputs=2: duration=shortest" \
-c:a libmp3lame -q:a 2 output.mp3


    


    With the resultant error :

    


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


    


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

    


  • movenc : Set the last packet duration based on the next packet when autoflushing

    9 mars 2015, par Martin Storsjö
    movenc : Set the last packet duration based on the next packet when autoflushing
    

    When automatically flushing fragments based on set conditions
    (fragmentation on keyframes, after some interval or byte size),
    we already have the next packet for one stream - use this for setting
    the duration of the last packet in the flushed fragment correctly.

    This avoids having to adjust the timestamp of the first packet in
    the new fragment since the last duration was unknown.

    Unfortunately, this only works for automatic flushing (not for
    caller-triggered flushing, like in the dash muxer), and only for the
    one single track that triggered the flushing. The duration of the
    last sample in all other tracks still is dependent on AVPacket
    duration (or heuristics).

    Signed-off-by : Martin Storsjö <martin@martin.st>

    • [DH] libavformat/movenc.c