Recherche avancée

Médias (2)

Mot : - Tags -/map

Autres articles (111)

  • Publier sur MédiaSpip

    13 juin 2013

    Puis-je poster des contenus à partir d’une tablette Ipad ?
    Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir

  • Script d’installation automatique de MediaSPIP

    25 avril 2011, par

    Afin de palier aux difficultés d’installation dues principalement aux dépendances logicielles coté serveur, un script d’installation "tout en un" en bash a été créé afin de faciliter cette étape sur un serveur doté d’une distribution Linux compatible.
    Vous devez bénéficier d’un accès SSH à votre serveur et d’un compte "root" afin de l’utiliser, ce qui permettra d’installer les dépendances. Contactez votre hébergeur si vous ne disposez pas de cela.
    La documentation de l’utilisation du script d’installation (...)

  • Ajouter des informations spécifiques aux utilisateurs et autres modifications de comportement liées aux auteurs

    12 avril 2011, par

    La manière la plus simple d’ajouter des informations aux auteurs est d’installer le plugin Inscription3. Il permet également de modifier certains comportements liés aux utilisateurs (référez-vous à sa documentation pour plus d’informations).
    Il est également possible d’ajouter des champs aux auteurs en installant les plugins champs extras 2 et Interface pour champs extras.

Sur d’autres sites (9768)

  • Upper limit on FFMPEG/libx264 frame sizes ?

    22 mars 2014, par Chaotic

    I'm trying to use FFMPEG to transcode a video with very large frames (4096 x 4096). It's a short video - just under two minutes, but the source video file is 15.8GB. (The video is an animation designed to be projected onto planetarium domes.)

    The source file is a Quicktime MOV containing uncompressed Photo-JPEG images (with audio, too). When I tell FFMPEG to transcode my MOV file into an MP4 file, it simply says :

    Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height

    Not very helpful, but yes, I've verified that all of the parameters are correct and/or defaults. In fact, if I change the requested output size to 2048x2048, then everything works just fine. That's why I suspect that there's an upper bound in the encoder.

    I am kerflummoxed. Any suggestions that result in a successful transcode will be greatly appreciated. (At this point I am also willing to consider alternatives to FFMPEG.)

    The Facts

    I run FFMPEG from a script :

    set srcFile=%1
    set dstFile=%srcFile:.mov=.mp4%

    ffmpeg -i %srcFile% -movflags faststart -q:a 0 -q:v 0 -pix_fmt yuv420p -sws_flags gauss -s 4096x4096 %dstFile%

    The Output

       ffmpeg version N-50911-g9efcfbe Copyright (c) 2000-2013 the FFmpeg developers
       built on Mar 13 2013 21:26:48 with gcc 4.7.2 (GCC)
       configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-libass --enable-libbluray --enable-libcaca --enable-libfreetype --enable-libgsm --enable-libilbc --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --ena
    ble-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
     libavutil      52. 19.100 / 52. 19.100
     libavcodec     55.  0.100 / 55.  0.100
     libavformat    55.  0.100 / 55.  0.100
     libavdevice    54.  4.100 / 54.  4.100
     libavfilter     3. 45.103 /  3. 45.103
     libswscale      2.  2.100 /  2.  2.100
     libswresample   0. 17.102 /  0. 17.102
     libpostproc    52.  2.100 / 52.  2.100
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'also-sprach-zarathustra-4k.mov':
     Metadata:
       major_brand     : qt
       minor_version   : 537199360
       compatible_brands: qt
       creation_time   : 2013-01-11 23:41:30
     Duration: 00:01:40.57, start: 0.000000, bitrate: 1357694 kb/s
       Stream #0:0(eng): Audio: pcm_s16be (twos / 0x736F7774), 44100 Hz, stereo, s16, 1411 kb/s
       Metadata:
         creation_time   : 2013-01-11 23:41:30
         handler_name    : Apple Alias Data Handler
       Stream #0:1(eng): Video: mjpeg (jpeg / 0x6765706A), yuvj420p, 4096x4096 [SAR 1:1 DAR 1:1], 1356281 kb/s, 30 fps, 30
    tbr, 3k tbn, 3k tbc
       Metadata:
         creation_time   : 2013-01-11 23:41:30
         handler_name    : Apple Alias Data Handler
    File 'also-sprach-zarathustra-4k.mp4' already exists. Overwrite ? [y/N] y
    using SAR=1/1
    [libx264 @ 003b9c80] frame MB size (256x256) > level limit (36864)
    [libx264 @ 003b9c80] DPB size (4 frames, 262144 mbs) > level limit (2 frames, 184320 mbs)
    [libx264 @ 003b9c80] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX AVX2 FMA3 LZCNT BMI1 BMI2
    x264 [error]: malloc of size 17305600 failed
    Output #0, mp4, to 'also-sprach-zarathustra-4k.mp4':
     Metadata:
       major_brand     : qt
       minor_version   : 537199360
       compatible_brands: qt
       Stream #0:0(eng): Video: h264, yuv420p, 4096x4096 [SAR 1:1 DAR 1:1], q=-1--1, 90k tbn, 30 tbc
       Metadata:
         creation_time   : 2013-01-11 23:41:30
         handler_name    : Apple Alias Data Handler
       Stream #0:1(eng): Audio: none, 44100 Hz, stereo, s16, 128 kb/s
       Metadata:
         creation_time   : 2013-01-11 23:41:30
         handler_name    : Apple Alias Data Handler
    Stream mapping:
     Stream #0:1 -> #0:0 (mjpeg -> libx264)
     Stream #0:0 -> #0:1 (pcm_s16be -> libvo_aacenc)
    Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height

    PS : Yes, for those playing at home, it is the theme to 2001 - A Space Odyssey. You can see a 1K YouTube version here : 2001 - A Fulldome Space Odyssey And yes, in a planetarium with a good sound system, it is absolutely EPIC.

  • ffmpeg concat skips frames near end of each subclip

    3 janvier 2024, par calvinusesyourcode

    So I have some video files to concat but in the resulting video the last few frames of each subclip are buggy. Imagine in the last 5 frames the first 3 frames are skipped and so at the end of each clip it seems to jitter.

    


    It should be virtually impossible for my input videos to have any differences between them, as they were all recorded on the same iPhone and all converted with the same command :

    


    command = [
            'ffmpeg', '-y',
            '-i', input_path,
            '-vf', 'scale=1080:1920',
            '-r', '30',
            '-c:v', 'libx264',
            output_path
        ]
