<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta content="text/html;charset=UTF-8" http-equiv="Content-Type"></head><body ><div style='font-size:10pt;font-family:Verdana,Arial,Helvetica,sans-serif;'><div><br></div><div><br></div><div id=""><div>Hello,<br></div><div><br></div><div>I am using webm_dash_manifest muxer and <span class="s1">webm_chunk muxer to generate dash manifest and webm live chunks for streaming using mpeg dash. But I am unable to play the generated chunks using the manifest file in dash-js player. The player throws the following error messages in the browser console :</span><br></div><div><br></div><div><span class="s1">"Video Element Error: MEDIA_ERR_SRC_NOT_SUPPORTED (CHUNK_DEMUXER_ERROR_APPEND_FAILED: Append: stream parsing failed. "</span><br></div><div><br></div><div><span class="s1">"Failed to remove source buffer from media source."</span><br></div><div><br></div><div><span class="s1">"Caught pending play exception - continuing (NotSupportedError: Failed to load because no supported source was found.)"</span><br></div><div><br></div><div><br></div><div>My live stream is encoded in vp8/opus codecs. The following is my manifest file generated using ffmpeg webm_dash_manifest muxer :<br></div><div><br></div><div><blockquote style="border: 1px solid rgb(204, 204, 204); padding: 7px; background-color: rgb(245, 245, 245);"><p class="p1"><span class="s1"><?</span><span class="s2">xml version</span><span class="s3">=</span><span class="s4">"1.0"</span><span class="s2"> encoding</span><span class="s3">=</span><span class="s4">"UTF-8"</span><span class="s1">?></span><br></p><p class="p2"><span class="s2"><MPD</span><br></p><p class="p3"><span class="s5"><span class="Apple-converted-space">  </span></span><span class="s6">xmlns</span><span class="s1">:</span><span class="s6">xsi</span><span class="s3">=</span><span class="s2">"<a target="_blank" href="http://www.w3.org/2001/XMLSchema-instance">http://www.w3.org/2001/XMLSchema-instance</a>"</span><br></p><p class="p3"><span class="s5"><span class="Apple-converted-space">  </span></span><span class="s6">xmlns</span><span class="s3">=</span><span class="s2">"urn:mpeg:DASH:schema:MPD:2011"</span><br></p><p class="p3"><span class="s5"><span class="Apple-converted-space">  </span></span><span class="s6">xsi</span><span class="s1">:</span><span class="s6">schemaLocation</span><span class="s3">=</span><span class="s2">"urn:mpeg:DASH:schema:MPD:2011"</span><br></p><p class="p3"><span class="s5"><span class="Apple-converted-space">  </span></span><span class="s6">type</span><span class="s3">=</span><span class="s2">"dynamic"</span><br></p><p class="p1"><span class="s5"><span class="Apple-converted-space">  </span></span><span class="s2">minBufferTime</span><span class="s3">=</span><span class="s4">"PT1S"</span><br></p><p class="p3"><span class="s5"><span class="Apple-converted-space">  </span></span><span class="s6">profiles</span><span class="s3">=</span><span class="s2">"urn:mpeg:dash:profile:isoff-live:2011"</span><br></p><p class="p3"><span class="s5"><span class="Apple-converted-space">  </span></span><span class="s6">availabilityStartTime</span><span class="s3">=</span><span class="s2">"2018-06-06T06:33:06Z"</span><br></p><p class="p1"><span class="s5"><span class="Apple-converted-space">  </span></span><span class="s2">timeShiftBufferDepth</span><span class="s3">=</span><span class="s4">"PT60S"</span><br></p><p class="p1"><span class="s5"><span class="Apple-converted-space">  </span></span><span class="s2">minimumUpdatePeriod</span><span class="s3">=</span><span class="s4">"PT0S"</span><span class="s5">></span><br></p><p class="p2"><span class="s2"><Period </span><span class="s6">id</span><span class="s3">=</span><span class="s4">"0"</span><span class="s2"> </span><span class="s6">start</span><span class="s3">=</span><span class="s4">"PT0S"</span><span class="s2"> ></span><br></p><p class="p1"><span class="s5"><AdaptationSet </span><span class="s2">id</span><span class="s3">=</span><span class="s4">"0"</span><span class="s5"> </span><span class="s2">mimeType</span><span class="s3">=</span><span class="s4">"video/webm"</span><span class="s5"> </span><span class="s2">codecs</span><span class="s3">=</span><span class="s4">"vp8"</span><span class="s5"> </span><span class="s2">bitstreamSwitching</span><span class="s3">=</span><span class="s4">"false"</span><span class="s5"> </span><span class="s2">subsegmentAlignment</span><span class="s3">=</span><span class="s4">"true"</span><span class="s5"> </span><span class="s2">subsegmentStartsWithSAP</span><span class="s3">=</span><span class="s4">"1"</span><span class="s5">></span><br></p><p class="p2"><span class="s2"><ContentComponent </span><span class="s6">id</span><span class="s3">=</span><span class="s4">"1"</span><span class="s2"> </span><span class="s6">type</span><span class="s3">=</span><span class="s4">"video"</span><span class="s2">/></span><br></p><p class="p3"><span class="s5"><SegmentTemplate </span><span class="s6">timescale</span><span class="s3">=</span><span class="s2">"1000"</span><span class="s5"> </span><span class="s6">duration</span><span class="s3">=</span><span class="s2">"5000"</span><span class="s5"> </span><span class="s6">media</span><span class="s3">=</span><span class="s2">"fetch?f=wmslive_video_$RepresentationID$_$Number$.chk"</span><span class="s5"> </span><span class="s6">startNumber</span><span class="s3">=</span><span class="s2">"0"</span><span class="s5"> </span><span class="s6">initialization</span><span class="s3">=</span><span class="s2">"fetch?f=wmslive_video_$RepresentationID$.hdr"</span><span class="s5">/></span><br></p><p class="p3"><span class="s5"><Representation </span><span class="s6">id</span><span class="s3">=</span><span class="s2">"v3375868085"</span><span class="s5"> </span><span class="s6">bandwidth</span><span class="s3">=</span><span class="s2">"1000000"</span><span class="s5"> </span><span class="s6">width</span><span class="s3">=</span><span class="s2">"640"</span><span class="s5"> </span><span class="s6">height</span><span class="s3">=</span><span class="s2">"480"</span><span class="s5"> </span><span class="s6">codecs</span><span class="s3">=</span><span class="s2">"vp8"</span><span class="s5"> </span><span class="s6">mimeType</span><span class="s3">=</span><span class="s2">"video/webm"</span><span class="s5"> </span><span class="s6">startsWithSAP</span><span class="s3">=</span><span class="s2">"1"</span><span class="s5">></Representation></span><br></p><p class="p2"><span class="s2"></AdaptationSet></span><br></p><p class="p1"><span class="s5"><AdaptationSet </span><span class="s2">id</span><span class="s3">=</span><span class="s4">"1"</span><span class="s5"> </span><span class="s2">mimeType</span><span class="s3">=</span><span class="s4">"audio/webm"</span><span class="s5"> </span><span class="s2">codecs</span><span class="s3">=</span><span class="s4">"opus"</span><span class="s5"> </span><span class="s2">bitstreamSwitching</span><span class="s3">=</span><span class="s4">"false"</span><span class="s5"> </span><span class="s2">subsegmentAlignment</span><span class="s3">=</span><span class="s4">"true"</span><span class="s5"> </span><span class="s2">subsegmentStartsWithSAP</span><span class="s3">=</span><span class="s4">"1"</span><span class="s5">></span><br></p><p class="p2"><span class="s2"><ContentComponent </span><span class="s6">id</span><span class="s3">=</span><span class="s4">"1"</span><span class="s2"> </span><span class="s6">type</span><span class="s3">=</span><span class="s4">"audio"</span><span class="s2">/></span><br></p><p class="p3"><span class="s5"><SegmentTemplate </span><span class="s6">timescale</span><span class="s3">=</span><span class="s2">"1000"</span><span class="s5"> </span><span class="s6">duration</span><span class="s3">=</span><span class="s2">"5000"</span><span class="s5"> </span><span class="s6">media</span><span class="s3">=</span><span class="s2">"fetch?f=wmslive_audio_$RepresentationID$_$Number$.chk"</span><span class="s5"> </span><span class="s6">startNumber</span><span class="s3">=</span><span class="s2">"0"</span><span class="s5"> </span><span class="s6">initialization</span><span class="s3">=</span><span class="s2">"fetch?f=wmslive_audio_$RepresentationID$.hdr"</span><span class="s5">/></span><br></p><p class="p1"><span class="s5"><Representation </span><span class="s2">id</span><span class="s3">=</span><span class="s4">"a3375868085"</span><span class="s5"> </span><span class="s2">bandwidth</span><span class="s3">=</span><span class="s4">"128000"</span><span class="s5"> </span><span class="s2">audioSamplingRate</span><span class="s3">=</span><span class="s4">"48000"</span><span class="s5"> </span><span class="s2">codecs</span><span class="s3">=</span><span class="s4">"opus"</span><span class="s5"> </span><span class="s2">mimeType</span><span class="s3">=</span><span class="s4">"audio/webm"</span><span class="s5"> </span><span class="s2">startsWithSAP</span><span class="s3">=</span><span class="s4">"1"</span><span class="s5">></Representation></span><br></p><p class="p2"><span class="s2"></AdaptationSet></span><br></p><p class="p2"><span class="s2"></Period></span><br></p><p class="p2"><span class="s2"></MPD></span><br></p></blockquote><br>I generate .hdr and .chk files of the actual stream using webm_chunk muxer. I am using both the muxers programmatically, not from the command line. I tried to validate my mpd using <a target="_blank" href="https://dashif.org/conformance.html">https://dashif.org/conformance.html</a>. But that link never worked. Please help me out in fixing this issue, if my mpd is correct or not. Because, my player would make request of hdr files and then it would stop, without triggering any chunk requests at all.<br> </div><div>Regards,<br></div><div>Ravi Kiran B S<br></div></div><div><br></div></div><br></body></html>