Recherche avancée

Médias (91)

Autres articles (62)

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

  • Support audio et vidéo HTML5

    10 avril 2011

    MediaSPIP utilise les balises HTML5 video et audio pour la lecture de documents multimedia en profitant des dernières innovations du W3C supportées par les navigateurs modernes.
    Pour les navigateurs plus anciens, le lecteur flash Flowplayer est utilisé.
    Le lecteur HTML5 utilisé a été spécifiquement créé pour MediaSPIP : il est complètement modifiable graphiquement pour correspondre à un thème choisi.
    Ces technologies permettent de distribuer vidéo et son à la fois sur des ordinateurs conventionnels (...)

  • MediaSPIP Init et Diogène : types de publications de MediaSPIP

    11 novembre 2010, par

    À l’installation d’un site MediaSPIP, le plugin MediaSPIP Init réalise certaines opérations dont la principale consiste à créer quatre rubriques principales dans le site et de créer cinq templates de formulaire pour Diogène.
    Ces quatre rubriques principales (aussi appelées secteurs) sont : Medias ; Sites ; Editos ; Actualités ;
    Pour chacune de ces rubriques est créé un template de formulaire spécifique éponyme. Pour la rubrique "Medias" un second template "catégorie" est créé permettant d’ajouter (...)

Sur d’autres sites (5101)

  • How to get stream info from opened file in ffmpeg ?

    31 mai 2013, par Srv19

    I am trying to read video file using ffmpeg. I had working code that corresponded to somewhat old version of it, and started to try and upgrade to latest build version, exchanging all those deprecated functions for their actual analogues.

    However i have run into a problem. No streams seem to be retrieved and the load of video stops dead in tracks.

    here is the code i am using :

      // Open video file
      if(avformat_open_input(&pFormatCtx, filename.toStdString().c_str(), NULL, NULL)!=0)
          return FILE_NOT_OPENED; // Couldn't open file

      // Retrieve stream information
      if(avformat_find_stream_info(pFormatCtx,NULL)<0)
          return NO_STREAM_INFO; // Couldn't find stream information

      // Dump information about file onto standard error
      av_dump_format(pFormatCtx, 0, filename.toStdString().c_str(), false);

      // Find the first video stream
      videoStream=-1;
      for(unsigned i=0; inb_streams; i++)
          if(pFormatCtx->streams[i]->codec->codec_type==ffmpeg::AVMEDIA_TYPE_VIDEO)
          {
              videoStream=i;
              break;
          }
      if(videoStream==-1)
          return OTHER; // Didn't find a video stream

      // Get a pointer to the codec context for the video stream
      pCodecCtx=pFormatCtx->streams[videoStream]->codec;

      // Find the decoder for the video stream
      pCodec=avcodec_find_decoder(pCodecCtx->codec_id);
      if(pCodec==NULL)
          return CODEC_NOT_FOUND; // Codec not found

      // Open codec
      if(avcodec_open2(pCodecCtx, pCodec,NULL)<0)
          return CODEC_NOT_OPENED; // Could not open codec

    The problem arises in the cycle through video streams in ffmpeg::AVFormatContext *pFormatCtx. nb_streams field is 0, and i never actually enter the cycle, and codec is not loaded etc. Strange thing is, av_dump_format gives following output :

    License: GPL version 3 or later
    AVCodec version 3606372
    AVFormat configuration: --disable-static --enable-shared --enable-gpl --enable-version3 --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libcaca --enable-libfreetype --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxavs --enable-libxvid --enable-zlib
    [asf @ 004e9540] Stream #0: not enough frames to estimate rate; consider increasing probesize
    Input #0, asf, from 'C:/Users/Public/Videos/Sample Videos/Wildlife.wmv':
     Metadata:
       SfOriginalFPS   : 299700
       WMFSDKVersion   : 11.0.6001.7000
       WMFSDKNeeded    : 0.0.0.0000
       comment         : Footage: Small World Productions, Inc; Tourism New Zealand | Producer: Gary F. Spradling | Music: Steve Ball
       title           : Wildlife in HD
       copyright       : В© 2008 Microsoft Corporation
       IsVBR           : 0
       DeviceConformanceTemplate: AP@L3
     Duration: 00:00:30.09, start: 0.000000, bitrate: 6977 kb/s
       Stream #0:0(eng): Audio: wmav2 (a[1][0][0] / 0x0161), 44100 Hz, 2 channels, fltp, 192 kb/s
       Stream #0:1(eng): Video: vc1 (Advanced) (WVC1 / 0x31435657), yuv420p, 1280x720, 5942 kb/s, 29.97 tbr, 1k tbn, 1k tbc

    and there are 2 streams, clear as day.

    I am utterly baffled. Please help.

  • ffmpeg : Generate video from picture

    16 octobre 2013, par Tchoupi

    I'm currently trying to generate a video from a single picture (1980*1024)
    Here my cmd :

    ffmpeg -threads 8 -r 1 -loop 1 -i "C:\Library\Titling\__Resources\1.jpg" -t 5.00 -pix_fmt yuv420p -vcodec libx264 -b:v 1500k -s 720:576 -aspect 1.0000 -y "D:\Records\2013-10-11_115453\PublishingDirectory\Temporary_WithtoutAudio1.mp4"

    here cmd execution :

    ffmpeg version N-56297-g7ac6c63 Copyright (c) 2000-2013 the FFmpeg developers
    built on Sep 15 2013 18:02:28 with gcc 4.7.3 (GCC)
    configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libblu
    ray --enable-libcaca --enable-libfreetype --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-l
    ibopus --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-li
    bvorbis --enable-libvpx --enable-libx264 --enable-libxavs --enable-libxvid --enable-zlib
    libavutil 52. 43.100 / 52. 43.100
    libavcodec 55. 31.101 / 55. 31.101
    libavformat 55. 16.102 / 55. 16.102
    libavdevice 55. 3.100 / 55. 3.100
    libavfilter 3. 84.100 / 3. 84.100
    libswscale 2. 5.100 / 2. 5.100
    libswresample 0. 17.103 / 0. 17.103
    libpostproc 52. 3.100 / 52. 3.100
    Input #0, image2, from 'C:\Library\Titling\__Resources\1.jpg':
    Duration: 00:00:00.04, start: 0.000000, bitrate: N/A
    Stream #0:0: Video: mjpeg, yuvj420p(pc), 1920x1080 [SAR 96:96 DAR 16:9], 25 fps, 25 tbr, 25 tbn, 25 tbc
    [swscaler @ 025bec00] deprecated pixel format used, make sure you did set range correctly
    [libx264 @ 025b7ce0] using SAR=4/5
    [libx264 @ 025b7ce0] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX
    [libx264 @ 025b7ce0] profile High, level 2.2
    [libx264 @ 025b7ce0] 264 - core 135 r2345 f0c1c53 - H.264/MPEG-4 AVC codec - Copyleft 2003-2013 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subm
    e=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=12 lookahead_threads=2 sliced_threads=0 nr=0 decimate=1
    interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=1 scenecut=40 intra_refresh=0 rc_lookahead=40 rc
    =abr mbtree=1 bitrate=1500 ratetol=1.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
    Output #0, mp4, to 'D:\Records\2013-10-11_115453\PublishingDirectory\Temporary_WithtoutAudio1.mp4':
    Metadata:
    encoder : Lavf55.16.102
    Stream #0:0: Video: h264 (libx264) ([33][0][0][0] / 0x0021), yuv420p, 720x576 [SAR 4:5 DAR 1:1], q=-1--1, 1500 kb/s, 16384 tbn, 1 tbc
    Stream mapping:
    Stream #0:0 -> #0:0 (mjpeg -> libx264)
    Press [q] to stop, [?] for help
    frame= 5 fps=0.0 q=-1.0 Lsize= 64kB time=00:00:03.00 bitrate= 174.0kbits/s
    video:63kB audio:0kB subtitle:0 global headers:0kB muxing overhead 1.355758%
    [libx264 @ 025b7ce0] frame I:1 Avg QP: 0.00 size: 63203
    [libx264 @ 025b7ce0] frame P:1 Avg QP: 0.00 size: 250
    [libx264 @ 025b7ce0] frame B:3 Avg QP: 0.00 size: 64
    [libx264 @ 025b7ce0] consecutive B-frames: 20.0% 0.0% 0.0% 80.0%
    [libx264 @ 025b7ce0] mb I I16..4: 78.8% 4.0% 17.2%
    [libx264 @ 025b7ce0] mb P I16..4: 0.0% 0.0% 0.0% P16..4: 1.2% 0.0% 0.1% 0.0% 0.0% skip:98.6%
    [libx264 @ 025b7ce0] mb B I16..4: 0.0% 0.0% 0.0% B16..8: 0.9% 0.0% 0.0% direct: 0.0% skip:99.0% L0:12.8% L1:87.2% BI: 0.0%
    [libx264 @ 025b7ce0] final ratefactor: -14.43
    [libx264 @ 025b7ce0] 8x8 transform intra:4.0% inter:0.0%
    [libx264 @ 025b7ce0] coded y,uvDC,uvAC intra: 22.8% 24.1% 24.1% inter: 0.2% 0.0% 0.0%
    [libx264 @ 025b7ce0] i16 v,h,dc,p: 93% 1% 4% 2%
    [libx264 @ 025b7ce0] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 26% 19% 13% 6% 6% 7% 7% 12% 4%
    [libx264 @ 025b7ce0] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 23% 15% 11% 7% 7% 9% 7% 14% 6%
    [libx264 @ 025b7ce0] i8c dc,h,v,p: 85% 4% 6% 5%
    [libx264 @ 025b7ce0] Weighted P-Frames: Y:0.0% UV:0.0%
    [libx264 @ 025b7ce0] kb/s:101.83

    At this step I have two problems :
    first is a warning during execution
    deprecated pixel format used, make sure you did set range correctly
    The second is the video do not work correctly in VLC (video is "black") but it work in wmp...

    Then I add an empty audio track :

    ffmpeg -threads 8 -f lavfi -i aevalsrc=0 -i "D:\Records\2013-10-11_115453\PublishingDirectory\Temporary_WithtoutAudio1.mp4" -vcodec copy -b:v 1500k -acodec aac -map 1:0 -map 0:0 -shortest -strict experimental -y "D:\Records\2013-10-11_115453\PublishingDirectory\Temporary1.mp4"

    After that I concat this video to others using complex filter .
    When I concat my videos I have this message :

    [output stream 0:1 @ 0451d3a0] 100 buffers queued in output stream 0:1, something may be wrong.

    And when i Watch the result my video freeze after the image insertion for a approximatly a seconde .
    perhaps it is not related
    I don't know ...

    Here my concat command and execution log

    D:\test>ffmpeg.exe -threads 8 -i "D:\Records\2013-10-11_115453\PublishingDirectory\Temporary0.mp4" -i "D:\Records\2013-10-11_115453\PublishingDirectory\Temporary1.mp4" -i "D:\Records\2013-10-11_115
    453\PublishingDirectory\Temporary2.mp4" -filter_complex "[0:v] [0:a] [1:v] [1:a] [2:v] [2:a] concat=n=3:v=1:a=1 [v] [a] " -map "[v]" -map "[a]" -vcodec libx264 -b 1500000 -s 720:576 -y "D:\Records\
    2013-10-11_115453\PublishingDirectory\EditedVideo.mp4"

    ..

    ffmpeg version N-56297-g7ac6c63 Copyright (c) 2000-2013 the FFmpeg developers
    built on Sep 15 2013 18:02:28 with gcc 4.7.3 (GCC)
    configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libblu
    ray --enable-libcaca --enable-libfreetype --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-l
    ibopus --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-li
    bvorbis --enable-libvpx --enable-libx264 --enable-libxavs --enable-libxvid --enable-zlib
    libavutil 52. 43.100 / 52. 43.100
    libavcodec 55. 31.101 / 55. 31.101
    libavformat 55. 16.102 / 55. 16.102
    libavdevice 55. 3.100 / 55. 3.100
    libavfilter 3. 84.100 / 3. 84.100
    libswscale 2. 5.100 / 2. 5.100
    libswresample 0. 17.103 / 0. 17.103
    libpostproc 52. 3.100 / 52. 3.100
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'D:\Records\2013-10-11_115453\PublishingDirectory\Temporary0.mp4':
    Metadata:
    major_brand : isom
    minor_version : 512
    compatible_brands: isomiso2avc1mp41
    title : Wildlife in HD
    encoder : Lavf54.22.100
    comment : Footage: Small World Productions, Inc; Tourism New Zealand | Producer: Gary F. Spradling | Music: Steve Ball
    copyright : ┬® 2008 Microsoft Corporation
    Duration: 00:00:13.70, start: 0.000000, bitrate: 1914 kb/s
    Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 720x576 [SAR 4:5 DAR 1:1], 1778 kb/s, 29.97 fps, 29.97 tbr, 30k tbn, 59.94 tbc (default)
    Metadata:
    handler_name : VideoHandler
    Stream #0:1(eng): Audio: aac (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s (default)
    Metadata:
    handler_name : SoundHandler
    Input #1, mov,mp4,m4a,3gp,3g2,mj2, from 'D:\Records\2013-10-11_115453\PublishingDirectory\Temporary1.mp4':
    Metadata:
    major_brand : isom
    minor_version : 512
    compatible_brands: isomiso2avc1mp41
    encoder : Lavf55.16.102
    Duration: 00:00:05.00, start: 0.023220, bitrate: 106 kb/s
    Stream #1:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 720x576 [SAR 4:5 DAR 1:1], 102 kb/s, 1 fps, 1 tbr, 16384 tbn, 2 tbc (default)
    Metadata:
    handler_name : VideoHandler
    Stream #1:1(und): Audio: aac (mp4a / 0x6134706D), 44100 Hz, mono, fltp, 1 kb/s (default)
    Metadata:
    handler_name : SoundHandler
    Input #2, mov,mp4,m4a,3gp,3g2,mj2, from 'D:\Records\2013-10-11_115453\PublishingDirectory\Temporary2.mp4':
    Metadata:
    major_brand : isom
    minor_version : 512
    compatible_brands: isomiso2avc1mp41
    title : Wildlife in HD
    encoder : Lavf54.22.100
    comment : Footage: Small World Productions, Inc; Tourism New Zealand | Producer: Gary F. Spradling | Music: Steve Ball
    copyright : ┬® 2008 Microsoft Corporation
    Duration: 00:00:16.47, start: 0.000000, bitrate: 2761 kb/s
    Stream #2:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 720x576 [SAR 4:5 DAR 1:1], 2625 kb/s, 29.97 fps, 29.97 tbr, 30k tbn, 59.94 tbc (default)
    Metadata:
    handler_name : VideoHandler
    Stream #2:1(eng): Audio: aac (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s (default)
    Metadata:
    handler_name : SoundHandler
    Please use -b:a or -b:v, -b is ambiguous
    [libx264 @ 04c748e0] using SAR=4/5
    [libx264 @ 04c748e0] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX
    [libx264 @ 04c748e0] profile High, level 3.1
    [libx264 @ 04c748e0] 264 - core 135 r2345 f0c1c53 - H.264/MPEG-4 AVC codec - Copyleft 2003-2013 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subm
    e=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=12 lookahead_threads=2 sliced_threads=0 nr=0 decimate=1
    interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 r
    c=abr mbtree=1 bitrate=1500 ratetol=1.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
    Output #0, mp4, to 'D:\Records\2013-10-11_115453\PublishingDirectory\EditedVideo.mp4':
    Metadata:
    major_brand : isom
    minor_version : 512
    compatible_brands: isomiso2avc1mp41
    title : Wildlife in HD
    copyright : ┬® 2008 Microsoft Corporation
    comment : Footage: Small World Productions, Inc; Tourism New Zealand | Producer: Gary F. Spradling | Music: Steve Ball
    encoder : Lavf55.16.102
    Stream #0:0: Video: h264 (libx264) ([33][0][0][0] / 0x0021), yuv420p, 720x576 [SAR 4:5 DAR 1:1], q=-1--1, 1500 kb/s, 30k tbn, 29.97 tbc
    Stream #0:1: Audio: aac (libvo_aacenc) ([64][0][0][0] / 0x0040), 44100 Hz, stereo, s16, 128 kb/s
    Stream mapping:
    Stream #0:0 (h264) -> concat:in0:v0
    Stream #0:1 (aac) -> concat:in0:a0
    Stream #1:0 (h264) -> concat:in1:v0
    Stream #1:1 (aac) -> concat:in1:a0
    Stream #2:0 (h264) -> concat:in2:v0
    Stream #2:1 (aac) -> concat:in2:a0
    concat:out:v0 -> Stream #0:0 (libx264)
    concat:out:a0 -> Stream #0:1 (libvo_aacenc)
    Press [q] to stop, [?] for help
    [output stream 0:1 @ 0451d3a0] 100 buffers queued in output stream 0:1, something may be wrong.
    frame= 1054 fps=101 q=-1.0 Lsize= 7676kB time=00:00:35.23 bitrate=1784.7kbits/s dup=146 drop=0
    video:7083kB audio:552kB subtitle:0 global headers:0kB muxing overhead 0.543084%
    [libx264 @ 04c748e0] frame I:10 Avg QP:18.41 size: 52713
    [libx264 @ 04c748e0] frame P:456 Avg QP:24.04 size: 11772
    [libx264 @ 04c748e0] frame B:588 Avg QP:26.20 size: 2308
    [libx264 @ 04c748e0] consecutive B-frames: 2.8% 67.9% 1.1% 28.1%
    [libx264 @ 04c748e0] mb I I16..4: 23.1% 52.7% 24.2%
    [libx264 @ 04c748e0] mb P I16..4: 0.6% 4.3% 1.0% P16..4: 35.8% 18.5% 11.9% 0.0% 0.0% skip:27.8%
    [libx264 @ 04c748e0] mb B I16..4: 0.1% 0.8% 0.2% B16..8: 34.2% 5.0% 1.3% direct: 1.3% skip:57.0% L0:37.3% L1:53.3% BI: 9.3%
    [libx264 @ 04c748e0] final ratefactor: 23.46
    [libx264 @ 04c748e0] 8x8 transform intra:67.7% inter:60.0%
    [libx264 @ 04c748e0] coded y,uvDC,uvAC intra: 67.1% 69.5% 30.5% inter: 17.0% 11.0% 0.4%
    [libx264 @ 04c748e0] i16 v,h,dc,p: 50% 20% 6% 24%
    [libx264 @ 04c748e0] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 18% 16% 18% 6% 8% 10% 7% 9% 8%
    [libx264 @ 04c748e0] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 19% 16% 14% 7% 10% 12% 8% 8% 7%
    [libx264 @ 04c748e0] i8c dc,h,v,p: 53% 20% 19% 8%
    [libx264 @ 04c748e0] Weighted P-Frames: Y:0.4% UV:0.0%
    [libx264 @ 04c748e0] ref P L0: 63.9% 19.2% 11.1% 5.7% 0.0%
    [libx264 @ 04c748e0] ref B L0: 90.4% 9.0% 0.6%
    [libx264 @ 04c748e0] ref B L1: 97.8% 2.2%
    [libx264 @ 04c748e0] kb/s:1649.69

    So How can I Fix my "picture" video ?
    Will it fix the freeze problem after concatenation of videos ?
    If not How can I fix it ?

    Thanks in advance !

  • DASH package (mpd) I made freezes after raising the onratechange event

    7 mars 2016, par Nick Birke

    I am trying to created an adaptive stream from an mp4 file. I have a decent amount of experience at doing streaming, and have successfully implemented smooth streaming via Silverlight. We want a solution for everything that works in HTML5. I am pursuing DASH. So here are the steps I take...

    1. Resample the mp4 to different sizes using ffmpeg.
    2. Ensure the files are properly fragmented using Bento4s mp4Fragment utility.
    3. Create the DASH mpd file and associated segments using Bento4s mp4dash utility.

    I have done a lot of work to learn each of these utilities and create a process that gets to output that I think will work. To create reliable DASH artifacts. But it seems I am doing something wrong. Here are examples of command lines I run.

    For step one I create three different files... for three different rates and sizes... (these may not be the exact command lines, they are from old notes... but the parameter values are the ones I am using for sure)

    ffmpeg -y -i C:\_SIMULATED_SHARE_C\ff\big_buck_bunny.mp4 -c:v libx264 -x264opts keyint=24:min-keyint=24:no-scenecut -b:v 1500k -maxrate 1500k -bufsize 1000k -vf "scale=-1:720" C:\_SIMULATED_SHARE_C\ff\output\outputfile720.mp4

    ffmpeg -y -i C:\_SIMULATED_SHARE_C\ff\big_buck_bunny.mp4 -c:v libx264 -x264opts keyint=24:min-keyint=24:no-scenecut -b:v 800k -maxrate 800k -bufsize 500k -vf "scale=-1:540" C:\_SIMULATED_SHARE_C\ff\output\outputfile540.mp4

    ffmpeg -y -i C:\_SIMULATED_SHARE_C\ff\big_buck_bunny.mp4 -c:v libx264 -x264opts keyint=24:min-keyint=24:no-scenecut -b:v 400k -maxrate 400k -bufsize 400k -vf "scale=-1:360" C:\_SIMULATED_SHARE_C\ff\output\outputfile360.mp4

    So that gives you the three files that need to be fragmented. So I fragment them using the mp4fragment utility from Bento4. That command line is simple so I will not offer an example.

    The I use Bento4s mp4dash to create the dash. Something like this...

    "E:\\_INSTALL\\Bento4\\Bento4-SDK-1-4-3-607.x86-microsoft-win32-vs2010\\Bento4-SDK-1-4-3-607.x86-microsoft-win32-vs2010\\bin\\mp4dash.exe --mpd-name=\"\\\\d9fqt52\\_SIMULATED_SHARE_C\\ff\\output\\dash\\something.mpd\" -f -o \"\\\\d9fqt52\\_SIMULATED_SHARE_C\\ff\\output\\dash\" \"\\\\d9fqt52\\_SIMULATED_SHARE_C\\ff\\output\\bunny360f.mp4\" \"\\\\d9fqt52\\_SIMULATED_SHARE_C\\ff\\output\\bunny540f.mp4\" \"\\\\d9fqt52\\_SIMULATED_SHARE_C\\ff\\output\\bunny720f.mp4\" "

    This runs ok. And creates the mpd file, an audio folder with segment files, an a video folder with 3 folders each with the segment files.

    I am able to configure IIS to play the mpd ok. As well as the segement files. The video plays fine... and then it stops. It freezes between 50 and 60 seconds. Right before it freezes I can confirm that the onratechange event of the HTML5 video tag is raised. This is an event that is raised with the rate of play is changed. I do nothing to change this it just happens.

    The actual video in question is about 1hr long. Also I am using the dash.js library as a player.

    If you can identify any components or specifics I should change please let me know !

    UPDATE ON MAR 7, 2016

    As requested here is the MPD content...

    <?xml version="1.0" ?>
    <mpd mediapresentationduration="PT51M51.909S" minbuffertime="PT0.80S" profiles="urn:mpeg:dash:profile:isoff-live:2011" type="static" xmlns="urn:mpeg:dash:schema:mpd:2011">
     
     <period>
       
       <adaptationset lang="en" mimetype="audio/mp4" segmentalignment="true" startwithsap="1">
         <segmenttemplate duration="801" initialization="$RepresentationID$/init.mp4" media="$RepresentationID$/seg-$Number$.m4f" startnumber="1" timescale="1000"></segmenttemplate>
         <representation audiosamplingrate="48000" bandwidth="132491" codecs="mp4a.40.2">
           <audiochannelconfiguration schemeiduri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="2"></audiochannelconfiguration>
         </representation>
       </adaptationset>
       
       <adaptationset maxheight="720" maxwidth="1280" mimetype="video/mp4" minheight="540" minwidth="640" segmentalignment="true" startwithsap="1">
         <segmenttemplate duration="801" initialization="$RepresentationID$/init.mp4" media="$RepresentationID$/seg-$Number$.m4f" startnumber="1" timescale="1000"></segmenttemplate>
         <representation bandwidth="785536" codecs="avc1.64001F" framerate="30000/1001" height="540" scantype="progressive" width="960"></representation>
         <representation bandwidth="403537" codecs="avc1.64001E" framerate="30000/1001" height="360" scantype="progressive" width="640"></representation>
         <representation bandwidth="1496514" codecs="avc1.64001F" framerate="30000/1001" height="720" scantype="progressive" width="1280"></representation>
       </adaptationset>
     </period>
    </mpd>

    UPDATE ON MAR 7, 2016

    Here is the console output for two different videos that just stop for some unknown reason between 50 and 60s

    ///ABS VIDEO

    58393][rulesController] [RULES]: playbackTimeRule [Fragment:download,82,MediaSegment,0video] Default
    dash.all.js:11 [58395][rulesController] [RULES]: sameTimeRequestRule [Fragment:download,82,MediaSegment,0,video] Default
    dash.all.js:11 [58401][indexHandler][audio] Getting the request for time: 82.082
    dash.all.js:11 [58403][indexHandler][audio] Index for time 82.082 is 81
    dash.all.js:11 [58405][indexHandler][audio] SegmentTemplate: 81.08099999999999 / 1361.235
    dash.all.js:11 [58406][indexHandler][audio] SegmentTemplate: 82.082 / 1361.235
    dash.all.js:11 [58407][rulesController] [RULES]: playbackTimeRule [Fragment:download,82,MediaSegment,0audio] Default
    dash.all.js:11 [58417][fragmentLoader] loaded video:MediaSegment:82.082 (200, 18ms, 2ms)
    dash.all.js:11 [58419][rulesController] [RULES]: sameTimeRequestRule [Fragment:download,82,MediaSegment,0,audio] Default
    dash.all.js:11 [58435][fragmentLoader] loaded audio:MediaSegment:82.082 (200, 14ms, 0ms)
    dash.all.js:11 [59390][indexHandler][video] Getting the request for time: 83.083
    dash.all.js:11 [59392][indexHandler][video] Index for time 83.083 is 82
    dash.all.js:11 [59393][indexHandler][video] SegmentTemplate: 82.082 / 1361.235
    dash.all.js:11 [59394][indexHandler][video] SegmentTemplate: 83.08299999999998 / 1361.235
    dash.all.js:11 [59395][rulesController] [RULES]: playbackTimeRule [Fragment:download,83,MediaSegment,0video] Default
    dash.all.js:11 [59396][rulesController] [RULES]: sameTimeRequestRule [Fragment:download,83,MediaSegment,0,video] Default
    dash.all.js:11 [59401][indexHandler][audio] Getting the request for time: 83.083
    dash.all.js:11 [59403][indexHandler][audio] Index for time 83.083 is 82
    dash.all.js:11 [59404][indexHandler][audio] SegmentTemplate: 82.082 / 1361.235
    dash.all.js:11 [59406][indexHandler][audio] SegmentTemplate: 83.08299999999998 / 1361.235
    dash.all.js:11 [59408][rulesController] [RULES]: playbackTimeRule [Fragment:download,83,MediaSegment,0audio] Default
    dash.all.js:11 [59416][fragmentLoader] loaded video:MediaSegment:83.08299999999998 (200, 17ms, 1ms)
    dash.all.js:11 [59418][rulesController] [RULES]: sameTimeRequestRule [Fragment:download,83,MediaSegment,0,audio] Default
    dash.all.js:11 [59437][fragmentLoader] loaded audio:MediaSegment:83.08299999999998 (200, 14ms, 1ms)
    dash.all.js:11 [59902][scheduleController][video] Stalling Buffer
    dash.all.js:11 [59903][bufferController][video] Waiting for more buffer before starting playback.
    dash.all.js:11 [59906][scheduleController][audio] Stalling Buffer
    dash.all.js:11 [59907][bufferController][audio] Waiting for more buffer before starting playback.
    dash.all.js:11 [63684][playbackController] <video> ratechange:  0




    ///HOG VIDEO

    [58250][rulesController] [RULES]: playbackTimeRule [Fragment:download,105,MediaSegment,0audio] Default
    dash.all.js:11 [58266][fragmentLoader] loaded video:MediaSegment:84.105 (200, 28ms, 1ms)
    dash.all.js:11 [58269][rulesController] [RULES]: sameTimeRequestRule [Fragment:download,105,MediaSegment,0,audio] Default
    dash.all.js:11 [58287][fragmentLoader] loaded audio:MediaSegment:84.105 (200, 14ms, 1ms)
    dash.all.js:11 [58982][indexHandler][video] Getting the request for time: 84.906
    dash.all.js:11 [58983][indexHandler][video] Index for time 84.906 is 105
    dash.all.js:11 [58984][indexHandler][video] SegmentTemplate: 84.105 / 3111.909
    dash.all.js:11 [58984][indexHandler][video] SegmentTemplate: 84.906 / 3111.909
    dash.all.js:11 [58985][rulesController] [RULES]: playbackTimeRule [Fragment:download,106,MediaSegment,0video] Default
    dash.all.js:11 [58986][rulesController] [RULES]: sameTimeRequestRule [Fragment:download,106,MediaSegment,0,video] Default
    dash.all.js:11 [58989][indexHandler][audio] Getting the request for time: 84.906
    dash.all.js:11 [58990][indexHandler][audio] Index for time 84.906 is 105
    dash.all.js:11 [58991][indexHandler][audio] SegmentTemplate: 84.105 / 3111.909
    dash.all.js:11 [58992][indexHandler][audio] SegmentTemplate: 84.906 / 3111.909
    dash.all.js:11 [58993][rulesController] [RULES]: playbackTimeRule [Fragment:download,106,MediaSegment,0audio] Default
    dash.all.js:11 [59002][fragmentLoader] loaded video:MediaSegment:84.906 (200, 14ms, 1ms)
    dash.all.js:11 [59003][rulesController] [RULES]: sameTimeRequestRule [Fragment:download,106,MediaSegment,0,audio] Default
    dash.all.js:11 [59014][fragmentLoader] loaded audio:MediaSegment:84.906 (200, 8ms, 1ms)
    dash.all.js:11 [59735][scheduleController][video] Stalling Buffer
    dash.all.js:11 [59736][bufferController][video] Waiting for more buffer before starting playback.
    dash.all.js:11 [59738][scheduleController][audio] Stalling Buffer
    dash.all.js:11 [59739][bufferController][audio] Waiting for more buffer before starting playback.
    dash.all.js:11 [61695][playbackController] <video> ratechange:  0
    </video></video>