Recherche avancée

Médias (1)

Mot : - Tags -/net art

Autres articles (94)

  • HTML5 audio and video support

    13 avril 2011, par

    MediaSPIP uses HTML5 video and audio tags to play multimedia files, taking advantage of the latest W3C innovations supported by modern browsers.
    The MediaSPIP player used has been created specifically for MediaSPIP and can be easily adapted to fit in with a specific theme.
    For older browsers the Flowplayer flash fallback is used.
    MediaSPIP allows for media playback on major mobile platforms with the above (...)

  • De l’upload à la vidéo finale [version standalone]

    31 janvier 2010, par

    Le chemin d’un document audio ou vidéo dans SPIPMotion est divisé en trois étapes distinctes.
    Upload et récupération d’informations de la vidéo source
    Dans un premier temps, il est nécessaire de créer un article SPIP et de lui joindre le document vidéo "source".
    Au moment où ce document est joint à l’article, deux actions supplémentaires au comportement normal sont exécutées : La récupération des informations techniques des flux audio et video du fichier ; La génération d’une vignette : extraction d’une (...)

  • Librairies et binaires spécifiques au traitement vidéo et sonore

    31 janvier 2010, par

    Les logiciels et librairies suivantes sont utilisées par SPIPmotion d’une manière ou d’une autre.
    Binaires obligatoires FFMpeg : encodeur principal, permet de transcoder presque tous les types de fichiers vidéo et sonores dans les formats lisibles sur Internet. CF ce tutoriel pour son installation ; Oggz-tools : outils d’inspection de fichiers ogg ; Mediainfo : récupération d’informations depuis la plupart des formats vidéos et sonores ;
    Binaires complémentaires et facultatifs flvtool2 : (...)

