Recherche avancée

Médias (91)

Autres articles (75)

  • MediaSPIP v0.2

    21 juin 2013, par

    MediaSPIP 0.2 est la première version de MediaSPIP stable.
    Sa date de sortie officielle est le 21 juin 2013 et est annoncée ici.
    Le fichier zip ici présent contient uniquement les sources de MediaSPIP en version standalone.
    Comme pour la version précédente, il est nécessaire d’installer manuellement l’ensemble des dépendances logicielles sur le serveur.
    Si vous souhaitez utiliser cette archive pour une installation en mode ferme, il vous faudra également procéder à d’autres modifications (...)

  • MediaSPIP version 0.1 Beta

    16 avril 2011, par

    MediaSPIP 0.1 beta est la première version de MediaSPIP décrétée comme "utilisable".
    Le fichier zip ici présent contient uniquement les sources de MediaSPIP en version standalone.
    Pour avoir une installation fonctionnelle, il est nécessaire d’installer manuellement l’ensemble des dépendances logicielles sur le serveur.
    Si vous souhaitez utiliser cette archive pour une installation en mode ferme, il vous faudra également procéder à d’autres modifications (...)

  • Installation en mode ferme

    4 février 2011, par

    Le mode ferme permet d’héberger plusieurs sites de type MediaSPIP en n’installant qu’une seule fois son noyau fonctionnel.
    C’est la méthode que nous utilisons sur cette même plateforme.
    L’utilisation en mode ferme nécessite de connaïtre un peu le mécanisme de SPIP contrairement à la version standalone qui ne nécessite pas réellement de connaissances spécifique puisque l’espace privé habituel de SPIP n’est plus utilisé.
    Dans un premier temps, vous devez avoir installé les mêmes fichiers que l’installation (...)

