Recherche avancée

Médias (91)

Autres articles (20)

  • Le plugin : Podcasts.

    14 juillet 2010, par

    Le problème du podcasting est à nouveau un problème révélateur de la normalisation des transports de données sur Internet.
    Deux formats intéressants existent : Celui développé par Apple, très axé sur l’utilisation d’iTunes dont la SPEC est ici ; Le format "Media RSS Module" qui est plus "libre" notamment soutenu par Yahoo et le logiciel Miro ;
    Types de fichiers supportés dans les flux
    Le format d’Apple n’autorise que les formats suivants dans ses flux : .mp3 audio/mpeg .m4a audio/x-m4a .mp4 (...)

  • Support de tous types de médias

    10 avril 2011

    Contrairement à beaucoup de logiciels et autres plate-formes modernes de partage de documents, MediaSPIP a l’ambition de gérer un maximum de formats de documents différents qu’ils soient de type : images (png, gif, jpg, bmp et autres...) ; audio (MP3, Ogg, Wav et autres...) ; vidéo (Avi, MP4, Ogv, mpg, mov, wmv et autres...) ; contenu textuel, code ou autres (open office, microsoft office (tableur, présentation), web (html, css), LaTeX, Google Earth) (...)

  • Les formats acceptés

    28 janvier 2010, par

    Les commandes suivantes permettent d’avoir des informations sur les formats et codecs gérés par l’installation local de ffmpeg :
    ffmpeg -codecs ffmpeg -formats
    Les format videos acceptés en entrée
    Cette liste est non exhaustive, elle met en exergue les principaux formats utilisés : h264 : H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 m4v : raw MPEG-4 video format flv : Flash Video (FLV) / Sorenson Spark / Sorenson H.263 Theora wmv :
    Les formats vidéos de sortie possibles
    Dans un premier temps on (...)

Sur d’autres sites (4167)

  • ffmpeg : how to extract keyframes from certain time ranges into filenames with timestamps from the original video ?

    18 mai 2023, par Display Name

    I have as input specific timestamps I'm interested in, and I wish to extract keyframes closest to them. I thus use skip_frame nokey and a select='between(t,...,...)+between(t,...,...)+...' where I add a few seconds around each time I'm interested in (enough so that at least one keyframe will fall in that range based on the input video I have, and then can manually delete if more than one came out in a given time range in my sequence). Chaining the between()s lets me use a single command to extract all of these images in order to avoid seeking from the beginning of the video for each image, were I to use separate command per image. So this part works fine.

    


    The problem is that I want the output image filenames to correspond to the timestamps, in seconds (or some decimal fraction of seconds like tenths or milliseconds) of the extracted frames with respect to the INPUT video. With older versions of ffmpeg, I used to be able for example to get output filenames being times in terms of tenths of a second with -vsync 0 -r 10 -frame_pts true %05d.webp but with recent versions, that results in the error One of -r/-fpsmax was specified together a non-CFR -vsync/-fps_mode. This is contradictory. Replacing the deprecated -vsync with -fps_mode and one of the CFR values results in ffmpeg DUPLICATING frames to fulfill the specified -r value which results in a huge number of output images. The way I am able to get just the set of keyframes I want and no duplications is to drop the -r and use -fps_mode passthrough, but then I lose the naming of the output files by their time in the original video. Searching around here and elsewhere on the web, I have tried things like setting settb=...,setpts=... and -copyts but in the end couldn't get it to work.

    


    As a complete example, the command
