Recherche avancée

Médias (1)

Mot : - Tags -/iphone

Autres articles (73)

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

  • MediaSPIP 0.1 Beta version

    25 avril 2011, par

    MediaSPIP 0.1 beta is the first version of MediaSPIP proclaimed as "usable".
    The zip file provided here only contains the sources of MediaSPIP in its standalone version.
    To get a working installation, you must manually install all-software dependencies on the server.
    If you want to use this archive for an installation in "farm mode", you will also need to proceed to other manual (...)

  • Amélioration de la version de base

    13 septembre 2013

    Jolie sélection multiple
    Le plugin Chosen permet d’améliorer l’ergonomie des champs de sélection multiple. Voir les deux images suivantes pour comparer.
    Il suffit pour cela d’activer le plugin Chosen (Configuration générale du site > Gestion des plugins), puis de configurer le plugin (Les squelettes > Chosen) en activant l’utilisation de Chosen dans le site public et en spécifiant les éléments de formulaires à améliorer, par exemple select[multiple] pour les listes à sélection multiple (...)

Sur d’autres sites (10351)

  • ffmpeg conversion from Flac to Ogg produces corrupted files

    8 avril 2021, par experimental

    i transcoded flac files to ogg using this command

    


    ffmpeg -i input.flac -c:a libvorbis -b:a 500k  output.ogg


    


    yes i use 500k to keep the highest quality possible, some of the files are ok, but some of them can not be played - Unsupported format or corrupted file says the foobar - also my icecast streamer cant read it. So there is something wrong with the files.

    


    I believed it was due to the high bitrate so I tried

    


    ffmpeg -i input.flac -c:a libvorbis -b:a 320k  output.ogg


    


    the same happened, some files were ok, some were not playable.
so I tried again with default using this command

    


    ffmpeg -i input.flac -c:a libvorbis output.ogg


    


    same thing. some files were ok, some were corrupted and not playable.

    


    i have no clue why.

    


    both flac and ogg are in the same family, what happened during the transcoding that it became a corrupted file ?

    


    the spectral analysis does not show anything wrong - here it the ogg https://prnt.sc/115zdjl, here is the original flac https://prnt.sc/115zegw

    


    i am really interested what is going on and how to make it work ?

    


    can anyone explain ?

    


    here is complete log

    


        C:\Users\lukas.kotatko>ffmpeg -i "\\192.168.0.128\lukas\online radio resources\Atma FM playlists\channel 1\flac lossless\Tuu\One Thousand Years\02 One Thousand Years.flac" -c:a libvorbis -b:a 500k "\\192.168.0.128\lukas\online radio resources\Atma FM playlists\channel 1\flac lossless\Tuu\One Thousand Years\02 One Thousand Years [500k test].ogg"
ffmpeg version 4.3.1 Copyright (c) 2000-2020 the FFmpeg developers
  built with gcc 10.2.1 (GCC) 20200726
  configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libdav1d --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libsrt --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libgsm --disable-w32threads --enable-libmfx --enable-ffnvcodec --enable-cuda-llvm --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth --enable-libopenmpt --enable-amf
  libavutil      56. 51.100 / 56. 51.100
  libavcodec     58. 91.100 / 58. 91.100
  libavformat    58. 45.100 / 58. 45.100
  libavdevice    58. 10.100 / 58. 10.100
  libavfilter     7. 85.100 /  7. 85.100
  libswscale      5.  7.100 /  5.  7.100
  libswresample   3.  7.100 /  3.  7.100
  libpostproc    55.  7.100 / 55.  7.100
