Dash-Industry-Forum / dash.js

A reference client implementation for the playback of MPEG DASH via Javascript and compliant browsers.
http://reference.dashif.org/dash.js/nightly/samples/dash-if-reference-player/index.html
Other
5.16k stars 1.68k forks source link

livestream generated by ffmpeg fails to play except in v2.6.0 (Safari + Chrome) #2470

Closed eponymous301 closed 6 years ago

eponymous301 commented 6 years ago
Environment
Steps to reproduce
  1. Please provide clear steps to reproduce your problem

My ffmpeg info:

ffmpeg version N-89756-gd6945aeee4-tessus Copyright (c) 2000-2018 the FFmpeg developers
  built with Apple LLVM version 9.0.0 (clang-900.0.39.2)
  configuration: --cc=/usr/bin/clang --prefix=/opt/ffmpeg --extra-version=tessus --enable-avisynth --enable-fontconfig --enable-gpl --enable-libass --enable-libbluray --enable-libfreetype --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopus --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-libzmq --enable-libzvbi --enable-version3 --pkg-config-flags=--static --disable-ffplay
  libavutil      56.  7.100 / 56.  7.100
  libavcodec     58.  9.100 / 58.  9.100
  libavformat    58.  3.100 / 58.  3.100
  libavdevice    58.  0.100 / 58.  0.100
  libavfilter     7. 11.101 /  7. 11.101
  libswscale      5.  0.101 /  5.  0.101
  libswresample   3.  0.101 /  3.  0.101
  libpostproc    55.  0.100 / 55.  0.100

Create a directory, set it to current.

Execute the following command line on MacBook Pro to stream from webcam/microphone to DASH, using timeline:

ffmpeg \
-hide_banner \
-y \
-f avfoundation \
-framerate 30 \
-video_size 640x480 \
-i "FaceTime HD Camera:Built-in Microphone" \
-copyts \
-acodec aac -b:a 128k \
-vcodec libx264 \
-vf format=yuv420p \
-profile:v high  \
-x264opts \
keyint=180:min-keyint=180:scenecut=-1 \
-b:v 500k \
-f dash \
-adaptation_sets "id=0,streams=v id=1,streams=a" \
-min_seg_duration 6000000 \
-use_template 1 \
-use_timeline 1 \
-remove_at_exit 0 \
-init_seg_name 'live-$RepresentationID$-init.m4s' \
-media_seg_name 'live-$RepresentationID$-$Time$.m4s' \
live.mpd

Serve up the directory via webserver or utility of your choice that allows setting Access-Control-Allow-Origin (I used Sinatra / Ruby):

# simplistic file server for DASH testing
# place in same directory as DASH manifest and segment files

require 'rubygems'
require 'sinatra'

set :environment, :development
set :bind, '0.0.0.0'

get %r{/(.+)} do
  response['Access-Control-Allow-Origin'] = '*'
  filename = params['captures'][0]
  send_file filename
end

