# Fix bug show black video on Safari when using kurento-utils.js

I'm developing a video call system using [Kurento](http://www.kurento.org/) as Media Server. The latest Kurento version said that they already support Safari but it did not work in my case :(

After a day searching, I found a reason and solution:

> Safari does not support generateOffer with offerToReceiveAudio: true

To fix it, you have to extend WebRtcPeer.js to modify some line of codes in **generateOffer** method or hard code. Go to **generateOffer** method and use this block code:

```javascript
const isSafari = /^((?!chrome|android).)*safari/i.test(navigator.userAgent);

if (isSafari) {
  if (constraints.offerToReceiveAudio) {
    pc.addTransceiver('audio');
  }

  if (constraints.offerToReceiveVideo) {
    pc.addTransceiver('video');
  }
}
```

Please note that this issue occurred only on Safari, Chrome & Firefox works well so we need to check the block code above only run when browser is Safari.