Input #0, flac, from '\\192.168.0.128\lukas\online radio resources\Atma FM playlists\channel 1\flac lossless\Tuu\One Thousand Years\02 One Thousand Years.flac':
  Metadata:
    GENRE           : Tribal / Ambient
    ORGANIZATION    : Waveform Records
    ISRC            : 01101-2
    COMMENT         : US reissue featuring the six original tracks plus two taken from the Invocation album.
    MUSICBRAINZ_RELEASEGROUPID: 737d0518-3dc2-36b3-9419-282c0ade0e50
    ORIGINALDATE    : 1993
    ORIGINALYEAR    : 1993
    RELEASETYPE     : album
    MUSICBRAINZ_ALBUMID: f6339129-f662-43a1-93df-2f20540f73cc
    ALBUM           : One Thousand Years
    BARCODE         : 789060110125
    MUSICBRAINZ_ALBUMARTISTID: e05a42e7-60a3-4d2d-983c-51dc4eb67cad
    album_artist    : Tuu
    ALBUMARTISTSORT : Tuu
    ASIN            : B00005B9TT
    SCRIPT          : Latn
    RELEASESTATUS   : official
    LABEL           : Waveform Records
    CATALOGNUMBER   : 01101-2
    RELEASECOUNTRY  : US
    DATE            : 2001-05-08
    TOTALDISCS      : 1
    disc            : 1
    TOTALTRACKS     : 8
    MEDIA           : CD
    MUSICBRAINZ_TRACKID: aef9824d-e4a6-4ae6-aebe-50a83dd14f71
    TITLE           : One Thousand Years
    MUSICBRAINZ_ARTISTID: e05a42e7-60a3-4d2d-983c-51dc4eb67cad
    ARTIST          : Tuu
    ARTISTSORT      : Tuu
    ARTISTS         : Tuu
    MUSICBRAINZ_RELEASETRACKID: 621c9da6-a85d-3f8b-b485-5e6f74a60cd0
    track           : 2
    TRACKTOTAL      : 8
    DISCTOTAL       : 1
  Duration: 00:08:03.67, start: 0.000000, bitrate: 792 kb/s
    Stream #0:0: Audio: flac, 44100 Hz, stereo, s16
    Stream #0:1: Video: mjpeg (Baseline), yuvj420p(pc, bt470bg/unknown/unknown), 600x600 [SAR 1:1 DAR 1:1], 90k tbr, 90k tbn, 90k tbc (attached pic)
    Metadata:
      comment         : Cover (front)
Stream mapping:
  Stream #0:1 -> #0:0 (mjpeg (native) -> theora (libtheora))
  Stream #0:0 -> #0:1 (flac (native) -> vorbis (libvorbis))