subprocess.run(command, check=True)


    


    I have tried re-encoding instead of merely copying and adding -r 30 but that doesn't seem to work.

    


    subprocess.run(["ffmpeg", "-y", "-f", "concat", "-safe", "0", "-i", temp_textfile, "-c", "copy", output_path])


    


        subprocess.run(["ffmpeg", "-y", "-f", "concat", "-safe", "0", "-i", temp_textfile, "-r", "30", "-c:v", "libx264", "-c:a", "aac", output_path], check=True)


    


    Somewhere someone said to open in VLC and do a frame-by-frame, reporting that "the frames are actually there, just not visually when watching normally". In my case the frame-by-frame reveals the frames are indeed being skipped.

    


    Full console output :

    


    ffmpeg version 2023-05-18-git-01d9a84ef5-full_build-www.gyan.dev Copyright (c) 2000-2023 the FFmpeg developers
  built with gcc 12.2.0 (Rev10, Built by MSYS2 project)
  configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-bzlib --enable-lzma --enable-libsnappy --enable-zlib --enable-librist --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-libbluray --enable-libcaca --enable-sdl2 --enable-libaribb24 --enable-libaribcaption --enable-libdav1d --enable-libdavs2 --enable-libuavs3d --enable-libzvbi --enable-librav1e --enable-libsvtav1 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libaom --enable-libjxl --enable-libopenjpeg --enable-libvpx --enable-mediafoundation --enable-libass --enable-frei0r --enable-libfreetype --enable-libfribidi --enable-liblensfun --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc --enable-d3d11va --enable-dxva2 --enable-libvpl --enable-libshaderc --enable-vulkan --enable-libplacebo --enable-opencl --enable-libcdio --enable-libgme --enable-libmodplug --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libshine --enable-libtheora --enable-libtwolame --enable-libvo-amrwbenc --enable-libcodec2 --enable-libilbc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-ladspa 
--enable-libbs2b --enable-libflite --enable-libmysofa --enable-librubberband --enable-libsoxr --enable-chromaprint
  libavutil      58.  7.100 / 58.  7.100
  libavcodec     60. 14.100 / 60. 14.100
  libavformat    60.  5.100 / 60.  5.100
  libavdevice    60.  2.100 / 60.  2.100
  libavfilter     9.  8.100 /  9.  8.100
  libswscale      7.  2.100 /  7.  2.100
  libswresample   4. 11.100 /  4. 11.100
  libpostproc    57.  2.100 / 57.  2.100
[mov,mp4,m4a,3gp,3g2,mj2 @ 000001d60610ebc0] Auto-inserting h264_mp4toannexb bitstream filter
Input #0, concat, from 'run\broll_subclips.txt':
  Duration: N/A, start: -0.023220, bitrate: 3094 kb/s
  Stream #0:0(und): Video: h264 (High 10) (avc1 / 0x31637661), yuv420p10le(tv, bt2020nc/bt2020/arib-std-b67, progressive), 1080x1920, 2968 kb/s, 30 fps, 30 tbr, 15360 tbn
    Metadata:
      handler_name    : Core Media Video
      vendor_id       : [0][0][0][0]
      encoder         : Lavc60.14.100 libx264
  Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 126 kb/s
    Metadata:
      handler_name    : Core Media Audio
      vendor_id       : [0][0][0][0]
Stream mapping:
  Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264))
  Stream #0:1 -> #0:1 (aac (native) -> aac (native))
Press [q] to stop, [?] for help
[libx264 @ 000001d6066fd380] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX 
FMA3 BMI2 AVX2
[libx264 @ 000001d6066fd380] profile High 10, level 4.0, 4:2:0, 10-bit
[libx264 @ 000001d6066fd380] 264 - core 164 r3107 a8b68eb - H.264/MPEG-4 AVC codec - Copyleft 2003-2023 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=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 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=81 qpstep=4 ip_ratio=1.40 aq=1:1.00
Output #0, mp4, to 'joined_clips.mp4':
  Metadata:
    encoder         : Lavf60.5.100
  Stream #0:0(und): Video: h264 (avc1 / 0x31637661), yuv420p10le(tv, bt2020nc/bt2020/arib-std-b67, progressive), 1080x1920, q=2-31, 30 fps, 15360 tbn
    Metadata:
      handler_name    : Core Media Video
      vendor_id       : [0][0][0][0]
      encoder         : Lavc60.14.100 libx264
    Side data:
      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
  Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s
    Metadata:
      handler_name    : Core Media Audio
      vendor_id       : [0][0][0][0]
      encoder         : Lavc60.14.100 aac
