title: H264 video source is not playing in any browser
body: <p>I'm using <a href="https://janus.conf.meetecho.com/index.html" rel="nofollow noreferrer">Janus</a> to pass video stream from an RTSP/H.264 camera (<a href="http://www.escam.cn/product/showproduct.php?lang=en&amp;id=77" rel="nofollow noreferrer">QD800</a>) through WebRTC to browsers.</p>
  
  <p>Which browsers am I speaking here?
  Here are the details:</p>
  
  <ul>
  <li>Firefox (Linux, 64-bit, version 59.0.2)</li>
  <li>Firefox (Windows7, 64-bit, version 59.0.2)</li>
  <li>Chrome (Linux, 64-bit, version 49.0.2623.87)</li>
  <li>Chrome (Windows7, 64-bit, version 66.0.3359.139)</li>
  </ul>
  
  <p>Originally the camera sends 420029 as profile-level-id in the SDP when negotiating with the client (Janus).</p>
  
  <p>However as such Firefox is not able to play this version (420029 means level 4.1, FF is only able to play a 3.1 in theory but both are Constrained Baseline Profile).</p>
  
  <p>Now my Janus streaming plugin configuration looks like this:</p>
  
  <pre><code>[rtsp-test]
  type = rtsp
  id = 4
  description = RTSP
  url = rtsp://admin:admin@a.b.c.d:554/11
  
  audio = no
  video = yes
  videopt = 96
  
  videortpmap = H264/90000
  videofmtp = profile-level-id=42e01f\;packetization-mode=1\;sprop-parameter-sets=Z00AKpWoHgCJ+VA=,aO48gA==
  secret = adminpwd
  </code></pre>
  
  <p>As you can see, it's overriding the profile-level-id in the videofmtp config.</p>
  
  <p>This is working fine, I can check the new profile-level-id in the WebRTC console both in FF and Chrome on both OSes.</p>
  
  <p>I'm using the default demo HTML which is provided for Janus (demos/streamingtest.html).</p>
  
  <p><strong>In neither browser is there any video displayed.
  Only white box is displayed.</strong></p>
  
  <p>When I hit play:</p>
  
  <ul>
  <li>in Chrome: "Stream Started 405 kbits/sec". White video screen, spinner is spinning.</li>
  <li>in Firefox: "Stream Started 0x0 407 kbits/sec". White video screen, no spinner, no video.</li>
  </ul>
  
  <p>PS1.: My camera is working, VLC can play the RTSP stream directly from it.</p>
  
  <p>PS2.: Both FF and Chrome are actually receiving the stream but can not decode it.</p>
  
  <p>PS3.: I also tried to pass the whole RTSP through an FFMPEG:</p>
  
  <pre><code>ffmpeg -i 'rtsp://ip-camera' -an -codec copy -f rtp 'rtp://127.0.0.1:20000' 
  </code></pre>
  
  <p>And then use the RTP sample of Janus, but I got the same result as above. See <a href="https://pastebin.com/auGKGhHf" rel="nofollow noreferrer">FFMPEG's output</a>.</p>
  
  <p>In the Janus helpgroup I've gone as far as possible since the stream goes through Janus, it's not their competence any more.</p>
  
  <p>References:</p>
  
  <ul>
  <li><a href="https://groups.google.com/forum/#!topic/meetecho-janus/jKg5u9421kM" rel="nofollow noreferrer">Janus Groups Thread1</a></li>
  <li><a href="https://groups.google.com/forum/#!msg/meetecho-janus/7HH8_blUjQo/H5DTGQPMAwAJ;context-place=topic/meetecho-janus/jKg5u9421kM" rel="nofollow noreferrer">Janus Groups Thread2</a></li>
  </ul>