ffmpeg -skip_frame nokey -i "input.mp4" -vf "select='between(t,15,25)+between(t,40,50)+between(t,95,105)+between(t,120,130)+between(t,190,200)',scale='min(480,iw)':-2:flags=lanczos" -fps_mode passthrough -copyts -c:v libwebp -quality 75 -preset photo -frame_pts true %05d.webp gives me the right set of output images, but not the filenames that would make it easy for me to quickly manually find frames corresponding to specific times in the original video.

    


  • ffmpeg extract keyframes from certain time ranges to filenames with timestamps from original video

    17 mai 2023, par Display Name

    I have as input specific timestamps I'm interested in, and I wish to extract keyframes closest to them. I thus use skip_frame nokey and a select='between(t,...,...)+between(t,...,...)+...' where I add a few seconds around each time I'm interested in (enough so that at least one keyframe will fall in that range based on the input video I have, and then can manually delete if more than one came out in a given time range in my sequence). Chaining the between()s lets me use a single command to extract all of these images in order to avoid seeking from the beginning of the video for each image, were I to use separate command per image. So this part works fine.

    


    The problem is that I want the output image filenames to correspond to the timestamps, in seconds (or some decimal fraction of seconds like tenths or milliseconds) of the extracted frames with respect to the INPUT video. With older versions of ffmpeg, I used to be able for example to get output filenames being times in terms of tenths of a second with -vsync 0 -r 10 -frame_pts true %05d.webp but with recent versions, that results in the error One of -r/-fpsmax was specified together a non-CFR -vsync/-fps_mode. This is contradictory. Replacing the deprecated -vsync with -fps_mode and one of the CFR values results in ffmpeg DUPLICATING frames to fulfill the specified -r value which results in a huge number of output images. The way I am able to get just the set of keyframes I want and no duplications is to drop the -r and use -fps_mode passthrough, but then I lose the naming of the output files by their time in the original video. Searching around here and elsewhere on the web, I have tried things like setting settb=...,setpts=... and -copyts but in the end couldn't get it to work.

    


    As a complete example, the command
ffmpeg -skip_frame nokey -i "input.mp4" -vf "select='between(t,15,25)+between(t,40,50)+between(t,95,105)+between(t,120,130)+between(t,190,200)',scale='min(480,iw)':-2:flags=lanczos" -fps_mode passthrough -copyts -c:v libwebp -quality 75 -preset photo -frame_pts true %05d.webp gives me the right set of output images, but not the filenames that would make it easy for me to quickly manually find frames corresponding to specific times in the original video.

    


  • In FFmpeg, using -filter_complex, how can I overlay and blend at the same time ?

    20 avril 2023, par Kristian Boruff

    My code works to combine three videos, resize the videos to 1920X1080, resize the watermark to the correct size, and then overlays the watermark to the lower left hand side. Then converts to the intended codecs for Youtube.
My question is how do I Blend at the same time using the -filter_complex workflow ?
Currently, I have the following workflow that does everything but set the opacity

    



    ffmpeg -y -i fancy movie.mov -i logo.png -i in.mov -i out.mov -c:v libx264 -crf 18 -b:v 50000k -preset veryfast -tune film -profile:v high -x264opts cabac=1:keyint=16:bframes=2:keyint_min=15 -c:a libvo_aacenc -ab 128K -ar 48000 -filter_complex "[0:0] scale=1920X1080 [main]; [2:0] scale=1920X1080 [start]; [3:0] scale=1920X1080 [end]; [start] [2:1] [main] [0:1] [end] [3:1] concat=n=3:v=1:a=1 [prog]; [1:0] scale=480:90 [wm]; [prog] [wm] overlay=36:main_h-overlay_h-45" fart.mp4


    



    I'm trying to add "blend=all_opacity=0.7" in the last step so the watermark will screen against the background. If I just add

    



    [prog] [wm] overlay=36:main_h-overlay_h-45, blend=all_mode='overlay':all_opacity=0.7" fart.mp4


    



    I get the error, Cannot find a matching stream for unlabeled input pad 1 on filter Parsed_blend_6

    



    If I try a semicolon instead,

    



    [prog] [wm] overlay=36:main_h-overlay_h-45; blend=all_mode='overlay':all_opacity=0.7


    



    I get the error, Cannot find a matching stream for unlabeled input pad 0 on filter Parsed_blend_6 which makes me think that it's expecting something like [input 1] [input 2] blend command [output]. The problem is that I need it to overlay and blend.

    



    I tried simplifying the code to just test if the blend operation was working properly.

    



    ffmpeg -i test.mp4 -i logo.png -filter_complex "[0:0] scale=1920x1080 [wm]; [1:0] scale=1920x1080 [prog], [wm][prog] blend=all_mode='overlay':all_opacity=0.7" fart.mp4


    



    I got the error First input link top parameters (size 1920x1080, SAR 1:1) do not match the corresponding second input link bottom parameters (1920x1080, SAR 243:80)
Failed to configure output pad on Parsed_blend_2

    



    So, in addition to the trouble with combining of filters, I'm also having an issue with resizing the watermark as FFMpeg sees it as a different aspect ratio than the other videos.

    



    This is my second day with FFmpeg, so any help would be appreciated.

    



    I'm currently working with FFMpeg version N-61061-gf34cceb