Recherche avancée

Médias (91)

Autres articles (63)

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

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

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

Sur d’autres sites (6008)

  • ffmpeg extract segment from video on-the-fly

    29 novembre 2022, par brunoais

    Context

    


    I want to make a service that hosts mp4 files but also provides video streaming.

    


    The server side is made of 2 "small" edge servers with capacity to cache about 0.1% of the content and one main server with a fraction of the bandwidth of the edge servers but much more robust storage.

    


    Recent status

    


    With the help of the ffmpeg manual,
    
Recently, when a segment is requested by an edge server, I run this command in ffmpeg

    


    ffmpeg -i in.mp4 -f hls -hls_list_size 0 -hls_playlist 1 -hls_time 60 -strftime 1  -hls_flags independent_segments+second_level_segment_index+second_level_segment_duration -hls_base_url '/path/to/file/' -hls_segment_filename 'name_%%03d.ts'  -c copy -copyts -hls_segment_type fmp4 out.m3u8


    


    Then obtain the requested segment (plus 3 subsequent ones) then delete everything.

    


    Current status

    


    Currently, I tried to get some level of optimization using -to :

    


    ffmpeg -i in.mp4 -to  -f hls -hls_list_size 0 -hls_playlist 1 -hls_time 60 -strftime 1  -hls_flags independent_segments+second_level_segment_index+second_level_segment_duration -hls_base_url '/path/to/file/' -hls_segment_filename 'name_%%03d.ts'  -c copy -copyts -hls_segment_type fmp4 out.m3u8


    


    Then sending the requested segments to the edge that requested them, then delete the result.
Do note that /path/to/file/ is a tmpfs with quite modest capacity (files can't stay there for too long).

    


    The current setback

    


    The main issue I get with the current process is that it takes a long time to obtain the last segments (2-4s).
That creates a bottleneck in how long segments take to be served. I can increase the buffer from 3 videos to 5 (or even more) but that doesn't solve the actual problem and, instead, will bring more strain on other areas.

    


    Cutting is not reliable

    


    There doesn't seem to exist an option to select what segments to generate using ffmpeg.

    


    Using cutting argument for start time (-ss) has shown to usually work but regularely causes the first keyframe used to be wrong. However, I believe I have all segment files in variable length and cut at the keyframe of the original file.

    


    Help needed

    


    How to extract an arbitrary segment of an mp4, described in the m3u8 file (which was done in a previous extraction) ?

    


    I have full control over ffmpeg and I can automate edits to the m3u8 file after generating them, as required. However, I need to understand and see how can this be solved.

    


  • Merge commit ’b8d2630c5327d2818d05c8a48be0417905d8e0fd’

    11 mai 2015, par Michael Niedermayer
    Merge commit ’b8d2630c5327d2818d05c8a48be0417905d8e0fd’
    

    * commit ’b8d2630c5327d2818d05c8a48be0417905d8e0fd’ :
    dashenc : Reduce the segment duration if cutting out parts with edit lists

    Merged-by : Michael Niedermayer <michaelni@gmx.at>

    • [DH] libavformat/dashenc.c
  • Revision 6522 : $GLOBALS[’liste_des_forums’] a disparu

    12 juin 2012, par kent1 — Log

    $GLOBALSliste_des_forums ? a disparu