Recherche avancée

Médias (0)

Mot : - Tags -/content

Aucun média correspondant à vos critères n’est disponible sur le site.

Autres articles (81)

  • Organiser par catégorie

    17 mai 2013, par

    Dans MédiaSPIP, une rubrique a 2 noms : catégorie et rubrique.
    Les différents documents stockés dans MédiaSPIP peuvent être rangés dans différentes catégories. On peut créer une catégorie en cliquant sur "publier une catégorie" dans le menu publier en haut à droite ( après authentification ). Une catégorie peut être rangée dans une autre catégorie aussi ce qui fait qu’on peut construire une arborescence de catégories.
    Lors de la publication prochaine d’un document, la nouvelle catégorie créée sera proposée (...)

  • Récupération d’informations sur le site maître à l’installation d’une instance

    26 novembre 2010, par

    Utilité
    Sur le site principal, une instance de mutualisation est définie par plusieurs choses : Les données dans la table spip_mutus ; Son logo ; Son auteur principal (id_admin dans la table spip_mutus correspondant à un id_auteur de la table spip_auteurs)qui sera le seul à pouvoir créer définitivement l’instance de mutualisation ;
    Il peut donc être tout à fait judicieux de vouloir récupérer certaines de ces informations afin de compléter l’installation d’une instance pour, par exemple : récupérer le (...)

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

Sur d’autres sites (4846)

  • avcodec/pthread_frame : Don't update the first thread ctx before freeing

    18 mai 2022, par Andreas Rheinhardt
    avcodec/pthread_frame : Don't update the first thread ctx before freeing
    

    Currently, ff_frame_thread_free() uses the last worker thread
    to updates the first worker thread via update_context_from_thread()
    immediately before freeing all these worker threads. This is
    a remnant of the time in which the first worker was special.
    (E.g. the first worker shared its AVCodecInternal with the public
    AVCodecContext.)

    But these times are over (none of the uses of is_copy matter
    for ff_frame_thread_free()) ; nowadays the only thing that
    update_context_from_thread() does is referencing a few
    buffers/frames and replacing them with other references instead.
    These new references will then be freed immediately thereafter
    when the first worker thread is freed. Ensuring that the code is
    free of double-frees is achieved by using reference-counted structures
    (or in case of AVChannelLayouts : by giving each worker its own copy).

    Some archaeology :
    a) Updating the first worker thread from the last one used
    has been done since frame-threading was added in
    37b00b47cbeecd66bb34c5c7c534d016d6e8da24.
    b) The precursor to ff_mpv_common_end() checked for is_copy
    before freeing pictures (i.e. it only freed them for the first
    worker thread).
    c) Commits c2dfb1e37cc72bf144545c4410a4621cbff5c4b1 and
    e33811bd2686411233cb0eb4a4ee45eb99d7e736 modified the
    update_thread_context function of the H.264 decoder
    so that it could fail before calling ff_mpeg_update_thread_context().
    d) This led to a double free/an assert violation with a H.264
    sample for which ff_mpeg_update_thread_context() is not reached
    for the final update_context_from_thread(). Commit
    a6e4796fbf0aa9b13451a8ef917ecc4e80d1d272 added code to fix this
    sample.
    e) This issue was fixed (even with the last mentioned commit reverted)
    when the H.264 decoder was deMpegEncContextized in commit
    b7fe35c9e50e1701274364adf7280bf4a02b092b (merging commit
    2c541554076cc8a72e7145d4da30389ca763f32f).
    f) mpegvideo.c stopped using is_copy when it was switched to refcounted
    frames in 759001c534287a96dc96d1e274665feb7059145d.
    g) 1f4cf92cfbd3accbae582ac63126ed5570ddfd37 removed the init_thread_copy
    callbacks ; now no FFCodec.close callback checks for is_copy at all
    any more.

    Signed-off-by : Andreas Rheinhardt <andreas.rheinhardt@outlook.com>

    • [DH] libavcodec/pthread_frame.c
  • How to fix EXT-X-MAP:URI in m3u8 when specifying absolute hls_fmp4_init_filename using ffmpeg ?

    29 février 2020, par Ryan

    Today I found this blog post teaching me about fragmented mp4s (fmp4s).

    Using the ffmpeg docs, I’ve made great progress.

    I run this :

    '/usr/bin/ffmpeg' '-y' '-i' '/myproject/storage/app/sample_media/2020-02-27/Sample Videos 5.mp4' \
    '-c:v' 'libx264' '-s:v' '1920x1080' \
    '-crf' '20' '-sc_threshold' '0' '-g' '48' '-keyint_min' '48' \
    '-hls_list_size' '0' '-hls_time' '10' '-hls_allow_cache' '0' '-b:v' '4889k' \
    '-maxrate' '5866k' '-hls_segment_type' 'fmp4' \
    '-hls_fmp4_init_filename' '/myproject/public/storage/000000002/init.mp4' \
    '-hls_segment_filename' '/myproject/public/storage/000000002/list_1080p_%04d.m4s' \
    '-hls_key_info_file' '/myproject/hls_hls.keyInfo' '-strict' '-2' '-threads' '12' \
    '/myproject/public/storage/000000002/list_1080p.m3u8'

    And then I use hls.js on my webpage to try to show the video.

    Initially, it won’t load.

    But then I can get the video to load properly if I refresh the page after making this edit to list_1080p.m3u8 :

    Change from :

    #EXT-X-MAP:URI="/myproject/public/storage/000000002/init.mp4"

    To :

    #EXT-X-MAP:URI="init.mp4"

    How can I change my ffmpeg command so that it knows the absolute path of where to save the init.mp4 but also knows to write in the m3u8 only the filename init.mp4 without any path ?

    (I’ve tried using -hls_fmp4_init_filename init.mp4 without the abosolute path, but then it creates the init.mp4 at the root, which also doesn’t work. I need each video’s init.mp4 to be in its own folder.)

  • How do I accurately extend the duration of a tiny video clip ?

    18 avril 2018, par joeycato

    I noticed that ffmpeg doesn’t always scale the duration of a clip to the desired value ( even accounting for milliseconds of precision loss.) For example, whenever I attempt to scale the duration of this tiny 67ms clip to 7 seconds :

    ffmpeg -i input.avi -filter:v "setpts=(7/0.067)*PTS" -an output.avi    

    the resulting video is only 3.5 seconds in duration.

    Not really sure why this is off by multiple seconds, but I suspect it has something to do with the input clip itself ( which is only 2 frames @ 29.97 fps ) So far, I’ve discovered that if I scale the duration to a much larger value first, then scale back from that to 7 seconds, it works fine :

    ffmpeg -i input.avi -filter:v "setpts=(1000)*PTS" -an input_scaled_high.avi
    ffmpeg -i input_scaled_high.avi -filter:v "setpts=(7/33.400033)*PTS" -an output.avi

    But I’m hoping I don’t need to resort to an intermediate file. Is it possible to solve this with a single ffmpeg call ?

    If it helps, here is the video file I’m working with : https://drive.google.com/drive/folders/1hI5Xo6kfAfMd8ZylM6XrPX5fuO88gncE?usp=sharing

    Note : I should mention that I don’t need sound at all in this experiment ( hence the -an )