Sur d’autres sites (10477)

  • Quick stream from file which exists

    4 mai 2017, par parsa

    I implement live streaming from mp4 video file which exists on the path with ffmpeg under hls format.
    When my video file have the quality greater than hd720 , in encoding there are so many delays for creating .ts fragments.
    I mean the .ts fragments slowly produced on my path,and because of it I have so many delays in showing the stream.
    Here is my ffmpeg code for streaming :

    ffmpeg -re -i 123.mp4 -s cga -f hls -hls_list_size 0 -c:v libx264 -c:a aac 200p/out.m3u8
                 -s nhd -f hls -hls_list_size 0 -c:v libx264 -c:a aac 360p/out.m3u8
                 -s hd480 -f hls -hls_list_size 0 -c:v libx264 -c:a aac 480p/out.m3u8
                 -s hd720 -f hls -hls_list_size 0 -c:v libx264 -c:a aac 720p/out.m3u8
                 -s hd1080 -f hls -hls_list_size 0 -c:v libx264 -c:a aac 1080p/out.m3u8

    And here is the console output :

       ffmpeg -re -i ../files/412-887123464/video/412-887123464.mp4 -s cga -f hls -hls_list_size 0 -c:v libx264 -c:a aac ../fil
           es/412-887123464/video/200p/out.m3u8  -s nhd -f hls -hls_list_size 0 -c:v libx264 -c:a aac ../files/412-887123464/video/360p/out.m3u8 -s hd480 -f hls -
           hls_list_size 0 -c:v libx264 -c:a aac ../files/412-887123464/video/480p/out.m3u8 -s hd720 -f hls -hls_list_size 0 -c:v libx264 -c:a aac ../files/412-88
           7123464/video/720p/out.m3u8 -s hd1080 -f hls -hls_list_size 0 -c:v libx264 -c:a aac ../files/412-887123464/video/1080p/out.m3u8
           ffmpeg version N-82225-gb4e9252 Copyright (c) 2000-2016 the FFmpeg developers
             built with gcc 5.4.0 (GCC)
             configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-dxva2 --enable-libmfx --enable-nvenc --enable-avisynth --enable-bzlib --e
           nable-libebur128 --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcac
           a --enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-lib
           opencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libschroedinger --enable-libsnappy --enable-libsoxr
            --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwa
           vpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-libzimg --enable-lzma --enable-decklink --enable-zl
           ib
             libavutil      55. 35.100 / 55. 35.100
             libavcodec     57. 66.101 / 57. 66.101
             libavformat    57. 57.100 / 57. 57.100
             libavdevice    57.  2.100 / 57.  2.100
             libavfilter     6. 66.100 /  6. 66.100
             libswscale      4.  3.100 /  4.  3.100
             libswresample   2.  4.100 /  2.  4.100
             libpostproc    54.  2.100 / 54.  2.100
           Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '../files/412-887123464/video/412-887123464.mp4':
             Metadata:
               major_brand     : isom
               minor_version   : 512
               compatible_brands: isomiso2avc1mp41
               encoder         : Lavf57.31.100
             Duration: 00:05:04.07, start: 0.000000, bitrate: 3108 kb/s
               Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709), 1920x1080 [SAR 1:1 DAR 16:9], 2976 kb/s, 25 fps, 25 tbr, 90k tbn, 50
           tbc (default)
               Metadata:
                 handler_name    : VideoHandler
               Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 125 kb/s (default)
               Metadata:
                 handler_name    : SoundHandler
           [libx264 @ 0000000001c53f00] using SAR=10/9
           [libx264 @ 0000000001c53f00] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2
           [libx264 @ 0000000001c53f00] profile High, level 1.3
           Output #0, hls, to '../files/412-887123464/video/200p/out.m3u8':
             Metadata:
               major_brand     : isom
               minor_version   : 512
               compatible_brands: isomiso2avc1mp41
               encoder         : Lavf57.57.100
               Stream #0:0(und): Video: h264 (libx264), yuv420p, 320x200 [SAR 10:9 DAR 16:9], q=-1--1, 25 fps, 90k tbn, 25 tbc (default)
               Metadata:
                 handler_name    : VideoHandler
                 encoder         : Lavc57.66.101 libx264
               Side data:
                 cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
               Stream #0:1(und): Audio: aac (LC), 44100 Hz, stereo, fltp, 128 kb/s (default)
               Metadata:
                 handler_name    : SoundHandler
                 encoder         : Lavc57.66.101 aac
           [libx264 @ 0000000001f87180] using SAR=1/1
           [libx264 @ 0000000001f87180] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2
           [libx264 @ 0000000001f87180] profile High, level 3.0
           Output #1, hls, to '../files/412-887123464/video/360p/out.m3u8':
             Metadata:
               major_brand     : isom
               minor_version   : 512
               compatible_brands: isomiso2avc1mp41
               encoder         : Lavf57.57.100
               Stream #1:0(und): Video: h264 (libx264), yuv420p, 640x360 [SAR 1:1 DAR 16:9], q=-1--1, 25 fps, 90k tbn, 25 tbc (default)
               Metadata:
                 handler_name    : VideoHandler
                 encoder         : Lavc57.66.101 libx264
               Side data:
                 cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
               Stream #1:1(und): Audio: aac (LC), 44100 Hz, stereo, fltp, 128 kb/s (default)
               Metadata:
                 handler_name    : SoundHandler
                 encoder         : Lavc57.66.101 aac
           [libx264 @ 0000000001c55ba0] using SAR=640/639
           [libx264 @ 0000000001c55ba0] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2
           [libx264 @ 0000000001c55ba0] profile High, level 3.0
           Output #2, hls, to '../files/412-887123464/video/480p/out.m3u8':
             Metadata:
               major_brand     : isom
               minor_version   : 512
               compatible_brands: isomiso2avc1mp41
               encoder         : Lavf57.57.100
               Stream #2:0(und): Video: h264 (libx264), yuv420p, 852x480 [SAR 640:639 DAR 16:9], q=-1--1, 25 fps, 90k tbn, 25 tbc (default)
               Metadata:
                 handler_name    : VideoHandler
                 encoder         : Lavc57.66.101 libx264
               Side data:
                 cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
               Stream #2:1(und): Audio: aac (LC), 44100 Hz, stereo, fltp, 128 kb/s (default)
               Metadata:
                 handler_name    : SoundHandler
                 encoder         : Lavc57.66.101 aac
           [libx264 @ 0000000001ca0220] using SAR=1/1
           [libx264 @ 0000000001ca0220] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2
           [libx264 @ 0000000001ca0220] profile High, level 3.1
           Output #3, hls, to '../files/412-887123464/video/720p/out.m3u8':
             Metadata:
               major_brand     : isom
               minor_version   : 512
               compatible_brands: isomiso2avc1mp41
               encoder         : Lavf57.57.100
               Stream #3:0(und): Video: h264 (libx264), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], q=-1--1, 25 fps, 90k tbn, 25 tbc (default)
               Metadata:
                 handler_name    : VideoHandler
                 encoder         : Lavc57.66.101 libx264
               Side data:
                 cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
               Stream #3:1(und): Audio: aac (LC), 44100 Hz, stereo, fltp, 128 kb/s (default)
               Metadata:
                 handler_name    : SoundHandler
                 encoder         : Lavc57.66.101 aac
           [libx264 @ 0000000001ca23e0] using SAR=1/1
           [libx264 @ 0000000001ca23e0] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2
           [libx264 @ 0000000001ca23e0] profile High, level 4.0
           Output #4, hls, to '../files/412-887123464/video/1080p/out.m3u8':
             Metadata:
               major_brand     : isom
               minor_version   : 512
               compatible_brands: isomiso2avc1mp41
               encoder         : Lavf57.57.100
               Stream #4:0(und): Video: h264 (libx264), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], q=-1--1, 25 fps, 90k tbn, 25 tbc (default)
               Metadata:
                 handler_name    : VideoHandler
                 encoder         : Lavc57.66.101 libx264
               Side data:
                 cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
               Stream #4:1(und): Audio: aac (LC), 44100 Hz, stereo, fltp, 128 kb/s (default)
               Metadata:
                 handler_name    : SoundHandler
                 encoder         : Lavc57.66.101 aac
           Stream mapping:
             Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264))
             Stream #0:1 -> #0:1 (aac (native) -> aac (native))
             Stream #0:0 -> #1:0 (h264 (native) -> h264 (libx264))
             Stream #0:1 -> #1:1 (aac (native) -> aac (native))
             Stream #0:0 -> #2:0 (h264 (native) -> h264 (libx264))
             Stream #0:1 -> #2:1 (aac (native) -> aac (native))
             Stream #0:0 -> #3:0 (h264 (native) -> h264 (libx264))
             Stream #0:1 -> #3:1 (aac (native) -> aac (native))
             Stream #0:0 -> #4:0 (h264 (native) -> h264 (libx264))
             Stream #0:1 -> #4:1 (aac (native) -> aac (native))
           Press [q] to stop, [?] for help
    frame= 7600 fps= 21 q=-1.0 Lq=-1.0 q=-1.0 q=-1.0 q=-1.0 size=N/A time=00:05:04.06 bitrate=N/A speed=0.835x
    video:294980kB audio:23995kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
    [libx264 @ 0000000001d33f00] frame I:33    Avg QP:19.93  size: 11412
    [libx264 @ 0000000001d33f00] frame P:2281  Avg QP:23.72  size:  3112
    [libx264 @ 0000000001d33f00] frame B:5286  Avg QP:28.59  size:   446
    [libx264 @ 0000000001d33f00] consecutive B-frames:  4.3%  6.9%  5.9% 82.8%
    [libx264 @ 0000000001d33f00] mb I  I16..4: 12.9% 42.9% 44.2%
    [libx264 @ 0000000001d33f00] mb P  I16..4:  1.3%  4.4%  2.3%  P16..4: 41.4% 22.0% 15.5%  0.0%  0.0%    skip:13.1%
    [libx264 @ 0000000001d33f00] mb B  I16..4:  0.0%  0.1%  0.0%  B16..8: 35.2%  5.9%  2.1%  direct: 3.0%  skip:53.6%  L0:35.3% L1:48.0% BI:16.8%
    [libx264 @ 0000000001d33f00] 8x8 transform intra:53.4% inter:57.9%
    [libx264 @ 0000000001d33f00] coded y,uvDC,uvAC intra: 70.6% 89.7% 67.6% inter: 18.1% 20.3% 7.2%
    [libx264 @ 0000000001d33f00] i16 v,h,dc,p: 24% 24%  6% 45%
    [libx264 @ 0000000001d33f00] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 27% 14% 19%  5%  5%  7%  5% 10%  7%
    [libx264 @ 0000000001d33f00] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 31% 15% 15%  6%  6%  7%  6%  8%  6%
    [libx264 @ 0000000001d33f00] i8c dc,h,v,p: 42% 17% 28% 14%
    [libx264 @ 0000000001d33f00] Weighted P-Frames: Y:26.3% UV:12.9%
    [libx264 @ 0000000001d33f00] ref P L0: 58.7% 24.7% 10.9%  4.8%  1.0%
    [libx264 @ 0000000001d33f00] ref B L0: 92.6%  5.8%  1.6%
    [libx264 @ 0000000001d33f00] ref B L1: 96.3%  3.7%
    [libx264 @ 0000000001d33f00] kb/s:258.68
    [aac @ 00000000005fc9e0] Qavg: 686.637
    [libx264 @ 0000000002017180] frame I:31    Avg QP:19.77  size: 29228
    [libx264 @ 0000000002017180] frame P:2040  Avg QP:23.08  size:  8765
    [libx264 @ 0000000002017180] frame B:5529  Avg QP:27.28  size:  1471
    [libx264 @ 0000000002017180] consecutive B-frames:  1.3%  4.2%  2.4% 92.1%
    [libx264 @ 0000000002017180] mb I  I16..4:  8.3% 58.8% 32.9%
    [libx264 @ 0000000002017180] mb P  I16..4:  3.2%  9.5%  2.6%  P16..4: 41.5% 19.5% 11.4%  0.0%  0.0%    skip:12.2%
    [libx264 @ 0000000002017180] mb B  I16..4:  0.2%  0.3%  0.1%  B16..8: 34.5%  5.8%  1.7%  direct: 2.7%  skip:54.7%  L0:35.9% L1:49.5% BI:14.6%
    [libx264 @ 0000000002017180] 8x8 transform intra:61.2% inter:67.3%
    [libx264 @ 0000000002017180] coded y,uvDC,uvAC intra: 55.8% 84.8% 51.3% inter: 15.6% 19.3% 3.9%
    [libx264 @ 0000000002017180] i16 v,h,dc,p: 24% 29%  8% 39%
    [libx264 @ 0000000002017180] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 27% 17% 21%  5%  5%  7%  5%  8%  6%
    [libx264 @ 0000000002017180] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 29% 18% 15%  6%  7%  7%  6%  7%  5%
    [libx264 @ 0000000002017180] i8c dc,h,v,p: 42% 18% 27% 13%
    [libx264 @ 0000000002017180] Weighted P-Frames: Y:22.3% UV:12.2%
    [libx264 @ 0000000002017180] ref P L0: 58.5% 23.4% 12.2%  5.2%  0.8%
    [libx264 @ 0000000002017180] ref B L0: 93.1%  5.3%  1.6%
    [libx264 @ 0000000002017180] ref B L1: 96.6%  3.4%
    [libx264 @ 0000000002017180] kb/s:708.47
    [aac @ 0000000001d35200] Qavg: 686.637
    [libx264 @ 0000000001d35ba0] frame I:31    Avg QP:19.63  size: 41522
    [libx264 @ 0000000001d35ba0] frame P:2025  Avg QP:22.86  size: 13415
    [libx264 @ 0000000001d35ba0] frame B:5544  Avg QP:26.52  size:  2471
    [libx264 @ 0000000001d35ba0] consecutive B-frames:  1.1%  3.9%  2.8% 92.2%
    [libx264 @ 0000000001d35ba0] mb I  I16..4: 10.6% 62.4% 26.9%
    [libx264 @ 0000000001d35ba0] mb P  I16..4:  4.7% 12.4%  2.6%  P16..4: 41.1% 17.8%  9.4%  0.0%  0.0%    skip:11.9%
    [libx264 @ 0000000001d35ba0] mb B  I16..4:  0.3%  0.5%  0.1%  B16..8: 34.0%  5.5%  1.4%  direct: 2.9%  skip:55.3%  L0:36.7% L1:50.2% BI:13.1%
    [libx264 @ 0000000001d35ba0] 8x8 transform intra:61.7% inter:71.6%
    [libx264 @ 0000000001d35ba0] coded y,uvDC,uvAC intra: 48.0% 81.9% 43.3% inter: 14.7% 19.7% 2.6%
    [libx264 @ 0000000001d35ba0] i16 v,h,dc,p: 27% 29%  9% 35%
    [libx264 @ 0000000001d35ba0] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 27% 19% 22%  5%  5%  6%  5%  7%  5%
    [libx264 @ 0000000001d35ba0] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 26% 25% 16%  5%  6%  7%  6%  6%  4%
    [libx264 @ 0000000001d35ba0] i8c dc,h,v,p: 42% 20% 26% 12%
    [libx264 @ 0000000001d35ba0] Weighted P-Frames: Y:18.1% UV:10.8%
    [libx264 @ 0000000001d35ba0] ref P L0: 59.5% 22.6% 12.6%  4.8%  0.5%
    [libx264 @ 0000000001d35ba0] ref B L0: 93.6%  5.0%  1.4%
    [libx264 @ 0000000001d35ba0] ref B L1: 97.1%  2.9%
    [libx264 @ 0000000001d35ba0] kb/s:1109.23
    [aac @ 0000000001d828a0] Qavg: 686.637
    [libx264 @ 0000000001d7f880] frame I:32    Avg QP:19.45  size: 64737
    [libx264 @ 0000000001d7f880] frame P:2104  Avg QP:22.44  size: 23985
    [libx264 @ 0000000001d7f880] frame B:5464  Avg QP:25.65  size:  4999
    [libx264 @ 0000000001d7f880] consecutive B-frames:  1.2%  7.7%  3.2% 87.8%
    [libx264 @ 0000000001d7f880] mb I  I16..4: 12.5% 70.0% 17.5%
    [libx264 @ 0000000001d7f880] mb P  I16..4:  6.7% 17.1%  1.8%  P16..4: 40.7% 14.9%  6.6%  0.0%  0.0%    skip:12.2%
    [libx264 @ 0000000001d7f880] mb B  I16..4:  0.6%  0.9%  0.1%  B16..8: 32.5%  4.7%  1.0%  direct: 2.9%  skip:57.4%  L0:37.6% L1:51.6% BI:10.8%
    [libx264 @ 0000000001d7f880] 8x8 transform intra:65.7% inter:77.5%
    [libx264 @ 0000000001d7f880] coded y,uvDC,uvAC intra: 39.5% 76.4% 32.4% inter: 13.2% 19.8% 1.5%
    [libx264 @ 0000000001d7f880] i16 v,h,dc,p: 32% 27% 10% 31%
    [libx264 @ 0000000001d7f880] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 30% 18% 23%  4%  5%  5%  4%  5%  4%
    [libx264 @ 0000000001d7f880] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 29% 20% 15%  5%  7%  7%  6%  6%  4%
    [libx264 @ 0000000001d7f880] i8c dc,h,v,p: 42% 19% 27% 12%
    [libx264 @ 0000000001d7f880] Weighted P-Frames: Y:10.5% UV:6.7%
    [libx264 @ 0000000001d7f880] ref P L0: 62.3% 20.4% 12.7%  4.3%  0.3%
    [libx264 @ 0000000001d7f880] ref B L0: 93.4%  5.2%  1.4%
    [libx264 @ 0000000001d7f880] ref B L1: 97.7%  2.3%
    [libx264 @ 0000000001d7f880] kb/s:2101.26
    [aac @ 0000000001d81560] Qavg: 686.637
    [libx264 @ 0000000001d7fd60] frame I:33    Avg QP:18.36  size: 98904
    [libx264 @ 0000000001d7fd60] frame P:3180  Avg QP:21.67  size: 33377
    [libx264 @ 0000000001d7fd60] frame B:4387  Avg QP:24.61  size:  7729
    [libx264 @ 0000000001d7fd60] consecutive B-frames:  2.7% 55.9% 15.6% 25.9%
    [libx264 @ 0000000001d7fd60] mb I  I16..4: 22.4% 66.9% 10.7%
    [libx264 @ 0000000001d7fd60] mb P  I16..4:  9.9% 17.8%  0.7%  P16..4: 40.4%  9.2%  3.0%  0.0%  0.0%    skip:19.0%
    [libx264 @ 0000000001d7fd60] mb B  I16..4:  0.8%  1.3%  0.1%  B16..8: 30.2%  2.6%  0.4%  direct: 1.7%  skip:63.0%  L0:38.1% L1:54.9% BI: 7.0%
    [libx264 @ 0000000001d7fd60] 8x8 transform intra:62.5% inter:82.9%
    [libx264 @ 0000000001d7fd60] coded y,uvDC,uvAC intra: 25.4% 59.5% 11.6% inter: 9.6% 16.3% 0.7%
    [libx264 @ 0000000001d7fd60] i16 v,h,dc,p: 33% 28% 15% 24%
    [libx264 @ 0000000001d7fd60] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 34% 20% 29%  3%  3%  4%  3%  3%  3%
    [libx264 @ 0000000001d7fd60] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 30% 25% 16%  4%  6%  6%  5%  5%  4%
    [libx264 @ 0000000001d7fd60] i8c dc,h,v,p: 39% 21% 28% 12%
    [libx264 @ 0000000001d7fd60] Weighted P-Frames: Y:5.7% UV:3.6%
    [libx264 @ 0000000001d7fd60] ref P L0: 70.0% 18.6%  8.3%  3.1%  0.1%
    [libx264 @ 0000000001d7fd60] ref B L0: 91.4%  7.6%  1.0%
    [libx264 @ 0000000001d7fd60] ref B L1: 99.0%  1.0%
    [libx264 @ 0000000001d7fd60] kb/s:3771.31
    [aac @ 0000000001d823e0] Qavg: 686.637

    But I don’t have any problem for streaming files with creating resolutions from a file which have lower orginal quality than hd1080
    What I can to do ?

  • FFMPEG to create an MPEG-DASH stream with VP8

    24 avril 2017, par Kenneth Worden

    I’m trying to use FFMPEG to stream a live video feed from my webcam /dev/video0. Following scattered tutorials and scarce documentation (is this a known problem for the encoding community ?) I arrived at the following bash script :

    #!/bin/bash

    ffmpeg \
       -y \
       -f v4l2 \
           -i /dev/video0 \
           -s 640x480 \
           -input_format mjpeg \
           -r 24 \
       -map 0:0 \
       -pix_fmt yuv420p \
       -codec:v libvpx \
           -s 640x480 \
           -threads 4 \
           -b:v 50k \
           -tile-columns 4 \
           -frame-parallel 1 \
           -keyint_min 24 -g 24 \
       -f webm_chunk \
           -header "stream.hdr" \
           -chunk_start_index 1 \
       stream_%d.chk &

    sleep 2

    ffmpeg \
       -f webm_dash_manifest -live 1 \
       -i stream.hdr \
       -c copy \
       -map 0 \
       -f webm_dash_manifest -live 1 \
           -adaptation_sets "id=0,streams=0" \
           -chunk_start_index 1 \
           -chunk_duration_ms 1000 \
           -time_shift_buffer_depth 30000 \
           -minimum_update_period 60000 \
       stream_manifest.mpd

    When I run this script, my webcam light turns on, the stream.hdr and stream_manifest.mpd files are written, and chunks start to be created (i.e. stream_1.chk, stream_2.chk, etc...). However, FFMPEG throws the following error :

    Could not write header for output file #0 (incorrect codec parameters
     ?) : Invalid data found when processing input

    I will explain what I think I am doing with this script, and hopefully this will expose any errors in my thinking.

    First, we invoke FFMPEG to use Video for Linux 2 (v4l2) to read from my webcam (/dev/video0) of a resolution 640x480. The input format is mjpeg with a framerate of 24fps.

    I then declare that FFMPEG should "map" (copy) the video stream output by v4l2 to a file. I specify the pixel format (YUV420P) and use libvpx (VP8 encoding) to encode the video stream. I set the size to be 640x480, use 4 threads, set the bitrate to be 50kbps, do some magic with tile-columns and frame-parallel options, and set the I-frames to be 24 frames apart.

    I then create a stream.hdr file. The starting index is 1. This command continues to run infinitely until I kill it, grabbing new video from my webcam and outputting it into chunks.

    I then sleep for 2 seconds to give the previous command time to generate a header file.

    And that’s really it. The next invocation of FFMPEG simply creates the MPEG-DASH manifest file given the header generated in the previous step.

    So what’s going on ? Why can I not view the video in a web browser (I’m using Dash.js) ? I serve the manifest, header, and chunks on a Node.js server so that trivial issue is not the problem.


    Edit : Here is my full console output.

    ffmpeg version 3.0.7-0ubuntu0.16.10.1 Copyright (c) 2000-2017 the FFmpeg developers
     built with gcc 6.2.0 (Ubuntu 6.2.0-5ubuntu12) 20161005
     configuration: --prefix=/usr --extra-version=0ubuntu0.16.10.1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --cc=cc --cxx=g++ --enable-gpl --enable-shared --disable-stripping --disable-decoder=libopenjpeg --disable-decoder=libschroedinger --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-libmodplug --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librubberband --enable-librtmp --enable-libschroedinger --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-libxvid --enable-libzvbi --enable-openal --enable-opengl --enable-x11grab --enable-libdc1394 --enable-libiec61883 --enable-libzmq --enable-frei0r --enable-chromaprint --enable-libx264
     libavutil      55. 17.103 / 55. 17.103
     libavcodec     57. 24.102 / 57. 24.102
     libavformat    57. 25.100 / 57. 25.100
     libavdevice    57.  0.101 / 57.  0.101
     libavfilter     6. 31.100 /  6. 31.100
     libavresample   3.  0.  0 /  3.  0.  0
     libswscale      4.  0.100 /  4.  0.100
     libswresample   2.  0.101 /  2.  0.101
     libpostproc    54.  0.100 / 54.  0.100
    [video4linux2,v4l2 @ 0x55847e244ea0] The driver changed the time per frame from 1/24 to 1/30
    [mjpeg @ 0x55847e245c00] Changing bps to 8
    Input #0, video4linux2,v4l2, from '/dev/video0':
     Duration: N/A, start: 64305.102081, bitrate: N/A
       Stream #0:0: Video: mjpeg, yuvj422p(pc, bt470bg/unknown/unknown), 640x480, -5 kb/s, 30 fps, 30 tbr, 1000k tbn, 1000k tbc
    Codec AVOption frame-parallel (Enable frame parallel decodability features) specified for output file #0 (stream_%d.chk) has not been used for any stream. The most likely reason is either wrong type (e.g. a video option with no video streams) or that it is a private option of some encoder which was not actually used for any stream.
    Codec AVOption tile-columns (Number of tile columns to use, log2) specified for output file #0 (stream_%d.chk) has not been used for any stream. The most likely reason is either wrong type (e.g. a video option with no video streams) or that it is a private option of some encoder which was not actually used for any stream.
    [swscaler @ 0x55847e24b720] deprecated pixel format used, make sure you did set range correctly
    [libvpx @ 0x55847e248a20] v1.5.0
    Output #0, webm_chunk, to 'stream_%d.chk':
     Metadata:
       encoder         : Lavf57.25.100
       Stream #0:0: Video: vp8 (libvpx), yuv420p, 640x480, q=-1--1, 50 kb/s, 30 fps, 30 tbn, 30 tbc
       Metadata:
         encoder         : Lavc57.24.102 libvpx
       Side data:
         unknown side data type 10 (24 bytes)
    Stream mapping:
     Stream #0:0 -> #0:0 (mjpeg (native) -> vp8 (libvpx))
    Press [q] to stop, [?] for help
    frame=   21 fps=0.0 q=0.0 size=N/A time=00:00:00.70 bitrate=N/A dup=5 drop=frame=   36 fps= 35 q=0.0 size=N/A time=00:00:01.20 bitrate=N/A dup=5 drop=frame=   51 fps= 33 q=0.0 size=N/A time=00:00:01.70 bitrate=N/A dup=5 drop=ffmpeg version 3.0.7-0ubuntu0.16.10.1 Copyright (c) 2000-2017 the FFmpeg developers
     built with gcc 6.2.0 (Ubuntu 6.2.0-5ubuntu12) 20161005
     configuration: --prefix=/usr --extra-version=0ubuntu0.16.10.1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --cc=cc --cxx=g++ --enable-gpl --enable-shared --disable-stripping --disable-decoder=libopenjpeg --disable-decoder=libschroedinger --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-libmodplug --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librubberband --enable-librtmp --enable-libschroedinger --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-libxvid --enable-libzvbi --enable-openal --enable-opengl --enable-x11grab --enable-libdc1394 --enable-libiec61883 --enable-libzmq --enable-frei0r --enable-chromaprint --enable-libx264
     libavutil      55. 17.103 / 55. 17.103
     libavcodec     57. 24.102 / 57. 24.102
     libavformat    57. 25.100 / 57. 25.100
     libavdevice    57.  0.101 / 57.  0.101
     libavfilter     6. 31.100 /  6. 31.100
     libavresample   3.  0.  0 /  3.  0.  0
     libswscale      4.  0.100 /  4.  0.100
     libswresample   2.  0.101 /  2.  0.101
     libpostproc    54.  0.100 / 54.  0.100
    Input #0, webm_dash_manifest, from 'stream.hdr':
     Metadata:
       encoder         : Lavf57.25.100
     Duration: N/A, bitrate: N/A
       Stream #0:0: Video: vp8, yuv420p, 640x480, SAR 1:1 DAR 4:3, 30 fps, 30 tbr, 1k tbn, 1k tbc (default)
       Metadata:
         webm_dash_manifest_file_name: stream.hdr
         webm_dash_manifest_track_number: 1
    Output #0, webm_dash_manifest, to 'stream_manifest.mpd':
     Metadata:
       encoder         : Lavf57.25.100
       Stream #0:0: Video: vp8, yuv420p, 640x480 [SAR 1:1 DAR 4:3], q=2-31, 30 fps, 30 tbr, 1k tbn, 1k tbc (default)
       Metadata:
         webm_dash_manifest_file_name: stream.hdr
         webm_dash_manifest_track_number: 1
    Stream mapping:
     Stream #0:0 -> #0:0 (copy)
    Could not write header for output file #0 (incorrect codec parameters ?): Invalid data found when processing input
    frame=   67 fps= 33 q=0.0 size
    frame=   82 fps= 32 q=0.0 size=N/A time=00:00:02.73 bitrate=N/A dup=5 drop=
    frame=   97 fps= 32 q=0.0 size=N/A time=00:00:03.23 bitrate=N/A dup=5 drop=
    frame=  112 fps= 32 q=0.0 size=N/A time=00:00:03.73 bitrate=N/A dup=5 ...
  • FFmpeg rtp streaming opus file problems

    22 avril 2017, par Yuriy Aizenberg

    i have the next situation.

    1. Have file on remote VPS server.
    2. I want that this file (opus codec) can be accessible through RTP on my android phone.
    3. I tried ffmpeg with next command :

      ffmpeg -ar 44800 -i bon_jovi_loverboy.opus -acodec libopus -ac 1 -ab 96k -vn -f rtp rtp://127.0.0.1:5004 -loglevel 56

    But got next error :

    bon_jovi_loverboy.opus: Invalid data found when processing input

    Full log :

    root@cs82932 :/home/rstream/rtstream/src# ffmpeg -ar 44800 -i bon_jovi_loverboy.opus -acodec libopus -ac 1 -ab 96k -vn -f rtp rtp ://127.0.0.1:5004 -loglevel 56
    ffmpeg version 2.8.11-0ubuntu0.16.04.1 Copyright (c) 2000-2017 the FFmpeg developers
    built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1 16.04.4) 20160609
    configuration : —prefix=/usr —extra-version=0ubuntu0.16.04.1 —build-suffix=-ffmpeg —toolchain=hardened —libdir=/usr/lib/x86_64-linux-gnu —incdir=/usr/include/x86_64-linux-gnu —cc=cc —cxx=g++ —enable-gpl —enable-shared —disable-stripping —disable-decoder=libopenjpeg —disable-decoder=libschroedinger —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-libmodplug —enable-libmp3lame —enable-libopenjpeg —enable-libopus —enable-libpulse —enable-librtmp —enable-libschroedinger —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-libxvid —enable-libzvbi —enable-openal —enable-opengl —enable-x11grab —enable-libdc1394 —enable-libiec61883 —enable-libzmq —enable-frei0r —enable-libx264 —enable-libopencv
    libavutil 54. 31.100 / 54. 31.100
    libavcodec 56. 60.100 / 56. 60.100
    libavformat 56. 40.101 / 56. 40.101
    libavdevice 56. 4.100 / 56. 4.100
    libavfilter 5. 40.101 / 5. 40.101
    libavresample 2. 1. 0 / 2. 1. 0
    libswscale 3. 1.101 / 3. 1.101
    libswresample 1. 2.101 / 1. 2.101
    libpostproc 53. 3.100 / 53. 3.100
    Splitting the commandline.
    Reading option ’-ar’ ... matched as option ’ar’ (set audio sampling rate (in Hz)) with argument ’44800’.

    Reading option ’-i’ ... matched as input url with argument ’bon_jovi_loverboy.opus’.

    Reading option ’-acodec’ ... matched as option ’acodec’ (force audio codec (’copy’ to copy stream)) with argument ’libopus’.

    Reading option ’-ac’ ... matched as option ’ac’ (set number of audio channels) with argument ’1’.

    Reading option ’-ab’ ... matched as option ’ab’ (audio bitrate (please use -b:a)) with argument ’96k’.

    Reading option ’-vn’ ... matched as option ’vn’ (disable video) with argument ’1’.

    Reading option ’-f’ ... matched as option ’f’ (force format) with argument ’rtp’.

    Reading option ’rtp ://127.0.0.1:5004’ ... matched as output url.

    Reading option ’-loglevel’ ... matched as option ’loglevel’ (set logging level) with argument ’56’.

    Finished splitting the commandline.
    Parsing a group of options : global .
    Applying option loglevel (set logging level) with argument 56.

    Successfully parsed a group of options.

    Parsing a group of options : input url bon_jovi_loverboy.opus.
    Applying option ar (set audio sampling rate (in Hz)) with argument 44800.
    Successfully parsed a group of options.
    Opening an input file : bon_jovi_loverboy.opus.

    [AVIOContext @ 0x965e60] Statistics : 36389 bytes read, 0 seeks
    bon_jovi_loverboy.opus : Invalid data found when processing input

    What wrong ? Thanks

    UPD

    I update ffmpeg and streaming looks successfully.

       ffmpeg -stream_loop -1 -i 4a6u7-ptl2w.opus -acodec libopus -ac 1 -ab
              96k -vn -f rtp rtp://95.213.195.192:5004/f.opus
    ffmpeg version 3.2.4-1~16.04.york1 Copyright (c) 2000-2017 the FFmpeg developers
     built with gcc 5.4.1 (Ubuntu 5.4.1-5ubuntu2~16.04.york1) 20170210
     configuration: --prefix=/usr --extra-version='1~16.04.york1' --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-libebur128 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmp3lame --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librubberband --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-libxvid --enable-libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libopencv --enable-libx264 --enable-shared
     libavutil      55. 34.101 / 55. 34.101
     libavcodec     57. 64.101 / 57. 64.101
     libavformat    57. 56.101 / 57. 56.101
     libavdevice    57.  1.100 / 57.  1.100
     libavfilter     6. 65.100 /  6. 65.100
     libavresample   3.  1.  0 /  3.  1.  0
     libswscale      4.  2.100 /  4.  2.100
     libswresample   2.  3.100 /  2.  3.100
     libpostproc    54.  1.100 / 54.  1.100
    Input #0, ogg, from '4a6u7-ptl2w.opus':
     Duration: 00:02:34.21, start: 0.000000, bitrate: 69 kb/s
       Stream #0:0: Audio: opus, 48000 Hz, stereo, fltp
       Metadata:
         ENCODER         : Lavc57.77.100 libopus
    Output #0, rtp, to 'rtp://95.213.195.192:5004/f.opus':
     Metadata:
       encoder         : Lavf57.56.101
       Stream #0:0: Audio: opus (libopus), 48000 Hz, mono, flt, 96 kb/s
       Metadata:
         encoder         : Lavc57.64.101 libopus
    SDP:
    v=0
    o=- 0 0 IN IP4 127.0.0.1
    s=No Name
    c=IN IP4 95.213.195.192
    t=0 0
    a=tool:libavformat 57.56.101
    m=audio 5004 RTP/AVP 97
    b=AS:96
    a=rtpmap:97 opus/48000/2

    Stream mapping:
     Stream #0:0 -> #0:0 (opus (native) -> opus (libopus))
    Press [q] to stop, [?] for help
    size=   44893kB time=00:52:18.12 bitrate= 117.2kbits/s speed=56.5x

    But when i try to connect by rtp from local PC (VLC Player) i get the exception :

            core error: socket bind error: Cannot assign requested address
            core error: open of `rtp://95.213.195.192:5004/f.opus' failed

    When i try ffplay on remote pc (same where ffmpeg) :

       ffplay rtp://95.213.195.192:5004/f.opus

    ffplay version 3.2.4-1~16.04.york1 Copyright (c) 2003-2017 the FFmpeg developers
     built with gcc 5.4.1 (Ubuntu 5.4.1-5ubuntu2~16.04.york1) 20170210
     configuration: --prefix=/usr --extra-version='1~16.04.york1' --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-libebur128 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmp3lame --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librubberband --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-libxvid --enable-libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libopencv --enable-libx264 --enable-shared
     libavutil      55. 34.101 / 55. 34.101
     libavcodec     57. 64.101 / 57. 64.101
     libavformat    57. 56.101 / 57. 56.101
     libavdevice    57.  1.100 / 57.  1.100
     libavfilter     6. 65.100 /  6. 65.100
     libavresample   3.  1.  0 /  3.  1.  0
     libswscale      4.  2.100 /  4.  2.100
     libswresample   2.  3.100 /  2.  3.100
     libpostproc    54.  1.100 / 54.  1.100
    Segmentation fault

    Can you help me ? Thanks

    95.213.195.192 - IP of my remote server with file