
Recherche avancée
Autres articles (47)
-
Publier sur MédiaSpip
13 juin 2013Puis-je poster des contenus à partir d’une tablette Ipad ?
Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir -
ANNEXE : Les plugins utilisés spécifiquement pour la ferme
5 mars 2010, parLe site central/maître de la ferme a besoin d’utiliser plusieurs plugins supplémentaires vis à vis des canaux pour son bon fonctionnement. le plugin Gestion de la mutualisation ; le plugin inscription3 pour gérer les inscriptions et les demandes de création d’instance de mutualisation dès l’inscription des utilisateurs ; le plugin verifier qui fournit une API de vérification des champs (utilisé par inscription3) ; le plugin champs extras v2 nécessité par inscription3 (...)
-
Emballe médias : à quoi cela sert ?
4 février 2011, parCe 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 (7926)
-
Python - playing video using ffplay displays file in larger resolution
10 décembre 2019, par derBrainI’m working on a simple script that plays a video using ffplay.
The problem I’m running into is that the output file has a larger resolution than it should have.
The resolution of the file to be played is 1280x720, however, when I open the file with ffplay, the output is scaled to 1920x1080.
I even tried to downscale the output by factor 1.5 (to get it to play in 1280x720), but the quality is noticeably worse compared to playing the same file in VLC player.
What am I missing here ?This is the code I’m using :
dbFile = "file.mp4"
open_dbFile = "ffplay {0} -window_title {1} -left 50 -top 50 -nostats".format(dbFile, "DB_file")
sub.Popen(open_dbFile)this is the log :
ffplay version N-95171-g6ca3d34ff8 Copyright (c) 2003-2019 the FFmpeg developers
built with gcc 9.2.1 (GCC) 20190918
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-ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth --enable-libopenmpt --enable-amf
libavutil 56. 35.100 / 56. 35.100
libavcodec 58. 59.101 / 58. 59.101
libavformat 58. 33.100 / 58. 33.100
libavdevice 58. 9.100 / 58. 9.100
libavfilter 7. 59.100 / 7. 59.100
libswscale 5. 6.100 / 5. 6.100
libswresample 3. 6.100 / 3. 6.100
libpostproc 55. 6.100 / 55. 6.100
Metadata:
major_brand : mp42
minor_version : 0
compatible_brands: isommp42
creation_time : 2017-12-24T15:03:27.000000Z
Duration: 00:08:36.83, start: 0.000000, bitrate: 588 kb/s
Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709), 1280x720 [SAR 1:1 DAR 16:9], 459 kb/s, 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc (default)
Metadata:
creation_time : 2017-12-24T15:03:27.000000Z
handler_name : ISO Media file produced by Google Inc. Created on: 12/24/2017.
Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 125 kb/s (default)
Metadata:
creation_time : 2017-12-24T15:03:27.000000Z
handler_name : ISO Media file produced by Google Inc. Created on: 12/24/2017.
1.59 A-V: -0.014 fd= 0 aq= 19KB vq= 30KB sq= 0B f=0/0Thanks for your help !
db -
Problems accessing codecs with ggplot and gganimate
19 décembre 2016, par noLongerRandomUsing gganimate. Can’t figure out how to properly access functionality of ffmpeg, specifically I want to change the codec I’m using in the video file I’m outputting.
# load packages
library(ggplot)
library(animation)
library(gganimate)
# Here's my data.frame
myDf <- data.frame(
year = c(1962, 1963, 1964, 1965, 1966, 1967, 1968, 1969, 1970, 1971, 1972, 1973, 1974, 1975, 1976, 1977, 1978, 1979, 1980, 1981, 1982, 1983, 1984, 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014),
bottom50 = c(0.195, 0.191, 0.187, 0.192, 0.196, 0.205, 0.207, 0.210, 0.209, 0.204, 0.203, 0.204, 0.205, 0.203, 0.202, 0.200, 0.200, 0.201, 0.199, 0.195, 0.190, 0.183, 0.179, 0.179, 0.177, 0.172, 0.169, 0.169, 0.168, 0.166, 0.158, 0.159, 0.158, 0.154, 0.151, 0.148, 0.149, 0.148, 0.146, 0.149, 0.148, 0.145, 0.142, 0.138, 0.135, 0.137, 0.137, 0.136, 0.130, 0.127, 0.123, 0.127, 0.125), top1 = c(0.126, 0.127, 0.129, 0.128, 0.126, 0.123, 0.122, 0.115, 0.110, 0.111, 0.111, 0.109, 0.106, 0.105, 0.105, 0.107, 0.108, 0.111, 0.107, 0.110, 0.112, 0.115, 0.125, 0.125, 0.122, 0.133, 0.149, 0.145, 0.145, 0.139, 0.150, 0.146, 0.147, 0.153, 0.160, 0.166, 0.169, 0.177, 0.183, 0.173, 0.171, 0.172, 0.183, 0.194, 0.201, 0.199, 0.195, 0.185, 0.198, 0.196, 0.208, 0.196, 0.202)
)
#Basic plot
p <- ggplot(myDf, aes(x = year, y = bottom50, frame = year)) +
geom_line(color = "dodgerblue") +
geom_line(aes(y = top1), color = "darkred")The non-animated version gets me what I want :
And I get an animation version output to video with :
gganimate(p, interval = .1, title_frame = FALSE, "income.mp4")
That’s fine, but I want to change some the output parameters, specifically : alter the dimensions, the frame rate, and use a different codec.
# change some of the options
ani.options(ani.height = 1080, ani.width = 1920,
interval = 0.04166667, other.opts = "-vcodec qtrle -f mov")
# re-animate
gganimate(p, title_frame = FALSE, "income.mov")That gives me the following error :
Error in animation_saver(saver, filename) :
Don't know how to save animation of type movI’m using ’.mov’ as my file extension because I’m trying to change to the Animation codec (so it’s no longer a .mp4 wrapper). I’ve got ffmpeg installed, so this is probably a syntax issue. But the documentation isn’t very clear here ; gganimate doesn’t have any documentation on changing codecs (or outputting any video besides an mp4), and the animation package is light on specifics as well.
-
ffmpeg filter complex maybe too long from my script
8 novembre 2023, par icegeti am using ffmepg and filter complex to blend 2 png files for a exact time.
if i use a too long time (short commands working) then the output file has only 1kb and is not openable.


