Recherche avancée

Médias (91)

Autres articles (37)

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

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

  • Librairies et binaires spécifiques au traitement vidéo et sonore

    31 janvier 2010, par

    Les logiciels et librairies suivantes sont utilisées par SPIPmotion d’une manière ou d’une autre.
    Binaires obligatoires FFMpeg : encodeur principal, permet de transcoder presque tous les types de fichiers vidéo et sonores dans les formats lisibles sur Internet. CF ce tutoriel pour son installation ; Oggz-tools : outils d’inspection de fichiers ogg ; Mediainfo : récupération d’informations depuis la plupart des formats vidéos et sonores ;
    Binaires complémentaires et facultatifs flvtool2 : (...)

Sur d’autres sites (5168)

  • How to implement spring animation (mass, tension, friction) in FFmpeg zoompan filter instead of linear interpolation ?

    29 mai, par Mykyta Manuilenko

    I'm trying to create a zoom-in and zoom-out animation using FFmpeg's zoompan filter, but I want to replace the linear interpolation with a spring animation that uses physics parameters (mass, tension, friction).

    


    My input parameters :

    


    "zoompan": {
  "focusRect": {
    "x": 1086.36,
    "y": 641.87,
    "width": 613,
    "height": 345
  },            
  "easing": {
    "mass": 1,
    "tension": 120,
    "friction": 20
  }
}


    


    Current working linear animation :

    


    ffmpeg -framerate 25 -loop 1 -i input.png \
  -filter_complex "\
    [0:v]scale=6010:3380,setsar=1,split=3[zoomin_input][hold_input][zoomout_input]; \
    [zoomin_input]zoompan= \
      z='iw/(iw/zoom + (ow - iw)/duration)': \
      x='x + (3400 - 0)/duration': \
      y='y + (2009 - 0)/duration': \
      d=25:fps=25:s=1920x1080, \
      trim=duration=1,setpts=PTS-STARTPTS[zoomin]; \
    [hold_input]crop=1920:1080:3400:2009,trim=duration=4,setpts=PTS-STARTPTS[hold]; \
    [zoomout_input]zoompan=\
      zoom='if(eq(on,0),iw/ow,iw/(iw/zoom + (iw-ow)/duration))':\
      x='if(eq(on,0),3400,x + (0-3400)/duration)':\
      y='if(eq(on,0),2009,y + (0-2009)/duration)':\
      d=25:fps=25:s=1920x1080, \
      trim=duration=1,setpts=PTS-STARTPTS[zoomout];
    [zoomin][hold][zoomout]concat=n=3:v=1:a=0[outv]" \
  -map "[outv]" \
  -crf 23 \
  -preset medium \
  -c:v libx264 \
  -pix_fmt yuv420p \
  output.mp4


    


    Notes :

    


      

    • It creates a perfectly straight zoom path to the specific point on the screen (similar to pinch-zooming on a smartphone - straight zooming to the center of the focus rectangle)

      


    • 


    • To improve the quality of the output, I upscale it beforehand

      


    • 


    


    What I want to achieve :

    


    Instead of linear interpolation, I want to implement a spring function with these physics parameters :

    


      

    • mass : 1
    • 


    • tension : 120
    • 


    • friction : 20
    • 


    


    Note that these params can be changed.

    


    Also, I want to preserve a perfectly straight zoom path to the specific point on the screen (similar to pinch-zooming on a smartphone).

    


    Question :

    


    How can I properly implement a spring animation function in FFmpeg's zoompan filter ?

    


  • lavc/vvc_mc : R-V V dmvr

    15 décembre 2024, par sunyuechi
    lavc/vvc_mc : R-V V dmvr
    

    k230 banana_f3
    dmvr_8_12x20_c : 619.3 ( 1.00x) 624.1 ( 1.00x)
    dmvr_8_12x20_rvv_i32 : 128.6 ( 4.82x) 103.4 ( 6.04x)
    dmvr_8_20x12_c : 610.0 ( 1.00x) 665.6 ( 1.00x)
    dmvr_8_20x12_rvv_i32 : 137.6 ( 4.44x) 92.9 ( 7.17x)
    dmvr_8_20x20_c : 1008.0 ( 1.00x) 1082.7 ( 1.00x)
    dmvr_8_20x20_rvv_i32 : 221.1 ( 4.56x) 155.4 ( 6.97x)
    dmvr_h_8_12x20_c : 2008.0 ( 1.00x) 2009.7 ( 1.00x)
    dmvr_h_8_12x20_rvv_i32 : 239.6 ( 8.38x) 186.7 (10.77x)
    dmvr_h_8_20x12_c : 1989.5 ( 1.00x) 2009.4 ( 1.00x)
    dmvr_h_8_20x12_rvv_i32 : 230.3 ( 8.64x) 155.4 (12.93x)
    dmvr_h_8_20x20_c : 3304.1 ( 1.00x) 3342.9 ( 1.00x)
    dmvr_h_8_20x20_rvv_i32 : 378.3 ( 8.73x) 248.9 (13.43x)
    dmvr_hv_8_12x20_c : 3609.8 ( 1.00x) 3603.4 ( 1.00x)
    dmvr_hv_8_12x20_rvv_i32 : 369.1 ( 9.78x) 322.1 (11.19x)
    dmvr_hv_8_20x12_c : 3628.3 ( 1.00x) 3624.2 ( 1.00x)
    dmvr_hv_8_20x12_rvv_i32 : 322.8 (11.24x) 238.7 (15.19x)
    dmvr_hv_8_20x20_c : 5933.8 ( 1.00x) 5936.6 ( 1.00x)
    dmvr_hv_8_20x20_rvv_i32 : 526.5 (11.27x) 374.1 (15.87x)
    dmvr_v_8_12x20_c : 2156.3 ( 1.00x) 2155.4 ( 1.00x)
    dmvr_v_8_12x20_rvv_i32 : 239.6 ( 9.00x) 176.2 (12.24x)
    dmvr_v_8_20x12_c : 2137.6 ( 1.00x) 2165.9 ( 1.00x)
    dmvr_v_8_20x12_rvv_i32 : 230.3 ( 9.28x) 155.2 (13.96x)
    dmvr_v_8_20x20_c : 4183.8 ( 1.00x) 3592.9 ( 1.00x)
    dmvr_v_8_20x20_rvv_i32 : 369.3 (11.33x) 249.2 (14.42x)

    • [DH] libavcodec/riscv/vvc/vvc_mc_rvv.S
    • [DH] libavcodec/riscv/vvc/vvcdsp_init.c
  • configure : drop yasm support

    3 octobre 2024, par Lynne
    configure : drop yasm support
    

    We started defauling to nasm 8 years ago.
    We are still compatible with yasm 0.8.0, released in 2009. **15 years ago**.
    The time has more than come to remove support for it.

    Maintaining compatibility started cutting into writing new code long ago.
    We still can't have 2-argument instructions, preprocessor booleans, and all
    AVX2 code must still be wrapped in ifdefs. Newly added code often breaks this.

    • [DH] Changelog
    • [DH] configure
    • [DH] doc/developer.texi
    • [DH] doc/optimization.txt
    • [DH] doc/platform.texi