Play with reference player. (if using above Sinatra server, http://your.ip.address:4567/live.mpd)

  1. If the bug is intermittent, give a rough frequency if possible

Bug is consistent.

Observed behaviour

Describe what the player is doing that is unexpected or undesired behaviour.

Stream fails to play on Safari and Chrome unless using version 2.6.0 of reference client. Other versions tried from 2.5.0 through nightly build do not play, either showing black screen or first frame.

Firefox successfully plays with versions other than 2.6.0.

Bitmovin client successfully plays.

Console output

From nightly build reference client 2.6.7 on Chrome 64.0.3282.186 (Official Build) (64-bit)

Debug.js:127 [45557] Streaming Initialized 
Debug.js:127 [45559] Playback Initialized 
Debug.js:127 [45619] Parsing complete: ( xml2json: 22.9ms, objectiron: 17.5ms, total: 0.0404s) 
Debug.js:127 [45631] SegmentTimeline detected using calculated Live Edge Time 
Debug.js:127 [45636] MediaSource attached to element.  Waiting on open... 
Debug.js:127 [45638] Manifest has been refreshed at Wed Mar 14 2018 18:26:51 GMT-0700 (PDT)[1521077211.021]  
Debug.js:127 [45646] MediaSource is open! 
Debug.js:127 [45647] Duration successfully set to: 9007199254740991 
Debug.js:127 [45649] Added 0 inline events 
Debug.js:127 [45650] video codec: video/mp4;codecs="avc1.64001e" 
Debug.js:127 [45670] audio codec: audio/mp4;codecs="mp4a.40.2" 
Debug.js:127 [45680] No text data. 
Debug.js:127 [45681] No fragmentedText data. 
Debug.js:127 [45682] No embeddedText data. 
Debug.js:127 [45682] No muxed data. 
Debug.js:127 [45683] No image data. 
Debug.js:127 [45686] Getting the request for video time : 123107.7 
Debug.js:127 [45687] Index for video time 123107.7 is 341 
Debug.js:127 [45689] [ScheduleController][ video ] start 
Debug.js:127 [45695] Getting the request for audio time : 123104.73466666667 
Debug.js:127 [45698] Index for audio time 123104.73466666667 is 341 
Debug.js:127 [45699] [ScheduleController][ audio ] start 
Debug.js:127 [45700] Start Event Controller 
Debug.js:127 [45702] Native video element event: play 
Debug.js:127 [45702] Refresh manifest in 6 seconds. 
Debug.js:127 [45703] [StreamController][onPlaybackStarted] 
Debug.js:127 [45713] AbrController (video) stay on 0/0 (buffer: 0) 
Debug.js:127 [45715] ScheduleController - video - quality has changed, get init request for representationid = 0 
Debug.js:127 [45715] [ScheduleController][ video ] isFragmentProcessingInProgress is already equal to true 
Debug.js:127 [45719] AbrController (audio) stay on 0/0 (buffer: 0) 
Debug.js:127 [45719] ScheduleController - audio - quality has changed, get init request for representationid = 1 
Debug.js:127 [45720] [ScheduleController][ audio ] isFragmentProcessingInProgress is already equal to true 
Debug.js:127 [45729] Init fragment finished loading saving to video's init cache 
Debug.js:127 [45731] Append Init fragment video  with representationId: 0  and quality: 0 
Debug.js:127 [45733] [ScheduleController][ video ] - onFragmentLoadingCompleted 
Debug.js:127 [45735] Init fragment finished loading saving to audio's init cache 
Debug.js:127 [45736] Append Init fragment audio  with representationId: 1  and quality: 0 
Debug.js:127 [45737] [ScheduleController][ audio ] - onFragmentLoadingCompleted 
Debug.js:127 [45739] [BufferController][ video ] onAppended chunk type =  InitializationSegment  and index =  NaN 
Debug.js:127 [45740] [BufferController][ audio ] onAppended chunk type =  InitializationSegment  and index =  NaN 
Debug.js:127 [45742] Native video element event: loadedmetadata 
Debug.js:127 [45743] Top quality video index has changed from undefined to 0 
Debug.js:127 [45744] AbrController (video) stay on 0/0 (buffer: 0) 
Debug.js:127 [45746] Getting the request for video time : 123101.7 
Debug.js:127 [45746] Index for video time 123101.7 is 341 
Debug.js:127 [45748] SegmentTimeline: 123101.7 / Infinity 
Debug.js:127 [45749] ScheduleController - video - getNextFragment - request is http://192.168.42.122:4567/live-0-1890842112.m4s 
Debug.js:127 [45752] Top quality audio index has changed from undefined to 0 
Debug.js:127 [45752] AbrController (audio) stay on 0/0 (buffer: 0) 
Debug.js:127 [45752] Getting the request for audio time : 123101.634 
Debug.js:127 [45752] Index for audio time 123101.634 is 341 
Debug.js:127 [45753] SegmentTimeline: 123101.634 / Infinity 
Debug.js:127 [45754] ScheduleController - audio - getNextFragment - request is http://192.168.42.122:4567/live-1-5908878432.m4s 
Debug.js:127 [45767] [ScheduleController][ video ] - onFragmentLoadingCompleted 
Debug.js:127 [45770] [ScheduleController][ audio ] - onFragmentLoadingCompleted 
Debug.js:127 [45776] Buffered Range for type: audio : 2046.740333  -  2052.756333  currentTime =  0 
Debug.js:127 [45778] [BufferController][ audio ] onAppended chunk type =  MediaSegment  and index =  341 
Debug.js:127 [45779] Buffered Range for type: video : 2046  -  2051.999999  currentTime =  0 
Debug.js:127 [45780] [BufferController][ video ] onAppended chunk type =  MediaSegment  and index =  341 
Debug.js:127 [45781] ThroughputRule requesting switch to index:  0 type:  audio Average throughput 700495 kbps 
Debug.js:127 [45782] AbrController (audio) stay on 0/0 (buffer: 0) 
Debug.js:127 [45783] Getting the request for audio time : 123107.65000000001 
Debug.js:127 [45783] Index for audio time 123107.65000000001 is 341 
Debug.js:127 [45783] SegmentTimeline: 123101.634 / Infinity 
Debug.js:127 [45784] Getting the next request at index: 342, type: audio 
Debug.js:127 [45785] SegmentTimeline: 123107.65 / Infinity 
Debug.js:127 [45785] ScheduleController - audio - getNextFragment - request is http://192.168.42.122:4567/live-1-5909167200.m4s 
Debug.js:127 [45790] ThroughputRule requesting switch to index:  0 type:  video Average throughput 743911 kbps 
Debug.js:127 [45791] AbrController (video) stay on 0/0 (buffer: 0) 
Debug.js:127 [45792] Getting the request for video time : 123107.7 
Debug.js:127 [45792] Index for video time 123107.7 is 341 
Debug.js:127 [45793] SegmentTimeline: 123101.7 / Infinity 
Debug.js:127 [45795] Getting the next request at index: 342, type: video 
Debug.js:127 [45795] SegmentTimeline: 123107.7 / Infinity 
Debug.js:127 [45797] ScheduleController - video - getNextFragment - request is http://192.168.42.122:4567/live-0-1890934272.m4s 
Debug.js:127 [45805] [ScheduleController][ audio ] - onFragmentLoadingCompleted 
Debug.js:127 [45811] Buffered Range for type: audio : 2046.740333  -  2058.750999  currentTime =  0 
Debug.js:127 [45811] [BufferController][ audio ] onAppended chunk type =  MediaSegment  and index =  342 
Debug.js:127 [45816] [ScheduleController][ video ] - onFragmentLoadingCompleted 
Debug.js:127 [45817] ThroughputRule requesting switch to index:  0 type:  audio Average throughput 466821 kbps 
Debug.js:127 [45817] AbrController (audio) stay on 0/0 (buffer: 0) 
Debug.js:127 [45817] Getting the request for audio time : 123113.64466666666 
Debug.js:127 [45817] Index for audio time 123113.64466666666 is 342 
Debug.js:127 [45818] SegmentTimeline: 123107.65 / Infinity 
Debug.js:127 [45819] Getting the next request at index: 343, type: audio 
Debug.js:127 [45819] SegmentTimeline: 123113.64467 / Infinity 
Debug.js:127 [45820] ScheduleController - audio - getNextFragment - request is http://192.168.42.122:4567/live-1-5909454944.m4s 
Debug.js:127 [45824] Buffered Range for type: video : 2046  -  2057.999999  currentTime =  0 
Debug.js:127 [45827] [BufferController][ video ] onAppended chunk type =  MediaSegment  and index =  342 
Debug.js:127 [45830] ThroughputRule requesting switch to index:  0 type:  video Average throughput 571982 kbps 
Debug.js:127 [45830] AbrController (video) stay on 0/0 (buffer: 0) 
Debug.js:127 [45831] Getting the request for video time : 123113.7 
Debug.js:127 [45831] Index for video time 123113.7 is 342 
Debug.js:127 [45832] SegmentTimeline: 123107.7 / Infinity 
Debug.js:127 [45832] Getting the next request at index: 343, type: video 
Debug.js:127 [45832] SegmentTimeline: 123113.7 / Infinity 
Debug.js:127 [45833] ScheduleController - video - getNextFragment - request is http://192.168.42.122:4567/live-0-1891026432.m4s 
Debug.js:127 [45837] [ScheduleController][ audio ] - onFragmentLoadingCompleted 
Debug.js:127 [45840] Buffered Range for type: audio : 2046.740333  -  2064.745666  currentTime =  0 
Debug.js:127 [45841] [BufferController][ audio ] onAppended chunk type =  MediaSegment  and index =  343 
Debug.js:127 [45844] [ScheduleController][ video ] - onFragmentLoadingCompleted 
Debug.js:127 [45846] ThroughputRule requesting switch to index:  0 type:  audio Average throughput 427826 kbps 
Debug.js:127 [45847] AbrController (audio) stay on 0/0 (buffer: 0) 
Debug.js:127 [45847] Getting the request for audio time : 123119.63933333333 
Debug.js:127 [45847] Index for audio time 123119.63933333333 is 343 
Debug.js:127 [45848] SegmentTimeline: 123113.64467 / Infinity 
Debug.js:127 [45848] Getting the next request at index: 344, type: audio 
Debug.js:127 [45848] SegmentTimeline: 123119.63933 / Infinity 
Debug.js:127 [45849] ScheduleController - audio - getNextFragment - request is http://192.168.42.122:4567/live-1-5909742688.m4s 
Debug.js:127 [45851] Buffered Range for type: video : 2046  -  2063.999999  currentTime =  0 
Debug.js:127 [45851] [BufferController][ video ] onAppended chunk type =  MediaSegment  and index =  343 
Debug.js:127 [45853] ThroughputRule requesting switch to index:  0 type:  video Average throughput 573222 kbps 
Debug.js:127 [45854] AbrController (video) stay on 0/0 (buffer: 0) 
Debug.js:127 [45855] Getting the request for video time : 123119.7 
Debug.js:127 [45855] Index for video time 123119.7 is 343 
Debug.js:127 [45855] SegmentTimeline: 123113.7 / Infinity 
Debug.js:127 [45856] Getting the next request at index: 344, type: video 
Debug.js:127 [45856] SegmentTimeline: 123119.7 / Infinity 
Debug.js:127 [45857] ScheduleController - video - getNextFragment - request is http://192.168.42.122:4567/live-0-1891118592.m4s 
Debug.js:127 [45861] [ScheduleController][ audio ] - onFragmentLoadingCompleted 
Debug.js:127 [45865] Buffered Range for type: audio : 2046.740333  -  2070.750999  currentTime =  0 
Debug.js:127 [45865] [BufferController][ audio ] onAppended chunk type =  MediaSegment  and index =  344 
Debug.js:127 [45867] [ScheduleController][ video ] - onFragmentLoadingCompleted 
Debug.js:127 [45868] ThroughputRule requesting switch to index:  0 type:  audio Average throughput 272876 kbps 
Debug.js:127 [45868] AbrController (audio) stay on 0/0 (buffer: 0) 
Debug.js:127 [45868] Getting the request for audio time : 123125.64466666667 
Debug.js:127 [45868] Index for audio time 123125.64466666667 is 344 
Debug.js:127 [45869] SegmentTimeline: 123119.63933 / Infinity 
Debug.js:127 [45870] Getting the next request at index: 345, type: audio 
Debug.js:127 [45870] SegmentTimeline: 123125.64467 / Infinity 
Debug.js:127 [45870] ScheduleController - audio - getNextFragment - request is http://192.168.42.122:4567/live-1-5910030944.m4s 
Debug.js:127 [45872] Buffered Range for type: video : 2046  -  2069.999999  currentTime =  0 
Debug.js:127 [45873] [BufferController][ video ] onAppended chunk type =  MediaSegment  and index =  344 
Debug.js:127 [45875] ThroughputRule requesting switch to index:  0 type:  video Average throughput 643389 kbps 
Debug.js:127 [45875] AbrController (video) stay on 0/0 (buffer: 0) 
Debug.js:127 [45876] Getting the request for video time : 123125.7 
Debug.js:127 [45876] Index for video time 123125.7 is 344 
Debug.js:127 [45876] SegmentTimeline: 123119.7 / Infinity 
Debug.js:127 [45876] Getting the next request at index: 345, type: video 
Debug.js:127 [45877] SegmentTimeline: 123125.7 / Infinity 
Debug.js:127 [45877] ScheduleController - video - getNextFragment - request is http://192.168.42.122:4567/live-0-1891210752.m4s 
Debug.js:127 [45879] [ScheduleController][ audio ] - onFragmentLoadingCompleted 
Debug.js:127 [45881] Buffered Range for type: audio : 2046.740333  -  2076.745666  currentTime =  0 
Debug.js:127 [45881] [BufferController][ audio ] onAppended chunk type =  MediaSegment  and index =  345 
Debug.js:127 [45883] ThroughputRule requesting switch to index:  0 type:  audio Average throughput 427541 kbps 
Debug.js:127 [45883] AbrController (audio) stay on 0/0 (buffer: 0) 
Debug.js:127 [45884] Getting the request for audio time : 123131.63933333333 
Debug.js:127 [45884] Index for audio time 123131.63933333333 is 345 
Debug.js:127 [45884] SegmentTimeline: 123125.64467 / Infinity 
Debug.js:127 [45885] Getting the next request at index: 346, type: audio 
Debug.js:127 [45885] SegmentTimeline: 123131.63933 / Infinity 
Debug.js:127 [45886] ScheduleController - audio - getNextFragment - request is http://192.168.42.122:4567/live-1-5910318688.m4s 
Debug.js:127 [45890] [ScheduleController][ video ] - onFragmentLoadingCompleted 
Debug.js:127 [45898] [ScheduleController][ audio ] - onFragmentLoadingCompleted 
Debug.js:127 [45900] Buffered Range for type: audio : 2046.740333  -  2082.740333  currentTime =  0 
Debug.js:127 [45900] [BufferController][ audio ] onAppended chunk type =  MediaSegment  and index =  346 
Debug.js:127 [45900] Buffered Range for type: video : 2046  -  2075.999999  currentTime =  0 
Debug.js:127 [45901] [BufferController][ video ] onAppended chunk type =  MediaSegment  and index =  345 
Debug.js:127 [45903] ThroughputRule requesting switch to index:  0 type:  audio Average throughput 427505 kbps 
Debug.js:127 [45904] AbrController (audio) stay on 0/0 (buffer: 0) 
Debug.js:127 [45905] Getting the request for audio time : 123137.634 
Debug.js:127 [45905] Index for audio time 123137.634 is 346 
Debug.js:127 [45905] SegmentTimeline: 123131.63933 / Infinity 
Debug.js:127 [45906] Getting the next request at index: 347, type: audio 
Debug.js:127 [45907] No segment found at index: 347. Wait for next loop 
Debug.js:127 [45907] getNextFragment - audio - Playing at the bleeding live edge and frag is not available yet 
Debug.js:127 [45909] ThroughputRule requesting switch to index:  0 type:  video Average throughput 695616 kbps 
Debug.js:127 [45910] AbrController (video) stay on 0/0 (buffer: 0) 
Debug.js:127 [45910] Getting the request for video time : 123131.7 
Debug.js:127 [45911] Index for video time 123131.7 is 345 
Debug.js:127 [45911] SegmentTimeline: 123125.7 / Infinity 
Debug.js:127 [45911] Getting the next request at index: 346, type: video 
Debug.js:127 [45911] SegmentTimeline: 123131.7 / Infinity 
Debug.js:127 [45912] ScheduleController - video - getNextFragment - request is http://192.168.42.122:4567/live-0-1891302912.m4s 
Debug.js:127 [45923] [ScheduleController][ video ] - onFragmentLoadingCompleted 
Debug.js:127 [45925] Buffered Range for type: video : 2046  -  2081.999999  currentTime =  0 
Debug.js:127 [45926] [BufferController][ video ] onAppended chunk type =  MediaSegment  and index =  346 
Debug.js:127 [45928] ThroughputRule requesting switch to index:  0 type:  video Average throughput 724497 kbps 
Debug.js:127 [45928] AbrController (video) stay on 0/0 (buffer: 0) 
Debug.js:127 [45928] Getting the request for video time : 123137.7 
Debug.js:127 [45929] Index for video time 123137.7 is 346 
Debug.js:127 [45929] SegmentTimeline: 123131.7 / Infinity 
Debug.js:127 [45930] Getting the next request at index: 347, type: video 
Debug.js:127 [45930] No segment found at index: 347. Wait for next loop 
Debug.js:127 [45931] getNextFragment - video - Playing at the bleeding live edge and frag is not available yet 
Debug.js:127 [46436] ThroughputRule requesting switch to index:  0 type:  video Average throughput 724497 kbps 
Debug.js:127 [46436] AbrController (video) stay on 0/0 (buffer: 0) 
Debug.js:127 [46438] Getting the request for video time : 123137.7 
Debug.js:127 [46438] Index for video time 123137.7 is 346 
Debug.js:127 [46438] SegmentTimeline: 123131.7 / Infinity 
Debug.js:127 [46439] Getting the next request at index: 347, type: video 
Debug.js:127 [46439] No segment found at index: 347. Wait for next loop 
Debug.js:127 [46440] getNextFragment - video - Playing at the bleeding live edge and frag is not available yet 
Debug.js:127 [46943] ThroughputRule requesting switch to index:  0 type:  video Average throughput 724497 kbps 
Debug.js:127 [46944] AbrController (video) stay on 0/0 (buffer: 0) 
Debug.js:127 [46944] Getting the request for video time : 123137.7 
Debug.js:127 [46945] Index for video time 123137.7 is 346 
Debug.js:127 [46945] SegmentTimeline: 123131.7 / Infinity 
Debug.js:127 [46945] Getting the next request at index: 347, type: video 
Debug.js:127 [46946] No segment found at index: 347. Wait for next loop 
Debug.js:127 [46946] getNextFragment - video - Playing at the bleeding live edge and frag is not available yet 
Debug.js:127 [47450] ThroughputRule requesting switch to index:  0 type:  video Average throughput 724497 kbps 
Debug.js:127 [47452] AbrController (video) stay on 0/0 (buffer: 0) 
Debug.js:127 [47452] Getting the request for video time : 123137.7 
Debug.js:127 [47453] Index for video time 123137.7 is 346 
Debug.js:127 [47453] SegmentTimeline: 123131.7 / Infinity 
Debug.js:127 [47454] Getting the next request at index: 347, type: video 
Debug.js:127 [47454] No segment found at index: 347. Wait for next loop 
Debug.js:127 [47454] getNextFragment - video - Playing at the bleeding live edge and frag is not available yet 
Debug.js:127 [47956] ThroughputRule requesting switch to index:  0 type:  video Average throughput 724497 kbps 
Debug.js:127 [47957] AbrController (video) stay on 0/0 (buffer: 0) 
Debug.js:127 [47958] Getting the request for video time : 123137.7 
Debug.js:127 [47959] Index for video time 123137.7 is 346 
Debug.js:127 [47960] SegmentTimeline: 123131.7 / Infinity 
Debug.js:127 [47960] Getting the next request at index: 347, type: video 
Debug.js:127 [47961] No segment found at index: 347. Wait for next loop 
Debug.js:127 [47961] getNextFragment - video - Playing at the bleeding live edge and frag is not available yet 
Debug.js:127 [48463] ThroughputRule requesting switch to index:  0 type:  video Average throughput 724497 kbps 
Debug.js:127 [48464] AbrController (video) stay on 0/0 (buffer: 0) 
Debug.js:127 [48465] Getting the request for video time : 123137.7 
Debug.js:127 [48467] Index for video time 123137.7 is 346 
Debug.js:127 [48467] SegmentTimeline: 123131.7 / Infinity 
Debug.js:127 [48469] Getting the next request at index: 347, type: video 
Debug.js:127 [48469] No segment found at index: 347. Wait for next loop 
Debug.js:127 [48469] getNextFragment - video - Playing at the bleeding live edge and frag is not available yet 
Debug.js:127 [48974] ThroughputRule requesting switch to index:  0 type:  video Average throughput 724497 kbps 
Debug.js:127 [48974] AbrController (video) stay on 0/0 (buffer: 0) 
Debug.js:127 [48975] Getting the request for video time : 123137.7 
Debug.js:127 [48976] Index for video time 123137.7 is 346 
Debug.js:127 [48976] SegmentTimeline: 123131.7 / Infinity 
Debug.js:127 [48977] Getting the next request at index: 347, type: video 
Debug.js:127 [48977] No segment found at index: 347. Wait for next loop 
Debug.js:127 [48977] getNextFragment - video - Playing at the bleeding live edge and frag is not available yet 
Debug.js:127 [49483] ThroughputRule requesting switch to index:  0 type:  video Average throughput 724497 kbps 
Debug.js:127 [49484] AbrController (video) stay on 0/0 (buffer: 0) 
Debug.js:127 [49484] Getting the request for video time : 123137.7 
Debug.js:127 [49486] Index for video time 123137.7 is 346 
Debug.js:127 [49486] SegmentTimeline: 123131.7 / Infinity 
Debug.js:127 [49487] Getting the next request at index: 347, type: video 
Debug.js:127 [49487] No segment found at index: 347. Wait for next loop 
Debug.js:127 [49490] getNextFragment - video - Playing at the bleeding live edge and frag is not available yet 
Debug.js:127 [49993] ThroughputRule requesting switch to index:  0 type:  video Average throughput 724497 kbps 
Debug.js:127 [49995] AbrController (video) stay on 0/0 (buffer: 0) 
Debug.js:127 [49996] Getting the request for video time : 123137.7 
Debug.js:127 [49997] Index for video time 123137.7 is 346 
Debug.js:127 [49998] SegmentTimeline: 123131.7 / Infinity 
Debug.js:127 [49999] Getting the next request at index: 347, type: video 
Debug.js:127 [50000] No segment found at index: 347. Wait for next loop 
Debug.js:127 [50001] getNextFragment - video - Playing at the bleeding live edge and frag is not available yet 
Debug.js:127 [50503] ThroughputRule requesting switch to index:  0 type:  video Average throughput 724497 kbps 
Debug.js:127 [50503] AbrController (video) stay on 0/0 (buffer: 0) 
Debug.js:127 [50503] Getting the request for video time : 123137.7 
Debug.js:127 [50504] Index for video time 123137.7 is 346 
Debug.js:127 [50505] SegmentTimeline: 123131.7 / Infinity 
Debug.js:127 [50506] Getting the next request at index: 347, type: video 
Debug.js:127 [50507] No segment found at index: 347. Wait for next loop 
Debug.js:127 [50508] getNextFragment - video - Playing at the bleeding live edge and frag is not available yet 
Debug.js:127 [51010] ThroughputRule requesting switch to index:  0 type:  video Average throughput 724497 kbps 
Debug.js:127 [51012] AbrController (video) stay on 0/0 (buffer: 0) 
Debug.js:127 [51013] Getting the request for video time : 123137.7 
Debug.js:127 [51013] Index for video time 123137.7 is 346 
Debug.js:127 [51014] SegmentTimeline: 123131.7 / Infinity 
Debug.js:127 [51016] Getting the next request at index: 347, type: video 
Debug.js:127 [51016] No segment found at index: 347. Wait for next loop 
Debug.js:127 [51017] getNextFragment - video - Playing at the bleeding live edge and frag is not available yet 
Debug.js:127 [51519] ThroughputRule requesting switch to index:  0 type:  video Average throughput 724497 kbps 
Debug.js:127 [51520] AbrController (video) stay on 0/0 (buffer: 0) 
Debug.js:127 [51521] Getting the request for video time : 123137.7 
Debug.js:127 [51521] Index for video time 123137.7 is 346 
Debug.js:127 [51522] SegmentTimeline: 123131.7 / Infinity 
Debug.js:127 [51524] Getting the next request at index: 347, type: video 
Debug.js:127 [51524] No segment found at index: 347. Wait for next loop 
Debug.js:127 [51526] getNextFragment - video - Playing at the bleeding live edge and frag is not available yet 
Debug.js:127 [51734] Parsing complete: ( xml2json: 12.5ms, objectiron: 12.7ms, total: 0.0252s) 
Debug.js:127 [51736] SegmentTimeline detected using calculated Live Edge Time 
Debug.js:127 [51737] Manifest updated... updating data system wide. 
Debug.js:127 [51738] Added 0 inline events 
Debug.js:127 [51739] [ScheduleController][ video ] stop 
Debug.js:127 [51741] [ScheduleController][ audio ] stop 
Debug.js:127 [51742] [ScheduleController][ video ] start 
Debug.js:127 [51742] [ScheduleController][ audio ] start 
Debug.js:127 [51744] Manifest has been refreshed at Wed Mar 14 2018 18:26:57 GMT-0700 (PDT)[1521077217.136]  
Debug.js:127 [51744] Refresh manifest in 6 seconds. 
Debug.js:127 [51748] ThroughputRule requesting switch to index:  0 type:  video Average throughput 724497 kbps 
Debug.js:127 [51749] AbrController (video) stay on 0/0 (buffer: 0) 
Debug.js:127 [51750] Getting the request for video time : 123137.7 
Debug.js:127 [51751] Index for video time 123137.7 is 346 
Debug.js:127 [51752] SegmentTimeline: 123131.7 / Infinity 
Debug.js:127 [51753] Getting the next request at index: 347, type: video 
Debug.js:127 [51754] SegmentTimeline: 123137.7 / Infinity 
Debug.js:127 [51754] ScheduleController - video - getNextFragment - request is http://192.168.42.122:4567/live-0-1891395072.m4s 
Debug.js:127 [51757] ThroughputRule requesting switch to index:  0 type:  audio Average throughput 427505 kbps 
Debug.js:127 [51758] AbrController (audio) stay on 0/0 (buffer: 0) 
Debug.js:127 [51759] Getting the request for audio time : 123137.634 
Debug.js:127 [51759] Index for audio time 123137.634 is 346 
Debug.js:127 [51761] SegmentTimeline: 123131.63933 / Infinity 
Debug.js:127 [51762] Getting the next request at index: 347, type: audio 
Debug.js:127 [51763] SegmentTimeline: 123137.634 / Infinity 
Debug.js:127 [51764] ScheduleController - audio - getNextFragment - request is http://192.168.42.122:4567/live-1-5910606432.m4s 
Debug.js:127 [51773] [ScheduleController][ video ] - onFragmentLoadingCompleted 
Debug.js:127 [51776] [ScheduleController][ audio ] - onFragmentLoadingCompleted 
Debug.js:127 [51780] Buffered Range for type: audio : 2046.740333  -  2088.745666  currentTime =  0 
Debug.js:127 [51780] [BufferController][ audio ] onAppended chunk type =  MediaSegment  and index =  347 
Debug.js:127 [51780] Buffered Range for type: video : 2046  -  2087.999999  currentTime =  0 
Debug.js:127 [51781] [BufferController][ video ] onAppended chunk type =  MediaSegment  and index =  347 
Debug.js:127 [51781] ThroughputRule requesting switch to index:  0 type:  audio Average throughput 584850 kbps 
Debug.js:127 [51782] AbrController (audio) stay on 0/0 (buffer: 0) 
Debug.js:127 [51782] Getting the request for audio time : 123143.63933333334 
Debug.js:127 [51782] Index for audio time 123143.63933333334 is 347 
Debug.js:127 [51783] SegmentTimeline: 123137.634 / Infinity 
Debug.js:127 [51783] Getting the next request at index: 348, type: audio 
Debug.js:127 [51784] No segment found at index: 348. Wait for next loop 
Debug.js:127 [51784] getNextFragment - audio - Playing at the bleeding live edge and frag is not available yet 
Debug.js:127 [51785] ThroughputRule requesting switch to index:  0 type:  video Average throughput 555112 kbps 
Debug.js:127 [51786] AbrController (video) stay on 0/0 (buffer: 0) 
Debug.js:127 [51786] Getting the request for video time : 123143.7 
Debug.js:127 [51787] Index for video time 123143.7 is 347 
Debug.js:127 [51787] SegmentTimeline: 123137.7 / Infinity 

SAMPLE MPD

<?xml version="1.0" encoding="utf-8"?>
<MPD xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns="urn:mpeg:dash:schema:mpd:2011"
    xmlns:xlink="http://www.w3.org/1999/xlink"
    xsi:schemaLocation="urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd"
    profiles="urn:mpeg:dash:profile:isoff-live:2011"
    type="dynamic"
    minimumUpdatePeriod="PT6S"
    suggestedPresentationDelay="PT6S"
    availabilityStartTime="2018-03-15T00:52:13Z"
    publishTime="2018-03-15T01:19:37Z"
    minBufferTime="PT12.0S">
    <ProgramInformation>
    </ProgramInformation>
    <Period id="0" start="PT0.0S">
        <AdaptationSet id="0" contentType="video" segmentAlignment="true" bitstreamSwitching="true">
            <Representation id="0" mimeType="video/mp4" codecs="avc1.64001e" bandwidth="500000" width="640" height="480" frameRate="30/1">
                <SegmentTemplate timescale="15360" initialization="live-$RepresentationID$-init.m4s" media="live-$RepresentationID$-$Time$.m4s" startNumber="1">
                    <SegmentTimeline>
                        <S t="1859415552" d="92160" r="274" />
                    </SegmentTimeline>
                </SegmentTemplate>
            </Representation>
        </AdaptationSet>
        <AdaptationSet id="1" contentType="audio" segmentAlignment="true" bitstreamSwitching="true">
            <Representation id="1" mimeType="audio/mp4" codecs="mp4a.40.2" bandwidth="128000" audioSamplingRate="48000">
                <AudioChannelConfiguration schemeIdUri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="2" />
                <SegmentTemplate timescale="48000" initialization="live-$RepresentationID$-init.m4s" media="live-$RepresentationID$-$Time$.m4s" startNumber="1">
                    <SegmentTimeline>
                        <S t="5810634896" d="323584" />
                        <S d="288768" />
                        <S d="287744" r="1" />
                        <S d="288256" />
                        <S d="287744" r="1" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287232" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287232" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288256" />
                        <S d="287744" />
                        <S d="288256" />
                        <S d="287744" />
                        <S d="288768" />
                        <S d="287232" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288256" />
                        <S d="287744" />
                        <S d="288256" r="1" />
                        <S d="287744" r="1" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287232" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288256" />
                        <S d="287744" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287232" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287232" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287232" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="1" />
                        <S d="288256" />
                        <S d="287744" r="1" />
                        <S d="288768" />
                        <S d="287744" />
                        <S d="288256" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" />
                        <S d="288256" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287232" />
                        <S d="288768" />
                        <S d="287744" r="1" />
                        <S d="287696" />
                        <S d="288768" />
                        <S d="287744" />
                    </SegmentTimeline>
                </SegmentTemplate>
            </Representation>
        </AdaptationSet>
    </Period>
</MPD>
eponymous301 commented 6 years ago

updated sample MPD (copied after I obtained console output in ticket)

<?xml version="1.0" encoding="utf-8"?>
<MPD xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns="urn:mpeg:dash:schema:mpd:2011"
    xmlns:xlink="http://www.w3.org/1999/xlink"
    xsi:schemaLocation="urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd"
    profiles="urn:mpeg:dash:profile:isoff-live:2011"
    type="dynamic"
    minimumUpdatePeriod="PT6S"
    suggestedPresentationDelay="PT6S"
    availabilityStartTime="2018-03-15T00:52:13Z"
    publishTime="2018-03-15T01:37:43Z"
    minBufferTime="PT12.0S">
    <ProgramInformation>
    </ProgramInformation>
    <Period id="0" start="PT0.0S">
        <AdaptationSet id="0" contentType="video" segmentAlignment="true" bitstreamSwitching="true">
            <Representation id="0" mimeType="video/mp4" codecs="avc1.64001e" bandwidth="500000" width="640" height="480" frameRate="30/1">
                <SegmentTemplate timescale="15360" initialization="live-$RepresentationID$-init.m4s" media="live-$RepresentationID$-$Time$.m4s" startNumber="1">
                    <SegmentTimeline>
                        <S t="1859415552" d="92160" r="455" />
                    </SegmentTimeline>
                </SegmentTemplate>
            </Representation>
        </AdaptationSet>
        <AdaptationSet id="1" contentType="audio" segmentAlignment="true" bitstreamSwitching="true">
            <Representation id="1" mimeType="audio/mp4" codecs="mp4a.40.2" bandwidth="128000" audioSamplingRate="48000">
                <AudioChannelConfiguration schemeIdUri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="2" />
                <SegmentTemplate timescale="48000" initialization="live-$RepresentationID$-init.m4s" media="live-$RepresentationID$-$Time$.m4s" startNumber="1">
                    <SegmentTimeline>
                        <S t="5810634896" d="323584" />
                        <S d="288768" />
                        <S d="287744" r="1" />
                        <S d="288256" />
                        <S d="287744" r="1" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287232" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287232" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288256" />
                        <S d="287744" />
                        <S d="288256" />
                        <S d="287744" />
                        <S d="288768" />
                        <S d="287232" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288256" />
                        <S d="287744" />
                        <S d="288256" r="1" />
                        <S d="287744" r="1" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287232" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288256" />
                        <S d="287744" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287232" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287232" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287232" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="1" />
                        <S d="288256" />
                        <S d="287744" r="1" />
                        <S d="288768" />
                        <S d="287744" />
                        <S d="288256" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" />
                        <S d="288256" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287232" />
                        <S d="288768" />
                        <S d="287744" r="1" />
                        <S d="287696" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" />
                        <S d="288256" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288256" />
                        <S d="287744" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="1" />
                        <S d="288256" />
                        <S d="287744" r="1" />
                        <S d="288256" />
                        <S d="287744" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287232" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" />
                        <S d="288256" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="2" />
                        <S d="288768" />
                        <S d="287744" r="1" />
                    </SegmentTimeline>
                </SegmentTemplate>
            </Representation>
        </AdaptationSet>
    </Period>
</MPD>
sandersaares commented 6 years ago

That t="5810634896" divided by timescale is approximately 33 hours. Taking availabilityStartTime+33 hours results in a timestamp in tomorrow.

The timing in this content appears to be defective - the content of the stream is in the future.

eponymous301 commented 6 years ago

Hmm, not sure where that t value comes from. Perhaps OS X is supplying a timestamp counting from last system boot and ffmpeg is passing along.

I will try pulling out the -copyts parameter from my ffmpeg command line and see if that improves things. (I did try using presentationTimeOffset attribute in \<SegmentTemplate> to compensate for starting "t" but that did not help)

eponymous301 commented 6 years ago

Removing '-copyts' from ffmpeg command line makes the stream playable. Not quite a bug in ffmpeg dash encoder I think, although it really should output a warning.

Controls show a nonsense number for total duration though (-14:-8) , I imagine this has already been filed as a separate bug but I'll take a look.

screen shot 2018-03-15 at 2 27 58 pm