Press [q] to stop, [?] for help
[swscaler @ 0000015307581a00] deprecated pixel format used, make sure you did set range correctly
[ogg @ 00000153073f1680] Frame rate very high for a muxer not efficiently supporting it.
Please consider specifying a lower framerate, a different muxer or -vsync 2
Output #0, ogg, to '\\192.168.0.128\lukas\online radio resources\Atma FM playlists\channel 1\flac lossless\Tuu\One Thousand Years\02 One Thousand Years [500k test].ogg':
  Metadata:
    GENRE           : Tribal / Ambient
    ORGANIZATION    : Waveform Records
    ISRC            : 01101-2
    COMMENT         : US reissue featuring the six original tracks plus two taken from the Invocation album.
    MUSICBRAINZ_RELEASEGROUPID: 737d0518-3dc2-36b3-9419-282c0ade0e50
    ORIGINALDATE    : 1993
    ORIGINALYEAR    : 1993
    RELEASETYPE     : album
    MUSICBRAINZ_ALBUMID: f6339129-f662-43a1-93df-2f20540f73cc
    ALBUM           : One Thousand Years
    BARCODE         : 789060110125
    MUSICBRAINZ_ALBUMARTISTID: e05a42e7-60a3-4d2d-983c-51dc4eb67cad
    album_artist    : Tuu
    ALBUMARTISTSORT : Tuu
    ASIN            : B00005B9TT
    SCRIPT          : Latn
    RELEASESTATUS   : official
    LABEL           : Waveform Records
    CATALOGNUMBER   : 01101-2
    RELEASECOUNTRY  : US
    DATE            : 2001-05-08
    TOTALDISCS      : 1
    disc            : 1
    TOTALTRACKS     : 8
    MEDIA           : CD
    MUSICBRAINZ_TRACKID: aef9824d-e4a6-4ae6-aebe-50a83dd14f71
    TITLE           : One Thousand Years
    MUSICBRAINZ_ARTISTID: e05a42e7-60a3-4d2d-983c-51dc4eb67cad
    ARTIST          : Tuu
    ARTISTSORT      : Tuu
    ARTISTS         : Tuu
    MUSICBRAINZ_RELEASETRACKID: 621c9da6-a85d-3f8b-b485-5e6f74a60cd0
    track           : 2
    TRACKTOTAL      : 8
    DISCTOTAL       : 1
    encoder         : Lavf58.45.100
    Stream #0:0: Video: theora (libtheora), yuv420p(progressive), 600x600 [SAR 1:1 DAR 1:1], q=2-31, 200 kb/s, 90k fps, 90k tbn, 90k tbc (attached pic)
    Metadata:
      DESCRIPTION     : Cover (front)
      encoder         : Lavc58.91.100 libtheora
      GENRE           : Tribal / Ambient
      ORGANIZATION    : Waveform Records
      ISRC            : 01101-2
      MUSICBRAINZ_RELEASEGROUPID: 737d0518-3dc2-36b3-9419-282c0ade0e50
      ORIGINALDATE    : 1993
      ORIGINALYEAR    : 1993
      RELEASETYPE     : album
      MUSICBRAINZ_ALBUMID: f6339129-f662-43a1-93df-2f20540f73cc
      ALBUM           : One Thousand Years
      BARCODE         : 789060110125
      MUSICBRAINZ_ALBUMARTISTID: e05a42e7-60a3-4d2d-983c-51dc4eb67cad
      ALBUMARTIST     : Tuu
      ALBUMARTISTSORT : Tuu
      ASIN            : B00005B9TT
      SCRIPT          : Latn
      RELEASESTATUS   : official
      LABEL           : Waveform Records
      CATALOGNUMBER   : 01101-2
      RELEASECOUNTRY  : US
      DATE            : 2001-05-08
      TOTALDISCS      : 1
      DISCNUMBER      : 1
      TOTALTRACKS     : 8
      MEDIA           : CD
      MUSICBRAINZ_TRACKID: aef9824d-e4a6-4ae6-aebe-50a83dd14f71
      TITLE           : One Thousand Years
      MUSICBRAINZ_ARTISTID: e05a42e7-60a3-4d2d-983c-51dc4eb67cad
      ARTIST          : Tuu
      ARTISTSORT      : Tuu
      ARTISTS         : Tuu
      MUSICBRAINZ_RELEASETRACKID: 621c9da6-a85d-3f8b-b485-5e6f74a60cd0
      TRACKNUMBER     : 2
      TRACKTOTAL      : 8
      DISCTOTAL       : 1
    Stream #0:1: Audio: vorbis (libvorbis), 44100 Hz, stereo, fltp (16 bit), 500 kb/s
    Metadata:
      encoder         : Lavc58.91.100 libvorbis
      GENRE           : Tribal / Ambient
      ORGANIZATION    : Waveform Records
      ISRC            : 01101-2
      DESCRIPTION     : US reissue featuring the six original tracks plus two taken from the Invocation album.
      MUSICBRAINZ_RELEASEGROUPID: 737d0518-3dc2-36b3-9419-282c0ade0e50
      ORIGINALDATE    : 1993
      ORIGINALYEAR    : 1993
      RELEASETYPE     : album
      MUSICBRAINZ_ALBUMID: f6339129-f662-43a1-93df-2f20540f73cc
      ALBUM           : One Thousand Years
      BARCODE         : 789060110125
      MUSICBRAINZ_ALBUMARTISTID: e05a42e7-60a3-4d2d-983c-51dc4eb67cad
      ALBUMARTIST     : Tuu
      ALBUMARTISTSORT : Tuu
      ASIN            : B00005B9TT
      SCRIPT          : Latn
      RELEASESTATUS   : official
      LABEL           : Waveform Records
      CATALOGNUMBER   : 01101-2
      RELEASECOUNTRY  : US
      DATE            : 2001-05-08
      TOTALDISCS      : 1
      DISCNUMBER      : 1
      TOTALTRACKS     : 8
      MEDIA           : CD
      MUSICBRAINZ_TRACKID: aef9824d-e4a6-4ae6-aebe-50a83dd14f71
      TITLE           : One Thousand Years
      MUSICBRAINZ_ARTISTID: e05a42e7-60a3-4d2d-983c-51dc4eb67cad
      ARTIST          : Tuu
      ARTISTSORT      : Tuu
      ARTISTS         : Tuu
      MUSICBRAINZ_RELEASETRACKID: 621c9da6-a85d-3f8b-b485-5e6f74a60cd0
      TRACKNUMBER     : 2
      TRACKTOTAL      : 8
      DISCTOTAL       : 1
frame=    1 fps=0.1 q=-0.0 Lsize=   25860kB time=00:08:03.66 bitrate= 438.0kbits/s speed=44.6x
video:8kB audio:25721kB subtitle:0kB other streams:0kB global headers:7kB muxing overhead: 0.511663%


    


  • Dash.js not playing mpd files made with ffmpeg

    31 décembre 2022, par Macster

    I'm using ffmpeg to create chunks and manifest of a webm file which I want to live stream with Dash.js. Unfortunately Dash.js won't play the mpd file, no matter which way I create the chunks and manifest. However, the sample mpd URL from Dash.js is working.

    


    Commands

    


    ffmpeg -re -r 25 -i Dash/strm.webm
-map 0:v:0
-pix_fmt yuv420p
-c:v libvpx
-s 640x480 -keyint_min 60 -g 60 -speed 6 -tile-columns 4 -frame-parallel 1 -threads 8 -static-thresh 0 -max-intra-rate 300 -deadline realtime -lag-in-frames 0 -error-resilient 1
-b:v 3000k
-f webm_chunk
-header "Dash/glass_360.hdr"
-chunk_start_index 1 Dash/glass_360_%d.chk
-map 0:a:0
-c:a libvorbis
-b:a 128k -ar 44100
-f webm_chunk
-audio_chunk_duration 2000
-header Dash/glass_171.hdr
-chunk_start_index 1 Dash/glass_171_%d.chk


