
Recherche avancée
Autres articles (111)
-
Le profil des utilisateurs
12 avril 2011, parChaque utilisateur dispose d’une page de profil lui permettant de modifier ses informations personnelle. Dans le menu de haut de page par défaut, un élément de menu est automatiquement créé à l’initialisation de MediaSPIP, visible uniquement si le visiteur est identifié sur le site.
L’utilisateur a accès à la modification de profil depuis sa page auteur, un lien dans la navigation "Modifier votre profil" est (...) -
Configurer la prise en compte des langues
15 novembre 2010, parAccéder à la configuration et ajouter des langues prises en compte
Afin de configurer la prise en compte de nouvelles langues, il est nécessaire de se rendre dans la partie "Administrer" du site.
De là, dans le menu de navigation, vous pouvez accéder à une partie "Gestion des langues" permettant d’activer la prise en compte de nouvelles langues.
Chaque nouvelle langue ajoutée reste désactivable tant qu’aucun objet n’est créé dans cette langue. Dans ce cas, elle devient grisée dans la configuration et (...) -
XMP PHP
13 mai 2011, parDixit Wikipedia, XMP signifie :
Extensible Metadata Platform ou XMP est un format de métadonnées basé sur XML utilisé dans les applications PDF, de photographie et de graphisme. Il a été lancé par Adobe Systems en avril 2001 en étant intégré à la version 5.0 d’Adobe Acrobat.
Étant basé sur XML, il gère un ensemble de tags dynamiques pour l’utilisation dans le cadre du Web sémantique.
XMP permet d’enregistrer sous forme d’un document XML des informations relatives à un fichier : titre, auteur, historique (...)
Sur d’autres sites (10274)
-
configure : drop yasm support
3 octobre 2024, par Lynneconfigure : 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. -
lavc/vvc_mc : R-V V dmvr
15 décembre 2024, par sunyuechilavc/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) -
How to implement spring animation (mass, tension, friction) in FFmpeg zoompan filter instead of linear interpolation ?
29 mai, par Mykyta ManuilenkoI'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 ?


-