Recherche avancée

Médias (1)

Mot : - Tags -/école

Autres articles (111)

  • Encoding and processing into web-friendly formats

    13 avril 2011, par

    MediaSPIP automatically converts uploaded files to internet-compatible formats.
    Video files are encoded in MP4, Ogv and WebM (supported by HTML5) and MP4 (supported by Flash).
    Audio files are encoded in MP3 and Ogg (supported by HTML5) and MP3 (supported by Flash).
    Where possible, text is analyzed in order to retrieve the data needed for search engine detection, and then exported as a series of image files.
    All uploaded files are stored online in their original format, so you can (...)

  • Ecrire une actualité

    21 juin 2013, par

    Présentez les changements dans votre MédiaSPIP ou les actualités de vos projets sur votre MédiaSPIP grâce à la rubrique actualités.
    Dans le thème par défaut spipeo de MédiaSPIP, les actualités sont affichées en bas de la page principale sous les éditoriaux.
    Vous pouvez personnaliser le formulaire de création d’une actualité.
    Formulaire de création d’une actualité Dans le cas d’un document de type actualité, les champs proposés par défaut sont : Date de publication ( personnaliser la date de publication ) (...)

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

  • FFmpeg C API HLS real time timestamps

    7 septembre 2022, par Robin

    I'm using the FFmpeg C API in C++ to read from a HLS stream. I need to know the real time of each AVPacket. I can extract the pts using AVPacket::pts but that is relative to the start of the stream.

    


    This is how the .m3u8 file looks :

    


    #EXTM3U
#EXT-X-VERSION:3
#EXT-X-ALLOW-CACHE:NO
#EXT-X-TARGETDURATION:10
#EXT-X-MEDIA-SEQUENCE:0

#EXT-X-PROGRAM-DATE-TIME:2022-09-07T14:01:56.612+02:00
#EXTINF:10.322561783,
1662552116.ts
#EXT-X-PROGRAM-DATE-TIME:2022-09-07T14:02:06.935+02:00
#EXTINF:10.320075936,
1662552126.ts