//Manifest
ffmpeg
-f webm_dash_manifest -live 1
-i Dash/glass_360.hdr
-f webm_dash_manifest -live 1
-i Dash/glass_171.hdr
-c copy
-map 0 -map 1
-f webm_dash_manifest -live 1
-adaptation_sets "id=0,streams=0 id=1,streams=1"
-chunk_start_index 1
-chunk_duration_ms 2000
-time_shift_buffer_depth 7200
-minimum_update_period 7200 Dash/glass_video_manifest.mpd


    


    Manifest output

    


    ffmpeg version git-2020-05-27-8b5ffae Copyright (c) 2000-2020 the FFmpeg developers
  built with gcc 9.3.1 (GCC) 20200523
  configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libdav1d --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libsrt --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --disable-w32threads --enable-libmfx --enable-ffnvcodec --enable-cuda-llvm --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth --enable-libopenmpt --enable-amf
  libavutil      56. 49.100 / 56. 49.100
  libavcodec     58. 87.101 / 58. 87.101
  libavformat    58. 43.100 / 58. 43.100
  libavdevice    58.  9.103 / 58.  9.103
  libavfilter     7. 83.100 /  7. 83.100
  libswscale      5.  6.101 /  5.  6.101
  libswresample   3.  6.100 /  3.  6.100
  libpostproc    55.  6.100 / 55.  6.100
Input #0, webm_dash_manifest, from 'Dash/glass_360.hdr':
  Metadata:
    ENCODER         : Lavf58.43.100
  Duration: N/A, bitrate: N/A
    Stream #0:0(eng): Video: vp8, yuv420p, 640x480, SAR 1:1 DAR 4:3, 1k tbr, 1k tbn, 1k tbc (default)
    Metadata:
      ALPHA_MODE      : 1
      ENCODER         : Lavc58.87.101 libvpx
      webm_dash_manifest_file_name: glass_360.hdr
      webm_dash_manifest_track_number: 1
Input #1, webm_dash_manifest, from 'Dash/glass_171.hdr':
  Metadata:
    ENCODER         : Lavf58.43.100
  Duration: N/A, bitrate: N/A
    Stream #1:0(eng): Audio: vorbis, 44100 Hz, mono, fltp (default)
    Metadata:
      ENCODER         : Lavc58.87.101 libvorbis
      webm_dash_manifest_file_name: glass_171.hdr
      webm_dash_manifest_track_number: 1
Output #0, webm_dash_manifest, to 'Dash/glass_video_manifest.mpd':
  Metadata:
    encoder         : Lavf58.43.100
    Stream #0:0(eng): Video: vp8, yuv420p, 640x480 [SAR 1:1 DAR 4:3], q=2-31, 1k tbr, 1k tbn, 1k tbc (default)
    Metadata:
      ALPHA_MODE      : 1
      ENCODER         : Lavc58.87.101 libvpx
      webm_dash_manifest_file_name: glass_360.hdr
      webm_dash_manifest_track_number: 1
    Stream #0:1(eng): Audio: vorbis, 44100 Hz, mono, fltp (default)
    Metadata:
      ENCODER         : Lavc58.87.101 libvorbis
      webm_dash_manifest_file_name: glass_171.hdr
      webm_dash_manifest_track_number: 1
Stream mapping:
  Stream #0:0 -> #0:0 (copy)
  Stream #1:0 -> #0:1 (copy)
Press [q] to stop, [?] for help
frame=    0 fps=0.0 q=-1.0 Lsize=       1kB time=00:00:00.00 bitrate=N/A speed=   0x
video:0kB audio:0kB subtitle:0kB other streams:0kB global headers:4kB muxing overhead: unknown


    


    Manifest file
    (glass_video_manifest.mpd)
    