frame=    0 fps=0.0 q=0.0 size=       0kB time=00:00:00.23 bitrate=   1.7kbits/s dup[mov,mp4,m4a,3gp,3g2,mj2 @ 000001d608de8100] Auto-inserting h264_mp4toannexb bitstream filter
frame=    0 fps=0.0 q=0.0 size=       0kB time=00:00:01.97 bitrate=   0.2kbits/s dupframe=   42 fps= 41 q=41.0 size=     256kB time=00:00:01.97 bitrate=1062.7kbits/s du[mov,mp4,m4a,3gp,3g2,mj2 @ 000001d608de8100] Auto-inserting h264_mp4toannexb bitstream filter
frame=   81 fps= 53 q=41.0 size=     768kB time=00:00:04.71 bitrate=1334.8kbits/s du[mov,mp4,m4a,3gp,3g2,mj2 @ 000001d608de8100] Auto-inserting h264_mp4toannexb bitstream filter
frame=  124 fps= 61 q=41.0 size=    1280kB time=00:00:06.10 bitrate=1717.1kbits/s duframe=  178 fps= 69 q=38.0 size=    1536kB time=00:00:07.96 bitrate=1579.9kbits/s du[mov,mp4,m4a,3gp,3g2,mj2 @ 000001d608de8100] Auto-inserting h264_mp4toannexb bitstream filter
frame=  235 fps= 76 q=41.0 size=    2048kB time=00:00:09.84 bitrate=1704.1kbits/s du[mov,mp4,m4a,3gp,3g2,mj2 @ 000001d608de8100] Auto-inserting h264_mp4toannexb bitstream filter
frame=  273 fps= 76 q=41.0 size=    2560kB time=00:00:11.12 bitrate=1885.5kbits/s du[mov,mp4,m4a,3gp,3g2,mj2 @ 000001d608de8100] Auto-inserting h264_mp4toannexb bitstream filter
frame=  309 fps= 75 q=41.0 size=    2816kB time=00:00:12.30 bitrate=1874.5kbits/s duframe=  354 fps= 77 q=41.0 size=    3328kB time=00:00:13.83 bitrate=1969.9kbits/s du[mov,mp4,m4a,3gp,3g2,mj2 @ 000001d608de8100] Auto-inserting h264_mp4toannexb bitstream filter
frame=  411 fps= 80 q=41.0 size=    3840kB time=00:00:15.72 bitrate=2001.1kbits/s du[mov,mp4,m4a,3gp,3g2,mj2 @ 000001d608de8100] Auto-inserting h264_mp4toannexb bitstream filter
frame=  479 fps= 85 q=41.0 size=    4096kB time=00:00:17.99 bitrate=1864.6kbits/s du[mov,mp4,m4a,3gp,3g2,mj2 @ 000001d608de8100] Auto-inserting h264_mp4toannexb bitstream filter
frame=  515 fps= 84 q=41.0 size=    4608kB time=00:00:19.20 bitrate=1965.7kbits/s duframe=  549 fps= 81 q=41.0 size=    4864kB time=00:00:20.31 bitrate=1961.1kbits/s du[mov,mp4,m4a,3gp,3g2,mj2 @ 000001d60c3e8d40] Auto-inserting h264_mp4toannexb bitstream filter
frame=  600 fps= 83 q=41.0 size=    5632kB time=00:00:22.03 bitrate=2093.7kbits/s du[mov,mp4,m4a,3gp,3g2,mj2 @ 000001d60c3e8d40] Auto-inserting h264_mp4toannexb bitstream filter
frame=  648 fps= 83 q=41.0 size=    5888kB time=00:00:23.61 bitrate=2042.5kbits/s du[out#0/mp4 @ 000001d6061163c0] video:6385kB audio:335kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.377336%
frame=  724 fps= 86 q=-1.0 Lsize=    6746kB time=00:00:24.03 bitrate=2299.4kbits/s dup=6 drop=2 speed=2.86x
[libx264 @ 000001d6066fd380] frame I:12    Avg QP:26.96  size: 87427
[libx264 @ 000001d6066fd380] frame P:191   Avg QP:32.28  size: 15534
[libx264 @ 000001d6066fd380] frame B:521   Avg QP:35.40  size:  4840
[libx264 @ 000001d6066fd380] consecutive B-frames:  2.9%  2.8%  2.1% 92.3%
[libx264 @ 000001d6066fd380] mb I  I16..4: 21.0% 56.5% 22.5%
[libx264 @ 000001d6066fd380] mb P  I16..4:  1.9%  6.3%  1.0%  P16..4: 25.0%  4.5%  2.2%  0.0%  0.0%    skip:59.1%
[libx264 @ 000001d6066fd380] mb B  I16..4:  0.2%  0.7%  0.1%  B16..8: 24.4%  1.8%  0.2%  direct: 0.3%  skip:72.3%  L0:46.0% L1:50.7% BI: 3.3%
[libx264 @ 000001d6066fd380] 8x8 transform intra:64.9% inter:79.1%
[libx264 @ 000001d6066fd380] coded y,uvDC,uvAC intra: 42.4% 26.9% 3.0% inter: 3.7% 0.9% 0.0%
[libx264 @ 000001d6066fd380] i16 v,h,dc,p: 25% 28% 12% 35%
[libx264 @ 000001d6066fd380] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 23% 18% 23%  5%  6%  6% 
 6%  6%  6%
[libx264 @ 000001d6066fd380] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 27% 21% 19%  5%  6%  6% 
 7%  5%  5%
[libx264 @ 000001d6066fd380] i8c dc,h,v,p: 71% 13% 13%  4%
[libx264 @ 000001d6066fd380] Weighted P-Frames: Y:0.0% UV:0.0%
[libx264 @ 000001d6066fd380] ref P L0: 68.7% 17.8% 13.4%
[libx264 @ 000001d6066fd380] ref B L0: 88.4%  9.1%  2.5%
[libx264 @ 000001d6066fd380] ref B L1: 96.9%  3.1%
[libx264 @ 000001d6066fd380] kb/s:2167.24
[aac @ 000001d606184b40] Qavg: 346.828


    


    UPDATE : I am thinking that the way I am converting my files from .mov to .mp4 is the problem. Please suggest the best way to convert from iPhone 4k 60fps .mov files to nice 1080p 30fps .mp4 files. I know I could just use handbrake but I am trying to be a man here xD. Perhaps handbrake has a View ffmpeg code for conversion.

    


    UPDATE 2 : re-encoding the videos before concat with -c:v libx264 fixes the problem... which seems weird because that is how they were originally encoded...

    


    def join_broll(video_paths, desired_length, clip_length=None, output_path="quick_clips.mp4", preserve_inputs=True):
    subclips = []
    total_duration = 0

    temp_textfile = os.path.join(run_folder, "broll_subclips.txt")
    j = 0
    with open(temp_textfile, "w") as file:
        while True:
            for i, video_path in enumerate(video_paths):

                time_left = desired_length - total_duration
                video_duration = duration_of(video_path)
                subclip_path = f"subclip_{i+j}.mp4"

                if (not clip_length and video_duration < time_left) or (clip_length and clip_length < time_left):

                    if clip_length:

                        subclips.append(subclip_path)
                        subprocess.run(["ffmpeg", "-y", "-i", video_path, "-t", str(clip_length), "-c:v", "libx264", subclip_path]) # added "-c:v libx264"
                        total_duration += clip_length
                        file.write(f"file '{os.path.join('..', subclip_path)}'\n")

                    else:
                    
                        subclips.append(subclip_path)
                        subprocess.run(["ffmpeg", "-y", "-i", video_path, "-c:v", "libx264", subclip_path]) # added "-c:v libx264"
                        total_duration += video_duration
                        file.write(f"file '{subclip_path}'\n")

                else:

                    subclips.append(subclip_path)
                    subprocess.run(["ffmpeg", "-y", "-i", video_path, "-t", str(time_left), "-c:v", "libx264", subclip_path]) # added "-c:v libx264"
                    total_duration += time_left
                    file.write(f"file '{os.path.join('..', subclip_path)}'\n")

                    break

            j += 1
            if desired_length - total_duration < 0.1:
                break
                

    subprocess.run(["ffmpeg", "-y", "-f", "concat", "-safe", "0", "-i", temp_textfile, "-c", "copy", output_path])
    # subprocess.run(["ffmpeg", "-y", "-f", "concat", "-safe", "0", "-i", temp_textfile, "-r", "30", "-c:v", "libx264", "-c:a", "aac", output_path], check=True)
    return output_path


    


  • Do I need multiple video files in different resolutions to use MPEG DASH ?

    2 février 2023, par Gentil Alyson

    I'm trying to use Django REST Framework to serve .mpd files. When the user uploads a video, the server creates the MPD and the chunk files. However, I can't seem to able to make it work. I've tried using python-ffmpeg-video-streaming, but the client which is using dash.js to play the video will get only one bitrate (480p). I've also tried running this command 'ffmpeg -i {self.file.path} -map 0 -map 0 -c:a aac -c:v libx264 -b:v:0 800k -b:v:1 300k -var_stream_map "v:0,name:800k v:1,name:300k" -f dash -dash_segment_type mp4 -single_file 1 {file_dir}/dash.mpd' using os.system from Python, but then the player gets stuck at buffering.

    


    File structure generated by the command

    


    <mpd xmlns="urn:mpeg:dash:schema:mpd:2011" profiles="urn:mpeg:dash:profile:isoff-live:2011" type="static" mediapresentationduration="PT2M30.5S" maxsegmentduration="PT5.0S" minbuffertime="PT16.6S">&#xA;    <programinformation>&#xA;    </programinformation>&#xA;    <servicedescription>&#xA;    </servicedescription>&#xA;    <period start="PT0.0S">&#xA;        <adaptationset contenttype="video" startwithsap="1" segmentalignment="true" bitstreamswitching="true" framerate="30000/1001" maxwidth="1280" maxheight="720" par="16:9" lang="und">&#xA;            <representation mimetype="video/mp4" codecs="avc1.64001f" bandwidth="800000" width="1280" height="720" sar="1:1">&#xA;                <baseurl>dash-stream0.mp4</baseurl>&#xA;                <segmentlist timescale="1000000" duration="5000000" startnumber="1">&#xA;                    <initialization range="0-854"></initialization>&#xA;                    <segmenturl mediarange="855-190364" indexrange="855-906"></segmenturl>&#xA;                    <segmenturl mediarange="190365-448322" indexrange="190365-190416"></segmenturl>&#xA;                    <segmenturl mediarange="448323-628609" indexrange="448323-448374"></segmenturl>&#xA;                    <segmenturl mediarange="628610-741660" indexrange="628610-628661"></segmenturl>&#xA;                    <segmenturl mediarange="741661-1149015" indexrange="741661-741712"></segmenturl>&#xA;                    <segmenturl mediarange="1149016-1761260" indexrange="1149016-1149067"></segmenturl>&#xA;                    <segmenturl mediarange="1761261-1829636" indexrange="1761261-1761312"></segmenturl>&#xA;                    <segmenturl mediarange="1829637-2343368" indexrange="1829637-1829688"></segmenturl>&#xA;                    <segmenturl mediarange="2343369-2759155" indexrange="2343369-2343420"></segmenturl>&#xA;                    <segmenturl mediarange="2759156-3120911" indexrange="2759156-2759207"></segmenturl>&#xA;                    <segmenturl mediarange="3120912-3255416" indexrange="3120912-3120963"></segmenturl>&#xA;                    <segmenturl mediarange="3255417-3617692" indexrange="3255417-3255468"></segmenturl>&#xA;                    <segmenturl mediarange="3617693-3910773" indexrange="3617693-3617744"></segmenturl>&#xA;                    <segmenturl mediarange="3910774-4097693" indexrange="3910774-3910825"></segmenturl>&#xA;                    <segmenturl mediarange="4097694-4266685" indexrange="4097694-4097745"></segmenturl>&#xA;                    <segmenturl mediarange="4266686-4609479" indexrange="4266686-4266737"></segmenturl>&#xA;                    <segmenturl mediarange="4609480-4719699" indexrange="4609480-4609531"></segmenturl>&#xA;                    <segmenturl mediarange="4719700-4833193" indexrange="4719700-4719751"></segmenturl>&#xA;                    <segmenturl mediarange="4833194-4905000" indexrange="4833194-4833245"></segmenturl>&#xA;                    <segmenturl mediarange="4905001-5046627" indexrange="4905001-4905052"></segmenturl>&#xA;                </segmentlist>&#xA;            </representation>&#xA;        </adaptationset>&#xA;        <adaptationset contenttype="audio" startwithsap="1" segmentalignment="true" bitstreamswitching="true" lang="eng">&#xA;            <representation mimetype="audio/mp4" codecs="mp4a.40.2" bandwidth="128000" audiosamplingrate="44100">&#xA;                <audiochannelconfiguration schemeiduri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="2"></audiochannelconfiguration>&#xA;                <baseurl>dash-stream1.mp4</baseurl>&#xA;                <segmentlist timescale="1000000" duration="5000000" startnumber="1">&#xA;                    <initialization range="0-764"></initialization>&#xA;                    <segmenturl mediarange="765-82409" indexrange="765-816"></segmenturl>&#xA;                    <segmenturl mediarange="82410-163592" indexrange="82410-82461"></segmenturl>&#xA;                    <segmenturl mediarange="163593-244493" indexrange="163593-163644"></segmenturl>&#xA;                    <segmenturl mediarange="244494-325181" indexrange="244494-244545"></segmenturl>&#xA;                    <segmenturl mediarange="325182-406218" indexrange="325182-325233"></segmenturl>&#xA;                    <segmenturl mediarange="406219-487174" indexrange="406219-406270"></segmenturl>&#xA;                    <segmenturl mediarange="487175-568100" indexrange="487175-487226"></segmenturl>&#xA;                    <segmenturl mediarange="568101-649853" indexrange="568101-568152"></segmenturl>&#xA;                    <segmenturl mediarange="649854-732519" indexrange="649854-649905"></segmenturl>&#xA;                    <segmenturl mediarange="732520-813751" indexrange="732520-732571"></segmenturl>&#xA;                    <segmenturl mediarange="813752-895429" indexrange="813752-813803"></segmenturl>&#xA;                    <segmenturl mediarange="895430-976537" indexrange="895430-895481"></segmenturl>&#xA;                    <segmenturl mediarange="976538-1058579" indexrange="976538-976589"></segmenturl>&#xA;                    <segmenturl mediarange="1058580-1139556" indexrange="1058580-1058631"></segmenturl>&#xA;                    <segmenturl mediarange="1139557-1220802" indexrange="1139557-1139608"></segmenturl>&#xA;                    <segmenturl mediarange="1220803-1301723" indexrange="1220803-1220854"></segmenturl>&#xA;                    <segmenturl mediarange="1301724-1382546" indexrange="1301724-1301775"></segmenturl>&#xA;                    <segmenturl mediarange="1382547-1464086" indexrange="1382547-1382598"></segmenturl>&#xA;                    <segmenturl mediarange="1464087-1546573" indexrange="1464087-1464138"></segmenturl>&#xA;                    <segmenturl mediarange="1546574-1627881" indexrange="1546574-1546625"></segmenturl>&#xA;                    <segmenturl mediarange="1627882-1710185" indexrange="1627882-1627933"></segmenturl>&#xA;                    <segmenturl mediarange="1710186-1791593" indexrange="1710186-1710237"></segmenturl>&#xA;                    <segmenturl mediarange="1791594-1872889" indexrange="1791594-1791645"></segmenturl>&#xA;                    <segmenturl mediarange="1872890-1954238" indexrange="1872890-1872941"></segmenturl>&#xA;                    <segmenturl mediarange="1954239-2036069" indexrange="1954239-1954290"></segmenturl>&#xA;                    <segmenturl mediarange="2036070-2117365" indexrange="2036070-2036121"></segmenturl>&#xA;                    <segmenturl mediarange="2117366-2198435" indexrange="2117366-2117417"></segmenturl>&#xA;                    <segmenturl mediarange="2198436-2279764" indexrange="2198436-2198487"></segmenturl>&#xA;                    <segmenturl mediarange="2279765-2362061" indexrange="2279765-2279816"></segmenturl>&#xA;                    <segmenturl mediarange="2362062-2443751" indexrange="2362062-2362113"></segmenturl>&#xA;                    <segmenturl mediarange="2443752-2446358" indexrange="2443752-2443803"></segmenturl>&#xA;                </segmentlist>&#xA;            </representation>&#xA;        </adaptationset>&#xA;        <adaptationset contenttype="video" startwithsap="1" segmentalignment="true" bitstreamswitching="true" framerate="30000/1001" maxwidth="1280" maxheight="720" par="16:9" lang="und">&#xA;            <representation mimetype="video/mp4" codecs="avc1.64001f" bandwidth="300000" width="1280" height="720" sar="1:1">&#xA;                <baseurl>dash-stream2.mp4</baseurl>&#xA;                <segmentlist timescale="1000000" duration="5000000" startnumber="1">&#xA;                    <initialization range="0-854"></initialization>&#xA;                    <segmenturl mediarange="855-117134" indexrange="855-906"></segmenturl>&#xA;                    <segmenturl mediarange="117135-288087" indexrange="117135-117186"></segmenturl>&#xA;                    <segmenturl mediarange="288088-435178" indexrange="288088-288139"></segmenturl>&#xA;                    <segmenturl mediarange="435179-520309" indexrange="435179-435230"></segmenturl>&#xA;                    <segmenturl mediarange="520310-903223" indexrange="520310-520361"></segmenturl>&#xA;                    <segmenturl mediarange="903224-1458808" indexrange="903224-903275"></segmenturl>&#xA;                    <segmenturl mediarange="1458809-1524956" indexrange="1458809-1458860"></segmenturl>&#xA;                    <segmenturl mediarange="1524957-2026894" indexrange="1524957-1525008"></segmenturl>&#xA;                    <segmenturl mediarange="2026895-2406246" indexrange="2026895-2026946"></segmenturl>&#xA;                    <segmenturl mediarange="2406247-2726266" indexrange="2406247-2406298"></segmenturl>&#xA;                    <segmenturl mediarange="2726267-2852806" indexrange="2726267-2726318"></segmenturl>&#xA;                    <segmenturl mediarange="2852807-3183174" indexrange="2852807-2852858"></segmenturl>&#xA;                    <segmenturl mediarange="3183175-3467272" indexrange="3183175-3183226"></segmenturl>&#xA;                    <segmenturl mediarange="3467273-3653219" indexrange="3467273-3467324"></segmenturl>&#xA;                    <segmenturl mediarange="3653220-3821184" indexrange="3653220-3653271"></segmenturl>&#xA;                    <segmenturl mediarange="3821185-4162978" indexrange="3821185-3821236"></segmenturl>&#xA;                    <segmenturl mediarange="4162979-4273050" indexrange="4162979-4163030"></segmenturl>&#xA;                    <segmenturl mediarange="4273051-4386223" indexrange="4273051-4273102"></segmenturl>&#xA;                    <segmenturl mediarange="4386224-4458425" indexrange="4386224-4386275"></segmenturl>&#xA;                    <segmenturl mediarange="4458426-4597502" indexrange="4458426-4458477"></segmenturl>&#xA;                </segmentlist>&#xA;            </representation>&#xA;        </adaptationset>&#xA;        <adaptationset contenttype="audio" startwithsap="1" segmentalignment="true" bitstreamswitching="true" lang="eng">&#xA;            <representation mimetype="audio/mp4" codecs="mp4a.40.2" bandwidth="128000" audiosamplingrate="44100">&#xA;                <audiochannelconfiguration schemeiduri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="2"></audiochannelconfiguration>&#xA;                <baseurl>dash-stream3.mp4</baseurl>&#xA;                <segmentlist timescale="1000000" duration="5000000" startnumber="1">&#xA;                    <initialization range="0-764"></initialization>&#xA;                    <segmenturl mediarange="765-82409" indexrange="765-816"></segmenturl>&#xA;                    <segmenturl mediarange="82410-163592" indexrange="82410-82461"></segmenturl>&#xA;                    <segmenturl mediarange="163593-244493" indexrange="163593-163644"></segmenturl>&#xA;                    <segmenturl mediarange="244494-325181" indexrange="244494-244545"></segmenturl>&#xA;                    <segmenturl mediarange="325182-406218" indexrange="325182-325233"></segmenturl>&#xA;                    <segmenturl mediarange="406219-487174" indexrange="406219-406270"></segmenturl>&#xA;                    <segmenturl mediarange="487175-568100" indexrange="487175-487226"></segmenturl>&#xA;                    <segmenturl mediarange="568101-649853" indexrange="568101-568152"></segmenturl>&#xA;                    <segmenturl mediarange="649854-732519" indexrange="649854-649905"></segmenturl>&#xA;                    <segmenturl mediarange="732520-813751" indexrange="732520-732571"></segmenturl>&#xA;                    <segmenturl mediarange="813752-895429" indexrange="813752-813803"></segmenturl>&#xA;                    <segmenturl mediarange="895430-976537" indexrange="895430-895481"></segmenturl>&#xA;                    <segmenturl mediarange="976538-1058579" indexrange="976538-976589"></segmenturl>&#xA;                    <segmenturl mediarange="1058580-1139556" indexrange="1058580-1058631"></segmenturl>&#xA;                    <segmenturl mediarange="1139557-1220802" indexrange="1139557-1139608"></segmenturl>&#xA;                    <segmenturl mediarange="1220803-1301723" indexrange="1220803-1220854"></segmenturl>&#xA;                    <segmenturl mediarange="1301724-1382546" indexrange="1301724-1301775"></segmenturl>&#xA;                    <segmenturl mediarange="1382547-1464086" indexrange="1382547-1382598"></segmenturl>&#xA;                    <segmenturl mediarange="1464087-1546573" indexrange="1464087-1464138"></segmenturl>&#xA;                    <segmenturl mediarange="1546574-1627881" indexrange="1546574-1546625"></segmenturl>&#xA;                    <segmenturl mediarange="1627882-1710185" indexrange="1627882-1627933"></segmenturl>&#xA;                    <segmenturl mediarange="1710186-1791593" indexrange="1710186-1710237"></segmenturl>&#xA;                    <segmenturl mediarange="1791594-1872889" indexrange="1791594-1791645"></segmenturl>&#xA;                    <segmenturl mediarange="1872890-1954238" indexrange="1872890-1872941"></segmenturl>&#xA;                    <segmenturl mediarange="1954239-2036069" indexrange="1954239-1954290"></segmenturl>&#xA;                    <segmenturl mediarange="2036070-2117365" indexrange="2036070-2036121"></segmenturl>&#xA;                    <segmenturl mediarange="2117366-2198435" indexrange="2117366-2117417"></segmenturl>&#xA;                    <segmenturl mediarange="2198436-2279764" indexrange="2198436-2198487"></segmenturl>&#xA;                    <segmenturl mediarange="2279765-2362061" indexrange="2279765-2279816"></segmenturl>&#xA;                    <segmenturl mediarange="2362062-2443751" indexrange="2362062-2362113"></segmenturl>&#xA;                    <segmenturl mediarange="2443752-2446358" indexrange="2443752-2443803"></segmenturl>&#xA;                </segmentlist>&#xA;            </representation>&#xA;        </adaptationset>&#xA;    </period>&#xA;</mpd>&#xA;

    &#xA;

    File structure created by the lib

    &#xA;

    <mpd xmlns="urn:mpeg:dash:schema:mpd:2011" profiles="urn:mpeg:dash:profile:isoff-live:2011" type="static" mediapresentationduration="PT5M24.4S" maxsegmentduration="PT5.0S" minbuffertime="PT10.8S">&#xA;    <programinformation>&#xA;    </programinformation>&#xA;    <servicedescription>&#xA;    </servicedescription>&#xA;    <period start="PT0.0S">&#xA;        <adaptationset contenttype="video" startwithsap="1" segmentalignment="true" bitstreamswitching="true" framerate="30/1" maxwidth="854" maxheight="480" par="16:9" lang="und">&#xA;            <representation mimetype="video/mp4" codecs="avc1.64001f" bandwidth="750000" width="854" height="480" sar="1280:1281">&#xA;                <segmenttemplate timescale="15360" initialization="dash_init_$RepresentationID$.m4s" media="dash_chunk_$RepresentationID$_$Number%05d$.m4s" startnumber="1">&#xA;                    <segmenttimeline>&#xA;                        <s t="0" d="95744"></s>&#xA;                        <s d="93696"></s>&#xA;                        <s d="117760"></s>&#xA;                        <s d="126976"></s>&#xA;                        <s d="152064"></s>&#xA;                        <s d="109056"></s>&#xA;                        <s d="128000" r="1"></s>&#xA;                        <s d="110080"></s>&#xA;                        <s d="105984" r="1"></s>&#xA;                        <s d="96256"></s>&#xA;                        <s d="114688"></s>&#xA;                        <s d="122880"></s>&#xA;                        <s d="106496"></s>&#xA;                        <s d="113152"></s>&#xA;                        <s d="126464"></s>&#xA;                        <s d="91136"></s>&#xA;                        <s d="77824"></s>&#xA;                        <s d="115712"></s>&#xA;                        <s d="93184"></s>&#xA;                        <s d="154624"></s>&#xA;                        <s d="129024"></s>&#xA;                        <s d="141824"></s>&#xA;                        <s d="116736"></s>&#xA;                        <s d="92672"></s>&#xA;                        <s d="106496"></s>&#xA;                        <s d="153088"></s>&#xA;                        <s d="121344"></s>&#xA;                        <s d="130560"></s>&#xA;                        <s d="87040"></s>&#xA;                        <s d="81920"></s>&#xA;                        <s d="128000"></s>&#xA;                        <s d="99328"></s>&#xA;                        <s d="128000"></s>&#xA;                        <s d="159232"></s>&#xA;                        <s d="158208"></s>&#xA;                        <s d="78848"></s>&#xA;                        <s d="112640"></s>&#xA;                        <s d="95232"></s>&#xA;                        <s d="168448"></s>&#xA;                        <s d="167424"></s>&#xA;                        <s d="40960"></s>&#xA;                    </segmenttimeline>&#xA;                </segmenttemplate>&#xA;            </representation>&#xA;        </adaptationset>&#xA;        <adaptationset contenttype="audio" startwithsap="1" segmentalignment="true" bitstreamswitching="true" lang="eng">&#xA;            <representation mimetype="audio/mp4" codecs="mp4a.40.2" bandwidth="192000" audiosamplingrate="44100">&#xA;                <audiochannelconfiguration schemeiduri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="2"></audiochannelconfiguration>&#xA;                <segmenttemplate timescale="44100" initialization="dash_init_$RepresentationID$.m4s" media="dash_chunk_$RepresentationID$_$Number%05d$.m4s" startnumber="1">&#xA;                    <segmenttimeline>&#xA;                        <s t="0" d="220160"></s>&#xA;                        <s d="221184" r="62"></s>&#xA;                        <s d="151552"></s>&#xA;                    </segmenttimeline>&#xA;                </segmenttemplate>&#xA;            </representation>&#xA;        </adaptationset>&#xA;        <adaptationset contenttype="video" startwithsap="1" segmentalignment="true" bitstreamswitching="true" framerate="30/1" maxwidth="1280" maxheight="720" par="16:9" lang="und">&#xA;            <representation mimetype="video/mp4" codecs="avc1.64001f" bandwidth="2048000" width="1280" height="720" sar="1:1">&#xA;                <segmenttemplate timescale="15360" initialization="dash_init_$RepresentationID$.m4s" media="dash_chunk_$RepresentationID$_$Number%05d$.m4s" startnumber="1">&#xA;                    <segmenttimeline>&#xA;                        <s t="0" d="96256"></s>&#xA;                        <s d="93184"></s>&#xA;                        <s d="117760"></s>&#xA;                        <s d="78336"></s>&#xA;                        <s d="106496"></s>&#xA;                        <s d="123392"></s>&#xA;                        <s d="80384"></s>&#xA;                        <s d="128000" r="1"></s>&#xA;                        <s d="109568"></s>&#xA;                        <s d="164864"></s>&#xA;                        <s d="128000"></s>&#xA;                        <s d="181760"></s>&#xA;                        <s d="91136"></s>&#xA;                        <s d="84992"></s>&#xA;                        <s d="127488"></s>&#xA;                        <s d="103936"></s>&#xA;                        <s d="101376"></s>&#xA;                        <s d="77312"></s>&#xA;                        <s d="115712"></s>&#xA;                        <s d="93184"></s>&#xA;                        <s d="154624"></s>&#xA;                        <s d="129024"></s>&#xA;                        <s d="132096"></s>&#xA;                        <s d="126464"></s>&#xA;                        <s d="92672"></s>&#xA;                        <s d="107008"></s>&#xA;                        <s d="152064"></s>&#xA;                        <s d="122368"></s>&#xA;                        <s d="130560"></s>&#xA;                        <s d="85504"></s>&#xA;                        <s d="82944"></s>&#xA;                        <s d="128000"></s>&#xA;                        <s d="99328"></s>&#xA;                        <s d="128000"></s>&#xA;                        <s d="161792"></s>&#xA;                        <s d="155648"></s>&#xA;                        <s d="78848"></s>&#xA;                        <s d="113152"></s>&#xA;                        <s d="119808"></s>&#xA;                        <s d="144896"></s>&#xA;                        <s d="116224"></s>&#xA;                        <s d="83456"></s>&#xA;                        <s d="7168"></s>&#xA;                    </segmenttimeline>&#xA;                </segmenttemplate>&#xA;            </representation>&#xA;        </adaptationset>&#xA;        <adaptationset contenttype="audio" startwithsap="1" segmentalignment="true" bitstreamswitching="true" lang="eng">&#xA;            <representation mimetype="audio/mp4" codecs="mp4a.40.2" bandwidth="320000" audiosamplingrate="44100">&#xA;                <audiochannelconfiguration schemeiduri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="2"></audiochannelconfiguration>&#xA;                <segmenttemplate timescale="44100" initialization="dash_init_$RepresentationID$.m4s" media="dash_chunk_$RepresentationID$_$Number%05d$.m4s" startnumber="1">&#xA;                    <segmenttimeline>&#xA;                        <s t="0" d="220160"></s>&#xA;                        <s d="221184" r="62"></s>&#xA;                        <s d="151552"></s>&#xA;                    </segmenttimeline>&#xA;                </segmenttemplate>&#xA;            </representation>&#xA;        </adaptationset>&#xA;        <adaptationset contenttype="video" startwithsap="1" segmentalignment="true" bitstreamswitching="true" framerate="30/1" maxwidth="1920" maxheight="1080" par="16:9" lang="und">&#xA;            <representation mimetype="video/mp4" codecs="avc1.640028" bandwidth="4096000" width="1920" height="1080" sar="1:1">&#xA;                <segmenttemplate timescale="15360" initialization="dash_init_$RepresentationID$.m4s" media="dash_chunk_$RepresentationID$_$Number%05d$.m4s" startnumber="1">&#xA;                    <segmenttimeline>&#xA;                        <s t="0" d="86016"></s>&#xA;                        <s d="103424"></s>&#xA;                        <s d="95232"></s>&#xA;                        <s d="95744"></s>&#xA;                        <s d="111616"></s>&#xA;                        <s d="123392"></s>&#xA;                        <s d="80384"></s>&#xA;                        <s d="128000" r="1"></s>&#xA;                        <s d="109568"></s>&#xA;                        <s d="157184"></s>&#xA;                        <s d="92160"></s>&#xA;                        <s d="145408"></s>&#xA;                        <s d="79872"></s>&#xA;                        <s d="85504"></s>&#xA;                        <s d="92160"></s>&#xA;                        <s d="82944"></s>&#xA;                        <s d="81408"></s>&#xA;                        <s d="168960"></s>&#xA;                        <s d="138240"></s>&#xA;                        <s d="83456"></s>&#xA;                        <s d="99328"></s>&#xA;                        <s d="120320"></s>&#xA;                        <s d="126464"></s>&#xA;                        <s d="132608"></s>&#xA;                        <s d="121856"></s>&#xA;                        <s d="96768"></s>&#xA;                        <s d="90112"></s>&#xA;                        <s d="169472"></s>&#xA;                        <s d="121856"></s>&#xA;                        <s d="137216"></s>&#xA;                        <s d="119808"></s>&#xA;                        <s d="177152"></s>&#xA;                        <s d="92160"></s>&#xA;                        <s d="128000"></s>&#xA;                        <s d="161792"></s>&#xA;                        <s d="156160"></s>&#xA;                        <s d="78336"></s>&#xA;                        <s d="77824"></s>&#xA;                        <s d="84480"></s>&#xA;                        <s d="104960"></s>&#xA;                        <s d="110592"></s>&#xA;                        <s d="98304"></s>&#xA;                        <s d="108544"></s>&#xA;                    </segmenttimeline>&#xA;                </segmenttemplate>&#xA;            </representation>&#xA;        </adaptationset>&#xA;        <adaptationset contenttype="audio" startwithsap="1" segmentalignment="true" bitstreamswitching="true" lang="eng">&#xA;            <representation mimetype="audio/mp4" codecs="mp4a.40.2" bandwidth="320000" audiosamplingrate="44100">&#xA;                <audiochannelconfiguration schemeiduri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="2"></audiochannelconfiguration>&#xA;                <segmenttemplate timescale="44100" initialization="dash_init_$RepresentationID$.m4s" media="dash_chunk_$RepresentationID$_$Number%05d$.m4s" startnumber="1">&#xA;                    <segmenttimeline>&#xA;                        <s t="0" d="220160"></s>&#xA;                        <s d="221184" r="62"></s>&#xA;                        <s d="151552"></s>&#xA;                    </segmenttimeline>&#xA;                </segmenttemplate>&#xA;            </representation>&#xA;        </adaptationset>&#xA;    </period>&#xA;</mpd>&#xA;

    &#xA;

    Do I really need multiple video files in different resolutions ? If not, then how would I go about making the necessary files ? Thanks in advance !

    &#xA;