1

I wish to test VP9 as I understand it is now optional on Chrome 48.

What I have read so far, while inconsistent, seems to imply:

  • no flag is needed anymore
  • default is to VP8
  • to prefer VP9 over VP8, the video codec list in the SDP sent with offer must be reordered to position VP9 as the first entry in the m record

If this is correct can someone please advise how to edit and then read to verify the SDP to achieve this reordering (i.e. VP9 first in the list)?

Travis
  • 12,001
  • 8
  • 39
  • 52
Ted501
  • 21
  • 3
  • Not sure about the video codec, but I had to do something similar with audio codecs and I had to write a SDP parser: https://github.com/beradrian/sdpparser. Maybe it will prove useful for you too. – Adrian Ber Feb 20 '16 at 11:31
  • Thanks, looks like good work and may be helpful once I can confirm the exact SDP edit required to prefer VP9 - does anyone know? – Ted501 Feb 21 '16 at 21:53

1 Answers1

1

After some reading and experimentation I was able to edit the SDP video codec preferred list by reordering the m= video entry from a list that begins "100 101" to "101 100" using javascript replace - sdp.replace(/SAVPF 100 101/g, "SAVPF 101 100"); - I then verified that VP9 was active with webrtc internals and also that the visual results were good - the only downside is that cpu utilization increases about 30% so make sure you have the headroom to avoid heat buildup

Ted501
  • 21
  • 3
  • I used this `PeerConnectionFactory.initializeFieldTrials("WebRTC-SupportVP9/Enabled/");` to include VP9 in my SDP and also my "m=" line looks like this `m=video 9 RTP/SAVPF 101 100 116 117 96` in my SDP where 101 is the payload for VP9. Still when I stream from Android to browser it shows black screen. Am I missing something? – Sibtain Aug 26 '16 at 05:49