i have added here my code was is not working, can anybody helps me ?


i getting this back


code :


ffmpeg -loop 1 -t 0.2225 -i /tmp/a.png -loop 1 -t 0.2225 -i /tmp/b.png -s 640x480 -to 256 -c:v libx264 -pix_fmt yuv420p -filter_complex " \
[1:v][0:v]blend=all_expr='A*(if(gte(T,0.2225),1,T/0.2225))+B*(1-(if(gte(T,0.2225),1,T/0.2225)))'[b1v]; \
[0:v][1:v]blend=all_expr='A*(if(gte(T,0.2225),1,T/0.2225))+B*(1-(if(gte(T,0.2225),1,T/0.2225)))'[b2v]; \
[1:v][0:v]blend=all_expr='A*(if(gte(T,0.2225),1,T/0.2225))+B*(1-(if(gte(T,0.2225),1,T/0.2225)))'[b3v]; \
[0:v][1:v]blend=all_expr='A*(if(gte(T,0.2225),1,T/0.2225))+B*(1-(if(gte(T,0.2225),1,T/0.2225)))'[b4v]; \
[1:v][0:v]blend=all_expr='A*(if(gte(T,0.2225),1,T/0.2225))+B*(1-(if(gte(T,0.2225),1,T/0.2225)))'[b5v]; \
[0:v][1:v]blend=all_expr='A*(if(gte(T,0.2225),1,T/0.2225))+B*(1-(if(gte(T,0.2225),1,T/0.2225)))'[b6v]; \
[1:v][0:v]blend=all_expr='A*(if(gte(T,0.2225),1,T/0.2225))+B*(1-(if(gte(T,0.2225),1,T/0.2225)))'[b7v]; \
[0:v][1:v]blend=all_expr='A*(if(gte(T,0.2225),1,T/0.2225))+B*(1-(if(gte(T,0.2225),1,T/0.2225)))'[b8v]; \
[1:v][0:v]blend=all_expr='A*(if(gte(T,0.2225),1,T/0.2225))+B*(1-(if(gte(T,0.2225),1,T/0.2225)))'[b9v]; \
[0:v][1:v]blend=all_expr='A*(if(gte(T,0.2225),1,T/0.2225))+B*(1-(if(gte(T,0.2225),1,T/0.2225)))'[b10v]; \
[1:v][0:v]blend=all_expr='A*(if(gte(T,0.2225),1,T/0.2225))+B*(1-(if(gte(T,0.2225),1,T/0.2225)))'[b11v]; \
[0:v][1:v]blend=all_expr='A*(if(gte(T,0.2225),1,T/0.2225))+B*(1-(if(gte(T,0.2225),1,T/0.2225)))'[b12v]; \
...
[1:v][b988v][0:v][b989v][1:v][b990v][0:v][b991v][1:v][b992v][0:v][b993v][1:v][b994v][0:v][b995v][1:v][b996v][0:v][b997v][1:v][b998v][0:v][b999v][1:v][b1000v][0:v][b1001v][1:v][b1002v][0:v][b1003v][1:v][b1004v][0:v][b1005v][1:v][b1006v][0:v][b1007v][1:v][b1008v][0:v][b1009v][1:v][b1010v][0:v][b1011v][1:v][b1012v][0:v][b1013v][1:v][b1014v][0:v][b1015v][1:v][b1016v][0:v][b1017v][1:v][b1018v][0:v][b1019v][1:v][b1020v][0:v][b1021v][1:v][b1022v][0:v][b1023v][1:v][b1024v]
[0:v]concat=n=2049:v=1:a=0,format=yuv420p[v]" -map "[v]" /tmp/test.mp4