...


    


    The .m3u8 file contains an accurate EXT-X-PROGRAM-DATE-TIME, but how can I extract the one of the currently playing segment ?

    


    Alternatively, the file name of each .ts file is the unix timestamp in seconds. Can I extract that somehow ?

    


    If none of those are possibly, is it possible to control the exact number of preloaded segments ? I know the (approximate) segment length is 10 seconds so I could just do the following when receiving the first AVPacket :

    


    start_time = current_time - segment_count * segment_length`
start_pts = first_av_packet.pts


    


    And then to get the time of a later AVPacket, I could do :

    


    packet_time = start_time + new_packet.pts - start_pts


    


    This wouldn't give the same accuracy since the segments are not exactly the same length, but that is okay.

    


  • FFmpeg ERROR : Feed with name 'ffm' for stream 'm3u8' is not defined

    7 septembre 2022, par H.W.Kim

    I'm running ffmpeg at :

    


    Ubuntu 18.04.5 LTS
ffmpeg version 3.4.11-0ubuntu0.1


    


    I'm trying to run the video server using ffserver so I modified /etc/ffserver.conf and tagged that .conf file for hls streaming.

    


    /etc/ffserver.conf - added part&#xA;<stream>&#xA;Feed /etc/feed1.ffm&#xA;File "/stream_src/test001/test001.m3u8"&#xA;Format mp4&#xA;VideoCodec mpeg2video&#xA;VideoFrameRate 1&#xA;VideoIntraOnly&#xA;NoAudio&#xA;<stream>&#xA;</stream></stream>

    &#xA;

    But when I runned ffserver -f /etc/server.conf, it tooks an error as shown :

    &#xA;

    root@server-itsteam:/home/server# ffserver -f /etc/ffserver.conf&#xA;\ffserver version 3.4.11-0ubuntu0.1 Copyright (c) 2000-2022 the FFmpeg developers&#xA;  built with gcc 7 (Ubuntu 7.5.0-3ubuntu1~18.04)&#xA;  configuration: --prefix=/usr --extra-version=0ubuntu0.1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --enable-gpl --disable-stripping --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librubberband --enable-librsvg --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libopencv --enable-libx264 --enable-shared&#xA;  libavutil      55. 78.100 / 55. 78.100&#xA;  libavcodec     57.107.100 / 57.107.100&#xA;  libavformat    57. 83.100 / 57. 83.100&#xA;  libavdevice    57. 10.100 / 57. 10.100&#xA;  libavfilter     6.107.100 /  6.107.100&#xA;  libavresample   3.  7.  0 /  3.  7.  0&#xA;  libswscale      4.  8.100 /  4.  8.100&#xA;  libswresample   2.  9.100 /  2.  9.100&#xA;  libpostproc    54.  7.100 / 54.  7.100&#xA;/etc/ffserver.conf:164: Setting default value for video bit rate tolerance = 64000. Use NoDefaults to disable it.&#xA;/etc/ffserver.conf:164: Setting default value for video rate control equation = tex^qComp. Use NoDefaults to disable it.&#xA;/etc/ffserver.conf:164: Setting default value for video max rate = 128000. Use NoDefaults to disable it.&#xA;/etc/ffserver.conf:219: Setting default value for audio sample rate = 22050. Use NoDefaults to disable it.&#xA;/etc/ffserver.conf:219: Setting default value for audio channel count = 1. Use NoDefaults to disable it.&#xA;/etc/ffserver.conf:219: Setting default value for video bit rate tolerance = 64000. Use NoDefaults to disable it.&#xA;/etc/ffserver.conf:219: Setting default value for video rate control equation = tex^qComp. Use NoDefaults to disable it.&#xA;/etc/ffserver.conf:219: Setting default value for video max rate = 512000. Use NoDefaults to disable it.&#xA;/etc/ffserver.conf:375: Feed with name &#x27;/etc/feed1.ffm&#x27; for stream &#x27;test001.m3u8&#x27; is not defined&#xA;Error reading configuration file &#x27;/etc/ffserver.conf&#x27;: Invalid argument&#xA;

    &#xA;

    Why does this error occur ?&#xA;And is there any part that causes errors in the syntax I wrote ?

    &#xA;

  • Stream specifier ':a' in filtergraph description [0:v][0:a][1:v][1:a]concat=a=1:n=2:v=1[s0][s1] matches no streams

    6 septembre 2022, par Mash

    I am using ffmpeg-python and I am trying to make a code that gets all the clips from a folder, converts all of them to the same format then merge all of them with their audio to one final video file.

    &#xA;

    Here is how the python script looks like

    &#xA;

    import os&#xA;import ffmpeg&#xA;&#xA;dir = "./clips/"&#xA;&#xA;# Reshape video&#xA;for f in os.listdir(dir):&#xA;  (&#xA;    ffmpeg&#xA;    .input(os.path.join(dir, f))&#xA;    .filter("scale", size="hd1080", force_original_aspect_ratio="increase")&#xA;    .filter(&#x27;fps&#x27;, fps=60, round=&#x27;up&#x27;)&#xA;    .output(str(os.path.join(dir, f))[:-4] &#x2B; "_reshaped.mp4")&#xA;    .run()&#xA;  )&#xA;&#xA;# Select reshaped video&#xA;files = []&#xA;&#xA;for f in os.listdir(dir):&#xA;  if "_reshaped.mp4" in str(os.path.join(dir, f)):&#xA;    files.append(ffmpeg.input(str(os.path.join(dir, f))))&#xA;&#xA;# eparate video and audio, then flat the array&#xA;video_and_audios_files = [item for sublist in map(lambda f: [f.video, f.audio], files) for item in sublist]&#xA;&#xA;# concat all&#xA;joined = (&#xA;    ffmpeg&#xA;    .concat(*video_and_audios_files, v=1, a=1)&#xA;    .node&#xA;)&#xA;&#xA;# merge video and audio&#xA;(&#xA;    ffmpeg&#xA;    .output(joined[0], joined[1], "./out.mp4")&#xA;    .run()&#xA;)&#xA;&#xA;

    &#xA;

    Now here is my output, this is the output of the part of the code that merges every clip into one (aka the merge video and audio section of the code)

    &#xA;

    ffmpeg version 5.1.1-essentials_build-www.gyan.dev Copyright (c) 2000-2022 the FFmpeg developers&#xA;  built with gcc 12.1.0 (Rev2, Built by MSYS2 project)&#xA;  configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-lzma --enable-zlib --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-sdl2 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid --enable-libaom --enable-libopenjpeg --enable-libvpx --enable-libass --enable-libfreetype --enable-libfribidi --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf &#xA;--enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc --enable-d3d11va --enable-dxva2 --enable-libmfx --enable-libgme --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libtheora --enable-libvo-amrwbenc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-librubberband&#xA;  libavutil      57. 28.100 / 57. 28.100&#xA;  libavcodec     59. 37.100 / 59. 37.100&#xA;  libavformat    59. 27.100 / 59. 27.100&#xA;  libavdevice    59.  7.100 / 59.  7.100&#xA;  libavfilter     8. 44.100 /  8. 44.100&#xA;  libswscale      6.  7.100 /  6.  7.100&#xA;  libswresample   4.  7.100 /  4.  7.100&#xA;  libpostproc    56.  6.100 / 56.  6.100&#xA;Input #0, mov,mp4,m4a,3gp,3g2,mj2, from &#x27;./clips/clip1_reshaped.mp4&#x27;:&#xA;  Metadata:&#xA;    major_brand     : isom&#xA;    minor_version   : 512&#xA;    compatible_brands: isomiso2avc1mp41&#xA;    encoder         : Lavf59.27.100&#xA;  Duration: 00:00:26.02, start: 0.000000, bitrate: 7432 kb/s&#xA;  Stream #0:0[0x1](und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709, progressive), 1920x1080 [SAR 1:1 DAR 16:9], 7425 kb/s, 60 fps, 60 tbr, 15360 tbn (default)      &#xA;    Metadata:&#xA;      handler_name    : VideoHandler&#xA;      vendor_id       : [0][0][0][0]&#xA;      encoder         : Lavc59.37.100 libx264&#xA;Input #1, mov,mp4,m4a,3gp,3g2,mj2, from &#x27;./clips/clip2_reshaped.mp4&#x27;:&#xA;  Metadata:&#xA;    major_brand     : isom&#xA;    minor_version   : 512&#xA;    compatible_brands: isomiso2avc1mp41&#xA;    encoder         : Lavf59.27.100&#xA;  Duration: 00:00:05.00, start: 0.000000, bitrate: 11445 kb/s&#xA;  Stream #1:0[0x1](und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, unknown/bt709/unknown, progressive), 1920x1080, 11438 kb/s, 60 fps, 60 tbr, 15360 tbn (default)        &#xA;    Metadata:&#xA;      handler_name    : VideoHandler&#xA;      vendor_id       : [0][0][0][0]&#xA;      encoder         : Lavc59.37.100 libx264&#xA;Stream specifier &#x27;:a&#x27; in filtergraph description [0:v][0:a][1:v][1:a]concat=a=1:n=2:v=1[s0][s1] matches no streams.&#xA;Traceback (most recent call last):&#xA;  File "c:\Users\USERNAME\Desktop\auto_poster\concat_vids.py", line 38, in <module>&#xA;    .run()&#xA;  File "C:\Users\USERNAME\AppData\Local\Programs\Python\Python310\lib\site-packages\ffmpeg\_run.py", line 325, in run&#xA;    raise Error(&#x27;ffmpeg&#x27;, out, err)&#xA;ffmpeg._run.Error: ffmpeg error (see stderr output for detail)&#xA;</module>

    &#xA;

    Can I get some help please ? I am on Windows 10

    &#xA;