I tried to delete the ContetntComponent like suggested in other questions, but it didn't work.

    


    &lt;?xml version="1.0" encoding="UTF-8"?>&#xA;&#xA;<period start="PT0S">&#xA;<adaptationset mimetype="video/webm" codecs="vp8" lang="eng" bitstreamswitching="true" subsegmentalignment="true" subsegmentstartswithsap="1">&#xA;<contentcomponent type="video"></contentcomponent>&#xA;<segmenttemplate timescale="1000" duration="2000" media="glass_$RepresentationID$_$Number$.chk" startnumber="1" initialization="glass_$RepresentationID$.hdr"></segmenttemplate>&#xA;<representation bandwidth="1000000" width="640" height="480" codecs="vp8" mimetype="video/webm" startswithsap="1"></representation>&#xA;</adaptationset>&#xA;<adaptationset mimetype="audio/webm" codecs="vorbis" lang="eng" bitstreamswitching="true" subsegmentalignment="true" subsegmentstartswithsap="1">&#xA;<contentcomponent type="audio"></contentcomponent>&#xA;<segmenttemplate timescale="1000" duration="2000" media="glass_$RepresentationID$_$Number$.chk" startnumber="1" initialization="glass_$RepresentationID$.hdr"></segmenttemplate>&#xA;<representation bandwidth="128000" audiosamplingrate="44100" codecs="vorbis" mimetype="audio/webm" startswithsap="1"></representation>&#xA;</adaptationset>&#xA;</period>&#xA;&#xA;

    &#xA;

    Dash.js-Player

    &#xA;

    <code class="echappe-js">&lt;script&gt;&amp;#xA;&amp;#xA;(function(){&amp;#xA;  // var url = &quot;https://dash.akamaized.net/envivio/EnvivioDash3/manifest.mpd&quot;;&amp;#xA;  var url = &quot;http://localhost:8081/videos/Dash/glass_live_manifest.mpd&quot;;&amp;#xA;  var player = dashjs.MediaPlayer().create();&amp;#xA;                &amp;#xA;  // config&amp;#xA;  targetLatency = 2.0;        // Lowering this value will lower latency but may decrease the player&amp;#x27;s ability to build a stable buffer.&amp;#xA;  minDrift = 0.05;            // Minimum latency deviation allowed before activating catch-up mechanism.&amp;#xA;  catchupPlaybackRate = 0.5;  // Maximum catch-up rate, as a percentage, for low latency live streams.&amp;#xA;  stableBuffer = 2;           // The time that the internal buffer target will be set to post startup/seeks (NOT top quality).&amp;#xA;  bufferAtTopQuality = 2;     // The time that the internal buffer target will be set to once playing the top quality.&amp;#xA;&amp;#xA;   player.updateSettings({&amp;#xA;      &amp;#x27;streaming&amp;#x27;: {&amp;#xA;          &amp;#x27;liveDelay&amp;#x27;: 2,&amp;#xA;          &amp;#x27;liveCatchUpMinDrift&amp;#x27;: 0.05,&amp;#xA;          &amp;#x27;liveCatchUpPlaybackRate&amp;#x27;: 0.5,&amp;#xA;          &amp;#x27;stableBufferTime&amp;#x27;: 2,&amp;#xA;          &amp;#x27;bufferTimeAtTopQuality&amp;#x27;: 2,&amp;#xA;          &amp;#x27;bufferTimeAtTopQualityLongForm&amp;#x27;: 2,&amp;#xA;          &amp;#x27;bufferToKeep&amp;#x27;: 2,&amp;#xA;          &amp;#x27;bufferAheadToKeep&amp;#x27;: 2,&amp;#xA;          &amp;#x27;lowLatencyEnabled&amp;#x27;: true,&amp;#xA;          &amp;#x27;fastSwitchEnabled&amp;#x27;: true,&amp;#xA;          &amp;#x27;abr&amp;#x27;: {&amp;#xA;               &amp;#x27;limitBitrateByPortal&amp;#x27;: true&amp;#xA;          },&amp;#xA;       }&amp;#xA;   });&amp;#xA;&amp;#xA;   console.log(player.getSettings());&amp;#xA;&amp;#xA;   setInterval(() =&gt; {&amp;#xA;      console.log(&amp;#x27;Live latency= &amp;#x27;, player.getCurrentLiveLatency());&amp;#xA;      console.log(&amp;#x27;Buffer length= &amp;#x27;, player.getBufferLength(&amp;#x27;video&amp;#x27;));&amp;#xA;     }, 3000);&amp;#xA;&amp;#xA;     player.initialize(document.querySelector(&quot;#videoPlayer&quot;), url, true);&amp;#xA;&amp;#xA;   })();&amp;#xA;&lt;/script&gt;&#xA;

    &#xA;

    Chrome

    &#xA;

    {debug: {…}, streaming: {…}}&#xA;dash.all.min.js:2 XHR finished loading: GET "http://localhost:8081/videos/Dash/glass_live_manifest.mpd".&#xA;load @ dash.all.min.js:2&#xA;C @ dash.all.min.js:2&#xA;load @ dash.all.min.js:2&#xA;load @ dash.all.min.js:2&#xA;load @ dash.all.min.js:2&#xA;load @ dash.all.min.js:2&#xA;se @ dash.all.min.js:2&#xA;te @ dash.all.min.js:2&#xA;initialize @ dash.all.min.js:2&#xA;(anonymous) @ Dash:92&#xA;(anonymous) @ Dash:94&#xA;DevTools failed to load SourceMap: Could not parse content for http://localhost:8081/js/dash.all.min.js.map: Cannot read property &#x27;length&#x27; of undefined&#xA;Dash:88 Live latency=  NaN&#xA;Dash:89 Buffer length=  NaN&#xA;Dash:88 Live latency=  NaN&#xA;Dash:89 Buffer length=  NaN&#xA;Dash:88 Live latency=  NaN&#xA;Dash:89 Buffer length=  NaN&#xA;Dash:88 Live latency=  NaN&#xA;Dash:89 Buffer length=  NaN&#xA;Dash:88 Live latency=  NaN&#xA;Dash:89 Buffer length=  NaN&#xA;

    &#xA;

    UPDATE

    &#xA;

    Well, it seems like the problem in general was, that the mpd's wouldn't play from that /dash folder. So i took a look into the code and found a bad routing. Anyways, the mpd would't start with the given command I used, probably becasue it creates a dynamic manifest, like @Markus Schumann says. So I'm going with a new one which seems to be working for now, but not very well.

    &#xA;

    ffmpeg -y -re -i strm.webm &#xA;-c:v libx264 -x264opts "keyint=24:min-keyint=24:no-scenecut" &#xA;-r 24 -c:a aac -b:a 128k -bf 1 -b_strategy 0 -sc_threshold 0 -pix_fmt yuv420p &#xA;-map 0:v:0 -map 0:a:0 -map 0:v:0 -map 0:a:0 -map 0:v:0 -map 0:a:0 -b:v:0 250k  &#xA;-filter:v:0 "scale=-2:240" -profile:v:0 baseline -b:v:1 750k  &#xA;-filter:v:1 "scale=-2:480" -profile:v:1 main -b:v:2 1500k &#xA;-filter:v:2 "scale=-2:720" -profile:v:2 high &#xA;-use_timeline 1 -use_template 1 -window_size 5 -adaptation_sets "id=0,streams=v id=1,streams=a" &#xA;-f dash glass_video_manifest.mpd&#xA;

    &#xA;

  • FFMPEG : How to manually select video quality from mpd manifest ?

    18 juin 2022, par Deoxys

    I want to ask what command should I use to select video quality from mpd manifest ?

    &#xA;&#xA;

    mpd manifest link

    &#xA;&#xA;

    https://anevia115(dot)mncnow(dot)id/vod/eds/kiko-season1-eps1-mobil-kabur-anv6/_/sa_dash_vmx/kiko-season1-eps1-mobil-kabur-anv6.mpd&#xA;

    &#xA;&#xA;

    Here, the mpd file :

    &#xA;&#xA;

    &lt;?xml version="1.0" encoding="utf-8"?>&#xA;<mpd xmlns="urn:mpeg:dash:schema:mpd:2011" profiles="urn:mpeg:dash:profile:isoff-live:2011" type="static" mediapresentationduration="PT7M59.240000S" minbuffertime="PT0S" maxsegmentduration="PT4S">&#xA;  <period duration="PT7M59.240000S">&#xA;    <adaptationset group="1" mimetype="audio/mp4" lang="en" contenttype="audio" minbandwidth="32000" maxbandwidth="64000">&#xA;<contentprotection schemeiduri="urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed"></contentprotection><contentprotection schemeiduri="urn:mpeg:dash:mp4protection:2011" value="cenc"></contentprotection>      <role schemeiduri="urn:mpeg:dash:role:2011" value="main"></role>&#xA;      <representation bandwidth="32000" audiosamplingrate="22050" codecs="mp4a.40.2">&#xA;        <audiochannelconfiguration schemeiduri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="2"></audiochannelconfiguration>&#xA;        <segmenttemplate timescale="10000000" initialization="kiko-season1-eps1-mobil-kabur-anv6-$RepresentationID$-init.mp4" media="kiko-season1-eps1-mobil-kabur-anv6-$RepresentationID$-$Time$.mp4">&#xA;          <segmenttimeline>&#xA;            <s t="0" d="36223129" r="1"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758731"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223130"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758731"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223130"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223130"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129" r="1"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223130"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758731"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223130"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758731"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223130"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129" r="1"></s>&#xA;            <s d="35758731"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223130"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758731"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223130"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758731"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="36223130"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758731"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223130"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758731"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223130"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758731"></s>&#xA;            <s d="36223129" r="1"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223130"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758731"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223130"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758731"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223130"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129" r="1"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223130"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="3715193"></s>&#xA;          </segmenttimeline>&#xA;        </segmenttemplate>&#xA;      </representation>&#xA;      <representation bandwidth="64000" audiosamplingrate="22050" codecs="mp4a.40.2">&#xA;        <audiochannelconfiguration schemeiduri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="2"></audiochannelconfiguration>&#xA;        <segmenttemplate timescale="10000000" initialization="kiko-season1-eps1-mobil-kabur-anv6-$RepresentationID$-init.mp4" media="kiko-season1-eps1-mobil-kabur-anv6-$RepresentationID$-$Time$.mp4">&#xA;          <segmenttimeline>&#xA;            <s t="0" d="36223129" r="1"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758731"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223130"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758731"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223130"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223130"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129" r="1"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223130"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758731"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223130"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758731"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223130"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129" r="1"></s>&#xA;            <s d="35758731"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223130"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758731"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223130"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758731"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="36223130"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758731"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223130"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758731"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223130"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758731"></s>&#xA;            <s d="36223129" r="1"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223130"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758731"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223130"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758731"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223130"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129" r="1"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223130"></s>&#xA;            <s d="35758730"></s>&#xA;            <s d="36223129"></s>&#xA;            <s d="3715193"></s>&#xA;          </segmenttimeline>&#xA;        </segmenttemplate>&#xA;      </representation>&#xA;    </adaptationset>&#xA;    <adaptationset group="2" framerate="25" mimetype="video/mp4" startwithsap="1" contenttype="video" par="16:9" minbandwidth="150119" maxbandwidth="5002530" minwidth="256" maxwidth="1920" minheight="144" maxheight="1080">&#xA;<contentprotection schemeiduri="urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed"></contentprotection><contentprotection schemeiduri="urn:mpeg:dash:mp4protection:2011" value="cenc"></contentprotection>      <role schemeiduri="urn:mpeg:dash:role:2011" value="main"></role>&#xA;      <segmenttemplate timescale="10000000" initialization="kiko-season1-eps1-mobil-kabur-anv6-$RepresentationID$-init.mp4" media="kiko-season1-eps1-mobil-kabur-anv6-$RepresentationID$-$Time$.mp4">&#xA;        <segmenttimeline>&#xA;          <s t="0" d="36000000" r="132"></s>&#xA;          <s d="4400000"></s>&#xA;        </segmenttimeline>&#xA;      </segmenttemplate>&#xA;      <representation bandwidth="150119" width="256" height="144" codecs="avc1.4d400c"></representation>&#xA;      <representation bandwidth="500565" width="640" height="360" codecs="avc1.4d401e"></representation>&#xA;      <representation bandwidth="1001193" width="854" height="480" codecs="avc1.4d401e"></representation>&#xA;      <representation bandwidth="2502286" width="1280" height="720" codecs="avc1.4d401f"></representation>&#xA;      <representation bandwidth="5002530" width="1920" height="1080" codecs="avc1.4d4028"></representation>&#xA;    </adaptationset>&#xA;  </period>&#xA;</mpd>&#xA;

    &#xA;&#xA;

    The video is not encrypted with DRM. When I tried to download with FFmpeg, success, but FFmpeg automatically select the worst quality (144p).

    &#xA;&#xA;

    FFmpeg command I use :

    &#xA;&#xA;

    ffmpeg -i https://anevia115(dot)mncnow(dot)id/vod/eds/kiko-season1-eps1-mobil-kabur-anv6/_/sa_dash_vmx/kiko-season1-eps1-mobil-kabur-anv6.mpd -c copy kiko1.mp4&#xA;

    &#xA;&#xA;

    Result from ffmpeg

    &#xA;&#xA;

    ffmpeg version 3.4.6-0ubuntu0.18.04.1 Copyright (c) 2000-2019 the FFmpeg developers&#xA;  built with gcc 7 (Ubuntu 7.3.0-16ubuntu3)&#xA;  configuration: --prefix=/usr --extra-version=0ubuntu0.18.04.1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --enable-gpl --disable-stripping --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librubberband --enable-librsvg --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libopencv --enable-libx264 --enable-shared&#xA;  libavutil      55. 78.100 / 55. 78.100&#xA;  libavcodec     57.107.100 / 57.107.100&#xA;  libavformat    57. 83.100 / 57. 83.100&#xA;  libavdevice    57. 10.100 / 57. 10.100&#xA;  libavfilter     6.107.100 /  6.107.100&#xA;  libavresample   3.  7.  0 /  3.  7.  0&#xA;  libswscale      4.  8.100 /  4.  8.100&#xA;  libswresample   2.  9.100 /  2.  9.100&#xA;  libpostproc    54.  7.100 / 54.  7.100&#xA;[dash @ 0x562ae2e98000] Opening &#x27;[URL]https://anevia115(dot)mncnow(dot)id/vod/eds/kiko-season1-eps1-mobil-kabur-anv6/_/sa_dash_vmx/kiko-season1-eps1-mobil-kabur-anv6-avc1_150119=5-init.mp4[/URL]&#x27; for reading [dash @ 0x562ae2e98000] Could not read complete fragment.&#xA;[dash @ 0x562ae2e98000] Opening &#x27;[URL]https://anevia115(dot)mncnow(dot)id/vod/eds/kiko-season1-eps1-mobil-kabur-anv6/_/sa_dash_vmx/kiko-season1-eps1-mobil-kabur-anv6-avc1_150119=5-0.mp4[/URL]&#x27; for reading&#xA;[dash @ 0x562ae2e98000] Opening &#x27;[URL]https://anevia115(dot)mncnow(dot)id/vod/eds/kiko-season1-eps1-mobil-kabur-anv6/_/sa_dash_vmx/kiko-season1-eps1-mobil-kabur-anv6-mp4a_32000_eng=6-init.mp4[/URL]&#x27; for reading [dash @ 0x562ae2e98000] Could not read complete fragment.&#xA;[dash @ 0x562ae2e98000] Opening &#x27;[URL]https://anevia115(dot)mncnow(dot)id/vod/eds/kiko-season1-eps1-mobil-kabur-anv6/_/sa_dash_vmx/kiko-season1-eps1-mobil-kabur-anv6-mp4a_32000_eng=6-0.mp4[/URL]&#x27; for reading&#xA;[aac @ 0x562ae32ced00] channel element 2.3 is not allocated&#xA;[h264 @ 0x562ae32cc500] top block unavailable for requested intra mode -1&#xA;[h264 @ 0x562ae32cc500] error while decoding MB 0 0, bytestream 38&#xA;[h264 @ 0x562ae32cc500] concealing 144 DC, 144 AC, 144 MV errors in I frame&#xA;Input #0, dash, from &#x27;[URL]https://anevia115(dot)mncnow(dot)id/vod/eds/kiko-season1-eps1-mobil-kabur-anv6/_/sa_dash_vmx/kiko-season1-eps1-mobil-kabur-anv6.mpd[/URL]&#x27;:&#xA;  Duration: 00:07:59.00, start: 0.000000, bitrate: 0 kb/s &#xA;Program 0&#xA;     Stream #0:0: Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709), 256x144 [SAR 1:1 DAR 16:9], 153 kb/s, 25 fps, 25 tbr, 10000k tbn, 50 tbc  &#xA;     Stream #0:1: Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 32 kb/s&#xA;Output #0, mp4, to &#x27;kiko1.mp4&#x27;: &#xA;   Metadata:   &#xA;      encoder         : Lavf57.83.100   &#xA;      Stream #0:0: Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709), 256x144 [SAR 1:1 DAR 16:9], q=2-31, 153 kb/s, 25 fps, 25 tbr, 10000k tbn, 10000k tbc&#xA;Stream mapping: &#xA;   Stream #0:0 -> #0:0 (copy)&#xA;Press [q] to stop, [?] for help&#xA;[dash @ 0x562ae2e98000] Opening &#x27;[URL]https://anevia115(dot)mncnow(dot)id/vod/eds/kiko-season1-eps1-mobil-kabur-anv6/_/sa_dash_vmx/kiko-season1-eps1-mobil-kabur-anv6-mp4a_32000_eng=6-36223129.mp4[/URL]&#x27; for reading&#xA;[dash @ 0x562ae2e98000] Opening &#x27;[URL]https://anevia115(dot)mncnow(dot)id/vod/eds/kiko-season1-eps1-mobil-kabur-anv6/_/sa_dash_vmx/kiko-season1-eps1-mobil-kabur-anv6-avc1_150119=5-36000000.mp4[/URL]&#x27; for reading&#xA;....&#xA;....&#xA;frame=11978 fps= 99 q=-1.0 Lsize=    8891kB time=00:07:59.08 bitrate= 152.0kbits/s speed=3.97x&#xA;video:8779kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 1.269990%&#xA;

    &#xA;&#xA;

    Tried youtube-dl & streamlink but failed.&#xA;So, I use FFmpeg because it success to download the video and audio. I have read FFmpeg documentation but I have no idea what command should I use.&#xA;What command should I use to select another quality ? (ex : audio 64 kbps, video : 720p)

    &#xA;&#xA;

    &#xA;

    Note : just change (dot) to .

    &#xA;

    &#xA;