the output is then this :


...
 Stream #1:0 (png) -> concat:in2038:v0
 Stream #1:0 (png) -> concat:in2042:v0
 Stream #1:0 (png) -> concat:in2046:v0
 format -> Stream #0:0 (libx264)
Press [q] to stop, [?] for help
[libx264 @ 0x563a0f537380] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2 AVX512
[libx264 @ 0x563a0f537380] profile High, level 3.0
[libx264 @ 0x563a0f537380] 264 - core 155 r2917 0a84d98 - H.264/MPEG-4 AVC codec - Copyleft 2003-2018 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=6 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
Output #0, mp4, to '/tmp/test.mp4':
 Metadata:
 encoder : Lavf58.20.100
 Stream #0:0: Video: h264 (libx264) (avc1 / 0x31637661), yuv420p, 640x480, q=-1--1, 25 fps, 12800 tbn, 25 tbc (default)
 Metadata:
 encoder : Lavc58.35.100 libx264
 Side data:
 cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
Getötet 3 fps=0.0 q=0.0 size= 0kB time=00:00:00.00 bitrate=N/A speed= 0x




i create the filter complex by php with a for loop for creating the final syntax for ffmpeg.


getting at the end of the command (debug log) :


[auto_scaler_2044 @ 0x560f0db26c40] w:640 h:480 fmt:pal8 sar:0/1 -> w:640 h:480 fmt:yuv420p sar:0/1 flags:0x2
[auto_scaler_2045 @ 0x560f144cf240] w:640 h:480 fmt:pal8 sar:0/1 -> w:640 h:480 fmt:yuv420p sar:0/1 flags:0x2
[Parsed_blend_1022 @ 0x560f19f96d00] [framesync @ 0x560f19f96e08] Selected 1/25 time base
[Parsed_blend_1022 @ 0x560f19f96d00] [framesync @ 0x560f19f96e08] Sync level 2
[auto_scaler_3071 @ 0x560f18cf8a40] w:640 h:480 fmt:pal8 sar:0/1 -> w:640 h:480 fmt:yuv420p sar:0/1 flags:0x2
[auto_scaler_2046 @ 0x560f0db27180] w:640 h:480 fmt:pal8 sar:0/1 -> w:640 h:480 fmt:yuv420p sar:0/1 flags:0x2
[auto_scaler_2047 @ 0x560f144d00c0] w:640 h:480 fmt:pal8 sar:0/1 -> w:640 h:480 fmt:yuv420p sar:0/1 flags:0x2
[Parsed_blend_1023 @ 0x560f19f97400] [framesync @ 0x560f19f97508] Selected 1/25 time base
[Parsed_blend_1023 @ 0x560f19f97400] [framesync @ 0x560f19f97508] Sync level 2
[auto_scaler_3072 @ 0x560f18cf90c0] w:640 h:480 fmt:pal8 sar:0/1 -> w:640 h:480 fmt:yuv420p sar:0/1 flags:0x2
[scaler_out_0_0 @ 0x560f1a625140] w:640 h:480 fmt:yuv420p sar:0/1 -> w:640 h:480 fmt:yuv420p sar:0/1 flags:0x4
[libx264 @ 0x560f19103180] using mv_range_thread = 40
[libx264 @ 0x560f19103180] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2 AVX512
[libx264 @ 0x560f19103180] profile High, level 3.0
[libx264 @ 0x560f19103180] 264 - core 155 r2917 0a84d98 - H.264/MPEG-4 AVC codec - Copyleft 2003-2018 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=6 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
Output #0, mp4, to '/tmp/test.mp4':
 Metadata:
 encoder : Lavf58.20.100
 Stream #0:0, 0, 1/12800: Video: h264 (libx264), 1 reference frame (avc1 / 0x31637661), yuv420p, 640x480, 0/1, q=-1--1, 25 fps, 12800 tbn, 25 tbc (default)
 Metadata:
 encoder : Lavc58.35.100 libx264
 Side data:
 cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
Clipping frame in rate conversion by 0.000008
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream) 0x
cur_dts is invalid (this is harmless if it occurs once at the start per stream) 0x
cur_dts is invalid (this is harmless if it occurs once at the start per stream) 0x
Getötet



is that the problem ?


i have also tried with filter complex script, but the same error appears.


thank you so much


many greets iceget


if i use a shorter time (about 10 seconds) then its working fine. but when i add 100 or 256 seconds, then i getting only a 1kb mp4 file.


thank you