Recherche avancée

Médias (91)

Autres articles (101)

  • Publier sur MédiaSpip

    13 juin 2013

    Puis-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

  • Use, discuss, criticize

    13 avril 2011, par

    Talk to people directly involved in MediaSPIP’s development, or to people around you who could use MediaSPIP to share, enhance or develop their creative projects.
    The bigger the community, the more MediaSPIP’s potential will be explored and the faster the software will evolve.
    A discussion list is available for all exchanges between users.

  • Les tâches Cron régulières de la ferme

    1er décembre 2010, par

    La gestion de la ferme passe par l’exécution à intervalle régulier de plusieurs tâches répétitives dites Cron.
    Le super Cron (gestion_mutu_super_cron)
    Cette tâche, planifiée chaque minute, a pour simple effet d’appeler le Cron de l’ensemble des instances de la mutualisation régulièrement. Couplée avec un Cron système sur le site central de la mutualisation, cela permet de simplement générer des visites régulières sur les différents sites et éviter que les tâches des sites peu visités soient trop (...)

Sur d’autres sites (7600)

  • How to Simply Remove Duplicate Frames from a Video using ffmpeg

    29 janvier 2017, par Skeeve

    First of all, I’d preface this by saying I’m NO EXPERT with video manipulation,
    although I’ve been fiddling with ffmpeg for years (in a fairly limited way). Hence, I’m not too flash with all the language folk often use... and how it affects what I’m trying to do in my manipulations... but I’ll have a go with this anyway...

    I’ve checked a few links here, for example :
    ffmpeg - remove sequentially duplicate frames

    ...but the content didn’t really help me.

    I have some hundreds of video clips that have been created under both Windows and Linux using both ffmpeg and other similar applications. However, they have some problems with times in the video where the display is ’motionless’.

    As an example, let’s say we have some web site that streams a live video into, say, a Flash video player/plugin in a web browser. In this case, we’re talking about a traffic camera video stream, for example.

    There’s an instance of ffmpeg running that is capturing a region of the (Windows) desktop into a video file, viz :-

    ffmpeg -hide_banner -y -f dshow ^
         -i video="screen-capture-recorder" ^
         -vf "setpts=1.00*PTS,crop=448:336:620:360" ^
         -an -r 25 -vcodec libx264 -crf 0 -qp 0 ^
         -preset ultrafast SAMPLE.flv

    Let’s say the actual ’display’ that is being captured looks like this :-

    123456789 XXXXX 1234567 XXXXXXXXXXX 123456789 XXXXXXX
    ^---a---^ ^-P-^ ^--b--^ ^----Q----^ ^---c---^ ^--R--^

    ...where each character position represents a (sequence of) frame(s). Owing to a poor internet connection, a "single frame" can be displayed for an extended period (the ’X’ characters being an (almost) exact copy of the immediately previous frame). So this means we have segments of the captured video where the image doesn’t change at all (to the naked eye, anyway).

    How can we deal with the duplicate frames ?... and how does our approach change if the ’duplicates’ are NOT the same to ffmpeg but LOOK more-or-less the same to the viewer ?

    If we simply remove the duplicate frames, the ’pacing’ of the video is lost, and what used to take, maybe, 5 seconds to display, now takes a fraction of a second, giving a very jerky, unnatural motion, although there are no duplicate images in the video. This seems to be achievable using ffmpeg with an ’mp_decimate’ option, viz :-

        ffmpeg -i SAMPLE.flv ^                      ... (i)
           -r 25 ^
           -vf mpdecimate,setpts=N/FRAME_RATE/TB DEC_SAMPLE.mp4

    That reference I quoted uses a command that shows which frames ’mp_decimate’ will remove when it considers them to be ’the same’, viz :-

        ffmpeg -i SAMPLE.flv ^                      ... (ii)
           -vf mpdecimate ^
           -loglevel debug -f null -

    ...but knowing that (complicated formatted) information, how can we re-organize the video without executing multiple runs of ffmpeg to extract ’slices’ of video for re-combining later ?

    In that case, I’m guessing we’d have to run something like :-

    • user specifies a ’threshold duration’ for the duplicates
      (maybe run for 1 sec only)
    • determine & save main video information (fps, etc - assuming
      constant frame rate)
    • map the (frame/time where duplicates start)->no. of
      frames/duration of duplicates
    • if the duration of duplicates is less than the user threshold,
      don’t consider this period as a ’series of duplicate frames’
      and move on
    • extract the ’non-duplicate’ video segments (a, b & c in the
      diagram above)
    • create ’new video’ (empty) with original video’s specs
    • for each video segment
      extract the last frame of the segment
      create a short video clip with repeated frames of the frame
      just extracted (duration = user spec. = 1 sec)
      append (current video segment+short clip) to ’new video’
      and repeat

    ...but in my case, a lot of the captured videos might be 30 minutes long and have hundreds of 10 sec long pauses, so the ’rebuilding’ of the videos will take a long time using this method.

    This is why I’m hoping there’s some "reliable" and "more intelligent" way to use
    ffmepg (with/without the ’mp_decimate’ filter) to do the ’decimate’ function in only a couple of passes or so... Maybe there’s a way that the required segments could even be specified (in a text file, for example) and as ffmpeg runs it will
    stop/restart it’s transcoding at specified times/frame numbers ?

    Short of this, is there another application (for use on Windows or Linux) that could do what I’m looking for, without having to manually set start/stop points,
    extracting/combining video segments manually...?

    I’ve been trying to do all this with ffmpeg N-79824-gcaee88d under Win7-SP1 and (a different version I don’t currently remember) under Puppy Linux Slacko 5.6.4.

    Thanks a heap for any clues.

  • Video length missing in FLV converted by ffmpeg-php

    19 janvier 2013, par Andrew

    I'm converting MP4 videos to FLV using ffmpeg-php on my CentOS server (without intervention from flvtool2 because it's not installed).

    The FLV videos are created, but no player is capable of retrieving the video duration, this creates serious issues when trying to seek the video. I'm using the player created by Moyea's Flash Video MX Pro, but the problem also happens with other FLV players as well, so I'm sure that ffmpeg-php is not createing the FLV with the proper length data.

    My MP4 videos are compatible because ffmpeg-php CAN get the video length properly from then, yet it does not apply that length information into the FLV file. I assume flvtool2 is ONLY to retrieve meta-data and has nothing to do with the output FLV video length, let me know if this is correct.

    This command I use for conversion :

    $command = "ffmpeg -i myvideo.mp4 -ar 22050 -ab 64k -f flv -s 320x240 -y myvideo.flv";
    $result = @shell_exec($command);

    This is my ffmpeg-php version :

    FFmpeg version 0.5, Copyright (c) 2000-2009 Fabrice Bellard, et al.
     configuration: --prefix=/usr --libdir=/usr/lib64 --shlibdir=/usr/lib64 --mandir=/usr/share/man --incdir=/usr/include --extra-cflags=-fPIC --enable-libamr-nb --enable-libamr-wb --enable-libdirac --enable-libfaac --enable-libfaad --enable-libmp3lame --enable-libtheora --enable-libx264 --enable-gpl --enable-nonfree --enable-postproc --enable-pthreads --enable-shared --enable-swscale --enable-x11grab
     libavutil     49.15. 0 / 49.15. 0
     libavcodec    52.20. 0 / 52.20. 0
     libavformat   52.31. 0 / 52.31. 0
     libavdevice   52. 1. 0 / 52. 1. 0
     libswscale     0. 7. 1 /  0. 7. 1
     libpostproc   51. 2. 0 / 51. 2. 0
     built on Jul 24 2009 01:40:27, gcc: 4.1.2 20080704 (Red Hat 4.1.2-44)

    Any help on this issue will be greatly appreciated.

  • movenc : Allow to request not to use edit lists

    4 novembre 2014, par Martin Storsjö
    movenc : Allow to request not to use edit lists
    

    In this case, shift tracks to start from zero instead (potentially
    stretching the first sample in tracks that start later than the
    first one).

    Some software does not support edit lists at all, the adobe flash
    player seems to be one of these. This results in AV sync errors when
    edit lists are used to adjust AV sync.

    Some players, such as QuickTime, don’t respect the duration for
    audio packets, so if an audio track starts later than the video
    track and the first audio sample gets a duration longer than the
    actual amount of data in it, the result will be out of sync.

    Based on patches by Michael Niedermayer.

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

    • [DH] libavformat/movenc.c
    • [DH] libavformat/movenc.h