Sur d’autres sites (4829)

  • avformat/hlsenc : better checking var_stream_map content

    19 juin 2019, par Bela Bodecs
    avformat/hlsenc : better checking var_stream_map content
    

    When multiple variant streams are specified by var_stream_map option,
    implementation assumes that each elementary stream is assigned only once
    to any variant. But this is not checked. This patch makes this checking.

    Signed-off-by : Bela Bodecs <bodecsb@vivanet.hu>
    Reviewed-by : Steven Liu<lq@onvideo.cn>

    • [DH] libavformat/hlsenc.c
  • FFMPEG Optional Entries in -var_stream_map

    16 juillet 2022, par Baa

    I have a script that records an x11 display and outputs three HLS streams.

    &#xA;&#xA;

    ./ffmpeg -y \&#xA;    -f x11grab -framerate 60 -s 1920x1080 -i :1.0 \&#xA;    -c:v:0 libx264 -c:s:0 copy -c:a:0 aac -b:v:0 4000k -b:a:0 512k -s:v:0 1920x1080 -r:0 30 -g:0 90 -preset:0 superfast -tune:0 zerolatency -level:v:0 4 -f flv \&#xA;    -c:v:1 libx264 -c:s:1 copy -c:a:1 aac -b:v:1 2500k -b:a:1 256k -s:v:1 1280x720 -r:1 30 -g:1 90 -preset:1 superfast -tune:1 zerolatency -level:v:1 4 -f flv \&#xA;    -c:v:2 libx264 -c:s:2 copy -c:a:2 aac -b:v:2 800k -b:a:2 256k -s:v:2 960x540 -r:2 30 -g:2 90 -preset:2 superfast -tune:2 zerolatency -level:v:2 4 -f flv \&#xA;    -hls_time 6 \&#xA;    -hls_list_size 2 \&#xA;    -hls_flags delete_segments \&#xA;    -map 0:v -map 0:a? -map 0:s? -map 0:v -map 0:a? -map 0:s? -map 0:v -map 0:a? -map 0:s? \&#xA;    -var_stream_map "v:0,a:0 v:1,a:1 v:2,a:2" \&#xA;    -f hls -master_pl_name "${name}.m3u8" \&#xA;    -hls_segment_filename "/tmp/hls/${name}_%v-%d.ts" \&#xA;    -max_muxing_queue_size 1024 \&#xA;    "/tmp/hls/${name}_%v.m3u8"&#xA;

    &#xA;&#xA;

    This line :

    &#xA;&#xA;

    -map 0:v -map 0:a? -map 0:s? -map 0:v -map 0:a? -map 0:s? -map 0:v -map 0:a? -map 0:s? \&#xA;

    &#xA;&#xA;

    Has question marks after each 0:a, this is because the input does not always have audio, so it ignores the error when there is no audio present, and maps it when there is.

    &#xA;&#xA;

    However, the following switch :

    &#xA;&#xA;

    -var_stream_map "v:0,a:0 v:1,a:1 v:2,a:2" \&#xA;

    &#xA;&#xA;

    Will only work if there is audio present, is there a way I can have -var_stream_map with entries that will ignore errors like -map does ?

    &#xA;&#xA;

    Here are the errors if I try to use this current script with no audio :

    &#xA;&#xA;

    [hls @ 0x6231800] Unable to map stream at a:0&#xA;[hls @ 0x6231800] Variant stream info update failed with status ffffffea&#xA;Could not write header for output file #0 (incorrect codec parameters ?): Invalid argument&#xA;Error initializing output stream 0:2 --&#xA;

    &#xA;&#xA;

    If it's relevant, here is the entire output :

    &#xA;&#xA;

    ffmpeg version 4.0.3-static https://johnvansickle.com/ffmpeg/  Copyright (c) 2000-2018 the FFmpeg developers&#xA;  built with gcc 6.3.0 (Debian 6.3.0-18&#x2B;deb9u1) 20170516&#xA;  configuration: --enable-gpl --enable-version3 --enable-static --disable-debug --disable-ffplay --disable-indev=sndio --disable-outdev=sndio --cc=gcc-6 --enable-fontconfig --enable-frei0r --enable-gnutls --enable-gray --enable-libaom --enable-libfribidi --enable-libass --enable-libvmaf --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librubberband --enable-libsoxr --enable-libspeex --enable-libvorbis --enable-libopus --enable-libtheora --enable-libvidstab --enable-libvo-amrwbenc --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzimg&#xA;  libavutil      56. 14.100 / 56. 14.100&#xA;  libavcodec     58. 18.100 / 58. 18.100&#xA;  libavformat    58. 12.100 / 58. 12.100&#xA;  libavdevice    58.  3.100 / 58.  3.100&#xA;  libavfilter     7. 16.100 /  7. 16.100&#xA;  libswscale      5.  1.100 /  5.  1.100&#xA;  libswresample   3.  1.100 /  3.  1.100&#xA;  libpostproc    55.  1.100 / 55.  1.100&#xA;[x11grab @ 0x6229300] 16 bits per pixel screen is not implemented. Update your FFmpeg version to the newest one from Git. If the problem still occurs, it means that your file has a feature which has not been implemented.&#xA;[x11grab @ 0x6229300] Stream #0: not enough frames to estimate rate; consider increasing probesize&#xA;Input #0, x11grab, from &#x27;:1.0&#x27;:&#xA;  Duration: N/A, start: 1546439595.240575, bitrate: N/A&#xA;    Stream #0:0: Video: rawvideo (RGB[16] / 0x10424752), rgb565le, 1920x1080, 60 fps, 1000k tbr, 1000k tbn, 1000k tbc&#xA;Stream mapping:&#xA;  Stream #0:0 -> #0:0 (rawvideo (native) -> h264 (libx264))&#xA;  Stream #0:0 -> #0:1 (rawvideo (native) -> h264 (libx264))&#xA;  Stream #0:0 -> #0:2 (rawvideo (native) -> h264 (libx264))&#xA;Press [q] to stop, [?] for help&#xA;[libx264 @ 0x62334c0] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX&#xA;[libx264 @ 0x62334c0] profile High 4:4:4 Predictive, level 4.0, 4:4:4, 8-bit&#xA;[libx264 @ 0x62334c0] 264 - core 157 r2935 545de2f - H.264/MPEG-4 AVC codec - Copyleft 2003-2018 - http://www.videolan.org/x264.html - options: cabac=1 ref=1 deblock=1:0:0 analyse=0x1:0x1 me=dia subme=1 psy=1 psy_rd=1.00:0.00 mixed_ref=0 me_range=16 chroma_me=1 trellis=0 8x8dct=0 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=6 threads=4 lookahead_threads=4 sliced_threads=1 slices=4 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=0 weightp=1 keyint=90 keyint_min=9 scenecut=40 intra_refresh=0 rc=abr mbtree=0 bitrate=4000 ratetol=1.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00&#xA;[libx264 @ 0x6234840] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX&#xA;[libx264 @ 0x6234840] profile High 4:4:4 Predictive, level 4.0, 4:4:4, 8-bit&#xA;[libx264 @ 0x6234840] 264 - core 157 r2935 545de2f - H.264/MPEG-4 AVC codec - Copyleft 2003-2018 - http://www.videolan.org/x264.html - options: cabac=1 ref=1 deblock=1:0:0 analyse=0x1:0x1 me=dia subme=1 psy=1 psy_rd=1.00:0.00 mixed_ref=0 me_range=16 chroma_me=1 trellis=0 8x8dct=0 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=6 threads=4 lookahead_threads=4 sliced_threads=1 slices=4 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=0 weightp=1 keyint=90 keyint_min=9 scenecut=40 intra_refresh=0 rc=abr mbtree=0 bitrate=2500 ratetol=1.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00&#xA;[libx264 @ 0x6235740] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX&#xA;[libx264 @ 0x6235740] profile High 4:4:4 Predictive, level 4.0, 4:4:4, 8-bit&#xA;[libx264 @ 0x6235740] 264 - core 157 r2935 545de2f - H.264/MPEG-4 AVC codec - Copyleft 2003-2018 - http://www.videolan.org/x264.html - options: cabac=1 ref=1 deblock=1:0:0 analyse=0x1:0x1 me=dia subme=1 psy=1 psy_rd=1.00:0.00 mixed_ref=0 me_range=16 chroma_me=1 trellis=0 8x8dct=0 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=6 threads=4 lookahead_threads=4 sliced_threads=1 slices=4 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=0 weightp=1 keyint=90 keyint_min=9 scenecut=40 intra_refresh=0 rc=abr mbtree=0 bitrate=800 ratetol=1.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00&#xA;[hls @ 0x6231800] Unable to map stream at a:0&#xA;[hls @ 0x6231800] Variant stream info update failed with status ffffffea&#xA;Could not write header for output file #0 (incorrect codec parameters ?): Invalid argument&#xA;Error initializing output stream 0:2 -- &#xA;[libx264 @ 0x62334c0] frame I:1     Avg QP:31.45  size: 91065&#xA;[libx264 @ 0x62334c0] mb I  I16..4: 56.4%  0.0% 43.6%&#xA;[libx264 @ 0x62334c0] final ratefactor: 36.79&#xA;[libx264 @ 0x62334c0] coded y,u,v intra: 42.4% 8.7% 11.4%&#xA;[libx264 @ 0x62334c0] i16 v,h,dc,p: 53% 32% 11%  5%&#xA;[libx264 @ 0x62334c0] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 28% 20% 14%  8%  6%  6%  6%  5%  6%&#xA;[libx264 @ 0x62334c0] kb/s:21855.60&#xA;[libx264 @ 0x6234840] frame I:1     Avg QP:30.27  size: 62907&#xA;[libx264 @ 0x6234840] mb I  I16..4: 48.6%  0.0% 51.4%&#xA;[libx264 @ 0x6234840] final ratefactor: 35.22&#xA;[libx264 @ 0x6234840] coded y,u,v intra: 53.9% 14.2% 17.2%&#xA;[libx264 @ 0x6234840] i16 v,h,dc,p: 49% 36% 11%  5%&#xA;[libx264 @ 0x6234840] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 26% 19% 15%  8%  7%  6%  6%  6%  6%&#xA;[libx264 @ 0x6234840] kb/s:15097.68&#xA;[libx264 @ 0x6235740] final ratefactor: 29.77&#xA;Conversion failed!&#xA;

    &#xA;

  • av_format/hlsenc : fix %v handling by format_name function

    17 juin 2019, par Bodecs Bela
    av_format/hlsenc : fix %v handling by format_name function
    

    Hi All,

    When multiple variant streams are specified by var_stream_map option, %v
    placeholder in various names ensures that each variant has its unique
    names. Most of %v handlng is done in format_name function. Currently
    in this function the result buffer is the same as the
    input pattern buffer, so you must allocate it before calling format_name
    function. It also means, that it is silently assumed that the result
    string will NOT be
    longer that the pattern string. It is true most of the time, because %v
    may appear only once in the pattern string and number of variant streams
    is less than 100 in practical cases. But theoretically it will fail if
    specified number of variant streams is greater than 100 (i.e. longer
    than 2 digits).
    This patch fixes this behaviour by altering format_name function to
    allocate the
    result buffer and return it to the caller.

    Please, review this patch.

    best,

    Bela
    >From 6377ebee8a106a9684d41b270c7d6c8e57cd3e7b Mon Sep 17 00:00:00 2001
    From : Bela Bodecs <bodecsb@vivanet.hu>
    Date : Mon, 17 Jun 2019 14:31:36 +0200
    Subject : [PATCH] av_format/hlsenc : fix %v handling by format_name function

    When multiple variant streams are specified by var_stream_map option, %v
    placeholder in various names ensures that each variant has its unique
    names. Most of %v handlng is done in format_name function. Currently
    in this function the result buffer is the same as the input pattern
    buffer, so you must allocate it before calling format_name function. It
    also means, that it is silently assumed that the result string will NOT
    be longer that the pattern string. It is true most of the time, because
    %v may appear only once in the pattern string and number of variant
    streams is less than 100 in practical cases. But theoretically it will
    fail if specified number of variant streams is greater than 100. This
    patch fixes this behaviour by altering format_name function to allocate
    the result buffer and return it to the caller.

    Signed-off-by : Bela Bodecs <bodecsb@vivanet.hu>

    • [DH] libavformat/hlsenc.c